blob: a335bd7238130416ab1a81be5297495e79dd1489 [file] [log] [blame]
Mike Kleind7e06ae2017-03-29 16:33:06 -04001; 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
Mike Klein5f804852017-03-29 19:29:13 -04009IFDEF RAX
Mike Klein67e61712017-04-26 09:52:09 -040010_text32 SEGMENT ALIGN(32) 'CODE'
11ALIGN 32
Mike Kleind7e06ae2017-03-29 16:33:06 -040012
13PUBLIC _sk_start_pipeline_hsw
14_sk_start_pipeline_hsw LABEL PROC
15 DB 65,87 ; push %r15
16 DB 65,86 ; push %r14
17 DB 65,85 ; push %r13
18 DB 65,84 ; push %r12
19 DB 86 ; push %rsi
20 DB 87 ; push %rdi
21 DB 83 ; push %rbx
22 DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp
23 DB 197,120,41,188,36,144,0,0,0 ; vmovaps %xmm15,0x90(%rsp)
24 DB 197,120,41,180,36,128,0,0,0 ; vmovaps %xmm14,0x80(%rsp)
25 DB 197,120,41,108,36,112 ; vmovaps %xmm13,0x70(%rsp)
26 DB 197,120,41,100,36,96 ; vmovaps %xmm12,0x60(%rsp)
27 DB 197,120,41,92,36,80 ; vmovaps %xmm11,0x50(%rsp)
28 DB 197,120,41,84,36,64 ; vmovaps %xmm10,0x40(%rsp)
29 DB 197,120,41,76,36,48 ; vmovaps %xmm9,0x30(%rsp)
30 DB 197,120,41,68,36,32 ; vmovaps %xmm8,0x20(%rsp)
31 DB 197,248,41,124,36,16 ; vmovaps %xmm7,0x10(%rsp)
32 DB 197,248,41,52,36 ; vmovaps %xmm6,(%rsp)
33 DB 77,137,205 ; mov %r9,%r13
34 DB 77,137,198 ; mov %r8,%r14
35 DB 72,137,203 ; mov %rcx,%rbx
36 DB 72,137,214 ; mov %rdx,%rsi
37 DB 72,173 ; lods %ds:(%rsi),%rax
38 DB 73,137,199 ; mov %rax,%r15
39 DB 73,137,244 ; mov %rsi,%r12
40 DB 72,141,67,8 ; lea 0x8(%rbx),%rax
41 DB 76,57,232 ; cmp %r13,%rax
42 DB 118,5 ; jbe 75 <_sk_start_pipeline_hsw+0x75>
43 DB 72,137,223 ; mov %rbx,%rdi
44 DB 235,65 ; jmp b6 <_sk_start_pipeline_hsw+0xb6>
45 DB 185,0,0,0,0 ; mov $0x0,%ecx
46 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
47 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
48 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
49 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3
50 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4
51 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5
52 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6
53 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7
54 DB 72,137,223 ; mov %rbx,%rdi
55 DB 76,137,230 ; mov %r12,%rsi
56 DB 76,137,242 ; mov %r14,%rdx
57 DB 65,255,215 ; callq *%r15
58 DB 72,141,123,8 ; lea 0x8(%rbx),%rdi
59 DB 72,131,195,16 ; add $0x10,%rbx
60 DB 76,57,235 ; cmp %r13,%rbx
61 DB 72,137,251 ; mov %rdi,%rbx
62 DB 118,191 ; jbe 75 <_sk_start_pipeline_hsw+0x75>
63 DB 76,137,233 ; mov %r13,%rcx
64 DB 72,41,249 ; sub %rdi,%rcx
65 DB 116,41 ; je e7 <_sk_start_pipeline_hsw+0xe7>
66 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
67 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
68 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
69 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3
70 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4
71 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5
72 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6
73 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7
74 DB 76,137,230 ; mov %r12,%rsi
75 DB 76,137,242 ; mov %r14,%rdx
76 DB 65,255,215 ; callq *%r15
77 DB 76,137,232 ; mov %r13,%rax
78 DB 197,248,40,52,36 ; vmovaps (%rsp),%xmm6
79 DB 197,248,40,124,36,16 ; vmovaps 0x10(%rsp),%xmm7
80 DB 197,120,40,68,36,32 ; vmovaps 0x20(%rsp),%xmm8
81 DB 197,120,40,76,36,48 ; vmovaps 0x30(%rsp),%xmm9
82 DB 197,120,40,84,36,64 ; vmovaps 0x40(%rsp),%xmm10
83 DB 197,120,40,92,36,80 ; vmovaps 0x50(%rsp),%xmm11
84 DB 197,120,40,100,36,96 ; vmovaps 0x60(%rsp),%xmm12
85 DB 197,120,40,108,36,112 ; vmovaps 0x70(%rsp),%xmm13
86 DB 197,120,40,180,36,128,0,0,0 ; vmovaps 0x80(%rsp),%xmm14
87 DB 197,120,40,188,36,144,0,0,0 ; vmovaps 0x90(%rsp),%xmm15
88 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp
89 DB 91 ; pop %rbx
90 DB 95 ; pop %rdi
91 DB 94 ; pop %rsi
92 DB 65,92 ; pop %r12
93 DB 65,93 ; pop %r13
94 DB 65,94 ; pop %r14
95 DB 65,95 ; pop %r15
96 DB 197,248,119 ; vzeroupper
97 DB 195 ; retq
98
99PUBLIC _sk_just_return_hsw
100_sk_just_return_hsw LABEL PROC
101 DB 195 ; retq
102
103PUBLIC _sk_seed_shader_hsw
104_sk_seed_shader_hsw LABEL PROC
105 DB 72,173 ; lods %ds:(%rsi),%rax
106 DB 197,249,110,199 ; vmovd %edi,%xmm0
107 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0
108 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -0400109 DB 196,226,125,24,13,206,71,0,0 ; vbroadcastss 0x47ce(%rip),%ymm1 # 4928 <_sk_callback_hsw+0x11b>
Mike Kleind7e06ae2017-03-29 16:33:06 -0400110 DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0
111 DB 197,252,88,2 ; vaddps (%rdx),%ymm0,%ymm0
112 DB 196,226,125,24,16 ; vbroadcastss (%rax),%ymm2
113 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
114 DB 197,236,88,201 ; vaddps %ymm1,%ymm2,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -0400115 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -0400116 DB 196,226,125,24,21,178,71,0,0 ; vbroadcastss 0x47b2(%rip),%ymm2 # 492c <_sk_callback_hsw+0x11f>
Mike Kleind7e06ae2017-03-29 16:33:06 -0400117 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3
118 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4
119 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5
120 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6
121 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7
122 DB 255,224 ; jmpq *%rax
123
Mike Klein581e6982017-05-03 13:05:13 -0400124PUBLIC _sk_dither_hsw
125_sk_dither_hsw LABEL PROC
126 DB 72,173 ; lods %ds:(%rsi),%rax
127 DB 197,121,110,199 ; vmovd %edi,%xmm8
128 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8
Mike Klein5d7f2b52017-05-20 13:21:59 -0400129 DB 197,61,254,66,32 ; vpaddd 0x20(%rdx),%ymm8,%ymm8
Mike Klein581e6982017-05-03 13:05:13 -0400130 DB 76,139,0 ; mov (%rax),%r8
131 DB 196,66,125,88,8 ; vpbroadcastd (%r8),%ymm9
132 DB 196,65,61,239,201 ; vpxor %ymm9,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -0400133 DB 196,98,125,88,21,122,71,0,0 ; vpbroadcastd 0x477a(%rip),%ymm10 # 4930 <_sk_callback_hsw+0x123>
Mike Klein581e6982017-05-03 13:05:13 -0400134 DB 196,65,53,219,218 ; vpand %ymm10,%ymm9,%ymm11
135 DB 196,193,37,114,243,5 ; vpslld $0x5,%ymm11,%ymm11
136 DB 196,65,61,219,210 ; vpand %ymm10,%ymm8,%ymm10
137 DB 196,193,45,114,242,4 ; vpslld $0x4,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -0400138 DB 196,98,125,88,37,95,71,0,0 ; vpbroadcastd 0x475f(%rip),%ymm12 # 4934 <_sk_callback_hsw+0x127>
139 DB 196,98,125,88,45,90,71,0,0 ; vpbroadcastd 0x475a(%rip),%ymm13 # 4938 <_sk_callback_hsw+0x12b>
Mike Klein581e6982017-05-03 13:05:13 -0400140 DB 196,65,53,219,245 ; vpand %ymm13,%ymm9,%ymm14
141 DB 196,193,13,114,246,2 ; vpslld $0x2,%ymm14,%ymm14
142 DB 196,65,61,219,237 ; vpand %ymm13,%ymm8,%ymm13
143 DB 196,65,21,254,237 ; vpaddd %ymm13,%ymm13,%ymm13
144 DB 196,65,53,219,204 ; vpand %ymm12,%ymm9,%ymm9
145 DB 196,193,53,114,209,1 ; vpsrld $0x1,%ymm9,%ymm9
146 DB 196,65,61,219,196 ; vpand %ymm12,%ymm8,%ymm8
147 DB 196,193,61,114,208,2 ; vpsrld $0x2,%ymm8,%ymm8
148 DB 196,65,21,235,210 ; vpor %ymm10,%ymm13,%ymm10
149 DB 196,65,45,235,192 ; vpor %ymm8,%ymm10,%ymm8
Mike Klein5d7f2b52017-05-20 13:21:59 -0400150 DB 196,65,61,235,195 ; vpor %ymm11,%ymm8,%ymm8
151 DB 196,65,13,235,201 ; vpor %ymm9,%ymm14,%ymm9
Mike Klein581e6982017-05-03 13:05:13 -0400152 DB 196,65,61,235,193 ; vpor %ymm9,%ymm8,%ymm8
153 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -0400154 DB 196,98,125,24,13,12,71,0,0 ; vbroadcastss 0x470c(%rip),%ymm9 # 493c <_sk_callback_hsw+0x12f>
155 DB 196,98,125,24,21,7,71,0,0 ; vbroadcastss 0x4707(%rip),%ymm10 # 4940 <_sk_callback_hsw+0x133>
Mike Klein581e6982017-05-03 13:05:13 -0400156 DB 196,66,61,184,209 ; vfmadd231ps %ymm9,%ymm8,%ymm10
157 DB 196,98,125,24,64,8 ; vbroadcastss 0x8(%rax),%ymm8
158 DB 196,65,60,89,194 ; vmulps %ymm10,%ymm8,%ymm8
Mike Klein581e6982017-05-03 13:05:13 -0400159 DB 197,188,88,192 ; vaddps %ymm0,%ymm8,%ymm0
160 DB 197,188,88,201 ; vaddps %ymm1,%ymm8,%ymm1
161 DB 197,188,88,210 ; vaddps %ymm2,%ymm8,%ymm2
Mike Klein7e68bc92017-05-16 12:03:15 -0400162 DB 197,252,93,195 ; vminps %ymm3,%ymm0,%ymm0
163 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
164 DB 197,188,95,192 ; vmaxps %ymm0,%ymm8,%ymm0
165 DB 197,244,93,203 ; vminps %ymm3,%ymm1,%ymm1
166 DB 197,188,95,201 ; vmaxps %ymm1,%ymm8,%ymm1
167 DB 197,236,93,211 ; vminps %ymm3,%ymm2,%ymm2
168 DB 197,188,95,210 ; vmaxps %ymm2,%ymm8,%ymm2
Mike Klein581e6982017-05-03 13:05:13 -0400169 DB 72,173 ; lods %ds:(%rsi),%rax
170 DB 255,224 ; jmpq *%rax
171
Mike Kleind7e06ae2017-03-29 16:33:06 -0400172PUBLIC _sk_constant_color_hsw
173_sk_constant_color_hsw LABEL PROC
174 DB 72,173 ; lods %ds:(%rsi),%rax
175 DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0
176 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1
177 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2
178 DB 196,226,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm3
179 DB 72,173 ; lods %ds:(%rsi),%rax
180 DB 255,224 ; jmpq *%rax
181
Mike Reed9959f722017-05-15 09:34:22 -0400182PUBLIC _sk_load_rgba_hsw
183_sk_load_rgba_hsw LABEL PROC
184 DB 72,173 ; lods %ds:(%rsi),%rax
185 DB 197,252,16,0 ; vmovups (%rax),%ymm0
186 DB 197,252,16,72,32 ; vmovups 0x20(%rax),%ymm1
187 DB 197,252,16,80,64 ; vmovups 0x40(%rax),%ymm2
188 DB 197,252,16,88,96 ; vmovups 0x60(%rax),%ymm3
189 DB 72,173 ; lods %ds:(%rsi),%rax
190 DB 255,224 ; jmpq *%rax
191
192PUBLIC _sk_store_rgba_hsw
193_sk_store_rgba_hsw LABEL PROC
194 DB 72,173 ; lods %ds:(%rsi),%rax
195 DB 197,252,17,0 ; vmovups %ymm0,(%rax)
196 DB 197,252,17,72,32 ; vmovups %ymm1,0x20(%rax)
197 DB 197,252,17,80,64 ; vmovups %ymm2,0x40(%rax)
198 DB 197,252,17,88,96 ; vmovups %ymm3,0x60(%rax)
199 DB 72,173 ; lods %ds:(%rsi),%rax
200 DB 255,224 ; jmpq *%rax
201
Mike Kleind7e06ae2017-03-29 16:33:06 -0400202PUBLIC _sk_clear_hsw
203_sk_clear_hsw LABEL PROC
204 DB 72,173 ; lods %ds:(%rsi),%rax
205 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
206 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
207 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
208 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3
209 DB 255,224 ; jmpq *%rax
210
Mike Kleinaaca1e42017-03-31 09:29:01 -0400211PUBLIC _sk_srcatop_hsw
212_sk_srcatop_hsw LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -0400213 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -0400214 DB 196,98,125,24,5,94,70,0,0 ; vbroadcastss 0x465e(%rip),%ymm8 # 4944 <_sk_callback_hsw+0x137>
Mike Kleinaaca1e42017-03-31 09:29:01 -0400215 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -0400216 DB 196,226,61,184,196 ; vfmadd231ps %ymm4,%ymm8,%ymm0
217 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
218 DB 196,226,61,184,205 ; vfmadd231ps %ymm5,%ymm8,%ymm1
219 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
220 DB 196,226,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm2
Mike Kleinaaca1e42017-03-31 09:29:01 -0400221 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
222 DB 196,194,69,168,216 ; vfmadd213ps %ymm8,%ymm7,%ymm3
223 DB 72,173 ; lods %ds:(%rsi),%rax
224 DB 255,224 ; jmpq *%rax
225
226PUBLIC _sk_dstatop_hsw
227_sk_dstatop_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400228 DB 196,98,125,24,5,49,70,0,0 ; vbroadcastss 0x4631(%rip),%ymm8 # 4948 <_sk_callback_hsw+0x13b>
Mike Kleinaaca1e42017-03-31 09:29:01 -0400229 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8
230 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
231 DB 196,226,101,184,196 ; vfmadd231ps %ymm4,%ymm3,%ymm0
232 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
233 DB 196,226,101,184,205 ; vfmadd231ps %ymm5,%ymm3,%ymm1
234 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
235 DB 196,226,101,184,214 ; vfmadd231ps %ymm6,%ymm3,%ymm2
236 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8
237 DB 196,194,69,168,216 ; vfmadd213ps %ymm8,%ymm7,%ymm3
238 DB 72,173 ; lods %ds:(%rsi),%rax
239 DB 255,224 ; jmpq *%rax
240
241PUBLIC _sk_srcin_hsw
242_sk_srcin_hsw LABEL PROC
243 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
244 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
245 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
246 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
247 DB 72,173 ; lods %ds:(%rsi),%rax
248 DB 255,224 ; jmpq *%rax
249
250PUBLIC _sk_dstin_hsw
251_sk_dstin_hsw LABEL PROC
252 DB 197,228,89,196 ; vmulps %ymm4,%ymm3,%ymm0
253 DB 197,228,89,205 ; vmulps %ymm5,%ymm3,%ymm1
254 DB 197,228,89,214 ; vmulps %ymm6,%ymm3,%ymm2
255 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
256 DB 72,173 ; lods %ds:(%rsi),%rax
257 DB 255,224 ; jmpq *%rax
258
259PUBLIC _sk_srcout_hsw
260_sk_srcout_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400261 DB 196,98,125,24,5,216,69,0,0 ; vbroadcastss 0x45d8(%rip),%ymm8 # 494c <_sk_callback_hsw+0x13f>
Mike Kleinaaca1e42017-03-31 09:29:01 -0400262 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8
263 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
264 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
265 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
266 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
267 DB 72,173 ; lods %ds:(%rsi),%rax
268 DB 255,224 ; jmpq *%rax
269
270PUBLIC _sk_dstout_hsw
271_sk_dstout_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400272 DB 196,226,125,24,5,187,69,0,0 ; vbroadcastss 0x45bb(%rip),%ymm0 # 4950 <_sk_callback_hsw+0x143>
Mike Kleinaaca1e42017-03-31 09:29:01 -0400273 DB 197,252,92,219 ; vsubps %ymm3,%ymm0,%ymm3
274 DB 197,228,89,196 ; vmulps %ymm4,%ymm3,%ymm0
275 DB 197,228,89,205 ; vmulps %ymm5,%ymm3,%ymm1
276 DB 197,228,89,214 ; vmulps %ymm6,%ymm3,%ymm2
277 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -0400278 DB 72,173 ; lods %ds:(%rsi),%rax
279 DB 255,224 ; jmpq *%rax
280
281PUBLIC _sk_srcover_hsw
282_sk_srcover_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400283 DB 196,98,125,24,5,158,69,0,0 ; vbroadcastss 0x459e(%rip),%ymm8 # 4954 <_sk_callback_hsw+0x147>
Mike Kleind7e06ae2017-03-29 16:33:06 -0400284 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
285 DB 196,194,93,184,192 ; vfmadd231ps %ymm8,%ymm4,%ymm0
286 DB 196,194,85,184,200 ; vfmadd231ps %ymm8,%ymm5,%ymm1
287 DB 196,194,77,184,208 ; vfmadd231ps %ymm8,%ymm6,%ymm2
288 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
289 DB 72,173 ; lods %ds:(%rsi),%rax
290 DB 255,224 ; jmpq *%rax
291
292PUBLIC _sk_dstover_hsw
293_sk_dstover_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400294 DB 196,98,125,24,5,125,69,0,0 ; vbroadcastss 0x457d(%rip),%ymm8 # 4958 <_sk_callback_hsw+0x14b>
Mike Kleind7e06ae2017-03-29 16:33:06 -0400295 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8
296 DB 196,226,61,168,196 ; vfmadd213ps %ymm4,%ymm8,%ymm0
297 DB 196,226,61,168,205 ; vfmadd213ps %ymm5,%ymm8,%ymm1
298 DB 196,226,61,168,214 ; vfmadd213ps %ymm6,%ymm8,%ymm2
299 DB 196,226,61,168,223 ; vfmadd213ps %ymm7,%ymm8,%ymm3
300 DB 72,173 ; lods %ds:(%rsi),%rax
301 DB 255,224 ; jmpq *%rax
302
Mike Kleinaaca1e42017-03-31 09:29:01 -0400303PUBLIC _sk_modulate_hsw
304_sk_modulate_hsw LABEL PROC
305 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0
306 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1
307 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2
308 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
309 DB 72,173 ; lods %ds:(%rsi),%rax
310 DB 255,224 ; jmpq *%rax
311
312PUBLIC _sk_multiply_hsw
313_sk_multiply_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400314 DB 196,98,125,24,5,72,69,0,0 ; vbroadcastss 0x4548(%rip),%ymm8 # 495c <_sk_callback_hsw+0x14f>
Mike Kleinaaca1e42017-03-31 09:29:01 -0400315 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -0400316 DB 197,52,89,208 ; vmulps %ymm0,%ymm9,%ymm10
Mike Kleinaaca1e42017-03-31 09:29:01 -0400317 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -0400318 DB 196,98,61,184,212 ; vfmadd231ps %ymm4,%ymm8,%ymm10
Mike Kleinaaca1e42017-03-31 09:29:01 -0400319 DB 196,194,93,168,194 ; vfmadd213ps %ymm10,%ymm4,%ymm0
320 DB 197,52,89,209 ; vmulps %ymm1,%ymm9,%ymm10
321 DB 196,98,61,184,213 ; vfmadd231ps %ymm5,%ymm8,%ymm10
322 DB 196,194,85,168,202 ; vfmadd213ps %ymm10,%ymm5,%ymm1
323 DB 197,52,89,210 ; vmulps %ymm2,%ymm9,%ymm10
324 DB 196,98,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm10
325 DB 196,194,77,168,210 ; vfmadd213ps %ymm10,%ymm6,%ymm2
326 DB 197,52,89,203 ; vmulps %ymm3,%ymm9,%ymm9
327 DB 196,66,69,168,193 ; vfmadd213ps %ymm9,%ymm7,%ymm8
328 DB 196,194,69,168,216 ; vfmadd213ps %ymm8,%ymm7,%ymm3
329 DB 72,173 ; lods %ds:(%rsi),%rax
330 DB 255,224 ; jmpq *%rax
331
332PUBLIC _sk_plus__hsw
333_sk_plus__hsw LABEL PROC
334 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0
335 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1
336 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2
337 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
338 DB 72,173 ; lods %ds:(%rsi),%rax
339 DB 255,224 ; jmpq *%rax
340
341PUBLIC _sk_screen_hsw
342_sk_screen_hsw LABEL PROC
343 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
344 DB 196,194,93,172,192 ; vfnmadd213ps %ymm8,%ymm4,%ymm0
345 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
346 DB 196,194,85,172,200 ; vfnmadd213ps %ymm8,%ymm5,%ymm1
347 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
348 DB 196,194,77,172,208 ; vfnmadd213ps %ymm8,%ymm6,%ymm2
349 DB 197,100,88,199 ; vaddps %ymm7,%ymm3,%ymm8
350 DB 196,194,69,172,216 ; vfnmadd213ps %ymm8,%ymm7,%ymm3
351 DB 72,173 ; lods %ds:(%rsi),%rax
352 DB 255,224 ; jmpq *%rax
353
354PUBLIC _sk_xor__hsw
355_sk_xor__hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400356 DB 196,98,125,24,5,195,68,0,0 ; vbroadcastss 0x44c3(%rip),%ymm8 # 4960 <_sk_callback_hsw+0x153>
Mike Kleinaaca1e42017-03-31 09:29:01 -0400357 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -0400358 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
Mike Kleinaaca1e42017-03-31 09:29:01 -0400359 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -0400360 DB 196,226,61,184,196 ; vfmadd231ps %ymm4,%ymm8,%ymm0
Mike Kleinaaca1e42017-03-31 09:29:01 -0400361 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1
362 DB 196,226,61,184,205 ; vfmadd231ps %ymm5,%ymm8,%ymm1
363 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2
364 DB 196,226,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm2
365 DB 197,180,89,219 ; vmulps %ymm3,%ymm9,%ymm3
366 DB 196,98,69,168,195 ; vfmadd213ps %ymm3,%ymm7,%ymm8
367 DB 72,173 ; lods %ds:(%rsi),%rax
368 DB 197,124,41,195 ; vmovaps %ymm8,%ymm3
369 DB 255,224 ; jmpq *%rax
370
Mike Klein66b09ab2017-03-31 10:29:40 -0400371PUBLIC _sk_darken_hsw
372_sk_darken_hsw LABEL PROC
373 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
374 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
375 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9
376 DB 196,193,124,95,193 ; vmaxps %ymm9,%ymm0,%ymm0
377 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
378 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
379 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
380 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9
381 DB 196,193,116,95,201 ; vmaxps %ymm9,%ymm1,%ymm1
382 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
383 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
384 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
385 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9
386 DB 196,193,108,95,209 ; vmaxps %ymm9,%ymm2,%ymm2
387 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -0400388 DB 196,98,125,24,5,75,68,0,0 ; vbroadcastss 0x444b(%rip),%ymm8 # 4964 <_sk_callback_hsw+0x157>
Mike Klein66b09ab2017-03-31 10:29:40 -0400389 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
390 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
391 DB 72,173 ; lods %ds:(%rsi),%rax
392 DB 255,224 ; jmpq *%rax
393
394PUBLIC _sk_lighten_hsw
395_sk_lighten_hsw LABEL PROC
396 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
397 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
398 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9
399 DB 196,193,124,93,193 ; vminps %ymm9,%ymm0,%ymm0
400 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
401 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
402 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
403 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9
404 DB 196,193,116,93,201 ; vminps %ymm9,%ymm1,%ymm1
405 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
406 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
407 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
408 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9
409 DB 196,193,108,93,209 ; vminps %ymm9,%ymm2,%ymm2
410 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -0400411 DB 196,98,125,24,5,250,67,0,0 ; vbroadcastss 0x43fa(%rip),%ymm8 # 4968 <_sk_callback_hsw+0x15b>
Mike Klein66b09ab2017-03-31 10:29:40 -0400412 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
413 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
414 DB 72,173 ; lods %ds:(%rsi),%rax
415 DB 255,224 ; jmpq *%rax
416
417PUBLIC _sk_difference_hsw
418_sk_difference_hsw LABEL PROC
419 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
420 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
421 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9
422 DB 196,193,124,93,193 ; vminps %ymm9,%ymm0,%ymm0
423 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0
424 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
425 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
426 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
427 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9
428 DB 196,193,116,93,201 ; vminps %ymm9,%ymm1,%ymm1
429 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1
430 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
431 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
432 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
433 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9
434 DB 196,193,108,93,209 ; vminps %ymm9,%ymm2,%ymm2
435 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2
436 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -0400437 DB 196,98,125,24,5,157,67,0,0 ; vbroadcastss 0x439d(%rip),%ymm8 # 496c <_sk_callback_hsw+0x15f>
Mike Klein66b09ab2017-03-31 10:29:40 -0400438 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
439 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
440 DB 72,173 ; lods %ds:(%rsi),%rax
441 DB 255,224 ; jmpq *%rax
442
443PUBLIC _sk_exclusion_hsw
444_sk_exclusion_hsw LABEL PROC
445 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
446 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0
447 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0
448 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
449 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
450 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1
451 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1
452 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
453 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
454 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2
455 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2
456 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -0400457 DB 196,98,125,24,5,91,67,0,0 ; vbroadcastss 0x435b(%rip),%ymm8 # 4970 <_sk_callback_hsw+0x163>
Mike Klein66b09ab2017-03-31 10:29:40 -0400458 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
459 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
460 DB 72,173 ; lods %ds:(%rsi),%rax
461 DB 255,224 ; jmpq *%rax
462
Mike Klein61b84162017-03-31 11:48:14 -0400463PUBLIC _sk_colorburn_hsw
464_sk_colorburn_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400465 DB 196,98,125,24,5,73,67,0,0 ; vbroadcastss 0x4349(%rip),%ymm8 # 4974 <_sk_callback_hsw+0x167>
Mike Klein61b84162017-03-31 11:48:14 -0400466 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9
467 DB 197,52,89,216 ; vmulps %ymm0,%ymm9,%ymm11
468 DB 196,65,44,87,210 ; vxorps %ymm10,%ymm10,%ymm10
469 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
470 DB 197,60,89,228 ; vmulps %ymm4,%ymm8,%ymm12
471 DB 197,68,92,236 ; vsubps %ymm4,%ymm7,%ymm13
472 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13
473 DB 197,20,94,232 ; vdivps %ymm0,%ymm13,%ymm13
474 DB 196,65,68,93,237 ; vminps %ymm13,%ymm7,%ymm13
475 DB 196,65,68,92,237 ; vsubps %ymm13,%ymm7,%ymm13
476 DB 196,66,101,168,235 ; vfmadd213ps %ymm11,%ymm3,%ymm13
477 DB 196,65,28,88,237 ; vaddps %ymm13,%ymm12,%ymm13
478 DB 197,28,88,224 ; vaddps %ymm0,%ymm12,%ymm12
479 DB 196,193,124,194,194,0 ; vcmpeqps %ymm10,%ymm0,%ymm0
480 DB 196,195,21,74,196,0 ; vblendvps %ymm0,%ymm12,%ymm13,%ymm0
481 DB 197,92,194,231,0 ; vcmpeqps %ymm7,%ymm4,%ymm12
482 DB 197,36,88,220 ; vaddps %ymm4,%ymm11,%ymm11
483 DB 196,195,125,74,195,192 ; vblendvps %ymm12,%ymm11,%ymm0,%ymm0
484 DB 197,52,89,217 ; vmulps %ymm1,%ymm9,%ymm11
485 DB 197,60,89,229 ; vmulps %ymm5,%ymm8,%ymm12
486 DB 197,68,92,237 ; vsubps %ymm5,%ymm7,%ymm13
487 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13
488 DB 197,20,94,233 ; vdivps %ymm1,%ymm13,%ymm13
489 DB 196,65,68,93,237 ; vminps %ymm13,%ymm7,%ymm13
490 DB 196,65,68,92,237 ; vsubps %ymm13,%ymm7,%ymm13
491 DB 196,66,101,168,235 ; vfmadd213ps %ymm11,%ymm3,%ymm13
492 DB 196,65,28,88,237 ; vaddps %ymm13,%ymm12,%ymm13
493 DB 197,28,88,225 ; vaddps %ymm1,%ymm12,%ymm12
494 DB 196,193,116,194,202,0 ; vcmpeqps %ymm10,%ymm1,%ymm1
495 DB 196,195,21,74,204,16 ; vblendvps %ymm1,%ymm12,%ymm13,%ymm1
496 DB 197,84,194,231,0 ; vcmpeqps %ymm7,%ymm5,%ymm12
497 DB 197,36,88,221 ; vaddps %ymm5,%ymm11,%ymm11
498 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1
499 DB 197,52,89,202 ; vmulps %ymm2,%ymm9,%ymm9
500 DB 196,65,108,194,210,0 ; vcmpeqps %ymm10,%ymm2,%ymm10
501 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11
502 DB 197,68,92,230 ; vsubps %ymm6,%ymm7,%ymm12
503 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12
504 DB 197,28,94,226 ; vdivps %ymm2,%ymm12,%ymm12
505 DB 197,164,88,210 ; vaddps %ymm2,%ymm11,%ymm2
506 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12
507 DB 196,65,68,92,228 ; vsubps %ymm12,%ymm7,%ymm12
508 DB 196,66,101,168,225 ; vfmadd213ps %ymm9,%ymm3,%ymm12
509 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
510 DB 196,227,37,74,210,160 ; vblendvps %ymm10,%ymm2,%ymm11,%ymm2
511 DB 197,76,194,215,0 ; vcmpeqps %ymm7,%ymm6,%ymm10
512 DB 197,52,88,206 ; vaddps %ymm6,%ymm9,%ymm9
513 DB 196,195,109,74,209,160 ; vblendvps %ymm10,%ymm9,%ymm2,%ymm2
514 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
515 DB 72,173 ; lods %ds:(%rsi),%rax
516 DB 255,224 ; jmpq *%rax
517
518PUBLIC _sk_colordodge_hsw
519_sk_colordodge_hsw LABEL PROC
520 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -0400521 DB 196,98,125,24,13,84,66,0,0 ; vbroadcastss 0x4254(%rip),%ymm9 # 4978 <_sk_callback_hsw+0x16b>
Mike Klein61b84162017-03-31 11:48:14 -0400522 DB 197,52,92,215 ; vsubps %ymm7,%ymm9,%ymm10
523 DB 197,44,89,216 ; vmulps %ymm0,%ymm10,%ymm11
524 DB 197,52,92,203 ; vsubps %ymm3,%ymm9,%ymm9
525 DB 197,100,89,228 ; vmulps %ymm4,%ymm3,%ymm12
526 DB 197,100,92,232 ; vsubps %ymm0,%ymm3,%ymm13
527 DB 196,65,28,94,229 ; vdivps %ymm13,%ymm12,%ymm12
528 DB 197,52,89,236 ; vmulps %ymm4,%ymm9,%ymm13
529 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12
530 DB 196,66,101,168,227 ; vfmadd213ps %ymm11,%ymm3,%ymm12
531 DB 196,65,20,88,228 ; vaddps %ymm12,%ymm13,%ymm12
532 DB 197,20,88,232 ; vaddps %ymm0,%ymm13,%ymm13
533 DB 197,252,194,195,0 ; vcmpeqps %ymm3,%ymm0,%ymm0
534 DB 196,195,29,74,197,0 ; vblendvps %ymm0,%ymm13,%ymm12,%ymm0
535 DB 196,65,92,194,224,0 ; vcmpeqps %ymm8,%ymm4,%ymm12
536 DB 197,36,88,220 ; vaddps %ymm4,%ymm11,%ymm11
537 DB 196,195,125,74,195,192 ; vblendvps %ymm12,%ymm11,%ymm0,%ymm0
538 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11
539 DB 197,100,89,229 ; vmulps %ymm5,%ymm3,%ymm12
540 DB 197,100,92,233 ; vsubps %ymm1,%ymm3,%ymm13
541 DB 196,65,28,94,229 ; vdivps %ymm13,%ymm12,%ymm12
542 DB 197,52,89,237 ; vmulps %ymm5,%ymm9,%ymm13
543 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12
544 DB 196,66,101,168,227 ; vfmadd213ps %ymm11,%ymm3,%ymm12
545 DB 196,65,20,88,228 ; vaddps %ymm12,%ymm13,%ymm12
546 DB 197,20,88,233 ; vaddps %ymm1,%ymm13,%ymm13
547 DB 197,244,194,203,0 ; vcmpeqps %ymm3,%ymm1,%ymm1
548 DB 196,195,29,74,205,16 ; vblendvps %ymm1,%ymm13,%ymm12,%ymm1
549 DB 196,65,84,194,224,0 ; vcmpeqps %ymm8,%ymm5,%ymm12
550 DB 197,36,88,221 ; vaddps %ymm5,%ymm11,%ymm11
551 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1
552 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10
553 DB 197,100,89,222 ; vmulps %ymm6,%ymm3,%ymm11
554 DB 197,100,92,226 ; vsubps %ymm2,%ymm3,%ymm12
555 DB 196,65,36,94,220 ; vdivps %ymm12,%ymm11,%ymm11
556 DB 197,52,89,230 ; vmulps %ymm6,%ymm9,%ymm12
557 DB 196,65,68,93,219 ; vminps %ymm11,%ymm7,%ymm11
558 DB 196,66,101,168,218 ; vfmadd213ps %ymm10,%ymm3,%ymm11
559 DB 196,65,28,88,219 ; vaddps %ymm11,%ymm12,%ymm11
560 DB 197,28,88,226 ; vaddps %ymm2,%ymm12,%ymm12
561 DB 197,236,194,211,0 ; vcmpeqps %ymm3,%ymm2,%ymm2
562 DB 196,195,37,74,212,32 ; vblendvps %ymm2,%ymm12,%ymm11,%ymm2
563 DB 196,65,76,194,192,0 ; vcmpeqps %ymm8,%ymm6,%ymm8
564 DB 197,44,88,214 ; vaddps %ymm6,%ymm10,%ymm10
565 DB 196,195,109,74,210,128 ; vblendvps %ymm8,%ymm10,%ymm2,%ymm2
566 DB 196,194,69,184,217 ; vfmadd231ps %ymm9,%ymm7,%ymm3
567 DB 72,173 ; lods %ds:(%rsi),%rax
568 DB 255,224 ; jmpq *%rax
569
570PUBLIC _sk_hardlight_hsw
571_sk_hardlight_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400572 DB 196,98,125,24,5,117,65,0,0 ; vbroadcastss 0x4175(%rip),%ymm8 # 497c <_sk_callback_hsw+0x16f>
Mike Klein61b84162017-03-31 11:48:14 -0400573 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -0400574 DB 197,44,89,216 ; vmulps %ymm0,%ymm10,%ymm11
Mike Klein61b84162017-03-31 11:48:14 -0400575 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -0400576 DB 196,98,61,184,220 ; vfmadd231ps %ymm4,%ymm8,%ymm11
Mike Klein61b84162017-03-31 11:48:14 -0400577 DB 197,124,88,200 ; vaddps %ymm0,%ymm0,%ymm9
578 DB 197,52,194,227,2 ; vcmpleps %ymm3,%ymm9,%ymm12
579 DB 197,124,89,204 ; vmulps %ymm4,%ymm0,%ymm9
580 DB 196,65,52,88,233 ; vaddps %ymm9,%ymm9,%ymm13
581 DB 197,100,89,207 ; vmulps %ymm7,%ymm3,%ymm9
582 DB 197,68,92,244 ; vsubps %ymm4,%ymm7,%ymm14
583 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0
584 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0
585 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0
586 DB 197,180,92,192 ; vsubps %ymm0,%ymm9,%ymm0
587 DB 196,195,125,74,197,192 ; vblendvps %ymm12,%ymm13,%ymm0,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -0400588 DB 197,164,88,192 ; vaddps %ymm0,%ymm11,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -0400589 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11
590 DB 196,98,61,184,221 ; vfmadd231ps %ymm5,%ymm8,%ymm11
591 DB 197,116,88,225 ; vaddps %ymm1,%ymm1,%ymm12
592 DB 197,28,194,227,2 ; vcmpleps %ymm3,%ymm12,%ymm12
593 DB 197,116,89,237 ; vmulps %ymm5,%ymm1,%ymm13
594 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13
595 DB 197,68,92,245 ; vsubps %ymm5,%ymm7,%ymm14
596 DB 197,228,92,201 ; vsubps %ymm1,%ymm3,%ymm1
597 DB 196,193,116,89,206 ; vmulps %ymm14,%ymm1,%ymm1
598 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1
599 DB 197,180,92,201 ; vsubps %ymm1,%ymm9,%ymm1
600 DB 196,195,117,74,205,192 ; vblendvps %ymm12,%ymm13,%ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -0400601 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
Mike Klein61b84162017-03-31 11:48:14 -0400602 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10
603 DB 196,98,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm10
604 DB 197,108,88,218 ; vaddps %ymm2,%ymm2,%ymm11
605 DB 197,36,194,219,2 ; vcmpleps %ymm3,%ymm11,%ymm11
606 DB 197,108,89,230 ; vmulps %ymm6,%ymm2,%ymm12
607 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12
608 DB 197,68,92,238 ; vsubps %ymm6,%ymm7,%ymm13
609 DB 197,228,92,210 ; vsubps %ymm2,%ymm3,%ymm2
610 DB 196,193,108,89,213 ; vmulps %ymm13,%ymm2,%ymm2
611 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2
612 DB 197,180,92,210 ; vsubps %ymm2,%ymm9,%ymm2
613 DB 196,195,109,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -0400614 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2
Mike Klein61b84162017-03-31 11:48:14 -0400615 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
616 DB 72,173 ; lods %ds:(%rsi),%rax
617 DB 255,224 ; jmpq *%rax
618
619PUBLIC _sk_overlay_hsw
620_sk_overlay_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -0400621 DB 196,98,125,24,5,173,64,0,0 ; vbroadcastss 0x40ad(%rip),%ymm8 # 4980 <_sk_callback_hsw+0x173>
Mike Klein61b84162017-03-31 11:48:14 -0400622 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -0400623 DB 197,44,89,216 ; vmulps %ymm0,%ymm10,%ymm11
Mike Klein61b84162017-03-31 11:48:14 -0400624 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -0400625 DB 196,98,61,184,220 ; vfmadd231ps %ymm4,%ymm8,%ymm11
Mike Klein61b84162017-03-31 11:48:14 -0400626 DB 197,92,88,204 ; vaddps %ymm4,%ymm4,%ymm9
627 DB 197,52,194,231,2 ; vcmpleps %ymm7,%ymm9,%ymm12
628 DB 197,124,89,204 ; vmulps %ymm4,%ymm0,%ymm9
629 DB 196,65,52,88,233 ; vaddps %ymm9,%ymm9,%ymm13
630 DB 197,100,89,207 ; vmulps %ymm7,%ymm3,%ymm9
631 DB 197,68,92,244 ; vsubps %ymm4,%ymm7,%ymm14
632 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0
633 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0
634 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0
635 DB 197,180,92,192 ; vsubps %ymm0,%ymm9,%ymm0
636 DB 196,195,125,74,197,192 ; vblendvps %ymm12,%ymm13,%ymm0,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -0400637 DB 197,164,88,192 ; vaddps %ymm0,%ymm11,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -0400638 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11
639 DB 196,98,61,184,221 ; vfmadd231ps %ymm5,%ymm8,%ymm11
640 DB 197,84,88,229 ; vaddps %ymm5,%ymm5,%ymm12
641 DB 197,28,194,231,2 ; vcmpleps %ymm7,%ymm12,%ymm12
642 DB 197,116,89,237 ; vmulps %ymm5,%ymm1,%ymm13
643 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13
644 DB 197,68,92,245 ; vsubps %ymm5,%ymm7,%ymm14
645 DB 197,228,92,201 ; vsubps %ymm1,%ymm3,%ymm1
646 DB 196,193,116,89,206 ; vmulps %ymm14,%ymm1,%ymm1
647 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1
648 DB 197,180,92,201 ; vsubps %ymm1,%ymm9,%ymm1
649 DB 196,195,117,74,205,192 ; vblendvps %ymm12,%ymm13,%ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -0400650 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
Mike Klein61b84162017-03-31 11:48:14 -0400651 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10
652 DB 196,98,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm10
653 DB 197,76,88,222 ; vaddps %ymm6,%ymm6,%ymm11
654 DB 197,36,194,223,2 ; vcmpleps %ymm7,%ymm11,%ymm11
655 DB 197,108,89,230 ; vmulps %ymm6,%ymm2,%ymm12
656 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12
657 DB 197,68,92,238 ; vsubps %ymm6,%ymm7,%ymm13
658 DB 197,228,92,210 ; vsubps %ymm2,%ymm3,%ymm2
659 DB 196,193,108,89,213 ; vmulps %ymm13,%ymm2,%ymm2
660 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2
661 DB 197,180,92,210 ; vsubps %ymm2,%ymm9,%ymm2
662 DB 196,195,109,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -0400663 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2
Mike Klein61b84162017-03-31 11:48:14 -0400664 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
665 DB 72,173 ; lods %ds:(%rsi),%rax
666 DB 255,224 ; jmpq *%rax
667
668PUBLIC _sk_softlight_hsw
669_sk_softlight_hsw LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -0400670 DB 72,131,236,88 ; sub $0x58,%rsp
671 DB 197,252,17,84,36,32 ; vmovups %ymm2,0x20(%rsp)
672 DB 197,252,40,209 ; vmovaps %ymm1,%ymm2
673 DB 197,252,40,200 ; vmovaps %ymm0,%ymm1
674 DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9
675 DB 197,52,194,215,1 ; vcmpltps %ymm7,%ymm9,%ymm10
Mike Klein61b84162017-03-31 11:48:14 -0400676 DB 197,92,94,199 ; vdivps %ymm7,%ymm4,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -0400677 DB 196,67,53,74,232,160 ; vblendvps %ymm10,%ymm8,%ymm9,%ymm13
678 DB 196,65,20,88,197 ; vaddps %ymm13,%ymm13,%ymm8
679 DB 196,65,60,88,192 ; vaddps %ymm8,%ymm8,%ymm8
680 DB 196,66,61,168,192 ; vfmadd213ps %ymm8,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -0400681 DB 196,98,125,24,29,180,63,0,0 ; vbroadcastss 0x3fb4(%rip),%ymm11 # 4988 <_sk_callback_hsw+0x17b>
Mike Kleinfe560a82017-05-01 12:56:35 -0400682 DB 196,65,20,88,227 ; vaddps %ymm11,%ymm13,%ymm12
683 DB 196,65,28,89,192 ; vmulps %ymm8,%ymm12,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -0400684 DB 196,98,125,24,37,165,63,0,0 ; vbroadcastss 0x3fa5(%rip),%ymm12 # 498c <_sk_callback_hsw+0x17f>
Mike Kleinfe560a82017-05-01 12:56:35 -0400685 DB 196,66,21,184,196 ; vfmadd231ps %ymm12,%ymm13,%ymm8
686 DB 196,65,124,82,245 ; vrsqrtps %ymm13,%ymm14
687 DB 196,65,124,83,246 ; vrcpps %ymm14,%ymm14
688 DB 196,65,12,92,245 ; vsubps %ymm13,%ymm14,%ymm14
689 DB 197,92,88,252 ; vaddps %ymm4,%ymm4,%ymm15
690 DB 196,65,4,88,255 ; vaddps %ymm15,%ymm15,%ymm15
691 DB 197,4,194,255,2 ; vcmpleps %ymm7,%ymm15,%ymm15
692 DB 196,67,13,74,240,240 ; vblendvps %ymm15,%ymm8,%ymm14,%ymm14
693 DB 197,116,88,249 ; vaddps %ymm1,%ymm1,%ymm15
Mike Klein8ca33562017-05-23 08:07:43 -0400694 DB 196,98,125,24,5,104,63,0,0 ; vbroadcastss 0x3f68(%rip),%ymm8 # 4984 <_sk_callback_hsw+0x177>
Mike Kleinfe560a82017-05-01 12:56:35 -0400695 DB 196,65,60,92,237 ; vsubps %ymm13,%ymm8,%ymm13
696 DB 197,132,92,195 ; vsubps %ymm3,%ymm15,%ymm0
697 DB 196,98,125,168,235 ; vfmadd213ps %ymm3,%ymm0,%ymm13
698 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
699 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0
700 DB 197,20,89,236 ; vmulps %ymm4,%ymm13,%ymm13
701 DB 196,226,101,184,196 ; vfmadd231ps %ymm4,%ymm3,%ymm0
702 DB 197,4,194,243,2 ; vcmpleps %ymm3,%ymm15,%ymm14
703 DB 196,195,125,74,197,224 ; vblendvps %ymm14,%ymm13,%ymm0,%ymm0
704 DB 197,252,17,4,36 ; vmovups %ymm0,(%rsp)
705 DB 197,212,94,199 ; vdivps %ymm7,%ymm5,%ymm0
706 DB 196,227,53,74,192,160 ; vblendvps %ymm10,%ymm0,%ymm9,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -0400707 DB 197,124,88,240 ; vaddps %ymm0,%ymm0,%ymm14
Mike Klein61b84162017-03-31 11:48:14 -0400708 DB 196,65,12,88,246 ; vaddps %ymm14,%ymm14,%ymm14
709 DB 196,66,13,168,246 ; vfmadd213ps %ymm14,%ymm14,%ymm14
Mike Kleinfe560a82017-05-01 12:56:35 -0400710 DB 196,65,124,88,251 ; vaddps %ymm11,%ymm0,%ymm15
Mike Klein61b84162017-03-31 11:48:14 -0400711 DB 196,65,4,89,246 ; vmulps %ymm14,%ymm15,%ymm14
Mike Kleinfe560a82017-05-01 12:56:35 -0400712 DB 196,66,125,184,244 ; vfmadd231ps %ymm12,%ymm0,%ymm14
713 DB 197,124,82,248 ; vrsqrtps %ymm0,%ymm15
Mike Klein61b84162017-03-31 11:48:14 -0400714 DB 196,65,124,83,255 ; vrcpps %ymm15,%ymm15
Mike Kleinfe560a82017-05-01 12:56:35 -0400715 DB 197,4,92,248 ; vsubps %ymm0,%ymm15,%ymm15
716 DB 197,84,88,237 ; vaddps %ymm5,%ymm5,%ymm13
717 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13
718 DB 197,20,194,239,2 ; vcmpleps %ymm7,%ymm13,%ymm13
719 DB 196,67,5,74,238,208 ; vblendvps %ymm13,%ymm14,%ymm15,%ymm13
720 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
721 DB 197,108,88,242 ; vaddps %ymm2,%ymm2,%ymm14
Mike Klein61b84162017-03-31 11:48:14 -0400722 DB 197,12,92,251 ; vsubps %ymm3,%ymm14,%ymm15
Mike Kleinfe560a82017-05-01 12:56:35 -0400723 DB 196,226,5,168,195 ; vfmadd213ps %ymm3,%ymm15,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -0400724 DB 197,4,89,255 ; vmulps %ymm7,%ymm15,%ymm15
Mike Kleinfe560a82017-05-01 12:56:35 -0400725 DB 196,65,4,89,237 ; vmulps %ymm13,%ymm15,%ymm13
726 DB 197,252,89,197 ; vmulps %ymm5,%ymm0,%ymm0
727 DB 196,98,101,184,237 ; vfmadd231ps %ymm5,%ymm3,%ymm13
Mike Klein61b84162017-03-31 11:48:14 -0400728 DB 197,12,194,243,2 ; vcmpleps %ymm3,%ymm14,%ymm14
Mike Kleinfe560a82017-05-01 12:56:35 -0400729 DB 196,99,21,74,240,224 ; vblendvps %ymm14,%ymm0,%ymm13,%ymm14
730 DB 197,204,94,199 ; vdivps %ymm7,%ymm6,%ymm0
731 DB 196,227,53,74,192,160 ; vblendvps %ymm10,%ymm0,%ymm9,%ymm0
732 DB 197,124,88,200 ; vaddps %ymm0,%ymm0,%ymm9
733 DB 196,65,52,88,201 ; vaddps %ymm9,%ymm9,%ymm9
734 DB 196,66,53,168,201 ; vfmadd213ps %ymm9,%ymm9,%ymm9
735 DB 196,65,124,88,211 ; vaddps %ymm11,%ymm0,%ymm10
736 DB 196,65,44,89,201 ; vmulps %ymm9,%ymm10,%ymm9
737 DB 196,66,125,184,204 ; vfmadd231ps %ymm12,%ymm0,%ymm9
738 DB 197,124,82,208 ; vrsqrtps %ymm0,%ymm10
739 DB 196,65,124,83,210 ; vrcpps %ymm10,%ymm10
740 DB 197,44,92,208 ; vsubps %ymm0,%ymm10,%ymm10
741 DB 197,76,88,222 ; vaddps %ymm6,%ymm6,%ymm11
Mike Klein61b84162017-03-31 11:48:14 -0400742 DB 196,65,36,88,219 ; vaddps %ymm11,%ymm11,%ymm11
Mike Kleinfe560a82017-05-01 12:56:35 -0400743 DB 197,36,194,223,2 ; vcmpleps %ymm7,%ymm11,%ymm11
744 DB 196,67,45,74,201,176 ; vblendvps %ymm11,%ymm9,%ymm10,%ymm9
745 DB 197,124,16,100,36,32 ; vmovups 0x20(%rsp),%ymm12
746 DB 196,65,28,88,212 ; vaddps %ymm12,%ymm12,%ymm10
747 DB 197,44,92,219 ; vsubps %ymm3,%ymm10,%ymm11
748 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
749 DB 196,226,37,168,195 ; vfmadd213ps %ymm3,%ymm11,%ymm0
750 DB 197,36,89,223 ; vmulps %ymm7,%ymm11,%ymm11
751 DB 196,65,36,89,201 ; vmulps %ymm9,%ymm11,%ymm9
752 DB 197,252,89,198 ; vmulps %ymm6,%ymm0,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -0400753 DB 196,98,101,184,206 ; vfmadd231ps %ymm6,%ymm3,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -0400754 DB 197,44,194,211,2 ; vcmpleps %ymm3,%ymm10,%ymm10
755 DB 196,99,53,74,200,160 ; vblendvps %ymm10,%ymm0,%ymm9,%ymm9
Mike Klein61b84162017-03-31 11:48:14 -0400756 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -0400757 DB 197,172,89,193 ; vmulps %ymm1,%ymm10,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -0400758 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -0400759 DB 196,226,61,184,196 ; vfmadd231ps %ymm4,%ymm8,%ymm0
760 DB 197,252,88,4,36 ; vaddps (%rsp),%ymm0,%ymm0
761 DB 197,172,89,202 ; vmulps %ymm2,%ymm10,%ymm1
Mike Klein61b84162017-03-31 11:48:14 -0400762 DB 196,226,61,184,205 ; vfmadd231ps %ymm5,%ymm8,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -0400763 DB 196,193,116,88,206 ; vaddps %ymm14,%ymm1,%ymm1
764 DB 196,193,44,89,212 ; vmulps %ymm12,%ymm10,%ymm2
Mike Klein61b84162017-03-31 11:48:14 -0400765 DB 196,226,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm2
766 DB 196,193,108,88,209 ; vaddps %ymm9,%ymm2,%ymm2
767 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3
768 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -0400769 DB 72,131,196,88 ; add $0x58,%rsp
Mike Klein61b84162017-03-31 11:48:14 -0400770 DB 255,224 ; jmpq *%rax
771
Mike Kleinbb338332017-05-04 12:42:52 -0400772PUBLIC _sk_hue_hsw
773_sk_hue_hsw LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -0400774 DB 72,131,236,88 ; sub $0x58,%rsp
775 DB 197,124,40,194 ; vmovaps %ymm2,%ymm8
776 DB 197,124,17,68,36,32 ; vmovups %ymm8,0x20(%rsp)
777 DB 197,252,17,12,36 ; vmovups %ymm1,(%rsp)
778 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
779 DB 197,108,89,203 ; vmulps %ymm3,%ymm2,%ymm9
780 DB 197,116,89,211 ; vmulps %ymm3,%ymm1,%ymm10
781 DB 197,60,89,219 ; vmulps %ymm3,%ymm8,%ymm11
782 DB 197,84,95,198 ; vmaxps %ymm6,%ymm5,%ymm8
783 DB 196,65,92,95,192 ; vmaxps %ymm8,%ymm4,%ymm8
784 DB 197,84,93,230 ; vminps %ymm6,%ymm5,%ymm12
785 DB 196,65,92,93,228 ; vminps %ymm12,%ymm4,%ymm12
786 DB 196,65,60,92,196 ; vsubps %ymm12,%ymm8,%ymm8
787 DB 197,60,89,227 ; vmulps %ymm3,%ymm8,%ymm12
788 DB 196,65,44,93,195 ; vminps %ymm11,%ymm10,%ymm8
789 DB 196,65,52,93,232 ; vminps %ymm8,%ymm9,%ymm13
790 DB 196,65,44,95,195 ; vmaxps %ymm11,%ymm10,%ymm8
791 DB 196,65,52,95,192 ; vmaxps %ymm8,%ymm9,%ymm8
792 DB 196,65,60,92,245 ; vsubps %ymm13,%ymm8,%ymm14
Mike Kleinbb338332017-05-04 12:42:52 -0400793 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Klein08aa88d2017-05-12 12:59:24 -0400794 DB 196,65,12,194,248,0 ; vcmpeqps %ymm8,%ymm14,%ymm15
795 DB 196,65,52,92,205 ; vsubps %ymm13,%ymm9,%ymm9
796 DB 196,65,28,89,201 ; vmulps %ymm9,%ymm12,%ymm9
797 DB 196,65,52,94,206 ; vdivps %ymm14,%ymm9,%ymm9
798 DB 196,67,53,74,200,240 ; vblendvps %ymm15,%ymm8,%ymm9,%ymm9
799 DB 196,65,44,92,213 ; vsubps %ymm13,%ymm10,%ymm10
800 DB 196,65,28,89,210 ; vmulps %ymm10,%ymm12,%ymm10
801 DB 196,65,44,94,214 ; vdivps %ymm14,%ymm10,%ymm10
802 DB 196,195,45,74,200,240 ; vblendvps %ymm15,%ymm8,%ymm10,%ymm1
803 DB 196,65,36,92,213 ; vsubps %ymm13,%ymm11,%ymm10
804 DB 196,65,28,89,210 ; vmulps %ymm10,%ymm12,%ymm10
805 DB 196,65,44,94,214 ; vdivps %ymm14,%ymm10,%ymm10
806 DB 196,67,45,74,224,240 ; vblendvps %ymm15,%ymm8,%ymm10,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -0400807 DB 196,98,125,24,53,103,61,0,0 ; vbroadcastss 0x3d67(%rip),%ymm14 # 4990 <_sk_callback_hsw+0x183>
808 DB 196,98,125,24,61,98,61,0,0 ; vbroadcastss 0x3d62(%rip),%ymm15 # 4994 <_sk_callback_hsw+0x187>
Mike Klein08aa88d2017-05-12 12:59:24 -0400809 DB 196,65,84,89,239 ; vmulps %ymm15,%ymm5,%ymm13
810 DB 196,66,93,184,238 ; vfmadd231ps %ymm14,%ymm4,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -0400811 DB 196,226,125,24,5,83,61,0,0 ; vbroadcastss 0x3d53(%rip),%ymm0 # 4998 <_sk_callback_hsw+0x18b>
Mike Klein08aa88d2017-05-12 12:59:24 -0400812 DB 196,98,77,184,232 ; vfmadd231ps %ymm0,%ymm6,%ymm13
813 DB 196,65,116,89,215 ; vmulps %ymm15,%ymm1,%ymm10
814 DB 196,66,53,184,214 ; vfmadd231ps %ymm14,%ymm9,%ymm10
815 DB 196,98,29,184,208 ; vfmadd231ps %ymm0,%ymm12,%ymm10
816 DB 196,66,101,170,234 ; vfmsub213ps %ymm10,%ymm3,%ymm13
817 DB 196,65,52,88,213 ; vaddps %ymm13,%ymm9,%ymm10
818 DB 196,65,116,88,221 ; vaddps %ymm13,%ymm1,%ymm11
819 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12
820 DB 196,193,36,93,204 ; vminps %ymm12,%ymm11,%ymm1
821 DB 197,44,93,233 ; vminps %ymm1,%ymm10,%ymm13
822 DB 196,65,36,89,207 ; vmulps %ymm15,%ymm11,%ymm9
823 DB 196,66,45,184,206 ; vfmadd231ps %ymm14,%ymm10,%ymm9
824 DB 196,98,29,184,200 ; vfmadd231ps %ymm0,%ymm12,%ymm9
825 DB 196,193,44,92,193 ; vsubps %ymm9,%ymm10,%ymm0
826 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
827 DB 196,193,52,92,205 ; vsubps %ymm13,%ymm9,%ymm1
828 DB 197,252,94,193 ; vdivps %ymm1,%ymm0,%ymm0
829 DB 196,65,36,92,241 ; vsubps %ymm9,%ymm11,%ymm14
Mike Kleinbb338332017-05-04 12:42:52 -0400830 DB 196,65,52,89,246 ; vmulps %ymm14,%ymm9,%ymm14
Mike Klein08aa88d2017-05-12 12:59:24 -0400831 DB 197,12,94,241 ; vdivps %ymm1,%ymm14,%ymm14
832 DB 196,65,28,92,249 ; vsubps %ymm9,%ymm12,%ymm15
Mike Kleinbb338332017-05-04 12:42:52 -0400833 DB 196,65,52,89,255 ; vmulps %ymm15,%ymm9,%ymm15
Mike Klein08aa88d2017-05-12 12:59:24 -0400834 DB 197,132,94,201 ; vdivps %ymm1,%ymm15,%ymm1
835 DB 196,65,60,194,237,2 ; vcmpleps %ymm13,%ymm8,%ymm13
836 DB 196,65,52,88,246 ; vaddps %ymm14,%ymm9,%ymm14
837 DB 196,67,13,74,243,208 ; vblendvps %ymm13,%ymm11,%ymm14,%ymm14
838 DB 196,65,36,95,220 ; vmaxps %ymm12,%ymm11,%ymm11
839 DB 197,180,88,201 ; vaddps %ymm1,%ymm9,%ymm1
840 DB 196,195,117,74,204,208 ; vblendvps %ymm13,%ymm12,%ymm1,%ymm1
841 DB 197,180,88,192 ; vaddps %ymm0,%ymm9,%ymm0
842 DB 196,195,125,74,194,208 ; vblendvps %ymm13,%ymm10,%ymm0,%ymm0
843 DB 197,100,89,231 ; vmulps %ymm7,%ymm3,%ymm12
844 DB 196,65,44,95,211 ; vmaxps %ymm11,%ymm10,%ymm10
845 DB 196,65,124,92,217 ; vsubps %ymm9,%ymm0,%ymm11
846 DB 196,65,28,92,233 ; vsubps %ymm9,%ymm12,%ymm13
847 DB 196,65,20,89,219 ; vmulps %ymm11,%ymm13,%ymm11
848 DB 196,65,28,194,250,1 ; vcmpltps %ymm10,%ymm12,%ymm15
849 DB 196,65,44,92,209 ; vsubps %ymm9,%ymm10,%ymm10
850 DB 196,65,36,94,218 ; vdivps %ymm10,%ymm11,%ymm11
851 DB 196,65,52,88,219 ; vaddps %ymm11,%ymm9,%ymm11
852 DB 196,195,125,74,195,240 ; vblendvps %ymm15,%ymm11,%ymm0,%ymm0
853 DB 196,65,12,92,217 ; vsubps %ymm9,%ymm14,%ymm11
854 DB 196,65,20,89,219 ; vmulps %ymm11,%ymm13,%ymm11
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,67,13,74,219,240 ; vblendvps %ymm15,%ymm11,%ymm14,%ymm11
858 DB 196,65,116,92,241 ; vsubps %ymm9,%ymm1,%ymm14
859 DB 196,65,20,89,238 ; vmulps %ymm14,%ymm13,%ymm13
860 DB 196,65,20,94,210 ; vdivps %ymm10,%ymm13,%ymm10
861 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
862 DB 196,195,117,74,201,240 ; vblendvps %ymm15,%ymm9,%ymm1,%ymm1
863 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0
864 DB 196,65,36,95,200 ; vmaxps %ymm8,%ymm11,%ymm9
865 DB 196,65,116,95,192 ; vmaxps %ymm8,%ymm1,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -0400866 DB 196,226,125,24,13,64,60,0,0 ; vbroadcastss 0x3c40(%rip),%ymm1 # 499c <_sk_callback_hsw+0x18f>
Mike Klein08aa88d2017-05-12 12:59:24 -0400867 DB 197,116,92,215 ; vsubps %ymm7,%ymm1,%ymm10
868 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2
869 DB 197,116,92,219 ; vsubps %ymm3,%ymm1,%ymm11
870 DB 196,226,37,184,212 ; vfmadd231ps %ymm4,%ymm11,%ymm2
871 DB 197,236,88,192 ; vaddps %ymm0,%ymm2,%ymm0
872 DB 197,172,89,12,36 ; vmulps (%rsp),%ymm10,%ymm1
873 DB 196,226,37,184,205 ; vfmadd231ps %ymm5,%ymm11,%ymm1
874 DB 196,193,116,88,201 ; vaddps %ymm9,%ymm1,%ymm1
875 DB 197,172,89,84,36,32 ; vmulps 0x20(%rsp),%ymm10,%ymm2
876 DB 196,98,77,168,218 ; vfmadd213ps %ymm2,%ymm6,%ymm11
877 DB 196,193,36,88,208 ; vaddps %ymm8,%ymm11,%ymm2
878 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
879 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3
Mike Kleinbb338332017-05-04 12:42:52 -0400880 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -0400881 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -0400882 DB 255,224 ; jmpq *%rax
883
884PUBLIC _sk_saturation_hsw
885_sk_saturation_hsw LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -0400886 DB 72,131,236,88 ; sub $0x58,%rsp
887 DB 197,124,40,194 ; vmovaps %ymm2,%ymm8
888 DB 197,252,17,12,36 ; vmovups %ymm1,(%rsp)
889 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
890 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9
891 DB 197,100,89,213 ; vmulps %ymm5,%ymm3,%ymm10
892 DB 197,100,89,222 ; vmulps %ymm6,%ymm3,%ymm11
893 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
894 DB 197,252,17,68,36,32 ; vmovups %ymm0,0x20(%rsp)
895 DB 197,116,95,192 ; vmaxps %ymm0,%ymm1,%ymm8
896 DB 196,65,108,95,192 ; vmaxps %ymm8,%ymm2,%ymm8
897 DB 197,116,93,224 ; vminps %ymm0,%ymm1,%ymm12
898 DB 196,65,108,93,228 ; vminps %ymm12,%ymm2,%ymm12
899 DB 196,65,60,92,196 ; vsubps %ymm12,%ymm8,%ymm8
900 DB 197,60,89,231 ; vmulps %ymm7,%ymm8,%ymm12
901 DB 196,65,44,93,195 ; vminps %ymm11,%ymm10,%ymm8
902 DB 196,65,52,93,232 ; vminps %ymm8,%ymm9,%ymm13
903 DB 196,65,44,95,195 ; vmaxps %ymm11,%ymm10,%ymm8
904 DB 196,65,52,95,192 ; vmaxps %ymm8,%ymm9,%ymm8
905 DB 196,65,60,92,245 ; vsubps %ymm13,%ymm8,%ymm14
Mike Kleinbb338332017-05-04 12:42:52 -0400906 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Klein08aa88d2017-05-12 12:59:24 -0400907 DB 196,65,12,194,248,0 ; vcmpeqps %ymm8,%ymm14,%ymm15
908 DB 196,65,52,92,205 ; vsubps %ymm13,%ymm9,%ymm9
909 DB 196,65,28,89,201 ; vmulps %ymm9,%ymm12,%ymm9
910 DB 196,65,52,94,206 ; vdivps %ymm14,%ymm9,%ymm9
911 DB 196,67,53,74,200,240 ; vblendvps %ymm15,%ymm8,%ymm9,%ymm9
912 DB 196,65,44,92,213 ; vsubps %ymm13,%ymm10,%ymm10
913 DB 196,65,28,89,210 ; vmulps %ymm10,%ymm12,%ymm10
914 DB 196,65,44,94,214 ; vdivps %ymm14,%ymm10,%ymm10
915 DB 196,195,45,74,200,240 ; vblendvps %ymm15,%ymm8,%ymm10,%ymm1
916 DB 196,65,36,92,213 ; vsubps %ymm13,%ymm11,%ymm10
917 DB 196,65,28,89,210 ; vmulps %ymm10,%ymm12,%ymm10
918 DB 196,65,44,94,214 ; vdivps %ymm14,%ymm10,%ymm10
919 DB 196,67,45,74,224,240 ; vblendvps %ymm15,%ymm8,%ymm10,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -0400920 DB 196,98,125,24,53,81,59,0,0 ; vbroadcastss 0x3b51(%rip),%ymm14 # 49a0 <_sk_callback_hsw+0x193>
921 DB 196,98,125,24,61,76,59,0,0 ; vbroadcastss 0x3b4c(%rip),%ymm15 # 49a4 <_sk_callback_hsw+0x197>
Mike Klein08aa88d2017-05-12 12:59:24 -0400922 DB 196,65,84,89,239 ; vmulps %ymm15,%ymm5,%ymm13
923 DB 196,66,93,184,238 ; vfmadd231ps %ymm14,%ymm4,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -0400924 DB 196,226,125,24,5,61,59,0,0 ; vbroadcastss 0x3b3d(%rip),%ymm0 # 49a8 <_sk_callback_hsw+0x19b>
Mike Klein08aa88d2017-05-12 12:59:24 -0400925 DB 196,98,77,184,232 ; vfmadd231ps %ymm0,%ymm6,%ymm13
926 DB 196,65,116,89,215 ; vmulps %ymm15,%ymm1,%ymm10
927 DB 196,66,53,184,214 ; vfmadd231ps %ymm14,%ymm9,%ymm10
928 DB 196,98,29,184,208 ; vfmadd231ps %ymm0,%ymm12,%ymm10
929 DB 196,66,101,170,234 ; vfmsub213ps %ymm10,%ymm3,%ymm13
930 DB 196,65,52,88,213 ; vaddps %ymm13,%ymm9,%ymm10
931 DB 196,65,116,88,221 ; vaddps %ymm13,%ymm1,%ymm11
932 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12
933 DB 196,193,36,93,204 ; vminps %ymm12,%ymm11,%ymm1
934 DB 197,44,93,233 ; vminps %ymm1,%ymm10,%ymm13
935 DB 196,65,36,89,207 ; vmulps %ymm15,%ymm11,%ymm9
936 DB 196,66,45,184,206 ; vfmadd231ps %ymm14,%ymm10,%ymm9
937 DB 196,98,29,184,200 ; vfmadd231ps %ymm0,%ymm12,%ymm9
938 DB 196,193,44,92,193 ; vsubps %ymm9,%ymm10,%ymm0
939 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
940 DB 196,193,52,92,205 ; vsubps %ymm13,%ymm9,%ymm1
941 DB 197,252,94,193 ; vdivps %ymm1,%ymm0,%ymm0
942 DB 196,65,36,92,241 ; vsubps %ymm9,%ymm11,%ymm14
943 DB 196,65,52,89,246 ; vmulps %ymm14,%ymm9,%ymm14
944 DB 197,12,94,241 ; vdivps %ymm1,%ymm14,%ymm14
945 DB 196,65,28,92,249 ; vsubps %ymm9,%ymm12,%ymm15
Mike Kleinbb338332017-05-04 12:42:52 -0400946 DB 196,65,52,89,255 ; vmulps %ymm15,%ymm9,%ymm15
Mike Klein08aa88d2017-05-12 12:59:24 -0400947 DB 197,132,94,201 ; vdivps %ymm1,%ymm15,%ymm1
948 DB 196,65,60,194,237,2 ; vcmpleps %ymm13,%ymm8,%ymm13
949 DB 196,65,52,88,246 ; vaddps %ymm14,%ymm9,%ymm14
950 DB 196,67,13,74,243,208 ; vblendvps %ymm13,%ymm11,%ymm14,%ymm14
951 DB 196,65,36,95,220 ; vmaxps %ymm12,%ymm11,%ymm11
952 DB 197,180,88,201 ; vaddps %ymm1,%ymm9,%ymm1
953 DB 196,195,117,74,204,208 ; vblendvps %ymm13,%ymm12,%ymm1,%ymm1
954 DB 197,180,88,192 ; vaddps %ymm0,%ymm9,%ymm0
955 DB 196,195,125,74,194,208 ; vblendvps %ymm13,%ymm10,%ymm0,%ymm0
956 DB 197,100,89,231 ; vmulps %ymm7,%ymm3,%ymm12
957 DB 196,65,44,95,211 ; vmaxps %ymm11,%ymm10,%ymm10
958 DB 196,65,124,92,217 ; vsubps %ymm9,%ymm0,%ymm11
959 DB 196,65,28,92,233 ; vsubps %ymm9,%ymm12,%ymm13
960 DB 196,65,20,89,219 ; vmulps %ymm11,%ymm13,%ymm11
961 DB 196,65,28,194,250,1 ; vcmpltps %ymm10,%ymm12,%ymm15
962 DB 196,65,44,92,209 ; vsubps %ymm9,%ymm10,%ymm10
963 DB 196,65,36,94,218 ; vdivps %ymm10,%ymm11,%ymm11
964 DB 196,65,52,88,219 ; vaddps %ymm11,%ymm9,%ymm11
965 DB 196,195,125,74,195,240 ; vblendvps %ymm15,%ymm11,%ymm0,%ymm0
966 DB 196,65,12,92,217 ; vsubps %ymm9,%ymm14,%ymm11
967 DB 196,65,20,89,219 ; vmulps %ymm11,%ymm13,%ymm11
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,67,13,74,219,240 ; vblendvps %ymm15,%ymm11,%ymm14,%ymm11
971 DB 196,65,116,92,241 ; vsubps %ymm9,%ymm1,%ymm14
972 DB 196,65,20,89,238 ; vmulps %ymm14,%ymm13,%ymm13
973 DB 196,65,20,94,210 ; vdivps %ymm10,%ymm13,%ymm10
974 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
975 DB 196,195,117,74,201,240 ; vblendvps %ymm15,%ymm9,%ymm1,%ymm1
976 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0
977 DB 196,65,36,95,200 ; vmaxps %ymm8,%ymm11,%ymm9
978 DB 196,65,116,95,192 ; vmaxps %ymm8,%ymm1,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -0400979 DB 196,226,125,24,13,42,58,0,0 ; vbroadcastss 0x3a2a(%rip),%ymm1 # 49ac <_sk_callback_hsw+0x19f>
Mike Klein08aa88d2017-05-12 12:59:24 -0400980 DB 197,116,92,215 ; vsubps %ymm7,%ymm1,%ymm10
981 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2
982 DB 197,116,92,219 ; vsubps %ymm3,%ymm1,%ymm11
983 DB 196,226,37,184,212 ; vfmadd231ps %ymm4,%ymm11,%ymm2
984 DB 197,236,88,192 ; vaddps %ymm0,%ymm2,%ymm0
985 DB 197,172,89,12,36 ; vmulps (%rsp),%ymm10,%ymm1
986 DB 196,226,37,184,205 ; vfmadd231ps %ymm5,%ymm11,%ymm1
987 DB 196,193,116,88,201 ; vaddps %ymm9,%ymm1,%ymm1
988 DB 197,172,89,84,36,32 ; vmulps 0x20(%rsp),%ymm10,%ymm2
989 DB 196,98,77,168,218 ; vfmadd213ps %ymm2,%ymm6,%ymm11
990 DB 196,193,36,88,208 ; vaddps %ymm8,%ymm11,%ymm2
991 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
992 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3
Mike Kleinbb338332017-05-04 12:42:52 -0400993 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -0400994 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -0400995 DB 255,224 ; jmpq *%rax
996
997PUBLIC _sk_color_hsw
998_sk_color_hsw LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -0400999 DB 72,131,236,88 ; sub $0x58,%rsp
1000 DB 197,124,40,202 ; vmovaps %ymm2,%ymm9
1001 DB 197,124,17,76,36,32 ; vmovups %ymm9,0x20(%rsp)
1002 DB 197,252,17,12,36 ; vmovups %ymm1,(%rsp)
1003 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
1004 DB 197,108,89,199 ; vmulps %ymm7,%ymm2,%ymm8
1005 DB 197,116,89,215 ; vmulps %ymm7,%ymm1,%ymm10
1006 DB 197,52,89,223 ; vmulps %ymm7,%ymm9,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04001007 DB 196,98,125,24,45,189,57,0,0 ; vbroadcastss 0x39bd(%rip),%ymm13 # 49b0 <_sk_callback_hsw+0x1a3>
1008 DB 196,98,125,24,53,184,57,0,0 ; vbroadcastss 0x39b8(%rip),%ymm14 # 49b4 <_sk_callback_hsw+0x1a7>
Mike Klein08aa88d2017-05-12 12:59:24 -04001009 DB 196,65,84,89,230 ; vmulps %ymm14,%ymm5,%ymm12
1010 DB 196,66,93,184,229 ; vfmadd231ps %ymm13,%ymm4,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04001011 DB 196,98,125,24,61,169,57,0,0 ; vbroadcastss 0x39a9(%rip),%ymm15 # 49b8 <_sk_callback_hsw+0x1ab>
Mike Klein08aa88d2017-05-12 12:59:24 -04001012 DB 196,66,77,184,231 ; vfmadd231ps %ymm15,%ymm6,%ymm12
1013 DB 196,65,44,89,206 ; vmulps %ymm14,%ymm10,%ymm9
1014 DB 196,66,61,184,205 ; vfmadd231ps %ymm13,%ymm8,%ymm9
1015 DB 196,66,37,184,207 ; vfmadd231ps %ymm15,%ymm11,%ymm9
1016 DB 196,66,101,170,225 ; vfmsub213ps %ymm9,%ymm3,%ymm12
1017 DB 196,65,60,88,204 ; vaddps %ymm12,%ymm8,%ymm9
1018 DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10
1019 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
1020 DB 196,65,44,93,195 ; vminps %ymm11,%ymm10,%ymm8
1021 DB 196,65,52,93,224 ; vminps %ymm8,%ymm9,%ymm12
1022 DB 196,65,44,89,198 ; vmulps %ymm14,%ymm10,%ymm8
1023 DB 196,66,53,184,197 ; vfmadd231ps %ymm13,%ymm9,%ymm8
1024 DB 196,66,37,184,199 ; vfmadd231ps %ymm15,%ymm11,%ymm8
1025 DB 196,65,52,92,232 ; vsubps %ymm8,%ymm9,%ymm13
1026 DB 196,65,60,89,237 ; vmulps %ymm13,%ymm8,%ymm13
1027 DB 196,65,60,92,244 ; vsubps %ymm12,%ymm8,%ymm14
1028 DB 196,193,20,94,198 ; vdivps %ymm14,%ymm13,%ymm0
1029 DB 196,65,44,92,248 ; vsubps %ymm8,%ymm10,%ymm15
1030 DB 196,65,60,89,255 ; vmulps %ymm15,%ymm8,%ymm15
1031 DB 196,65,4,94,254 ; vdivps %ymm14,%ymm15,%ymm15
1032 DB 196,65,36,92,232 ; vsubps %ymm8,%ymm11,%ymm13
1033 DB 196,65,60,89,237 ; vmulps %ymm13,%ymm8,%ymm13
1034 DB 196,65,20,94,238 ; vdivps %ymm14,%ymm13,%ymm13
1035 DB 196,65,12,87,246 ; vxorps %ymm14,%ymm14,%ymm14
1036 DB 196,65,12,194,228,2 ; vcmpleps %ymm12,%ymm14,%ymm12
1037 DB 196,65,60,88,255 ; vaddps %ymm15,%ymm8,%ymm15
1038 DB 196,67,5,74,250,192 ; vblendvps %ymm12,%ymm10,%ymm15,%ymm15
1039 DB 196,65,44,95,211 ; vmaxps %ymm11,%ymm10,%ymm10
1040 DB 196,65,60,88,237 ; vaddps %ymm13,%ymm8,%ymm13
1041 DB 196,67,21,74,219,192 ; vblendvps %ymm12,%ymm11,%ymm13,%ymm11
1042 DB 197,188,88,192 ; vaddps %ymm0,%ymm8,%ymm0
1043 DB 196,195,125,74,201,192 ; vblendvps %ymm12,%ymm9,%ymm0,%ymm1
1044 DB 197,100,89,231 ; vmulps %ymm7,%ymm3,%ymm12
1045 DB 196,65,52,95,202 ; vmaxps %ymm10,%ymm9,%ymm9
1046 DB 196,65,116,92,208 ; vsubps %ymm8,%ymm1,%ymm10
1047 DB 196,65,28,92,232 ; vsubps %ymm8,%ymm12,%ymm13
1048 DB 196,65,20,89,210 ; vmulps %ymm10,%ymm13,%ymm10
1049 DB 196,193,28,194,193,1 ; vcmpltps %ymm9,%ymm12,%ymm0
1050 DB 196,65,52,92,200 ; vsubps %ymm8,%ymm9,%ymm9
1051 DB 196,65,44,94,209 ; vdivps %ymm9,%ymm10,%ymm10
1052 DB 196,65,60,88,210 ; vaddps %ymm10,%ymm8,%ymm10
1053 DB 196,195,117,74,202,0 ; vblendvps %ymm0,%ymm10,%ymm1,%ymm1
1054 DB 196,65,4,92,208 ; vsubps %ymm8,%ymm15,%ymm10
1055 DB 196,65,20,89,210 ; vmulps %ymm10,%ymm13,%ymm10
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,67,5,74,210,0 ; vblendvps %ymm0,%ymm10,%ymm15,%ymm10
1059 DB 196,65,36,92,248 ; vsubps %ymm8,%ymm11,%ymm15
1060 DB 196,65,20,89,239 ; vmulps %ymm15,%ymm13,%ymm13
1061 DB 196,65,20,94,201 ; vdivps %ymm9,%ymm13,%ymm9
1062 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
1063 DB 196,195,37,74,192,0 ; vblendvps %ymm0,%ymm8,%ymm11,%ymm0
1064 DB 196,193,116,95,206 ; vmaxps %ymm14,%ymm1,%ymm1
1065 DB 196,65,44,95,198 ; vmaxps %ymm14,%ymm10,%ymm8
1066 DB 196,65,124,95,206 ; vmaxps %ymm14,%ymm0,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04001067 DB 196,226,125,24,5,139,56,0,0 ; vbroadcastss 0x388b(%rip),%ymm0 # 49bc <_sk_callback_hsw+0x1af>
Mike Klein08aa88d2017-05-12 12:59:24 -04001068 DB 197,124,92,215 ; vsubps %ymm7,%ymm0,%ymm10
Mike Kleinbb338332017-05-04 12:42:52 -04001069 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2
Mike Klein08aa88d2017-05-12 12:59:24 -04001070 DB 197,124,92,219 ; vsubps %ymm3,%ymm0,%ymm11
1071 DB 196,226,37,184,212 ; vfmadd231ps %ymm4,%ymm11,%ymm2
1072 DB 197,236,88,193 ; vaddps %ymm1,%ymm2,%ymm0
1073 DB 197,172,89,12,36 ; vmulps (%rsp),%ymm10,%ymm1
1074 DB 196,226,37,184,205 ; vfmadd231ps %ymm5,%ymm11,%ymm1
1075 DB 196,193,116,88,200 ; vaddps %ymm8,%ymm1,%ymm1
1076 DB 197,172,89,84,36,32 ; vmulps 0x20(%rsp),%ymm10,%ymm2
1077 DB 196,98,77,168,218 ; vfmadd213ps %ymm2,%ymm6,%ymm11
1078 DB 196,193,36,88,209 ; vaddps %ymm9,%ymm11,%ymm2
1079 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
1080 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3
Mike Kleinbb338332017-05-04 12:42:52 -04001081 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -04001082 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -04001083 DB 255,224 ; jmpq *%rax
1084
1085PUBLIC _sk_luminosity_hsw
1086_sk_luminosity_hsw LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -04001087 DB 72,131,236,88 ; sub $0x58,%rsp
1088 DB 197,124,40,202 ; vmovaps %ymm2,%ymm9
1089 DB 197,124,17,12,36 ; vmovups %ymm9,(%rsp)
1090 DB 197,252,17,76,36,32 ; vmovups %ymm1,0x20(%rsp)
1091 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
1092 DB 197,100,89,196 ; vmulps %ymm4,%ymm3,%ymm8
1093 DB 197,100,89,213 ; vmulps %ymm5,%ymm3,%ymm10
1094 DB 197,100,89,222 ; vmulps %ymm6,%ymm3,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04001095 DB 196,98,125,24,45,30,56,0,0 ; vbroadcastss 0x381e(%rip),%ymm13 # 49c0 <_sk_callback_hsw+0x1b3>
1096 DB 196,98,125,24,53,25,56,0,0 ; vbroadcastss 0x3819(%rip),%ymm14 # 49c4 <_sk_callback_hsw+0x1b7>
Mike Klein08aa88d2017-05-12 12:59:24 -04001097 DB 196,65,116,89,230 ; vmulps %ymm14,%ymm1,%ymm12
1098 DB 196,66,109,184,229 ; vfmadd231ps %ymm13,%ymm2,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04001099 DB 196,98,125,24,61,10,56,0,0 ; vbroadcastss 0x380a(%rip),%ymm15 # 49c8 <_sk_callback_hsw+0x1bb>
Mike Klein08aa88d2017-05-12 12:59:24 -04001100 DB 196,66,53,184,231 ; vfmadd231ps %ymm15,%ymm9,%ymm12
1101 DB 196,65,44,89,206 ; vmulps %ymm14,%ymm10,%ymm9
1102 DB 196,66,61,184,205 ; vfmadd231ps %ymm13,%ymm8,%ymm9
1103 DB 196,66,37,184,207 ; vfmadd231ps %ymm15,%ymm11,%ymm9
1104 DB 196,66,69,170,225 ; vfmsub213ps %ymm9,%ymm7,%ymm12
1105 DB 196,65,60,88,204 ; vaddps %ymm12,%ymm8,%ymm9
1106 DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10
1107 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
1108 DB 196,65,44,93,195 ; vminps %ymm11,%ymm10,%ymm8
1109 DB 196,65,52,93,224 ; vminps %ymm8,%ymm9,%ymm12
1110 DB 196,65,44,89,198 ; vmulps %ymm14,%ymm10,%ymm8
1111 DB 196,66,53,184,197 ; vfmadd231ps %ymm13,%ymm9,%ymm8
1112 DB 196,66,37,184,199 ; vfmadd231ps %ymm15,%ymm11,%ymm8
1113 DB 196,65,52,92,232 ; vsubps %ymm8,%ymm9,%ymm13
1114 DB 196,65,60,89,237 ; vmulps %ymm13,%ymm8,%ymm13
1115 DB 196,65,60,92,244 ; vsubps %ymm12,%ymm8,%ymm14
1116 DB 196,193,20,94,198 ; vdivps %ymm14,%ymm13,%ymm0
1117 DB 196,65,44,92,248 ; vsubps %ymm8,%ymm10,%ymm15
1118 DB 196,65,60,89,255 ; vmulps %ymm15,%ymm8,%ymm15
1119 DB 196,65,4,94,254 ; vdivps %ymm14,%ymm15,%ymm15
1120 DB 196,65,36,92,232 ; vsubps %ymm8,%ymm11,%ymm13
1121 DB 196,65,60,89,237 ; vmulps %ymm13,%ymm8,%ymm13
1122 DB 196,65,20,94,238 ; vdivps %ymm14,%ymm13,%ymm13
1123 DB 196,65,12,87,246 ; vxorps %ymm14,%ymm14,%ymm14
1124 DB 196,65,12,194,228,2 ; vcmpleps %ymm12,%ymm14,%ymm12
1125 DB 196,65,60,88,255 ; vaddps %ymm15,%ymm8,%ymm15
1126 DB 196,67,5,74,250,192 ; vblendvps %ymm12,%ymm10,%ymm15,%ymm15
1127 DB 196,65,44,95,211 ; vmaxps %ymm11,%ymm10,%ymm10
1128 DB 196,65,60,88,237 ; vaddps %ymm13,%ymm8,%ymm13
1129 DB 196,67,21,74,219,192 ; vblendvps %ymm12,%ymm11,%ymm13,%ymm11
1130 DB 197,188,88,192 ; vaddps %ymm0,%ymm8,%ymm0
1131 DB 196,195,125,74,201,192 ; vblendvps %ymm12,%ymm9,%ymm0,%ymm1
1132 DB 197,100,89,231 ; vmulps %ymm7,%ymm3,%ymm12
1133 DB 196,65,52,95,202 ; vmaxps %ymm10,%ymm9,%ymm9
1134 DB 196,65,116,92,208 ; vsubps %ymm8,%ymm1,%ymm10
1135 DB 196,65,28,92,232 ; vsubps %ymm8,%ymm12,%ymm13
1136 DB 196,65,20,89,210 ; vmulps %ymm10,%ymm13,%ymm10
1137 DB 196,193,28,194,193,1 ; vcmpltps %ymm9,%ymm12,%ymm0
1138 DB 196,65,52,92,200 ; vsubps %ymm8,%ymm9,%ymm9
1139 DB 196,65,44,94,209 ; vdivps %ymm9,%ymm10,%ymm10
1140 DB 196,65,60,88,210 ; vaddps %ymm10,%ymm8,%ymm10
1141 DB 196,195,117,74,202,0 ; vblendvps %ymm0,%ymm10,%ymm1,%ymm1
1142 DB 196,65,4,92,208 ; vsubps %ymm8,%ymm15,%ymm10
1143 DB 196,65,20,89,210 ; vmulps %ymm10,%ymm13,%ymm10
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,67,5,74,210,0 ; vblendvps %ymm0,%ymm10,%ymm15,%ymm10
1147 DB 196,65,36,92,248 ; vsubps %ymm8,%ymm11,%ymm15
1148 DB 196,65,20,89,239 ; vmulps %ymm15,%ymm13,%ymm13
1149 DB 196,65,20,94,201 ; vdivps %ymm9,%ymm13,%ymm9
1150 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
1151 DB 196,195,37,74,192,0 ; vblendvps %ymm0,%ymm8,%ymm11,%ymm0
1152 DB 196,193,116,95,206 ; vmaxps %ymm14,%ymm1,%ymm1
1153 DB 196,65,44,95,198 ; vmaxps %ymm14,%ymm10,%ymm8
1154 DB 196,65,124,95,206 ; vmaxps %ymm14,%ymm0,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04001155 DB 196,226,125,24,5,236,54,0,0 ; vbroadcastss 0x36ec(%rip),%ymm0 # 49cc <_sk_callback_hsw+0x1bf>
Mike Klein08aa88d2017-05-12 12:59:24 -04001156 DB 197,124,92,215 ; vsubps %ymm7,%ymm0,%ymm10
1157 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2
1158 DB 197,124,92,219 ; vsubps %ymm3,%ymm0,%ymm11
1159 DB 196,226,37,184,212 ; vfmadd231ps %ymm4,%ymm11,%ymm2
1160 DB 197,236,88,193 ; vaddps %ymm1,%ymm2,%ymm0
1161 DB 197,172,89,76,36,32 ; vmulps 0x20(%rsp),%ymm10,%ymm1
1162 DB 196,226,37,184,205 ; vfmadd231ps %ymm5,%ymm11,%ymm1
1163 DB 196,193,116,88,200 ; vaddps %ymm8,%ymm1,%ymm1
1164 DB 197,172,89,20,36 ; vmulps (%rsp),%ymm10,%ymm2
1165 DB 196,98,77,168,218 ; vfmadd213ps %ymm2,%ymm6,%ymm11
1166 DB 196,193,36,88,209 ; vaddps %ymm9,%ymm11,%ymm2
1167 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
1168 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3
Mike Kleinbb338332017-05-04 12:42:52 -04001169 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -04001170 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -04001171 DB 255,224 ; jmpq *%rax
1172
Mike Kleind7e06ae2017-03-29 16:33:06 -04001173PUBLIC _sk_clamp_0_hsw
1174_sk_clamp_0_hsw LABEL PROC
1175 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
1176 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0
1177 DB 196,193,116,95,200 ; vmaxps %ymm8,%ymm1,%ymm1
1178 DB 196,193,108,95,208 ; vmaxps %ymm8,%ymm2,%ymm2
1179 DB 196,193,100,95,216 ; vmaxps %ymm8,%ymm3,%ymm3
1180 DB 72,173 ; lods %ds:(%rsi),%rax
1181 DB 255,224 ; jmpq *%rax
1182
1183PUBLIC _sk_clamp_1_hsw
1184_sk_clamp_1_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04001185 DB 196,98,125,24,5,133,54,0,0 ; vbroadcastss 0x3685(%rip),%ymm8 # 49d0 <_sk_callback_hsw+0x1c3>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001186 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0
1187 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1
1188 DB 196,193,108,93,208 ; vminps %ymm8,%ymm2,%ymm2
1189 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3
1190 DB 72,173 ; lods %ds:(%rsi),%rax
1191 DB 255,224 ; jmpq *%rax
1192
1193PUBLIC _sk_clamp_a_hsw
1194_sk_clamp_a_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04001195 DB 196,98,125,24,5,104,54,0,0 ; vbroadcastss 0x3668(%rip),%ymm8 # 49d4 <_sk_callback_hsw+0x1c7>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001196 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3
1197 DB 197,252,93,195 ; vminps %ymm3,%ymm0,%ymm0
1198 DB 197,244,93,203 ; vminps %ymm3,%ymm1,%ymm1
1199 DB 197,236,93,211 ; vminps %ymm3,%ymm2,%ymm2
1200 DB 72,173 ; lods %ds:(%rsi),%rax
1201 DB 255,224 ; jmpq *%rax
1202
1203PUBLIC _sk_set_rgb_hsw
1204_sk_set_rgb_hsw LABEL PROC
1205 DB 72,173 ; lods %ds:(%rsi),%rax
1206 DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0
1207 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1
1208 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2
1209 DB 72,173 ; lods %ds:(%rsi),%rax
1210 DB 255,224 ; jmpq *%rax
1211
1212PUBLIC _sk_swap_rb_hsw
1213_sk_swap_rb_hsw LABEL PROC
1214 DB 197,124,40,192 ; vmovaps %ymm0,%ymm8
1215 DB 72,173 ; lods %ds:(%rsi),%rax
1216 DB 197,252,40,194 ; vmovaps %ymm2,%ymm0
1217 DB 197,124,41,194 ; vmovaps %ymm8,%ymm2
1218 DB 255,224 ; jmpq *%rax
1219
1220PUBLIC _sk_swap_hsw
1221_sk_swap_hsw LABEL PROC
1222 DB 197,124,40,195 ; vmovaps %ymm3,%ymm8
1223 DB 197,124,40,202 ; vmovaps %ymm2,%ymm9
1224 DB 197,124,40,209 ; vmovaps %ymm1,%ymm10
1225 DB 197,124,40,216 ; vmovaps %ymm0,%ymm11
1226 DB 72,173 ; lods %ds:(%rsi),%rax
1227 DB 197,252,40,196 ; vmovaps %ymm4,%ymm0
1228 DB 197,252,40,205 ; vmovaps %ymm5,%ymm1
1229 DB 197,252,40,214 ; vmovaps %ymm6,%ymm2
1230 DB 197,252,40,223 ; vmovaps %ymm7,%ymm3
1231 DB 197,124,41,220 ; vmovaps %ymm11,%ymm4
1232 DB 197,124,41,213 ; vmovaps %ymm10,%ymm5
1233 DB 197,124,41,206 ; vmovaps %ymm9,%ymm6
1234 DB 197,124,41,199 ; vmovaps %ymm8,%ymm7
1235 DB 255,224 ; jmpq *%rax
1236
1237PUBLIC _sk_move_src_dst_hsw
1238_sk_move_src_dst_hsw LABEL PROC
1239 DB 72,173 ; lods %ds:(%rsi),%rax
1240 DB 197,252,40,224 ; vmovaps %ymm0,%ymm4
1241 DB 197,252,40,233 ; vmovaps %ymm1,%ymm5
1242 DB 197,252,40,242 ; vmovaps %ymm2,%ymm6
1243 DB 197,252,40,251 ; vmovaps %ymm3,%ymm7
1244 DB 255,224 ; jmpq *%rax
1245
1246PUBLIC _sk_move_dst_src_hsw
1247_sk_move_dst_src_hsw LABEL PROC
1248 DB 72,173 ; lods %ds:(%rsi),%rax
1249 DB 197,252,40,196 ; vmovaps %ymm4,%ymm0
1250 DB 197,252,40,205 ; vmovaps %ymm5,%ymm1
1251 DB 197,252,40,214 ; vmovaps %ymm6,%ymm2
1252 DB 197,252,40,223 ; vmovaps %ymm7,%ymm3
1253 DB 255,224 ; jmpq *%rax
1254
1255PUBLIC _sk_premul_hsw
1256_sk_premul_hsw LABEL PROC
1257 DB 197,252,89,195 ; vmulps %ymm3,%ymm0,%ymm0
1258 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1
1259 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2
1260 DB 72,173 ; lods %ds:(%rsi),%rax
1261 DB 255,224 ; jmpq *%rax
1262
1263PUBLIC _sk_unpremul_hsw
1264_sk_unpremul_hsw LABEL PROC
1265 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
1266 DB 196,65,100,194,200,0 ; vcmpeqps %ymm8,%ymm3,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04001267 DB 196,98,125,24,21,176,53,0,0 ; vbroadcastss 0x35b0(%rip),%ymm10 # 49d8 <_sk_callback_hsw+0x1cb>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001268 DB 197,44,94,211 ; vdivps %ymm3,%ymm10,%ymm10
1269 DB 196,67,45,74,192,144 ; vblendvps %ymm9,%ymm8,%ymm10,%ymm8
1270 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
1271 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
1272 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
1273 DB 72,173 ; lods %ds:(%rsi),%rax
1274 DB 255,224 ; jmpq *%rax
1275
1276PUBLIC _sk_from_srgb_hsw
1277_sk_from_srgb_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04001278 DB 196,98,125,24,5,145,53,0,0 ; vbroadcastss 0x3591(%rip),%ymm8 # 49dc <_sk_callback_hsw+0x1cf>
Mike Kleinfe560a82017-05-01 12:56:35 -04001279 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04001280 DB 197,124,89,208 ; vmulps %ymm0,%ymm0,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04001281 DB 196,98,125,24,29,131,53,0,0 ; vbroadcastss 0x3583(%rip),%ymm11 # 49e0 <_sk_callback_hsw+0x1d3>
1282 DB 196,98,125,24,37,126,53,0,0 ; vbroadcastss 0x357e(%rip),%ymm12 # 49e4 <_sk_callback_hsw+0x1d7>
Mike Kleinfe560a82017-05-01 12:56:35 -04001283 DB 196,65,124,40,236 ; vmovaps %ymm12,%ymm13
1284 DB 196,66,125,168,235 ; vfmadd213ps %ymm11,%ymm0,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04001285 DB 196,98,125,24,53,111,53,0,0 ; vbroadcastss 0x356f(%rip),%ymm14 # 49e8 <_sk_callback_hsw+0x1db>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001286 DB 196,66,45,168,238 ; vfmadd213ps %ymm14,%ymm10,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04001287 DB 196,98,125,24,21,101,53,0,0 ; vbroadcastss 0x3565(%rip),%ymm10 # 49ec <_sk_callback_hsw+0x1df>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001288 DB 196,193,124,194,194,1 ; vcmpltps %ymm10,%ymm0,%ymm0
1289 DB 196,195,21,74,193,0 ; vblendvps %ymm0,%ymm9,%ymm13,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04001290 DB 196,65,116,89,200 ; vmulps %ymm8,%ymm1,%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04001291 DB 197,116,89,233 ; vmulps %ymm1,%ymm1,%ymm13
Mike Kleinfe560a82017-05-01 12:56:35 -04001292 DB 196,65,124,40,252 ; vmovaps %ymm12,%ymm15
1293 DB 196,66,117,168,251 ; vfmadd213ps %ymm11,%ymm1,%ymm15
Mike Kleind7e06ae2017-03-29 16:33:06 -04001294 DB 196,66,21,168,254 ; vfmadd213ps %ymm14,%ymm13,%ymm15
1295 DB 196,193,116,194,202,1 ; vcmpltps %ymm10,%ymm1,%ymm1
1296 DB 196,195,5,74,201,16 ; vblendvps %ymm1,%ymm9,%ymm15,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04001297 DB 196,65,108,89,192 ; vmulps %ymm8,%ymm2,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04001298 DB 197,108,89,202 ; vmulps %ymm2,%ymm2,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04001299 DB 196,66,109,168,227 ; vfmadd213ps %ymm11,%ymm2,%ymm12
1300 DB 196,66,53,168,230 ; vfmadd213ps %ymm14,%ymm9,%ymm12
Mike Kleind7e06ae2017-03-29 16:33:06 -04001301 DB 196,193,108,194,210,1 ; vcmpltps %ymm10,%ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04001302 DB 196,195,29,74,208,32 ; vblendvps %ymm2,%ymm8,%ymm12,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04001303 DB 72,173 ; lods %ds:(%rsi),%rax
1304 DB 255,224 ; jmpq *%rax
1305
1306PUBLIC _sk_to_srgb_hsw
1307_sk_to_srgb_hsw LABEL PROC
Mike Kleinf45e3d72017-05-15 17:36:59 -04001308 DB 197,124,82,200 ; vrsqrtps %ymm0,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04001309 DB 196,98,125,24,5,9,53,0,0 ; vbroadcastss 0x3509(%rip),%ymm8 # 49f0 <_sk_callback_hsw+0x1e3>
Mike Kleinf45e3d72017-05-15 17:36:59 -04001310 DB 196,65,124,89,208 ; vmulps %ymm8,%ymm0,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04001311 DB 196,98,125,24,29,255,52,0,0 ; vbroadcastss 0x34ff(%rip),%ymm11 # 49f4 <_sk_callback_hsw+0x1e7>
1312 DB 196,98,125,24,37,250,52,0,0 ; vbroadcastss 0x34fa(%rip),%ymm12 # 49f8 <_sk_callback_hsw+0x1eb>
Mike Kleinf45e3d72017-05-15 17:36:59 -04001313 DB 196,65,124,40,236 ; vmovaps %ymm12,%ymm13
1314 DB 196,66,53,168,235 ; vfmadd213ps %ymm11,%ymm9,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04001315 DB 196,98,125,24,53,235,52,0,0 ; vbroadcastss 0x34eb(%rip),%ymm14 # 49fc <_sk_callback_hsw+0x1ef>
Mike Kleinf45e3d72017-05-15 17:36:59 -04001316 DB 196,66,53,168,238 ; vfmadd213ps %ymm14,%ymm9,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04001317 DB 196,98,125,24,61,225,52,0,0 ; vbroadcastss 0x34e1(%rip),%ymm15 # 4a00 <_sk_callback_hsw+0x1f3>
Mike Kleinf45e3d72017-05-15 17:36:59 -04001318 DB 196,65,52,88,207 ; vaddps %ymm15,%ymm9,%ymm9
1319 DB 196,65,124,83,201 ; vrcpps %ymm9,%ymm9
1320 DB 196,65,20,89,201 ; vmulps %ymm9,%ymm13,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04001321 DB 196,98,125,24,45,205,52,0,0 ; vbroadcastss 0x34cd(%rip),%ymm13 # 4a04 <_sk_callback_hsw+0x1f7>
Mike Kleinf45e3d72017-05-15 17:36:59 -04001322 DB 196,193,124,194,197,1 ; vcmpltps %ymm13,%ymm0,%ymm0
1323 DB 196,195,53,74,194,0 ; vblendvps %ymm0,%ymm10,%ymm9,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04001324 DB 197,124,82,201 ; vrsqrtps %ymm1,%ymm9
Mike Kleinf45e3d72017-05-15 17:36:59 -04001325 DB 196,65,124,40,212 ; vmovaps %ymm12,%ymm10
1326 DB 196,66,53,168,211 ; vfmadd213ps %ymm11,%ymm9,%ymm10
1327 DB 196,66,53,168,214 ; vfmadd213ps %ymm14,%ymm9,%ymm10
1328 DB 196,65,52,88,207 ; vaddps %ymm15,%ymm9,%ymm9
1329 DB 196,65,124,83,201 ; vrcpps %ymm9,%ymm9
1330 DB 196,65,44,89,201 ; vmulps %ymm9,%ymm10,%ymm9
1331 DB 196,65,116,89,208 ; vmulps %ymm8,%ymm1,%ymm10
1332 DB 196,193,116,194,205,1 ; vcmpltps %ymm13,%ymm1,%ymm1
1333 DB 196,195,53,74,202,16 ; vblendvps %ymm1,%ymm10,%ymm9,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04001334 DB 197,124,82,202 ; vrsqrtps %ymm2,%ymm9
Mike Kleinf45e3d72017-05-15 17:36:59 -04001335 DB 196,66,53,168,227 ; vfmadd213ps %ymm11,%ymm9,%ymm12
1336 DB 196,66,53,168,230 ; vfmadd213ps %ymm14,%ymm9,%ymm12
1337 DB 196,65,52,88,207 ; vaddps %ymm15,%ymm9,%ymm9
1338 DB 196,65,124,83,201 ; vrcpps %ymm9,%ymm9
1339 DB 196,65,28,89,201 ; vmulps %ymm9,%ymm12,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04001340 DB 196,65,108,89,192 ; vmulps %ymm8,%ymm2,%ymm8
Mike Kleinf45e3d72017-05-15 17:36:59 -04001341 DB 196,193,108,194,213,1 ; vcmpltps %ymm13,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04001342 DB 196,195,53,74,208,32 ; vblendvps %ymm2,%ymm8,%ymm9,%ymm2
1343 DB 72,173 ; lods %ds:(%rsi),%rax
1344 DB 255,224 ; jmpq *%rax
1345
Mike Kleindb1cbcb2017-04-12 08:35:41 -04001346PUBLIC _sk_rgb_to_hsl_hsw
1347_sk_rgb_to_hsl_hsw LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -04001348 DB 197,124,95,193 ; vmaxps %ymm1,%ymm0,%ymm8
1349 DB 197,60,95,194 ; vmaxps %ymm2,%ymm8,%ymm8
1350 DB 197,124,93,201 ; vminps %ymm1,%ymm0,%ymm9
1351 DB 197,52,93,202 ; vminps %ymm2,%ymm9,%ymm9
1352 DB 196,65,60,92,209 ; vsubps %ymm9,%ymm8,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04001353 DB 196,98,125,24,29,66,52,0,0 ; vbroadcastss 0x3442(%rip),%ymm11 # 4a08 <_sk_callback_hsw+0x1fb>
Mike Kleinfe560a82017-05-01 12:56:35 -04001354 DB 196,65,36,94,218 ; vdivps %ymm10,%ymm11,%ymm11
1355 DB 197,116,92,226 ; vsubps %ymm2,%ymm1,%ymm12
1356 DB 197,116,194,234,1 ; vcmpltps %ymm2,%ymm1,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04001357 DB 196,98,125,24,53,47,52,0,0 ; vbroadcastss 0x342f(%rip),%ymm14 # 4a0c <_sk_callback_hsw+0x1ff>
Mike Kleindb1cbcb2017-04-12 08:35:41 -04001358 DB 196,65,4,87,255 ; vxorps %ymm15,%ymm15,%ymm15
Mike Kleinfe560a82017-05-01 12:56:35 -04001359 DB 196,67,5,74,238,208 ; vblendvps %ymm13,%ymm14,%ymm15,%ymm13
1360 DB 196,66,37,168,229 ; vfmadd213ps %ymm13,%ymm11,%ymm12
1361 DB 197,236,92,208 ; vsubps %ymm0,%ymm2,%ymm2
1362 DB 197,124,92,233 ; vsubps %ymm1,%ymm0,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04001363 DB 196,98,125,24,53,22,52,0,0 ; vbroadcastss 0x3416(%rip),%ymm14 # 4a14 <_sk_callback_hsw+0x207>
Mike Kleinfe560a82017-05-01 12:56:35 -04001364 DB 196,66,37,168,238 ; vfmadd213ps %ymm14,%ymm11,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04001365 DB 196,98,125,24,53,4,52,0,0 ; vbroadcastss 0x3404(%rip),%ymm14 # 4a10 <_sk_callback_hsw+0x203>
Mike Kleinfe560a82017-05-01 12:56:35 -04001366 DB 196,194,37,168,214 ; vfmadd213ps %ymm14,%ymm11,%ymm2
1367 DB 197,188,194,201,0 ; vcmpeqps %ymm1,%ymm8,%ymm1
1368 DB 196,227,21,74,202,16 ; vblendvps %ymm1,%ymm2,%ymm13,%ymm1
1369 DB 197,188,194,192,0 ; vcmpeqps %ymm0,%ymm8,%ymm0
1370 DB 196,195,117,74,196,0 ; vblendvps %ymm0,%ymm12,%ymm1,%ymm0
1371 DB 196,193,60,88,201 ; vaddps %ymm9,%ymm8,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04001372 DB 196,98,125,24,29,231,51,0,0 ; vbroadcastss 0x33e7(%rip),%ymm11 # 4a1c <_sk_callback_hsw+0x20f>
Mike Kleinfe560a82017-05-01 12:56:35 -04001373 DB 196,193,116,89,211 ; vmulps %ymm11,%ymm1,%ymm2
1374 DB 197,36,194,218,1 ; vcmpltps %ymm2,%ymm11,%ymm11
1375 DB 196,65,12,92,224 ; vsubps %ymm8,%ymm14,%ymm12
1376 DB 196,65,28,92,225 ; vsubps %ymm9,%ymm12,%ymm12
1377 DB 196,195,117,74,204,176 ; vblendvps %ymm11,%ymm12,%ymm1,%ymm1
1378 DB 196,65,60,194,193,0 ; vcmpeqps %ymm9,%ymm8,%ymm8
1379 DB 197,172,94,201 ; vdivps %ymm1,%ymm10,%ymm1
1380 DB 196,195,125,74,199,128 ; vblendvps %ymm8,%ymm15,%ymm0,%ymm0
1381 DB 196,195,117,74,207,128 ; vblendvps %ymm8,%ymm15,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04001382 DB 196,98,125,24,5,170,51,0,0 ; vbroadcastss 0x33aa(%rip),%ymm8 # 4a18 <_sk_callback_hsw+0x20b>
Mike Kleinfe560a82017-05-01 12:56:35 -04001383 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Kleindb1cbcb2017-04-12 08:35:41 -04001384 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleindb1cbcb2017-04-12 08:35:41 -04001385 DB 255,224 ; jmpq *%rax
1386
1387PUBLIC _sk_hsl_to_rgb_hsw
1388_sk_hsl_to_rgb_hsw LABEL PROC
Mike Klein879a08a2017-05-01 15:34:01 -04001389 DB 72,129,236,184,0,0,0 ; sub $0xb8,%rsp
1390 DB 197,252,17,188,36,128,0,0,0 ; vmovups %ymm7,0x80(%rsp)
1391 DB 197,252,17,116,36,96 ; vmovups %ymm6,0x60(%rsp)
1392 DB 197,252,17,108,36,64 ; vmovups %ymm5,0x40(%rsp)
1393 DB 197,252,17,100,36,32 ; vmovups %ymm4,0x20(%rsp)
1394 DB 197,252,17,28,36 ; vmovups %ymm3,(%rsp)
Mike Klein5664e652017-05-01 16:01:38 -04001395 DB 197,252,40,233 ; vmovaps %ymm1,%ymm5
1396 DB 197,252,40,224 ; vmovaps %ymm0,%ymm4
Mike Klein8ca33562017-05-23 08:07:43 -04001397 DB 196,98,125,24,5,113,51,0,0 ; vbroadcastss 0x3371(%rip),%ymm8 # 4a20 <_sk_callback_hsw+0x213>
Mike Klein5664e652017-05-01 16:01:38 -04001398 DB 197,60,194,202,2 ; vcmpleps %ymm2,%ymm8,%ymm9
1399 DB 197,84,89,210 ; vmulps %ymm2,%ymm5,%ymm10
1400 DB 196,65,84,92,218 ; vsubps %ymm10,%ymm5,%ymm11
1401 DB 196,67,45,74,203,144 ; vblendvps %ymm9,%ymm11,%ymm10,%ymm9
1402 DB 197,52,88,210 ; vaddps %ymm2,%ymm9,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04001403 DB 196,98,125,24,13,84,51,0,0 ; vbroadcastss 0x3354(%rip),%ymm9 # 4a24 <_sk_callback_hsw+0x217>
Mike Klein5664e652017-05-01 16:01:38 -04001404 DB 196,66,109,170,202 ; vfmsub213ps %ymm10,%ymm2,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04001405 DB 196,98,125,24,29,74,51,0,0 ; vbroadcastss 0x334a(%rip),%ymm11 # 4a28 <_sk_callback_hsw+0x21b>
Mike Klein5664e652017-05-01 16:01:38 -04001406 DB 196,65,92,88,219 ; vaddps %ymm11,%ymm4,%ymm11
Mike Klein879a08a2017-05-01 15:34:01 -04001407 DB 196,67,125,8,227,1 ; vroundps $0x1,%ymm11,%ymm12
Mike Klein5664e652017-05-01 16:01:38 -04001408 DB 196,65,36,92,252 ; vsubps %ymm12,%ymm11,%ymm15
1409 DB 196,65,44,92,217 ; vsubps %ymm9,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04001410 DB 196,98,125,24,45,52,51,0,0 ; vbroadcastss 0x3334(%rip),%ymm13 # 4a30 <_sk_callback_hsw+0x223>
Mike Klein5664e652017-05-01 16:01:38 -04001411 DB 196,193,4,89,197 ; vmulps %ymm13,%ymm15,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04001412 DB 196,98,125,24,53,42,51,0,0 ; vbroadcastss 0x332a(%rip),%ymm14 # 4a34 <_sk_callback_hsw+0x227>
Mike Klein5664e652017-05-01 16:01:38 -04001413 DB 197,12,92,224 ; vsubps %ymm0,%ymm14,%ymm12
1414 DB 196,66,37,168,225 ; vfmadd213ps %ymm9,%ymm11,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04001415 DB 196,226,125,24,29,16,51,0,0 ; vbroadcastss 0x3310(%rip),%ymm3 # 4a2c <_sk_callback_hsw+0x21f>
Mike Klein5664e652017-05-01 16:01:38 -04001416 DB 196,193,100,194,255,2 ; vcmpleps %ymm15,%ymm3,%ymm7
1417 DB 196,195,29,74,249,112 ; vblendvps %ymm7,%ymm9,%ymm12,%ymm7
1418 DB 196,65,60,194,231,2 ; vcmpleps %ymm15,%ymm8,%ymm12
1419 DB 196,227,45,74,255,192 ; vblendvps %ymm12,%ymm7,%ymm10,%ymm7
Mike Klein8ca33562017-05-23 08:07:43 -04001420 DB 196,98,125,24,37,251,50,0,0 ; vbroadcastss 0x32fb(%rip),%ymm12 # 4a38 <_sk_callback_hsw+0x22b>
Mike Klein5664e652017-05-01 16:01:38 -04001421 DB 196,65,28,194,255,2 ; vcmpleps %ymm15,%ymm12,%ymm15
1422 DB 196,194,37,168,193 ; vfmadd213ps %ymm9,%ymm11,%ymm0
1423 DB 196,99,125,74,255,240 ; vblendvps %ymm15,%ymm7,%ymm0,%ymm15
1424 DB 196,227,125,8,196,1 ; vroundps $0x1,%ymm4,%ymm0
1425 DB 197,220,92,192 ; vsubps %ymm0,%ymm4,%ymm0
1426 DB 196,193,124,89,253 ; vmulps %ymm13,%ymm0,%ymm7
1427 DB 197,140,92,207 ; vsubps %ymm7,%ymm14,%ymm1
1428 DB 196,194,37,168,201 ; vfmadd213ps %ymm9,%ymm11,%ymm1
1429 DB 197,228,194,240,2 ; vcmpleps %ymm0,%ymm3,%ymm6
1430 DB 196,195,117,74,201,96 ; vblendvps %ymm6,%ymm9,%ymm1,%ymm1
1431 DB 197,188,194,240,2 ; vcmpleps %ymm0,%ymm8,%ymm6
1432 DB 196,227,45,74,201,96 ; vblendvps %ymm6,%ymm1,%ymm10,%ymm1
1433 DB 197,156,194,192,2 ; vcmpleps %ymm0,%ymm12,%ymm0
1434 DB 196,194,37,168,249 ; vfmadd213ps %ymm9,%ymm11,%ymm7
1435 DB 196,227,69,74,201,0 ; vblendvps %ymm0,%ymm1,%ymm7,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04001436 DB 196,226,125,24,5,167,50,0,0 ; vbroadcastss 0x32a7(%rip),%ymm0 # 4a3c <_sk_callback_hsw+0x22f>
Mike Klein5664e652017-05-01 16:01:38 -04001437 DB 197,220,88,192 ; vaddps %ymm0,%ymm4,%ymm0
1438 DB 196,227,125,8,224,1 ; vroundps $0x1,%ymm0,%ymm4
1439 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0
1440 DB 197,228,194,216,2 ; vcmpleps %ymm0,%ymm3,%ymm3
1441 DB 196,193,124,89,229 ; vmulps %ymm13,%ymm0,%ymm4
1442 DB 197,140,92,244 ; vsubps %ymm4,%ymm14,%ymm6
1443 DB 196,194,37,168,241 ; vfmadd213ps %ymm9,%ymm11,%ymm6
1444 DB 196,195,77,74,217,48 ; vblendvps %ymm3,%ymm9,%ymm6,%ymm3
1445 DB 197,188,194,240,2 ; vcmpleps %ymm0,%ymm8,%ymm6
1446 DB 196,227,45,74,219,96 ; vblendvps %ymm6,%ymm3,%ymm10,%ymm3
1447 DB 196,98,37,184,204 ; vfmadd231ps %ymm4,%ymm11,%ymm9
1448 DB 197,156,194,192,2 ; vcmpleps %ymm0,%ymm12,%ymm0
1449 DB 196,227,53,74,219,0 ; vblendvps %ymm0,%ymm3,%ymm9,%ymm3
Mike Kleindb1cbcb2017-04-12 08:35:41 -04001450 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
Mike Klein5664e652017-05-01 16:01:38 -04001451 DB 197,212,194,224,0 ; vcmpeqps %ymm0,%ymm5,%ymm4
1452 DB 196,227,5,74,194,64 ; vblendvps %ymm4,%ymm2,%ymm15,%ymm0
1453 DB 196,227,117,74,202,64 ; vblendvps %ymm4,%ymm2,%ymm1,%ymm1
1454 DB 196,227,101,74,210,64 ; vblendvps %ymm4,%ymm2,%ymm3,%ymm2
Mike Kleindb1cbcb2017-04-12 08:35:41 -04001455 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein879a08a2017-05-01 15:34:01 -04001456 DB 197,252,16,28,36 ; vmovups (%rsp),%ymm3
1457 DB 197,252,16,100,36,32 ; vmovups 0x20(%rsp),%ymm4
1458 DB 197,252,16,108,36,64 ; vmovups 0x40(%rsp),%ymm5
1459 DB 197,252,16,116,36,96 ; vmovups 0x60(%rsp),%ymm6
1460 DB 197,252,16,188,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm7
1461 DB 72,129,196,184,0,0,0 ; add $0xb8,%rsp
Mike Kleindb1cbcb2017-04-12 08:35:41 -04001462 DB 255,224 ; jmpq *%rax
1463
Mike Kleind7e06ae2017-03-29 16:33:06 -04001464PUBLIC _sk_scale_1_float_hsw
1465_sk_scale_1_float_hsw LABEL PROC
1466 DB 72,173 ; lods %ds:(%rsi),%rax
1467 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
1468 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
1469 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
1470 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
1471 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
1472 DB 72,173 ; lods %ds:(%rsi),%rax
1473 DB 255,224 ; jmpq *%rax
1474
1475PUBLIC _sk_scale_u8_hsw
1476_sk_scale_u8_hsw LABEL PROC
1477 DB 73,137,200 ; mov %rcx,%r8
1478 DB 72,173 ; lods %ds:(%rsi),%rax
1479 DB 72,139,0 ; mov (%rax),%rax
1480 DB 72,1,248 ; add %rdi,%rax
1481 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04001482 DB 117,51 ; jne 187b <_sk_scale_u8_hsw+0x43>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001483 DB 197,122,126,0 ; vmovq (%rax),%xmm8
1484 DB 196,66,125,49,192 ; vpmovzxbd %xmm8,%ymm8
1485 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04001486 DB 196,98,125,24,13,225,49,0,0 ; vbroadcastss 0x31e1(%rip),%ymm9 # 4a40 <_sk_callback_hsw+0x233>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001487 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8
1488 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
1489 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
1490 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
1491 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
1492 DB 72,173 ; lods %ds:(%rsi),%rax
1493 DB 76,137,193 ; mov %r8,%rcx
1494 DB 255,224 ; jmpq *%rax
1495 DB 49,201 ; xor %ecx,%ecx
1496 DB 77,137,194 ; mov %r8,%r10
1497 DB 69,49,201 ; xor %r9d,%r9d
1498 DB 68,15,182,24 ; movzbl (%rax),%r11d
1499 DB 72,255,192 ; inc %rax
1500 DB 73,211,227 ; shl %cl,%r11
1501 DB 77,9,217 ; or %r11,%r9
1502 DB 72,131,193,8 ; add $0x8,%rcx
1503 DB 73,255,202 ; dec %r10
Mike Klein5d7f2b52017-05-20 13:21:59 -04001504 DB 117,234 ; jne 1883 <_sk_scale_u8_hsw+0x4b>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001505 DB 196,65,249,110,193 ; vmovq %r9,%xmm8
Mike Klein5d7f2b52017-05-20 13:21:59 -04001506 DB 235,172 ; jmp 184c <_sk_scale_u8_hsw+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001507
1508PUBLIC _sk_lerp_1_float_hsw
1509_sk_lerp_1_float_hsw LABEL PROC
1510 DB 72,173 ; lods %ds:(%rsi),%rax
1511 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
1512 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0
1513 DB 196,226,61,168,196 ; vfmadd213ps %ymm4,%ymm8,%ymm0
1514 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1
1515 DB 196,226,61,168,205 ; vfmadd213ps %ymm5,%ymm8,%ymm1
1516 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2
1517 DB 196,226,61,168,214 ; vfmadd213ps %ymm6,%ymm8,%ymm2
1518 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3
1519 DB 196,226,61,168,223 ; vfmadd213ps %ymm7,%ymm8,%ymm3
1520 DB 72,173 ; lods %ds:(%rsi),%rax
1521 DB 255,224 ; jmpq *%rax
1522
1523PUBLIC _sk_lerp_u8_hsw
1524_sk_lerp_u8_hsw LABEL PROC
1525 DB 73,137,200 ; mov %rcx,%r8
1526 DB 72,173 ; lods %ds:(%rsi),%rax
1527 DB 72,139,0 ; mov (%rax),%rax
1528 DB 72,1,248 ; add %rdi,%rax
1529 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04001530 DB 117,71 ; jne 1926 <_sk_lerp_u8_hsw+0x57>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001531 DB 197,122,126,0 ; vmovq (%rax),%xmm8
1532 DB 196,66,125,49,192 ; vpmovzxbd %xmm8,%ymm8
1533 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04001534 DB 196,98,125,24,13,78,49,0,0 ; vbroadcastss 0x314e(%rip),%ymm9 # 4a44 <_sk_callback_hsw+0x237>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001535 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8
1536 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0
1537 DB 196,226,61,168,196 ; vfmadd213ps %ymm4,%ymm8,%ymm0
1538 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1
1539 DB 196,226,61,168,205 ; vfmadd213ps %ymm5,%ymm8,%ymm1
1540 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2
1541 DB 196,226,61,168,214 ; vfmadd213ps %ymm6,%ymm8,%ymm2
1542 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3
1543 DB 196,226,61,168,223 ; vfmadd213ps %ymm7,%ymm8,%ymm3
1544 DB 72,173 ; lods %ds:(%rsi),%rax
1545 DB 76,137,193 ; mov %r8,%rcx
1546 DB 255,224 ; jmpq *%rax
1547 DB 49,201 ; xor %ecx,%ecx
1548 DB 77,137,194 ; mov %r8,%r10
1549 DB 69,49,201 ; xor %r9d,%r9d
1550 DB 68,15,182,24 ; movzbl (%rax),%r11d
1551 DB 72,255,192 ; inc %rax
1552 DB 73,211,227 ; shl %cl,%r11
1553 DB 77,9,217 ; or %r11,%r9
1554 DB 72,131,193,8 ; add $0x8,%rcx
1555 DB 73,255,202 ; dec %r10
Mike Klein5d7f2b52017-05-20 13:21:59 -04001556 DB 117,234 ; jne 192e <_sk_lerp_u8_hsw+0x5f>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001557 DB 196,65,249,110,193 ; vmovq %r9,%xmm8
Mike Klein5d7f2b52017-05-20 13:21:59 -04001558 DB 235,152 ; jmp 18e3 <_sk_lerp_u8_hsw+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001559
1560PUBLIC _sk_lerp_565_hsw
1561_sk_lerp_565_hsw LABEL PROC
1562 DB 72,173 ; lods %ds:(%rsi),%rax
1563 DB 76,139,16 ; mov (%rax),%r10
1564 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001565 DB 15,133,169,0,0,0 ; jne 1a02 <_sk_lerp_565_hsw+0xb7>
bungeman6f9f2592017-05-10 13:50:12 -04001566 DB 196,65,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm8
1567 DB 196,66,125,51,192 ; vpmovzxwd %xmm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04001568 DB 196,98,125,88,13,219,48,0,0 ; vpbroadcastd 0x30db(%rip),%ymm9 # 4a48 <_sk_callback_hsw+0x23b>
bungeman6f9f2592017-05-10 13:50:12 -04001569 DB 196,65,61,219,201 ; vpand %ymm9,%ymm8,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04001570 DB 196,65,124,91,201 ; vcvtdq2ps %ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04001571 DB 196,98,125,24,21,204,48,0,0 ; vbroadcastss 0x30cc(%rip),%ymm10 # 4a4c <_sk_callback_hsw+0x23f>
Mike Kleinfe560a82017-05-01 12:56:35 -04001572 DB 196,65,52,89,202 ; vmulps %ymm10,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04001573 DB 196,98,125,88,21,194,48,0,0 ; vpbroadcastd 0x30c2(%rip),%ymm10 # 4a50 <_sk_callback_hsw+0x243>
bungeman6f9f2592017-05-10 13:50:12 -04001574 DB 196,65,61,219,210 ; vpand %ymm10,%ymm8,%ymm10
1575 DB 196,65,124,91,210 ; vcvtdq2ps %ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04001576 DB 196,98,125,24,29,179,48,0,0 ; vbroadcastss 0x30b3(%rip),%ymm11 # 4a54 <_sk_callback_hsw+0x247>
bungeman6f9f2592017-05-10 13:50:12 -04001577 DB 196,65,44,89,211 ; vmulps %ymm11,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04001578 DB 196,98,125,88,29,169,48,0,0 ; vpbroadcastd 0x30a9(%rip),%ymm11 # 4a58 <_sk_callback_hsw+0x24b>
bungeman6f9f2592017-05-10 13:50:12 -04001579 DB 196,65,61,219,195 ; vpand %ymm11,%ymm8,%ymm8
1580 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04001581 DB 196,98,125,24,29,154,48,0,0 ; vbroadcastss 0x309a(%rip),%ymm11 # 4a5c <_sk_callback_hsw+0x24f>
bungeman6f9f2592017-05-10 13:50:12 -04001582 DB 196,65,60,89,195 ; vmulps %ymm11,%ymm8,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04001583 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0
bungeman6f9f2592017-05-10 13:50:12 -04001584 DB 196,226,53,168,196 ; vfmadd213ps %ymm4,%ymm9,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04001585 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1
bungeman6f9f2592017-05-10 13:50:12 -04001586 DB 196,226,45,168,205 ; vfmadd213ps %ymm5,%ymm10,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04001587 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2
bungeman6f9f2592017-05-10 13:50:12 -04001588 DB 196,226,61,168,214 ; vfmadd213ps %ymm6,%ymm8,%ymm2
1589 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3
1590 DB 196,98,101,168,207 ; vfmadd213ps %ymm7,%ymm3,%ymm9
1591 DB 196,98,101,168,215 ; vfmadd213ps %ymm7,%ymm3,%ymm10
1592 DB 196,98,101,168,199 ; vfmadd213ps %ymm7,%ymm3,%ymm8
1593 DB 196,193,44,95,216 ; vmaxps %ymm8,%ymm10,%ymm3
1594 DB 197,180,95,219 ; vmaxps %ymm3,%ymm9,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04001595 DB 72,173 ; lods %ds:(%rsi),%rax
1596 DB 255,224 ; jmpq *%rax
1597 DB 65,137,200 ; mov %ecx,%r8d
1598 DB 65,128,224,7 ; and $0x7,%r8b
bungeman6f9f2592017-05-10 13:50:12 -04001599 DB 196,65,57,239,192 ; vpxor %xmm8,%xmm8,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04001600 DB 65,254,200 ; dec %r8b
1601 DB 65,128,248,6 ; cmp $0x6,%r8b
Mike Klein5d7f2b52017-05-20 13:21:59 -04001602 DB 15,135,68,255,255,255 ; ja 195f <_sk_lerp_565_hsw+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001603 DB 69,15,182,192 ; movzbl %r8b,%r8d
Mike Klein5d7f2b52017-05-20 13:21:59 -04001604 DB 76,141,13,74,0,0,0 ; lea 0x4a(%rip),%r9 # 1a70 <_sk_lerp_565_hsw+0x125>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001605 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
1606 DB 76,1,200 ; add %r9,%rax
1607 DB 255,224 ; jmpq *%rax
bungeman6f9f2592017-05-10 13:50:12 -04001608 DB 196,65,57,239,192 ; vpxor %xmm8,%xmm8,%xmm8
1609 DB 196,65,57,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm8,%xmm8
1610 DB 196,65,57,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm8,%xmm8
1611 DB 196,65,57,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm8,%xmm8
1612 DB 196,65,57,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm8,%xmm8
1613 DB 196,65,57,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm8,%xmm8
1614 DB 196,65,57,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm8,%xmm8
1615 DB 196,65,57,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm8,%xmm8
Mike Klein5d7f2b52017-05-20 13:21:59 -04001616 DB 233,239,254,255,255 ; jmpq 195f <_sk_lerp_565_hsw+0x14>
1617 DB 244 ; hlt
Mike Kleind7e06ae2017-03-29 16:33:06 -04001618 DB 255 ; (bad)
1619 DB 255 ; (bad)
1620 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04001621 DB 236 ; in (%dx),%al
1622 DB 255 ; (bad)
1623 DB 255 ; (bad)
1624 DB 255,228 ; jmpq *%rsp
Mike Kleind7e06ae2017-03-29 16:33:06 -04001625 DB 255 ; (bad)
1626 DB 255 ; (bad)
1627 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04001628 DB 220,255 ; fdivr %st,%st(7)
Mike Kleinf45e3d72017-05-15 17:36:59 -04001629 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04001630 DB 255,212 ; callq *%rsp
Mike Kleinf45e3d72017-05-15 17:36:59 -04001631 DB 255 ; (bad)
1632 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04001633 DB 255,204 ; dec %esp
Mike Kleinf45e3d72017-05-15 17:36:59 -04001634 DB 255 ; (bad)
1635 DB 255 ; (bad)
1636 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04001637 DB 191 ; .byte 0xbf
Mike Kleind7e06ae2017-03-29 16:33:06 -04001638 DB 255 ; (bad)
1639 DB 255 ; (bad)
1640 DB 255 ; .byte 0xff
1641
1642PUBLIC _sk_load_tables_hsw
1643_sk_load_tables_hsw LABEL PROC
1644 DB 73,137,200 ; mov %rcx,%r8
1645 DB 72,173 ; lods %ds:(%rsi),%rax
1646 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9
1647 DB 76,3,8 ; add (%rax),%r9
1648 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04001649 DB 117,105 ; jne 1b0a <_sk_load_tables_hsw+0x7e>
Brian Osman74fc5932017-05-22 19:25:36 +00001650 DB 196,193,126,111,25 ; vmovdqu (%r9),%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04001651 DB 197,229,219,13,114,50,0,0 ; vpand 0x3272(%rip),%ymm3,%ymm1 # 4d20 <_sk_callback_hsw+0x513>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001652 DB 196,65,61,118,192 ; vpcmpeqd %ymm8,%ymm8,%ymm8
1653 DB 72,139,72,8 ; mov 0x8(%rax),%rcx
1654 DB 76,139,72,16 ; mov 0x10(%rax),%r9
Mike Klein0aa742f2017-04-27 13:36:57 -04001655 DB 197,237,118,210 ; vpcmpeqd %ymm2,%ymm2,%ymm2
1656 DB 196,226,109,146,4,137 ; vgatherdps %ymm2,(%rcx,%ymm1,4),%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04001657 DB 196,226,101,0,21,114,50,0,0 ; vpshufb 0x3272(%rip),%ymm3,%ymm2 # 4d40 <_sk_callback_hsw+0x533>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001658 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9
Mike Klein0aa742f2017-04-27 13:36:57 -04001659 DB 196,194,53,146,12,145 ; vgatherdps %ymm9,(%r9,%ymm2,4),%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04001660 DB 72,139,64,24 ; mov 0x18(%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04001661 DB 196,98,101,0,13,122,50,0,0 ; vpshufb 0x327a(%rip),%ymm3,%ymm9 # 4d60 <_sk_callback_hsw+0x553>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001662 DB 196,162,61,146,20,136 ; vgatherdps %ymm8,(%rax,%ymm9,4),%ymm2
1663 DB 197,229,114,211,24 ; vpsrld $0x18,%ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04001664 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04001665 DB 196,98,125,24,5,98,47,0,0 ; vbroadcastss 0x2f62(%rip),%ymm8 # 4a60 <_sk_callback_hsw+0x253>
Mike Kleinfe560a82017-05-01 12:56:35 -04001666 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04001667 DB 72,173 ; lods %ds:(%rsi),%rax
1668 DB 76,137,193 ; mov %r8,%rcx
1669 DB 255,224 ; jmpq *%rax
1670 DB 185,8,0,0,0 ; mov $0x8,%ecx
1671 DB 68,41,193 ; sub %r8d,%ecx
1672 DB 192,225,3 ; shl $0x3,%cl
1673 DB 73,199,194,255,255,255,255 ; mov $0xffffffffffffffff,%r10
1674 DB 73,211,234 ; shr %cl,%r10
1675 DB 196,193,249,110,194 ; vmovq %r10,%xmm0
1676 DB 196,226,125,33,192 ; vpmovsxbd %xmm0,%ymm0
Brian Osman74fc5932017-05-22 19:25:36 +00001677 DB 196,194,125,140,25 ; vpmaskmovd (%r9),%ymm0,%ymm3
Mike Klein5d7f2b52017-05-20 13:21:59 -04001678 DB 233,115,255,255,255 ; jmpq 1aa6 <_sk_load_tables_hsw+0x1a>
Mike Kleind7e06ae2017-03-29 16:33:06 -04001679
Mike Kleina3735cd2017-04-17 13:19:05 -04001680PUBLIC _sk_load_tables_u16_be_hsw
1681_sk_load_tables_u16_be_hsw LABEL PROC
1682 DB 72,173 ; lods %ds:(%rsi),%rax
1683 DB 76,139,0 ; mov (%rax),%r8
1684 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9
1685 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001686 DB 15,133,201,0,0,0 ; jne 1c12 <_sk_load_tables_u16_be_hsw+0xdf>
Mike Kleina3735cd2017-04-17 13:19:05 -04001687 DB 196,1,121,16,4,72 ; vmovupd (%r8,%r9,2),%xmm8
1688 DB 196,129,121,16,84,72,16 ; vmovupd 0x10(%r8,%r9,2),%xmm2
1689 DB 196,129,121,16,92,72,32 ; vmovupd 0x20(%r8,%r9,2),%xmm3
1690 DB 196,1,122,111,76,72,48 ; vmovdqu 0x30(%r8,%r9,2),%xmm9
1691 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0
1692 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2
1693 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1
1694 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3
1695 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8
1696 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9
Mike Klein0aa742f2017-04-27 13:36:57 -04001697 DB 197,241,97,195 ; vpunpcklwd %xmm3,%xmm1,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -04001698 DB 197,241,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm3
Mike Klein0aa742f2017-04-27 13:36:57 -04001699 DB 197,185,108,200 ; vpunpcklqdq %xmm0,%xmm8,%xmm1
1700 DB 197,185,109,208 ; vpunpckhqdq %xmm0,%xmm8,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -04001701 DB 197,49,108,195 ; vpunpcklqdq %xmm3,%xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -04001702 DB 197,121,111,21,6,51,0,0 ; vmovdqa 0x3306(%rip),%xmm10 # 4ea0 <_sk_callback_hsw+0x693>
Mike Klein0aa742f2017-04-27 13:36:57 -04001703 DB 196,193,113,219,194 ; vpand %xmm10,%xmm1,%xmm0
1704 DB 196,226,125,51,200 ; vpmovzxwd %xmm0,%ymm1
Mike Kleina3735cd2017-04-17 13:19:05 -04001705 DB 196,65,37,118,219 ; vpcmpeqd %ymm11,%ymm11,%ymm11
1706 DB 76,139,64,8 ; mov 0x8(%rax),%r8
1707 DB 76,139,72,16 ; mov 0x10(%rax),%r9
1708 DB 196,65,29,118,228 ; vpcmpeqd %ymm12,%ymm12,%ymm12
1709 DB 196,194,29,146,4,136 ; vgatherdps %ymm12,(%r8,%ymm1,4),%ymm0
Mike Klein0aa742f2017-04-27 13:36:57 -04001710 DB 196,193,105,219,202 ; vpand %xmm10,%xmm2,%xmm1
1711 DB 196,226,125,51,209 ; vpmovzxwd %xmm1,%ymm2
1712 DB 196,65,29,118,228 ; vpcmpeqd %ymm12,%ymm12,%ymm12
1713 DB 196,194,29,146,12,145 ; vgatherdps %ymm12,(%r9,%ymm2,4),%ymm1
Mike Kleina3735cd2017-04-17 13:19:05 -04001714 DB 72,139,64,24 ; mov 0x18(%rax),%rax
Mike Klein0aa742f2017-04-27 13:36:57 -04001715 DB 196,193,57,219,210 ; vpand %xmm10,%xmm8,%xmm2
1716 DB 196,98,125,51,194 ; vpmovzxwd %xmm2,%ymm8
Mike Kleina3735cd2017-04-17 13:19:05 -04001717 DB 196,162,37,146,20,128 ; vgatherdps %ymm11,(%rax,%ymm8,4),%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04001718 DB 197,177,109,219 ; vpunpckhqdq %xmm3,%xmm9,%xmm3
1719 DB 197,185,113,243,8 ; vpsllw $0x8,%xmm3,%xmm8
Mike Kleina3735cd2017-04-17 13:19:05 -04001720 DB 197,225,113,211,8 ; vpsrlw $0x8,%xmm3,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -04001721 DB 197,185,235,219 ; vpor %xmm3,%xmm8,%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04001722 DB 196,226,125,51,219 ; vpmovzxwd %xmm3,%ymm3
1723 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04001724 DB 196,98,125,24,5,91,46,0,0 ; vbroadcastss 0x2e5b(%rip),%ymm8 # 4a64 <_sk_callback_hsw+0x257>
Mike Kleina3735cd2017-04-17 13:19:05 -04001725 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
1726 DB 72,173 ; lods %ds:(%rsi),%rax
1727 DB 255,224 ; jmpq *%rax
1728 DB 196,1,123,16,4,72 ; vmovsd (%r8,%r9,2),%xmm8
1729 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9
1730 DB 72,131,249,1 ; cmp $0x1,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001731 DB 116,85 ; je 1c78 <_sk_load_tables_u16_be_hsw+0x145>
Mike Kleina3735cd2017-04-17 13:19:05 -04001732 DB 196,1,57,22,68,72,8 ; vmovhpd 0x8(%r8,%r9,2),%xmm8,%xmm8
1733 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001734 DB 114,72 ; jb 1c78 <_sk_load_tables_u16_be_hsw+0x145>
Mike Kleina3735cd2017-04-17 13:19:05 -04001735 DB 196,129,123,16,84,72,16 ; vmovsd 0x10(%r8,%r9,2),%xmm2
1736 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001737 DB 116,72 ; je 1c85 <_sk_load_tables_u16_be_hsw+0x152>
Mike Kleina3735cd2017-04-17 13:19:05 -04001738 DB 196,129,105,22,84,72,24 ; vmovhpd 0x18(%r8,%r9,2),%xmm2,%xmm2
1739 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001740 DB 114,59 ; jb 1c85 <_sk_load_tables_u16_be_hsw+0x152>
Mike Kleina3735cd2017-04-17 13:19:05 -04001741 DB 196,129,123,16,92,72,32 ; vmovsd 0x20(%r8,%r9,2),%xmm3
1742 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001743 DB 15,132,9,255,255,255 ; je 1b64 <_sk_load_tables_u16_be_hsw+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04001744 DB 196,129,97,22,92,72,40 ; vmovhpd 0x28(%r8,%r9,2),%xmm3,%xmm3
1745 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001746 DB 15,130,248,254,255,255 ; jb 1b64 <_sk_load_tables_u16_be_hsw+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04001747 DB 196,1,122,126,76,72,48 ; vmovq 0x30(%r8,%r9,2),%xmm9
Mike Klein5d7f2b52017-05-20 13:21:59 -04001748 DB 233,236,254,255,255 ; jmpq 1b64 <_sk_load_tables_u16_be_hsw+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04001749 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
1750 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2
Mike Klein5d7f2b52017-05-20 13:21:59 -04001751 DB 233,223,254,255,255 ; jmpq 1b64 <_sk_load_tables_u16_be_hsw+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04001752 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
Mike Klein5d7f2b52017-05-20 13:21:59 -04001753 DB 233,214,254,255,255 ; jmpq 1b64 <_sk_load_tables_u16_be_hsw+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04001754
1755PUBLIC _sk_load_tables_rgb_u16_be_hsw
1756_sk_load_tables_rgb_u16_be_hsw LABEL PROC
1757 DB 72,173 ; lods %ds:(%rsi),%rax
1758 DB 76,139,0 ; mov (%rax),%r8
1759 DB 76,141,12,127 ; lea (%rdi,%rdi,2),%r9
1760 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001761 DB 15,133,193,0,0,0 ; jne 1d61 <_sk_load_tables_rgb_u16_be_hsw+0xd3>
Mike Kleina3735cd2017-04-17 13:19:05 -04001762 DB 196,129,122,111,4,72 ; vmovdqu (%r8,%r9,2),%xmm0
1763 DB 196,129,122,111,84,72,12 ; vmovdqu 0xc(%r8,%r9,2),%xmm2
1764 DB 196,129,122,111,76,72,24 ; vmovdqu 0x18(%r8,%r9,2),%xmm1
1765 DB 196,129,122,111,92,72,32 ; vmovdqu 0x20(%r8,%r9,2),%xmm3
1766 DB 197,225,115,219,4 ; vpsrldq $0x4,%xmm3,%xmm3
1767 DB 197,185,115,216,6 ; vpsrldq $0x6,%xmm0,%xmm8
1768 DB 197,177,115,218,6 ; vpsrldq $0x6,%xmm2,%xmm9
1769 DB 197,161,115,217,6 ; vpsrldq $0x6,%xmm1,%xmm11
1770 DB 197,169,115,219,6 ; vpsrldq $0x6,%xmm3,%xmm10
1771 DB 197,249,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm0
1772 DB 196,193,57,97,209 ; vpunpcklwd %xmm9,%xmm8,%xmm2
1773 DB 197,241,97,203 ; vpunpcklwd %xmm3,%xmm1,%xmm1
1774 DB 196,193,33,97,218 ; vpunpcklwd %xmm10,%xmm11,%xmm3
1775 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8
Mike Klein0aa742f2017-04-27 13:36:57 -04001776 DB 197,249,105,194 ; vpunpckhwd %xmm2,%xmm0,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -04001777 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04001778 DB 197,241,105,203 ; vpunpckhwd %xmm3,%xmm1,%xmm1
1779 DB 197,185,108,218 ; vpunpcklqdq %xmm2,%xmm8,%xmm3
1780 DB 197,185,109,210 ; vpunpckhqdq %xmm2,%xmm8,%xmm2
1781 DB 197,121,108,193 ; vpunpcklqdq %xmm1,%xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -04001782 DB 197,121,111,13,166,49,0,0 ; vmovdqa 0x31a6(%rip),%xmm9 # 4eb0 <_sk_callback_hsw+0x6a3>
Mike Klein0aa742f2017-04-27 13:36:57 -04001783 DB 196,193,97,219,193 ; vpand %xmm9,%xmm3,%xmm0
1784 DB 196,226,125,51,200 ; vpmovzxwd %xmm0,%ymm1
1785 DB 197,229,118,219 ; vpcmpeqd %ymm3,%ymm3,%ymm3
Mike Kleina3735cd2017-04-17 13:19:05 -04001786 DB 76,139,64,8 ; mov 0x8(%rax),%r8
1787 DB 76,139,72,16 ; mov 0x10(%rax),%r9
Mike Klein0aa742f2017-04-27 13:36:57 -04001788 DB 196,65,45,118,210 ; vpcmpeqd %ymm10,%ymm10,%ymm10
1789 DB 196,194,45,146,4,136 ; vgatherdps %ymm10,(%r8,%ymm1,4),%ymm0
1790 DB 196,193,105,219,201 ; vpand %xmm9,%xmm2,%xmm1
1791 DB 196,226,125,51,209 ; vpmovzxwd %xmm1,%ymm2
1792 DB 196,65,45,118,210 ; vpcmpeqd %ymm10,%ymm10,%ymm10
1793 DB 196,194,45,146,12,145 ; vgatherdps %ymm10,(%r9,%ymm2,4),%ymm1
Mike Kleina3735cd2017-04-17 13:19:05 -04001794 DB 72,139,64,24 ; mov 0x18(%rax),%rax
Mike Klein0aa742f2017-04-27 13:36:57 -04001795 DB 196,193,57,219,209 ; vpand %xmm9,%xmm8,%xmm2
1796 DB 196,98,125,51,194 ; vpmovzxwd %xmm2,%ymm8
1797 DB 196,162,101,146,20,128 ; vgatherdps %ymm3,(%rax,%ymm8,4),%ymm2
Mike Kleina3735cd2017-04-17 13:19:05 -04001798 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04001799 DB 196,226,125,24,29,9,45,0,0 ; vbroadcastss 0x2d09(%rip),%ymm3 # 4a68 <_sk_callback_hsw+0x25b>
Mike Kleina3735cd2017-04-17 13:19:05 -04001800 DB 255,224 ; jmpq *%rax
1801 DB 196,129,121,110,4,72 ; vmovd (%r8,%r9,2),%xmm0
1802 DB 196,129,121,196,68,72,4,2 ; vpinsrw $0x2,0x4(%r8,%r9,2),%xmm0,%xmm0
1803 DB 72,131,249,1 ; cmp $0x1,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001804 DB 117,5 ; jne 1d7a <_sk_load_tables_rgb_u16_be_hsw+0xec>
1805 DB 233,90,255,255,255 ; jmpq 1cd4 <_sk_load_tables_rgb_u16_be_hsw+0x46>
Mike Kleina3735cd2017-04-17 13:19:05 -04001806 DB 196,129,121,110,76,72,6 ; vmovd 0x6(%r8,%r9,2),%xmm1
1807 DB 196,1,113,196,68,72,10,2 ; vpinsrw $0x2,0xa(%r8,%r9,2),%xmm1,%xmm8
1808 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001809 DB 114,26 ; jb 1da9 <_sk_load_tables_rgb_u16_be_hsw+0x11b>
Mike Kleina3735cd2017-04-17 13:19:05 -04001810 DB 196,129,121,110,76,72,12 ; vmovd 0xc(%r8,%r9,2),%xmm1
1811 DB 196,129,113,196,84,72,16,2 ; vpinsrw $0x2,0x10(%r8,%r9,2),%xmm1,%xmm2
1812 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001813 DB 117,10 ; jne 1dae <_sk_load_tables_rgb_u16_be_hsw+0x120>
1814 DB 233,43,255,255,255 ; jmpq 1cd4 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1815 DB 233,38,255,255,255 ; jmpq 1cd4 <_sk_load_tables_rgb_u16_be_hsw+0x46>
Mike Kleina3735cd2017-04-17 13:19:05 -04001816 DB 196,129,121,110,76,72,18 ; vmovd 0x12(%r8,%r9,2),%xmm1
1817 DB 196,1,113,196,76,72,22,2 ; vpinsrw $0x2,0x16(%r8,%r9,2),%xmm1,%xmm9
1818 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001819 DB 114,26 ; jb 1ddd <_sk_load_tables_rgb_u16_be_hsw+0x14f>
Mike Kleina3735cd2017-04-17 13:19:05 -04001820 DB 196,129,121,110,76,72,24 ; vmovd 0x18(%r8,%r9,2),%xmm1
1821 DB 196,129,113,196,76,72,28,2 ; vpinsrw $0x2,0x1c(%r8,%r9,2),%xmm1,%xmm1
1822 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001823 DB 117,10 ; jne 1de2 <_sk_load_tables_rgb_u16_be_hsw+0x154>
1824 DB 233,247,254,255,255 ; jmpq 1cd4 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1825 DB 233,242,254,255,255 ; jmpq 1cd4 <_sk_load_tables_rgb_u16_be_hsw+0x46>
Mike Kleina3735cd2017-04-17 13:19:05 -04001826 DB 196,129,121,110,92,72,30 ; vmovd 0x1e(%r8,%r9,2),%xmm3
1827 DB 196,1,97,196,92,72,34,2 ; vpinsrw $0x2,0x22(%r8,%r9,2),%xmm3,%xmm11
1828 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04001829 DB 114,20 ; jb 1e0b <_sk_load_tables_rgb_u16_be_hsw+0x17d>
Mike Kleina3735cd2017-04-17 13:19:05 -04001830 DB 196,129,121,110,92,72,36 ; vmovd 0x24(%r8,%r9,2),%xmm3
1831 DB 196,129,97,196,92,72,40,2 ; vpinsrw $0x2,0x28(%r8,%r9,2),%xmm3,%xmm3
Mike Klein5d7f2b52017-05-20 13:21:59 -04001832 DB 233,201,254,255,255 ; jmpq 1cd4 <_sk_load_tables_rgb_u16_be_hsw+0x46>
1833 DB 233,196,254,255,255 ; jmpq 1cd4 <_sk_load_tables_rgb_u16_be_hsw+0x46>
Mike Kleina3735cd2017-04-17 13:19:05 -04001834
Mike Klein40de6da2017-04-07 13:09:29 -04001835PUBLIC _sk_byte_tables_hsw
1836_sk_byte_tables_hsw LABEL PROC
1837 DB 85 ; push %rbp
1838 DB 65,87 ; push %r15
1839 DB 65,86 ; push %r14
1840 DB 65,85 ; push %r13
1841 DB 65,84 ; push %r12
1842 DB 83 ; push %rbx
1843 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04001844 DB 196,98,125,24,5,71,44,0,0 ; vbroadcastss 0x2c47(%rip),%ymm8 # 4a6c <_sk_callback_hsw+0x25f>
Mike Kleinfe560a82017-05-01 12:56:35 -04001845 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Klein40de6da2017-04-07 13:09:29 -04001846 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0
1847 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8
1848 DB 68,137,197 ; mov %r8d,%ebp
1849 DB 77,137,194 ; mov %r8,%r10
1850 DB 73,193,234,32 ; shr $0x20,%r10
1851 DB 196,193,249,126,192 ; vmovq %xmm0,%r8
1852 DB 69,137,195 ; mov %r8d,%r11d
1853 DB 77,137,199 ; mov %r8,%r15
1854 DB 73,193,239,32 ; shr $0x20,%r15
1855 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0
1856 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8
1857 DB 69,137,198 ; mov %r8d,%r14d
1858 DB 77,137,196 ; mov %r8,%r12
1859 DB 73,193,236,32 ; shr $0x20,%r12
1860 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
1861 DB 65,137,221 ; mov %ebx,%r13d
1862 DB 72,193,235,32 ; shr $0x20,%rbx
1863 DB 76,139,8 ; mov (%rax),%r9
1864 DB 76,139,64,8 ; mov 0x8(%rax),%r8
1865 DB 196,131,121,32,4,25,0 ; vpinsrb $0x0,(%r9,%r11,1),%xmm0,%xmm0
1866 DB 196,131,121,32,4,57,1 ; vpinsrb $0x1,(%r9,%r15,1),%xmm0,%xmm0
1867 DB 65,15,182,44,41 ; movzbl (%r9,%rbp,1),%ebp
1868 DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0
1869 DB 67,15,182,44,17 ; movzbl (%r9,%r10,1),%ebp
1870 DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0
1871 DB 67,15,182,44,41 ; movzbl (%r9,%r13,1),%ebp
1872 DB 196,227,121,32,197,4 ; vpinsrb $0x4,%ebp,%xmm0,%xmm0
1873 DB 65,15,182,44,25 ; movzbl (%r9,%rbx,1),%ebp
1874 DB 196,227,121,32,197,5 ; vpinsrb $0x5,%ebp,%xmm0,%xmm0
1875 DB 67,15,182,44,49 ; movzbl (%r9,%r14,1),%ebp
1876 DB 196,227,121,32,197,6 ; vpinsrb $0x6,%ebp,%xmm0,%xmm0
1877 DB 67,15,182,44,33 ; movzbl (%r9,%r12,1),%ebp
1878 DB 196,227,121,32,197,7 ; vpinsrb $0x7,%ebp,%xmm0,%xmm0
1879 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04001880 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04001881 DB 196,98,125,24,13,152,43,0,0 ; vbroadcastss 0x2b98(%rip),%ymm9 # 4a70 <_sk_callback_hsw+0x263>
Mike Kleinfe560a82017-05-01 12:56:35 -04001882 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0
1883 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
Mike Klein40de6da2017-04-07 13:09:29 -04001884 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1
1885 DB 196,227,249,22,205,1 ; vpextrq $0x1,%xmm1,%rbp
1886 DB 65,137,233 ; mov %ebp,%r9d
1887 DB 72,193,237,32 ; shr $0x20,%rbp
1888 DB 196,225,249,126,203 ; vmovq %xmm1,%rbx
1889 DB 65,137,218 ; mov %ebx,%r10d
1890 DB 72,193,235,32 ; shr $0x20,%rbx
1891 DB 196,227,125,57,201,1 ; vextracti128 $0x1,%ymm1,%xmm1
1892 DB 196,195,249,22,203,1 ; vpextrq $0x1,%xmm1,%r11
1893 DB 69,137,222 ; mov %r11d,%r14d
1894 DB 73,193,235,32 ; shr $0x20,%r11
1895 DB 196,193,249,126,207 ; vmovq %xmm1,%r15
1896 DB 69,137,252 ; mov %r15d,%r12d
1897 DB 73,193,239,32 ; shr $0x20,%r15
1898 DB 196,131,121,32,12,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm1
1899 DB 196,195,113,32,12,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm1,%xmm1
1900 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx
1901 DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1
1902 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp
1903 DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1
1904 DB 67,15,182,44,32 ; movzbl (%r8,%r12,1),%ebp
1905 DB 196,227,113,32,205,4 ; vpinsrb $0x4,%ebp,%xmm1,%xmm1
1906 DB 67,15,182,44,56 ; movzbl (%r8,%r15,1),%ebp
1907 DB 196,227,113,32,205,5 ; vpinsrb $0x5,%ebp,%xmm1,%xmm1
1908 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp
1909 DB 196,227,113,32,205,6 ; vpinsrb $0x6,%ebp,%xmm1,%xmm1
1910 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp
1911 DB 196,227,113,32,205,7 ; vpinsrb $0x7,%ebp,%xmm1,%xmm1
1912 DB 196,226,125,49,201 ; vpmovzxbd %xmm1,%ymm1
1913 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04001914 DB 196,193,116,89,201 ; vmulps %ymm9,%ymm1,%ymm1
Mike Klein40de6da2017-04-07 13:09:29 -04001915 DB 76,139,64,16 ; mov 0x10(%rax),%r8
Mike Kleinfe560a82017-05-01 12:56:35 -04001916 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Klein40de6da2017-04-07 13:09:29 -04001917 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2
1918 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp
1919 DB 65,137,233 ; mov %ebp,%r9d
1920 DB 72,193,237,32 ; shr $0x20,%rbp
1921 DB 196,225,249,126,211 ; vmovq %xmm2,%rbx
1922 DB 65,137,218 ; mov %ebx,%r10d
1923 DB 72,193,235,32 ; shr $0x20,%rbx
1924 DB 196,227,125,57,210,1 ; vextracti128 $0x1,%ymm2,%xmm2
1925 DB 196,195,249,22,211,1 ; vpextrq $0x1,%xmm2,%r11
1926 DB 69,137,222 ; mov %r11d,%r14d
1927 DB 73,193,235,32 ; shr $0x20,%r11
1928 DB 196,193,249,126,215 ; vmovq %xmm2,%r15
1929 DB 69,137,252 ; mov %r15d,%r12d
1930 DB 73,193,239,32 ; shr $0x20,%r15
1931 DB 196,131,121,32,20,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm2
1932 DB 196,195,105,32,20,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm2,%xmm2
1933 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx
1934 DB 196,227,105,32,211,2 ; vpinsrb $0x2,%ebx,%xmm2,%xmm2
1935 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp
1936 DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2
1937 DB 67,15,182,44,32 ; movzbl (%r8,%r12,1),%ebp
1938 DB 196,227,105,32,213,4 ; vpinsrb $0x4,%ebp,%xmm2,%xmm2
1939 DB 67,15,182,44,56 ; movzbl (%r8,%r15,1),%ebp
1940 DB 196,227,105,32,213,5 ; vpinsrb $0x5,%ebp,%xmm2,%xmm2
1941 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp
1942 DB 196,227,105,32,213,6 ; vpinsrb $0x6,%ebp,%xmm2,%xmm2
1943 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp
1944 DB 196,227,105,32,213,7 ; vpinsrb $0x7,%ebp,%xmm2,%xmm2
1945 DB 196,226,125,49,210 ; vpmovzxbd %xmm2,%ymm2
1946 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04001947 DB 196,193,108,89,209 ; vmulps %ymm9,%ymm2,%ymm2
Mike Klein40de6da2017-04-07 13:09:29 -04001948 DB 72,139,64,24 ; mov 0x18(%rax),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04001949 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
Mike Klein40de6da2017-04-07 13:09:29 -04001950 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3
1951 DB 196,227,249,22,221,1 ; vpextrq $0x1,%xmm3,%rbp
1952 DB 65,137,232 ; mov %ebp,%r8d
1953 DB 72,193,237,32 ; shr $0x20,%rbp
1954 DB 196,225,249,126,219 ; vmovq %xmm3,%rbx
1955 DB 65,137,217 ; mov %ebx,%r9d
1956 DB 72,193,235,32 ; shr $0x20,%rbx
1957 DB 196,227,125,57,219,1 ; vextracti128 $0x1,%ymm3,%xmm3
1958 DB 196,195,249,22,218,1 ; vpextrq $0x1,%xmm3,%r10
1959 DB 69,137,211 ; mov %r10d,%r11d
1960 DB 73,193,234,32 ; shr $0x20,%r10
1961 DB 196,193,249,126,222 ; vmovq %xmm3,%r14
1962 DB 69,137,247 ; mov %r14d,%r15d
1963 DB 73,193,238,32 ; shr $0x20,%r14
1964 DB 196,163,121,32,28,8,0 ; vpinsrb $0x0,(%rax,%r9,1),%xmm0,%xmm3
1965 DB 196,227,97,32,28,24,1 ; vpinsrb $0x1,(%rax,%rbx,1),%xmm3,%xmm3
1966 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx
1967 DB 196,227,97,32,219,2 ; vpinsrb $0x2,%ebx,%xmm3,%xmm3
1968 DB 15,182,44,40 ; movzbl (%rax,%rbp,1),%ebp
1969 DB 196,227,97,32,221,3 ; vpinsrb $0x3,%ebp,%xmm3,%xmm3
1970 DB 66,15,182,44,56 ; movzbl (%rax,%r15,1),%ebp
1971 DB 196,227,97,32,221,4 ; vpinsrb $0x4,%ebp,%xmm3,%xmm3
1972 DB 66,15,182,44,48 ; movzbl (%rax,%r14,1),%ebp
1973 DB 196,227,97,32,221,5 ; vpinsrb $0x5,%ebp,%xmm3,%xmm3
1974 DB 66,15,182,44,24 ; movzbl (%rax,%r11,1),%ebp
1975 DB 196,227,97,32,221,6 ; vpinsrb $0x6,%ebp,%xmm3,%xmm3
1976 DB 66,15,182,4,16 ; movzbl (%rax,%r10,1),%eax
1977 DB 196,227,97,32,216,7 ; vpinsrb $0x7,%eax,%xmm3,%xmm3
1978 DB 196,226,125,49,219 ; vpmovzxbd %xmm3,%ymm3
1979 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04001980 DB 196,193,100,89,217 ; vmulps %ymm9,%ymm3,%ymm3
Mike Klein40de6da2017-04-07 13:09:29 -04001981 DB 72,173 ; lods %ds:(%rsi),%rax
1982 DB 91 ; pop %rbx
1983 DB 65,92 ; pop %r12
1984 DB 65,93 ; pop %r13
1985 DB 65,94 ; pop %r14
1986 DB 65,95 ; pop %r15
1987 DB 93 ; pop %rbp
1988 DB 255,224 ; jmpq *%rax
1989
1990PUBLIC _sk_byte_tables_rgb_hsw
1991_sk_byte_tables_rgb_hsw LABEL PROC
1992 DB 85 ; push %rbp
1993 DB 65,87 ; push %r15
1994 DB 65,86 ; push %r14
1995 DB 65,85 ; push %r13
1996 DB 65,84 ; push %r12
1997 DB 83 ; push %rbx
1998 DB 72,173 ; lods %ds:(%rsi),%rax
1999 DB 68,139,64,24 ; mov 0x18(%rax),%r8d
2000 DB 65,255,200 ; dec %r8d
2001 DB 196,65,121,110,192 ; vmovd %r8d,%xmm8
2002 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8
2003 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
2004 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
2005 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0
2006 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8
2007 DB 68,137,197 ; mov %r8d,%ebp
2008 DB 77,137,194 ; mov %r8,%r10
2009 DB 73,193,234,32 ; shr $0x20,%r10
2010 DB 196,193,249,126,192 ; vmovq %xmm0,%r8
2011 DB 69,137,195 ; mov %r8d,%r11d
2012 DB 77,137,199 ; mov %r8,%r15
2013 DB 73,193,239,32 ; shr $0x20,%r15
2014 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0
2015 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8
2016 DB 69,137,198 ; mov %r8d,%r14d
2017 DB 77,137,196 ; mov %r8,%r12
2018 DB 73,193,236,32 ; shr $0x20,%r12
2019 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
2020 DB 65,137,221 ; mov %ebx,%r13d
2021 DB 72,193,235,32 ; shr $0x20,%rbx
2022 DB 76,139,8 ; mov (%rax),%r9
2023 DB 76,139,64,8 ; mov 0x8(%rax),%r8
2024 DB 196,131,121,32,4,25,0 ; vpinsrb $0x0,(%r9,%r11,1),%xmm0,%xmm0
2025 DB 196,131,121,32,4,57,1 ; vpinsrb $0x1,(%r9,%r15,1),%xmm0,%xmm0
2026 DB 65,15,182,44,41 ; movzbl (%r9,%rbp,1),%ebp
2027 DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0
2028 DB 67,15,182,44,17 ; movzbl (%r9,%r10,1),%ebp
2029 DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0
2030 DB 67,15,182,44,41 ; movzbl (%r9,%r13,1),%ebp
2031 DB 196,227,121,32,197,4 ; vpinsrb $0x4,%ebp,%xmm0,%xmm0
2032 DB 65,15,182,44,25 ; movzbl (%r9,%rbx,1),%ebp
2033 DB 196,227,121,32,197,5 ; vpinsrb $0x5,%ebp,%xmm0,%xmm0
2034 DB 67,15,182,44,49 ; movzbl (%r9,%r14,1),%ebp
2035 DB 196,227,121,32,197,6 ; vpinsrb $0x6,%ebp,%xmm0,%xmm0
2036 DB 67,15,182,44,33 ; movzbl (%r9,%r12,1),%ebp
2037 DB 196,227,121,32,197,7 ; vpinsrb $0x7,%ebp,%xmm0,%xmm0
2038 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04002039 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002040 DB 196,98,125,24,13,209,40,0,0 ; vbroadcastss 0x28d1(%rip),%ymm9 # 4a74 <_sk_callback_hsw+0x267>
Mike Kleinfe560a82017-05-01 12:56:35 -04002041 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0
Mike Klein40de6da2017-04-07 13:09:29 -04002042 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
2043 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1
2044 DB 196,227,249,22,205,1 ; vpextrq $0x1,%xmm1,%rbp
2045 DB 65,137,233 ; mov %ebp,%r9d
2046 DB 72,193,237,32 ; shr $0x20,%rbp
2047 DB 196,225,249,126,203 ; vmovq %xmm1,%rbx
2048 DB 65,137,218 ; mov %ebx,%r10d
2049 DB 72,193,235,32 ; shr $0x20,%rbx
2050 DB 196,227,125,57,201,1 ; vextracti128 $0x1,%ymm1,%xmm1
2051 DB 196,195,249,22,203,1 ; vpextrq $0x1,%xmm1,%r11
2052 DB 69,137,222 ; mov %r11d,%r14d
2053 DB 73,193,235,32 ; shr $0x20,%r11
2054 DB 196,193,249,126,207 ; vmovq %xmm1,%r15
2055 DB 69,137,252 ; mov %r15d,%r12d
2056 DB 73,193,239,32 ; shr $0x20,%r15
2057 DB 196,131,121,32,12,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm1
2058 DB 196,195,113,32,12,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm1,%xmm1
2059 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx
2060 DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1
2061 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp
2062 DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1
2063 DB 67,15,182,44,32 ; movzbl (%r8,%r12,1),%ebp
2064 DB 196,227,113,32,205,4 ; vpinsrb $0x4,%ebp,%xmm1,%xmm1
2065 DB 67,15,182,44,56 ; movzbl (%r8,%r15,1),%ebp
2066 DB 196,227,113,32,205,5 ; vpinsrb $0x5,%ebp,%xmm1,%xmm1
2067 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp
2068 DB 196,227,113,32,205,6 ; vpinsrb $0x6,%ebp,%xmm1,%xmm1
2069 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp
2070 DB 196,227,113,32,205,7 ; vpinsrb $0x7,%ebp,%xmm1,%xmm1
2071 DB 196,226,125,49,201 ; vpmovzxbd %xmm1,%ymm1
2072 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04002073 DB 196,193,116,89,201 ; vmulps %ymm9,%ymm1,%ymm1
Mike Klein40de6da2017-04-07 13:09:29 -04002074 DB 72,139,64,16 ; mov 0x10(%rax),%rax
2075 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
2076 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2
2077 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp
2078 DB 65,137,232 ; mov %ebp,%r8d
2079 DB 72,193,237,32 ; shr $0x20,%rbp
2080 DB 196,225,249,126,211 ; vmovq %xmm2,%rbx
2081 DB 65,137,217 ; mov %ebx,%r9d
2082 DB 72,193,235,32 ; shr $0x20,%rbx
2083 DB 196,227,125,57,210,1 ; vextracti128 $0x1,%ymm2,%xmm2
2084 DB 196,195,249,22,210,1 ; vpextrq $0x1,%xmm2,%r10
2085 DB 69,137,211 ; mov %r10d,%r11d
2086 DB 73,193,234,32 ; shr $0x20,%r10
2087 DB 196,193,249,126,214 ; vmovq %xmm2,%r14
2088 DB 69,137,247 ; mov %r14d,%r15d
2089 DB 73,193,238,32 ; shr $0x20,%r14
2090 DB 196,163,121,32,20,8,0 ; vpinsrb $0x0,(%rax,%r9,1),%xmm0,%xmm2
2091 DB 196,227,105,32,20,24,1 ; vpinsrb $0x1,(%rax,%rbx,1),%xmm2,%xmm2
2092 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx
2093 DB 196,227,105,32,211,2 ; vpinsrb $0x2,%ebx,%xmm2,%xmm2
2094 DB 15,182,44,40 ; movzbl (%rax,%rbp,1),%ebp
2095 DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2
2096 DB 66,15,182,44,56 ; movzbl (%rax,%r15,1),%ebp
2097 DB 196,227,105,32,213,4 ; vpinsrb $0x4,%ebp,%xmm2,%xmm2
2098 DB 66,15,182,44,48 ; movzbl (%rax,%r14,1),%ebp
2099 DB 196,227,105,32,213,5 ; vpinsrb $0x5,%ebp,%xmm2,%xmm2
2100 DB 66,15,182,44,24 ; movzbl (%rax,%r11,1),%ebp
2101 DB 196,227,105,32,213,6 ; vpinsrb $0x6,%ebp,%xmm2,%xmm2
2102 DB 66,15,182,4,16 ; movzbl (%rax,%r10,1),%eax
2103 DB 196,227,105,32,208,7 ; vpinsrb $0x7,%eax,%xmm2,%xmm2
2104 DB 196,226,125,49,210 ; vpmovzxbd %xmm2,%ymm2
2105 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04002106 DB 196,193,108,89,209 ; vmulps %ymm9,%ymm2,%ymm2
Mike Klein40de6da2017-04-07 13:09:29 -04002107 DB 72,173 ; lods %ds:(%rsi),%rax
2108 DB 91 ; pop %rbx
2109 DB 65,92 ; pop %r12
2110 DB 65,93 ; pop %r13
2111 DB 65,94 ; pop %r14
2112 DB 65,95 ; pop %r15
2113 DB 93 ; pop %rbp
2114 DB 255,224 ; jmpq *%rax
2115
Mike Kleinc7d9c0b2017-04-17 14:43:59 -04002116PUBLIC _sk_table_r_hsw
2117_sk_table_r_hsw LABEL PROC
2118 DB 72,173 ; lods %ds:(%rsi),%rax
2119 DB 76,139,0 ; mov (%rax),%r8
2120 DB 139,64,8 ; mov 0x8(%rax),%eax
2121 DB 255,200 ; dec %eax
2122 DB 197,121,110,192 ; vmovd %eax,%xmm8
2123 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8
2124 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
2125 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
2126 DB 197,125,91,192 ; vcvtps2dq %ymm0,%ymm8
2127 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9
2128 DB 196,130,53,146,4,128 ; vgatherdps %ymm9,(%r8,%ymm8,4),%ymm0
2129 DB 72,173 ; lods %ds:(%rsi),%rax
2130 DB 255,224 ; jmpq *%rax
2131
2132PUBLIC _sk_table_g_hsw
2133_sk_table_g_hsw LABEL PROC
2134 DB 72,173 ; lods %ds:(%rsi),%rax
2135 DB 76,139,0 ; mov (%rax),%r8
2136 DB 139,64,8 ; mov 0x8(%rax),%eax
2137 DB 255,200 ; dec %eax
2138 DB 197,121,110,192 ; vmovd %eax,%xmm8
2139 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8
2140 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
2141 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
2142 DB 197,125,91,193 ; vcvtps2dq %ymm1,%ymm8
2143 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9
2144 DB 196,130,53,146,12,128 ; vgatherdps %ymm9,(%r8,%ymm8,4),%ymm1
2145 DB 72,173 ; lods %ds:(%rsi),%rax
2146 DB 255,224 ; jmpq *%rax
2147
2148PUBLIC _sk_table_b_hsw
2149_sk_table_b_hsw LABEL PROC
2150 DB 72,173 ; lods %ds:(%rsi),%rax
2151 DB 76,139,0 ; mov (%rax),%r8
2152 DB 139,64,8 ; mov 0x8(%rax),%eax
2153 DB 255,200 ; dec %eax
2154 DB 197,121,110,192 ; vmovd %eax,%xmm8
2155 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8
2156 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
2157 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
2158 DB 197,125,91,194 ; vcvtps2dq %ymm2,%ymm8
2159 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9
2160 DB 196,130,53,146,20,128 ; vgatherdps %ymm9,(%r8,%ymm8,4),%ymm2
2161 DB 72,173 ; lods %ds:(%rsi),%rax
2162 DB 255,224 ; jmpq *%rax
2163
2164PUBLIC _sk_table_a_hsw
2165_sk_table_a_hsw LABEL PROC
2166 DB 72,173 ; lods %ds:(%rsi),%rax
2167 DB 76,139,0 ; mov (%rax),%r8
2168 DB 139,64,8 ; mov 0x8(%rax),%eax
2169 DB 255,200 ; dec %eax
2170 DB 197,121,110,192 ; vmovd %eax,%xmm8
2171 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8
2172 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
2173 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
2174 DB 197,125,91,195 ; vcvtps2dq %ymm3,%ymm8
2175 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9
2176 DB 196,130,53,146,28,128 ; vgatherdps %ymm9,(%r8,%ymm8,4),%ymm3
2177 DB 72,173 ; lods %ds:(%rsi),%rax
2178 DB 255,224 ; jmpq *%rax
2179
Mike Klein44375172017-04-17 19:32:05 -04002180PUBLIC _sk_parametric_r_hsw
2181_sk_parametric_r_hsw LABEL PROC
2182 DB 72,173 ; lods %ds:(%rsi),%rax
2183 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
2184 DB 196,65,124,194,192,2 ; vcmpleps %ymm8,%ymm0,%ymm8
2185 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
2186 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
2187 DB 196,66,125,168,202 ; vfmadd213ps %ymm10,%ymm0,%ymm9
2188 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
2189 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
2190 DB 196,66,125,168,211 ; vfmadd213ps %ymm11,%ymm0,%ymm10
Mike Kleinb4bbc642017-04-27 08:59:55 -04002191 DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0
Mike Klein44375172017-04-17 19:32:05 -04002192 DB 196,65,124,91,218 ; vcvtdq2ps %ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002193 DB 196,98,125,24,37,132,38,0,0 ; vbroadcastss 0x2684(%rip),%ymm12 # 4a78 <_sk_callback_hsw+0x26b>
2194 DB 196,98,125,24,45,127,38,0,0 ; vbroadcastss 0x267f(%rip),%ymm13 # 4a7c <_sk_callback_hsw+0x26f>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002195 DB 196,65,44,84,213 ; vandps %ymm13,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002196 DB 196,98,125,24,45,117,38,0,0 ; vbroadcastss 0x2675(%rip),%ymm13 # 4a80 <_sk_callback_hsw+0x273>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002197 DB 196,65,44,86,213 ; vorps %ymm13,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002198 DB 196,98,125,24,45,107,38,0,0 ; vbroadcastss 0x266b(%rip),%ymm13 # 4a84 <_sk_callback_hsw+0x277>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002199 DB 196,66,37,184,236 ; vfmadd231ps %ymm12,%ymm11,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04002200 DB 196,98,125,24,29,97,38,0,0 ; vbroadcastss 0x2661(%rip),%ymm11 # 4a88 <_sk_callback_hsw+0x27b>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002201 DB 196,66,45,172,221 ; vfnmadd213ps %ymm13,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002202 DB 196,98,125,24,37,87,38,0,0 ; vbroadcastss 0x2657(%rip),%ymm12 # 4a8c <_sk_callback_hsw+0x27f>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002203 DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002204 DB 196,98,125,24,37,77,38,0,0 ; vbroadcastss 0x264d(%rip),%ymm12 # 4a90 <_sk_callback_hsw+0x283>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002205 DB 196,65,28,94,210 ; vdivps %ymm10,%ymm12,%ymm10
Mike Klein44375172017-04-17 19:32:05 -04002206 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10
Mike Kleinb4bbc642017-04-27 08:59:55 -04002207 DB 196,193,124,89,194 ; vmulps %ymm10,%ymm0,%ymm0
2208 DB 196,99,125,8,208,1 ; vroundps $0x1,%ymm0,%ymm10
2209 DB 196,65,124,92,210 ; vsubps %ymm10,%ymm0,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002210 DB 196,98,125,24,29,46,38,0,0 ; vbroadcastss 0x262e(%rip),%ymm11 # 4a94 <_sk_callback_hsw+0x287>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002211 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002212 DB 196,98,125,24,29,36,38,0,0 ; vbroadcastss 0x2624(%rip),%ymm11 # 4a98 <_sk_callback_hsw+0x28b>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002213 DB 196,98,45,172,216 ; vfnmadd213ps %ymm0,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002214 DB 196,226,125,24,5,26,38,0,0 ; vbroadcastss 0x261a(%rip),%ymm0 # 4a9c <_sk_callback_hsw+0x28f>
Mike Klein44375172017-04-17 19:32:05 -04002215 DB 196,193,124,92,194 ; vsubps %ymm10,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002216 DB 196,98,125,24,21,16,38,0,0 ; vbroadcastss 0x2610(%rip),%ymm10 # 4aa0 <_sk_callback_hsw+0x293>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002217 DB 197,172,94,192 ; vdivps %ymm0,%ymm10,%ymm0
2218 DB 197,164,88,192 ; vaddps %ymm0,%ymm11,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002219 DB 196,98,125,24,21,3,38,0,0 ; vbroadcastss 0x2603(%rip),%ymm10 # 4aa4 <_sk_callback_hsw+0x297>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002220 DB 196,193,124,89,194 ; vmulps %ymm10,%ymm0,%ymm0
Mike Klein44375172017-04-17 19:32:05 -04002221 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0
2222 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
2223 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0
2224 DB 196,195,125,74,193,128 ; vblendvps %ymm8,%ymm9,%ymm0,%ymm0
2225 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04002226 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002227 DB 196,98,125,24,5,218,37,0,0 ; vbroadcastss 0x25da(%rip),%ymm8 # 4aa8 <_sk_callback_hsw+0x29b>
Mike Kleinfe560a82017-05-01 12:56:35 -04002228 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0
Mike Klein44375172017-04-17 19:32:05 -04002229 DB 72,173 ; lods %ds:(%rsi),%rax
2230 DB 255,224 ; jmpq *%rax
2231
2232PUBLIC _sk_parametric_g_hsw
2233_sk_parametric_g_hsw LABEL PROC
2234 DB 72,173 ; lods %ds:(%rsi),%rax
2235 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
2236 DB 196,65,116,194,192,2 ; vcmpleps %ymm8,%ymm1,%ymm8
2237 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
2238 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
2239 DB 196,66,117,168,202 ; vfmadd213ps %ymm10,%ymm1,%ymm9
2240 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
2241 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
2242 DB 196,66,117,168,211 ; vfmadd213ps %ymm11,%ymm1,%ymm10
Mike Kleinb4bbc642017-04-27 08:59:55 -04002243 DB 196,226,125,24,8 ; vbroadcastss (%rax),%ymm1
Mike Klein44375172017-04-17 19:32:05 -04002244 DB 196,65,124,91,218 ; vcvtdq2ps %ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002245 DB 196,98,125,24,37,146,37,0,0 ; vbroadcastss 0x2592(%rip),%ymm12 # 4aac <_sk_callback_hsw+0x29f>
2246 DB 196,98,125,24,45,141,37,0,0 ; vbroadcastss 0x258d(%rip),%ymm13 # 4ab0 <_sk_callback_hsw+0x2a3>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002247 DB 196,65,44,84,213 ; vandps %ymm13,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002248 DB 196,98,125,24,45,131,37,0,0 ; vbroadcastss 0x2583(%rip),%ymm13 # 4ab4 <_sk_callback_hsw+0x2a7>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002249 DB 196,65,44,86,213 ; vorps %ymm13,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002250 DB 196,98,125,24,45,121,37,0,0 ; vbroadcastss 0x2579(%rip),%ymm13 # 4ab8 <_sk_callback_hsw+0x2ab>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002251 DB 196,66,37,184,236 ; vfmadd231ps %ymm12,%ymm11,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04002252 DB 196,98,125,24,29,111,37,0,0 ; vbroadcastss 0x256f(%rip),%ymm11 # 4abc <_sk_callback_hsw+0x2af>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002253 DB 196,66,45,172,221 ; vfnmadd213ps %ymm13,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002254 DB 196,98,125,24,37,101,37,0,0 ; vbroadcastss 0x2565(%rip),%ymm12 # 4ac0 <_sk_callback_hsw+0x2b3>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002255 DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002256 DB 196,98,125,24,37,91,37,0,0 ; vbroadcastss 0x255b(%rip),%ymm12 # 4ac4 <_sk_callback_hsw+0x2b7>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002257 DB 196,65,28,94,210 ; vdivps %ymm10,%ymm12,%ymm10
Mike Klein44375172017-04-17 19:32:05 -04002258 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10
Mike Kleinb4bbc642017-04-27 08:59:55 -04002259 DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1
2260 DB 196,99,125,8,209,1 ; vroundps $0x1,%ymm1,%ymm10
2261 DB 196,65,116,92,210 ; vsubps %ymm10,%ymm1,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002262 DB 196,98,125,24,29,60,37,0,0 ; vbroadcastss 0x253c(%rip),%ymm11 # 4ac8 <_sk_callback_hsw+0x2bb>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002263 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002264 DB 196,98,125,24,29,50,37,0,0 ; vbroadcastss 0x2532(%rip),%ymm11 # 4acc <_sk_callback_hsw+0x2bf>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002265 DB 196,98,45,172,217 ; vfnmadd213ps %ymm1,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002266 DB 196,226,125,24,13,40,37,0,0 ; vbroadcastss 0x2528(%rip),%ymm1 # 4ad0 <_sk_callback_hsw+0x2c3>
Mike Klein44375172017-04-17 19:32:05 -04002267 DB 196,193,116,92,202 ; vsubps %ymm10,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002268 DB 196,98,125,24,21,30,37,0,0 ; vbroadcastss 0x251e(%rip),%ymm10 # 4ad4 <_sk_callback_hsw+0x2c7>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002269 DB 197,172,94,201 ; vdivps %ymm1,%ymm10,%ymm1
2270 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002271 DB 196,98,125,24,21,17,37,0,0 ; vbroadcastss 0x2511(%rip),%ymm10 # 4ad8 <_sk_callback_hsw+0x2cb>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002272 DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1
Mike Klein44375172017-04-17 19:32:05 -04002273 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1
2274 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
2275 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1
2276 DB 196,195,117,74,201,128 ; vblendvps %ymm8,%ymm9,%ymm1,%ymm1
2277 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04002278 DB 196,193,116,95,200 ; vmaxps %ymm8,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002279 DB 196,98,125,24,5,232,36,0,0 ; vbroadcastss 0x24e8(%rip),%ymm8 # 4adc <_sk_callback_hsw+0x2cf>
Mike Kleinfe560a82017-05-01 12:56:35 -04002280 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1
Mike Klein44375172017-04-17 19:32:05 -04002281 DB 72,173 ; lods %ds:(%rsi),%rax
2282 DB 255,224 ; jmpq *%rax
2283
2284PUBLIC _sk_parametric_b_hsw
2285_sk_parametric_b_hsw LABEL PROC
2286 DB 72,173 ; lods %ds:(%rsi),%rax
2287 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
2288 DB 196,65,108,194,192,2 ; vcmpleps %ymm8,%ymm2,%ymm8
2289 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
2290 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
2291 DB 196,66,109,168,202 ; vfmadd213ps %ymm10,%ymm2,%ymm9
2292 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
2293 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
2294 DB 196,66,109,168,211 ; vfmadd213ps %ymm11,%ymm2,%ymm10
Mike Kleinb4bbc642017-04-27 08:59:55 -04002295 DB 196,226,125,24,16 ; vbroadcastss (%rax),%ymm2
Mike Klein44375172017-04-17 19:32:05 -04002296 DB 196,65,124,91,218 ; vcvtdq2ps %ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002297 DB 196,98,125,24,37,160,36,0,0 ; vbroadcastss 0x24a0(%rip),%ymm12 # 4ae0 <_sk_callback_hsw+0x2d3>
2298 DB 196,98,125,24,45,155,36,0,0 ; vbroadcastss 0x249b(%rip),%ymm13 # 4ae4 <_sk_callback_hsw+0x2d7>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002299 DB 196,65,44,84,213 ; vandps %ymm13,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002300 DB 196,98,125,24,45,145,36,0,0 ; vbroadcastss 0x2491(%rip),%ymm13 # 4ae8 <_sk_callback_hsw+0x2db>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002301 DB 196,65,44,86,213 ; vorps %ymm13,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002302 DB 196,98,125,24,45,135,36,0,0 ; vbroadcastss 0x2487(%rip),%ymm13 # 4aec <_sk_callback_hsw+0x2df>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002303 DB 196,66,37,184,236 ; vfmadd231ps %ymm12,%ymm11,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04002304 DB 196,98,125,24,29,125,36,0,0 ; vbroadcastss 0x247d(%rip),%ymm11 # 4af0 <_sk_callback_hsw+0x2e3>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002305 DB 196,66,45,172,221 ; vfnmadd213ps %ymm13,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002306 DB 196,98,125,24,37,115,36,0,0 ; vbroadcastss 0x2473(%rip),%ymm12 # 4af4 <_sk_callback_hsw+0x2e7>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002307 DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002308 DB 196,98,125,24,37,105,36,0,0 ; vbroadcastss 0x2469(%rip),%ymm12 # 4af8 <_sk_callback_hsw+0x2eb>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002309 DB 196,65,28,94,210 ; vdivps %ymm10,%ymm12,%ymm10
Mike Klein44375172017-04-17 19:32:05 -04002310 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10
Mike Kleinb4bbc642017-04-27 08:59:55 -04002311 DB 196,193,108,89,210 ; vmulps %ymm10,%ymm2,%ymm2
2312 DB 196,99,125,8,210,1 ; vroundps $0x1,%ymm2,%ymm10
2313 DB 196,65,108,92,210 ; vsubps %ymm10,%ymm2,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002314 DB 196,98,125,24,29,74,36,0,0 ; vbroadcastss 0x244a(%rip),%ymm11 # 4afc <_sk_callback_hsw+0x2ef>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002315 DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002316 DB 196,98,125,24,29,64,36,0,0 ; vbroadcastss 0x2440(%rip),%ymm11 # 4b00 <_sk_callback_hsw+0x2f3>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002317 DB 196,98,45,172,218 ; vfnmadd213ps %ymm2,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002318 DB 196,226,125,24,21,54,36,0,0 ; vbroadcastss 0x2436(%rip),%ymm2 # 4b04 <_sk_callback_hsw+0x2f7>
Mike Klein44375172017-04-17 19:32:05 -04002319 DB 196,193,108,92,210 ; vsubps %ymm10,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002320 DB 196,98,125,24,21,44,36,0,0 ; vbroadcastss 0x242c(%rip),%ymm10 # 4b08 <_sk_callback_hsw+0x2fb>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002321 DB 197,172,94,210 ; vdivps %ymm2,%ymm10,%ymm2
2322 DB 197,164,88,210 ; vaddps %ymm2,%ymm11,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002323 DB 196,98,125,24,21,31,36,0,0 ; vbroadcastss 0x241f(%rip),%ymm10 # 4b0c <_sk_callback_hsw+0x2ff>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002324 DB 196,193,108,89,210 ; vmulps %ymm10,%ymm2,%ymm2
Mike Klein44375172017-04-17 19:32:05 -04002325 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2
2326 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
2327 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2
2328 DB 196,195,109,74,209,128 ; vblendvps %ymm8,%ymm9,%ymm2,%ymm2
2329 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04002330 DB 196,193,108,95,208 ; vmaxps %ymm8,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002331 DB 196,98,125,24,5,246,35,0,0 ; vbroadcastss 0x23f6(%rip),%ymm8 # 4b10 <_sk_callback_hsw+0x303>
Mike Kleinfe560a82017-05-01 12:56:35 -04002332 DB 196,193,108,93,208 ; vminps %ymm8,%ymm2,%ymm2
Mike Klein44375172017-04-17 19:32:05 -04002333 DB 72,173 ; lods %ds:(%rsi),%rax
2334 DB 255,224 ; jmpq *%rax
2335
2336PUBLIC _sk_parametric_a_hsw
2337_sk_parametric_a_hsw LABEL PROC
2338 DB 72,173 ; lods %ds:(%rsi),%rax
2339 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
2340 DB 196,65,100,194,192,2 ; vcmpleps %ymm8,%ymm3,%ymm8
2341 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
2342 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
2343 DB 196,66,101,168,202 ; vfmadd213ps %ymm10,%ymm3,%ymm9
2344 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
2345 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
2346 DB 196,66,101,168,211 ; vfmadd213ps %ymm11,%ymm3,%ymm10
Mike Kleinb4bbc642017-04-27 08:59:55 -04002347 DB 196,226,125,24,24 ; vbroadcastss (%rax),%ymm3
Mike Klein44375172017-04-17 19:32:05 -04002348 DB 196,65,124,91,218 ; vcvtdq2ps %ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002349 DB 196,98,125,24,37,174,35,0,0 ; vbroadcastss 0x23ae(%rip),%ymm12 # 4b14 <_sk_callback_hsw+0x307>
2350 DB 196,98,125,24,45,169,35,0,0 ; vbroadcastss 0x23a9(%rip),%ymm13 # 4b18 <_sk_callback_hsw+0x30b>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002351 DB 196,65,44,84,213 ; vandps %ymm13,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002352 DB 196,98,125,24,45,159,35,0,0 ; vbroadcastss 0x239f(%rip),%ymm13 # 4b1c <_sk_callback_hsw+0x30f>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002353 DB 196,65,44,86,213 ; vorps %ymm13,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002354 DB 196,98,125,24,45,149,35,0,0 ; vbroadcastss 0x2395(%rip),%ymm13 # 4b20 <_sk_callback_hsw+0x313>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002355 DB 196,66,37,184,236 ; vfmadd231ps %ymm12,%ymm11,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04002356 DB 196,98,125,24,29,139,35,0,0 ; vbroadcastss 0x238b(%rip),%ymm11 # 4b24 <_sk_callback_hsw+0x317>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002357 DB 196,66,45,172,221 ; vfnmadd213ps %ymm13,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002358 DB 196,98,125,24,37,129,35,0,0 ; vbroadcastss 0x2381(%rip),%ymm12 # 4b28 <_sk_callback_hsw+0x31b>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002359 DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002360 DB 196,98,125,24,37,119,35,0,0 ; vbroadcastss 0x2377(%rip),%ymm12 # 4b2c <_sk_callback_hsw+0x31f>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002361 DB 196,65,28,94,210 ; vdivps %ymm10,%ymm12,%ymm10
Mike Klein44375172017-04-17 19:32:05 -04002362 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10
Mike Kleinb4bbc642017-04-27 08:59:55 -04002363 DB 196,193,100,89,218 ; vmulps %ymm10,%ymm3,%ymm3
2364 DB 196,99,125,8,211,1 ; vroundps $0x1,%ymm3,%ymm10
2365 DB 196,65,100,92,210 ; vsubps %ymm10,%ymm3,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002366 DB 196,98,125,24,29,88,35,0,0 ; vbroadcastss 0x2358(%rip),%ymm11 # 4b30 <_sk_callback_hsw+0x323>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002367 DB 196,193,100,88,219 ; vaddps %ymm11,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04002368 DB 196,98,125,24,29,78,35,0,0 ; vbroadcastss 0x234e(%rip),%ymm11 # 4b34 <_sk_callback_hsw+0x327>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002369 DB 196,98,45,172,219 ; vfnmadd213ps %ymm3,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04002370 DB 196,226,125,24,29,68,35,0,0 ; vbroadcastss 0x2344(%rip),%ymm3 # 4b38 <_sk_callback_hsw+0x32b>
Mike Klein44375172017-04-17 19:32:05 -04002371 DB 196,193,100,92,218 ; vsubps %ymm10,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04002372 DB 196,98,125,24,21,58,35,0,0 ; vbroadcastss 0x233a(%rip),%ymm10 # 4b3c <_sk_callback_hsw+0x32f>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002373 DB 197,172,94,219 ; vdivps %ymm3,%ymm10,%ymm3
2374 DB 197,164,88,219 ; vaddps %ymm3,%ymm11,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04002375 DB 196,98,125,24,21,45,35,0,0 ; vbroadcastss 0x232d(%rip),%ymm10 # 4b40 <_sk_callback_hsw+0x333>
Mike Kleinb4bbc642017-04-27 08:59:55 -04002376 DB 196,193,100,89,218 ; vmulps %ymm10,%ymm3,%ymm3
Mike Klein44375172017-04-17 19:32:05 -04002377 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3
2378 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
2379 DB 196,193,100,88,218 ; vaddps %ymm10,%ymm3,%ymm3
2380 DB 196,195,101,74,217,128 ; vblendvps %ymm8,%ymm9,%ymm3,%ymm3
2381 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04002382 DB 196,193,100,95,216 ; vmaxps %ymm8,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04002383 DB 196,98,125,24,5,4,35,0,0 ; vbroadcastss 0x2304(%rip),%ymm8 # 4b44 <_sk_callback_hsw+0x337>
Mike Kleinfe560a82017-05-01 12:56:35 -04002384 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3
Mike Klein44375172017-04-17 19:32:05 -04002385 DB 72,173 ; lods %ds:(%rsi),%rax
2386 DB 255,224 ; jmpq *%rax
2387
Mike Klein4e3e9f82017-04-20 11:04:29 -04002388PUBLIC _sk_lab_to_xyz_hsw
2389_sk_lab_to_xyz_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04002390 DB 196,98,125,24,5,246,34,0,0 ; vbroadcastss 0x22f6(%rip),%ymm8 # 4b48 <_sk_callback_hsw+0x33b>
2391 DB 196,98,125,24,13,241,34,0,0 ; vbroadcastss 0x22f1(%rip),%ymm9 # 4b4c <_sk_callback_hsw+0x33f>
2392 DB 196,98,125,24,21,236,34,0,0 ; vbroadcastss 0x22ec(%rip),%ymm10 # 4b50 <_sk_callback_hsw+0x343>
Mike Kleinfe560a82017-05-01 12:56:35 -04002393 DB 196,194,53,168,202 ; vfmadd213ps %ymm10,%ymm9,%ymm1
2394 DB 196,194,53,168,210 ; vfmadd213ps %ymm10,%ymm9,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002395 DB 196,98,125,24,13,221,34,0,0 ; vbroadcastss 0x22dd(%rip),%ymm9 # 4b54 <_sk_callback_hsw+0x347>
Mike Kleinfe560a82017-05-01 12:56:35 -04002396 DB 196,66,125,184,200 ; vfmadd231ps %ymm8,%ymm0,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04002397 DB 196,226,125,24,5,211,34,0,0 ; vbroadcastss 0x22d3(%rip),%ymm0 # 4b58 <_sk_callback_hsw+0x34b>
Mike Kleinfe560a82017-05-01 12:56:35 -04002398 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002399 DB 196,98,125,24,5,202,34,0,0 ; vbroadcastss 0x22ca(%rip),%ymm8 # 4b5c <_sk_callback_hsw+0x34f>
Mike Kleinfe560a82017-05-01 12:56:35 -04002400 DB 196,98,117,168,192 ; vfmadd213ps %ymm0,%ymm1,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04002401 DB 196,98,125,24,13,192,34,0,0 ; vbroadcastss 0x22c0(%rip),%ymm9 # 4b60 <_sk_callback_hsw+0x353>
Mike Kleinfe560a82017-05-01 12:56:35 -04002402 DB 196,98,109,172,200 ; vfnmadd213ps %ymm0,%ymm2,%ymm9
Mike Klein4e3e9f82017-04-20 11:04:29 -04002403 DB 196,193,60,89,200 ; vmulps %ymm8,%ymm8,%ymm1
2404 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002405 DB 196,226,125,24,21,173,34,0,0 ; vbroadcastss 0x22ad(%rip),%ymm2 # 4b64 <_sk_callback_hsw+0x357>
Mike Klein4e3e9f82017-04-20 11:04:29 -04002406 DB 197,108,194,209,1 ; vcmpltps %ymm1,%ymm2,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04002407 DB 196,98,125,24,29,163,34,0,0 ; vbroadcastss 0x22a3(%rip),%ymm11 # 4b68 <_sk_callback_hsw+0x35b>
Mike Kleinfe560a82017-05-01 12:56:35 -04002408 DB 196,65,60,88,195 ; vaddps %ymm11,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04002409 DB 196,98,125,24,37,153,34,0,0 ; vbroadcastss 0x2299(%rip),%ymm12 # 4b6c <_sk_callback_hsw+0x35f>
Mike Kleinfe560a82017-05-01 12:56:35 -04002410 DB 196,65,60,89,196 ; vmulps %ymm12,%ymm8,%ymm8
2411 DB 196,99,61,74,193,160 ; vblendvps %ymm10,%ymm1,%ymm8,%ymm8
2412 DB 197,252,89,200 ; vmulps %ymm0,%ymm0,%ymm1
2413 DB 197,252,89,201 ; vmulps %ymm1,%ymm0,%ymm1
2414 DB 197,108,194,209,1 ; vcmpltps %ymm1,%ymm2,%ymm10
2415 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0
2416 DB 196,193,124,89,196 ; vmulps %ymm12,%ymm0,%ymm0
2417 DB 196,227,125,74,201,160 ; vblendvps %ymm10,%ymm1,%ymm0,%ymm1
2418 DB 196,193,52,89,193 ; vmulps %ymm9,%ymm9,%ymm0
2419 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
2420 DB 197,236,194,208,1 ; vcmpltps %ymm0,%ymm2,%ymm2
2421 DB 196,65,52,88,203 ; vaddps %ymm11,%ymm9,%ymm9
2422 DB 196,65,52,89,204 ; vmulps %ymm12,%ymm9,%ymm9
2423 DB 196,227,53,74,208,32 ; vblendvps %ymm2,%ymm0,%ymm9,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002424 DB 196,226,125,24,5,78,34,0,0 ; vbroadcastss 0x224e(%rip),%ymm0 # 4b70 <_sk_callback_hsw+0x363>
Mike Kleinfe560a82017-05-01 12:56:35 -04002425 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002426 DB 196,98,125,24,5,69,34,0,0 ; vbroadcastss 0x2245(%rip),%ymm8 # 4b74 <_sk_callback_hsw+0x367>
Mike Kleinfe560a82017-05-01 12:56:35 -04002427 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Klein4e3e9f82017-04-20 11:04:29 -04002428 DB 72,173 ; lods %ds:(%rsi),%rax
2429 DB 255,224 ; jmpq *%rax
2430
Mike Kleind7e06ae2017-03-29 16:33:06 -04002431PUBLIC _sk_load_a8_hsw
2432_sk_load_a8_hsw LABEL PROC
2433 DB 73,137,200 ; mov %rcx,%r8
2434 DB 72,173 ; lods %ds:(%rsi),%rax
2435 DB 72,139,0 ; mov (%rax),%rax
2436 DB 72,1,248 ; add %rdi,%rax
2437 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04002438 DB 117,45 ; jne 2975 <_sk_load_a8_hsw+0x3d>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002439 DB 197,250,126,0 ; vmovq (%rax),%xmm0
2440 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0
2441 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002442 DB 196,226,125,24,13,26,34,0,0 ; vbroadcastss 0x221a(%rip),%ymm1 # 4b78 <_sk_callback_hsw+0x36b>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002443 DB 197,252,89,217 ; vmulps %ymm1,%ymm0,%ymm3
2444 DB 72,173 ; lods %ds:(%rsi),%rax
2445 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
2446 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
2447 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
2448 DB 76,137,193 ; mov %r8,%rcx
2449 DB 255,224 ; jmpq *%rax
2450 DB 49,201 ; xor %ecx,%ecx
2451 DB 77,137,194 ; mov %r8,%r10
2452 DB 69,49,201 ; xor %r9d,%r9d
2453 DB 68,15,182,24 ; movzbl (%rax),%r11d
2454 DB 72,255,192 ; inc %rax
2455 DB 73,211,227 ; shl %cl,%r11
2456 DB 77,9,217 ; or %r11,%r9
2457 DB 72,131,193,8 ; add $0x8,%rcx
2458 DB 73,255,202 ; dec %r10
Mike Klein5d7f2b52017-05-20 13:21:59 -04002459 DB 117,234 ; jne 297d <_sk_load_a8_hsw+0x45>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002460 DB 196,193,249,110,193 ; vmovq %r9,%xmm0
Mike Klein5d7f2b52017-05-20 13:21:59 -04002461 DB 235,178 ; jmp 294c <_sk_load_a8_hsw+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002462
Mike Klein21bd3e42017-04-06 16:32:29 -04002463PUBLIC _sk_gather_a8_hsw
2464_sk_gather_a8_hsw LABEL PROC
2465 DB 65,87 ; push %r15
2466 DB 65,86 ; push %r14
2467 DB 65,84 ; push %r12
2468 DB 83 ; push %rbx
2469 DB 72,173 ; lods %ds:(%rsi),%rax
2470 DB 76,139,0 ; mov (%rax),%r8
2471 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
2472 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2
2473 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1
2474 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
2475 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0
2476 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax
2477 DB 65,137,193 ; mov %eax,%r9d
2478 DB 72,193,232,32 ; shr $0x20,%rax
2479 DB 196,193,249,126,194 ; vmovq %xmm0,%r10
2480 DB 69,137,211 ; mov %r10d,%r11d
2481 DB 73,193,234,32 ; shr $0x20,%r10
2482 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0
2483 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx
2484 DB 65,137,222 ; mov %ebx,%r14d
2485 DB 72,193,235,32 ; shr $0x20,%rbx
2486 DB 196,193,249,126,199 ; vmovq %xmm0,%r15
2487 DB 69,137,252 ; mov %r15d,%r12d
2488 DB 73,193,239,32 ; shr $0x20,%r15
2489 DB 196,131,121,32,4,24,0 ; vpinsrb $0x0,(%r8,%r11,1),%xmm0,%xmm0
2490 DB 196,131,121,32,4,16,1 ; vpinsrb $0x1,(%r8,%r10,1),%xmm0,%xmm0
2491 DB 71,15,182,12,8 ; movzbl (%r8,%r9,1),%r9d
2492 DB 196,195,121,32,193,2 ; vpinsrb $0x2,%r9d,%xmm0,%xmm0
2493 DB 65,15,182,4,0 ; movzbl (%r8,%rax,1),%eax
2494 DB 196,227,121,32,192,3 ; vpinsrb $0x3,%eax,%xmm0,%xmm0
2495 DB 67,15,182,4,32 ; movzbl (%r8,%r12,1),%eax
2496 DB 196,227,121,32,192,4 ; vpinsrb $0x4,%eax,%xmm0,%xmm0
2497 DB 67,15,182,4,56 ; movzbl (%r8,%r15,1),%eax
2498 DB 196,227,121,32,192,5 ; vpinsrb $0x5,%eax,%xmm0,%xmm0
2499 DB 67,15,182,4,48 ; movzbl (%r8,%r14,1),%eax
2500 DB 196,227,121,32,192,6 ; vpinsrb $0x6,%eax,%xmm0,%xmm0
2501 DB 65,15,182,4,24 ; movzbl (%r8,%rbx,1),%eax
2502 DB 196,227,121,32,192,7 ; vpinsrb $0x7,%eax,%xmm0,%xmm0
2503 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0
2504 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002505 DB 196,226,125,24,13,37,33,0,0 ; vbroadcastss 0x2125(%rip),%ymm1 # 4b7c <_sk_callback_hsw+0x36f>
Mike Klein21bd3e42017-04-06 16:32:29 -04002506 DB 197,252,89,217 ; vmulps %ymm1,%ymm0,%ymm3
2507 DB 72,173 ; lods %ds:(%rsi),%rax
2508 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
2509 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
2510 DB 197,237,239,210 ; vpxor %ymm2,%ymm2,%ymm2
2511 DB 91 ; pop %rbx
2512 DB 65,92 ; pop %r12
2513 DB 65,94 ; pop %r14
2514 DB 65,95 ; pop %r15
2515 DB 255,224 ; jmpq *%rax
2516
Mike Kleind7e06ae2017-03-29 16:33:06 -04002517PUBLIC _sk_store_a8_hsw
2518_sk_store_a8_hsw LABEL PROC
2519 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04002520 DB 76,139,16 ; mov (%rax),%r10
Mike Klein8ca33562017-05-23 08:07:43 -04002521 DB 196,98,125,24,5,0,33,0,0 ; vbroadcastss 0x2100(%rip),%ymm8 # 4b80 <_sk_callback_hsw+0x373>
Mike Kleinfe560a82017-05-01 12:56:35 -04002522 DB 196,65,100,89,192 ; vmulps %ymm8,%ymm3,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04002523 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
2524 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9
2525 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8
2526 DB 196,65,57,103,192 ; vpackuswb %xmm8,%xmm8,%xmm8
2527 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04002528 DB 117,10 ; jne 2aa9 <_sk_store_a8_hsw+0x37>
Mike Kleinfe560a82017-05-01 12:56:35 -04002529 DB 196,65,123,17,4,58 ; vmovsd %xmm8,(%r10,%rdi,1)
Mike Kleind7e06ae2017-03-29 16:33:06 -04002530 DB 72,173 ; lods %ds:(%rsi),%rax
2531 DB 255,224 ; jmpq *%rax
2532 DB 65,137,200 ; mov %ecx,%r8d
2533 DB 65,128,224,7 ; and $0x7,%r8b
2534 DB 65,254,200 ; dec %r8b
2535 DB 65,128,248,6 ; cmp $0x6,%r8b
Mike Klein5d7f2b52017-05-20 13:21:59 -04002536 DB 119,236 ; ja 2aa5 <_sk_store_a8_hsw+0x33>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002537 DB 196,66,121,48,192 ; vpmovzxbw %xmm8,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -04002538 DB 69,15,182,192 ; movzbl %r8b,%r8d
Mike Klein5d7f2b52017-05-20 13:21:59 -04002539 DB 76,141,13,67,0,0,0 ; lea 0x43(%rip),%r9 # 2b0c <_sk_store_a8_hsw+0x9a>
Mike Kleinfe560a82017-05-01 12:56:35 -04002540 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
2541 DB 76,1,200 ; add %r9,%rax
Mike Kleind7e06ae2017-03-29 16:33:06 -04002542 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04002543 DB 196,67,121,20,68,58,6,12 ; vpextrb $0xc,%xmm8,0x6(%r10,%rdi,1)
2544 DB 196,67,121,20,68,58,5,10 ; vpextrb $0xa,%xmm8,0x5(%r10,%rdi,1)
2545 DB 196,67,121,20,68,58,4,8 ; vpextrb $0x8,%xmm8,0x4(%r10,%rdi,1)
2546 DB 196,67,121,20,68,58,3,6 ; vpextrb $0x6,%xmm8,0x3(%r10,%rdi,1)
2547 DB 196,67,121,20,68,58,2,4 ; vpextrb $0x4,%xmm8,0x2(%r10,%rdi,1)
2548 DB 196,67,121,20,68,58,1,2 ; vpextrb $0x2,%xmm8,0x1(%r10,%rdi,1)
2549 DB 196,67,121,20,4,58,0 ; vpextrb $0x0,%xmm8,(%r10,%rdi,1)
Mike Klein5d7f2b52017-05-20 13:21:59 -04002550 DB 235,154 ; jmp 2aa5 <_sk_store_a8_hsw+0x33>
Mike Klein0aa742f2017-04-27 13:36:57 -04002551 DB 144 ; nop
2552 DB 246,255 ; idiv %bh
Mike Kleina3735cd2017-04-17 13:19:05 -04002553 DB 255 ; (bad)
2554 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04002555 DB 238 ; out %al,(%dx)
Mike Kleina3735cd2017-04-17 13:19:05 -04002556 DB 255 ; (bad)
2557 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04002558 DB 255,230 ; jmpq *%rsi
Mike Kleind7e06ae2017-03-29 16:33:06 -04002559 DB 255 ; (bad)
2560 DB 255 ; (bad)
2561 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04002562 DB 222,255 ; fdivrp %st,%st(7)
Mike Kleina3735cd2017-04-17 13:19:05 -04002563 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04002564 DB 255,214 ; callq *%rsi
Mike Kleind7e06ae2017-03-29 16:33:06 -04002565 DB 255 ; (bad)
2566 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04002567 DB 255,206 ; dec %esi
Mike Kleind7e06ae2017-03-29 16:33:06 -04002568 DB 255 ; (bad)
2569 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04002570 DB 255,198 ; inc %esi
Mike Kleind7e06ae2017-03-29 16:33:06 -04002571 DB 255 ; (bad)
2572 DB 255 ; (bad)
2573 DB 255 ; .byte 0xff
2574
Mike Kleinf809fef2017-03-31 13:52:45 -04002575PUBLIC _sk_load_g8_hsw
2576_sk_load_g8_hsw LABEL PROC
2577 DB 73,137,200 ; mov %rcx,%r8
2578 DB 72,173 ; lods %ds:(%rsi),%rax
2579 DB 72,139,0 ; mov (%rax),%rax
2580 DB 72,1,248 ; add %rdi,%rax
2581 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04002582 DB 117,50 ; jne 2b6a <_sk_load_g8_hsw+0x42>
Mike Kleinf809fef2017-03-31 13:52:45 -04002583 DB 197,250,126,0 ; vmovq (%rax),%xmm0
2584 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0
2585 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002586 DB 196,226,125,24,13,54,32,0,0 ; vbroadcastss 0x2036(%rip),%ymm1 # 4b84 <_sk_callback_hsw+0x377>
Mike Kleinf809fef2017-03-31 13:52:45 -04002587 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Kleinf809fef2017-03-31 13:52:45 -04002588 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04002589 DB 196,226,125,24,29,43,32,0,0 ; vbroadcastss 0x202b(%rip),%ymm3 # 4b88 <_sk_callback_hsw+0x37b>
Mike Kleinf809fef2017-03-31 13:52:45 -04002590 DB 76,137,193 ; mov %r8,%rcx
2591 DB 197,252,40,200 ; vmovaps %ymm0,%ymm1
2592 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
2593 DB 255,224 ; jmpq *%rax
2594 DB 49,201 ; xor %ecx,%ecx
2595 DB 77,137,194 ; mov %r8,%r10
2596 DB 69,49,201 ; xor %r9d,%r9d
2597 DB 68,15,182,24 ; movzbl (%rax),%r11d
2598 DB 72,255,192 ; inc %rax
2599 DB 73,211,227 ; shl %cl,%r11
2600 DB 77,9,217 ; or %r11,%r9
2601 DB 72,131,193,8 ; add $0x8,%rcx
2602 DB 73,255,202 ; dec %r10
Mike Klein5d7f2b52017-05-20 13:21:59 -04002603 DB 117,234 ; jne 2b72 <_sk_load_g8_hsw+0x4a>
Mike Kleinf809fef2017-03-31 13:52:45 -04002604 DB 196,193,249,110,193 ; vmovq %r9,%xmm0
Mike Klein5d7f2b52017-05-20 13:21:59 -04002605 DB 235,173 ; jmp 2b3c <_sk_load_g8_hsw+0x14>
Mike Klein21bd3e42017-04-06 16:32:29 -04002606
2607PUBLIC _sk_gather_g8_hsw
2608_sk_gather_g8_hsw LABEL PROC
2609 DB 65,87 ; push %r15
2610 DB 65,86 ; push %r14
2611 DB 65,84 ; push %r12
2612 DB 83 ; push %rbx
2613 DB 72,173 ; lods %ds:(%rsi),%rax
2614 DB 76,139,0 ; mov (%rax),%r8
2615 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
2616 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2
2617 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1
2618 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
2619 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0
2620 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax
2621 DB 65,137,193 ; mov %eax,%r9d
2622 DB 72,193,232,32 ; shr $0x20,%rax
2623 DB 196,193,249,126,194 ; vmovq %xmm0,%r10
2624 DB 69,137,211 ; mov %r10d,%r11d
2625 DB 73,193,234,32 ; shr $0x20,%r10
2626 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0
2627 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx
2628 DB 65,137,222 ; mov %ebx,%r14d
2629 DB 72,193,235,32 ; shr $0x20,%rbx
2630 DB 196,193,249,126,199 ; vmovq %xmm0,%r15
2631 DB 69,137,252 ; mov %r15d,%r12d
2632 DB 73,193,239,32 ; shr $0x20,%r15
2633 DB 196,131,121,32,4,24,0 ; vpinsrb $0x0,(%r8,%r11,1),%xmm0,%xmm0
2634 DB 196,131,121,32,4,16,1 ; vpinsrb $0x1,(%r8,%r10,1),%xmm0,%xmm0
2635 DB 71,15,182,12,8 ; movzbl (%r8,%r9,1),%r9d
2636 DB 196,195,121,32,193,2 ; vpinsrb $0x2,%r9d,%xmm0,%xmm0
2637 DB 65,15,182,4,0 ; movzbl (%r8,%rax,1),%eax
2638 DB 196,227,121,32,192,3 ; vpinsrb $0x3,%eax,%xmm0,%xmm0
2639 DB 67,15,182,4,32 ; movzbl (%r8,%r12,1),%eax
2640 DB 196,227,121,32,192,4 ; vpinsrb $0x4,%eax,%xmm0,%xmm0
2641 DB 67,15,182,4,56 ; movzbl (%r8,%r15,1),%eax
2642 DB 196,227,121,32,192,5 ; vpinsrb $0x5,%eax,%xmm0,%xmm0
2643 DB 67,15,182,4,48 ; movzbl (%r8,%r14,1),%eax
2644 DB 196,227,121,32,192,6 ; vpinsrb $0x6,%eax,%xmm0,%xmm0
2645 DB 65,15,182,4,24 ; movzbl (%r8,%rbx,1),%eax
2646 DB 196,227,121,32,192,7 ; vpinsrb $0x7,%eax,%xmm0,%xmm0
2647 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0
2648 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002649 DB 196,226,125,24,13,64,31,0,0 ; vbroadcastss 0x1f40(%rip),%ymm1 # 4b8c <_sk_callback_hsw+0x37f>
Mike Klein21bd3e42017-04-06 16:32:29 -04002650 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein21bd3e42017-04-06 16:32:29 -04002651 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04002652 DB 196,226,125,24,29,53,31,0,0 ; vbroadcastss 0x1f35(%rip),%ymm3 # 4b90 <_sk_callback_hsw+0x383>
Mike Klein21bd3e42017-04-06 16:32:29 -04002653 DB 197,252,40,200 ; vmovaps %ymm0,%ymm1
2654 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
2655 DB 91 ; pop %rbx
2656 DB 65,92 ; pop %r12
2657 DB 65,94 ; pop %r14
2658 DB 65,95 ; pop %r15
2659 DB 255,224 ; jmpq *%rax
Mike Kleinf809fef2017-03-31 13:52:45 -04002660
Mike Klein7d3d8722017-04-06 17:53:18 -04002661PUBLIC _sk_gather_i8_hsw
2662_sk_gather_i8_hsw LABEL PROC
2663 DB 72,173 ; lods %ds:(%rsi),%rax
2664 DB 73,137,192 ; mov %rax,%r8
2665 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04002666 DB 116,5 ; je 2c7b <_sk_gather_i8_hsw+0xf>
Mike Klein7d3d8722017-04-06 17:53:18 -04002667 DB 76,137,192 ; mov %r8,%rax
Mike Klein5d7f2b52017-05-20 13:21:59 -04002668 DB 235,2 ; jmp 2c7d <_sk_gather_i8_hsw+0x11>
Mike Klein7d3d8722017-04-06 17:53:18 -04002669 DB 72,173 ; lods %ds:(%rsi),%rax
2670 DB 65,87 ; push %r15
2671 DB 65,86 ; push %r14
2672 DB 65,85 ; push %r13
2673 DB 65,84 ; push %r12
2674 DB 83 ; push %rbx
2675 DB 76,139,8 ; mov (%rax),%r9
2676 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
2677 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2
2678 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1
2679 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
2680 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0
2681 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax
2682 DB 65,137,194 ; mov %eax,%r10d
2683 DB 72,193,232,32 ; shr $0x20,%rax
2684 DB 196,193,249,126,195 ; vmovq %xmm0,%r11
2685 DB 69,137,222 ; mov %r11d,%r14d
2686 DB 73,193,235,32 ; shr $0x20,%r11
2687 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0
2688 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx
2689 DB 65,137,223 ; mov %ebx,%r15d
2690 DB 72,193,235,32 ; shr $0x20,%rbx
2691 DB 196,193,249,126,196 ; vmovq %xmm0,%r12
2692 DB 69,137,229 ; mov %r12d,%r13d
2693 DB 73,193,236,32 ; shr $0x20,%r12
2694 DB 196,131,121,32,4,49,0 ; vpinsrb $0x0,(%r9,%r14,1),%xmm0,%xmm0
2695 DB 196,131,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%r11,1),%xmm0,%xmm0
2696 DB 196,131,121,32,4,17,2 ; vpinsrb $0x2,(%r9,%r10,1),%xmm0,%xmm0
2697 DB 196,195,121,32,4,1,3 ; vpinsrb $0x3,(%r9,%rax,1),%xmm0,%xmm0
2698 DB 196,131,121,32,4,41,4 ; vpinsrb $0x4,(%r9,%r13,1),%xmm0,%xmm0
2699 DB 196,131,121,32,4,33,5 ; vpinsrb $0x5,(%r9,%r12,1),%xmm0,%xmm0
2700 DB 196,131,121,32,4,57,6 ; vpinsrb $0x6,(%r9,%r15,1),%xmm0,%xmm0
2701 DB 196,195,121,32,4,25,7 ; vpinsrb $0x7,(%r9,%rbx,1),%xmm0,%xmm0
2702 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0
2703 DB 73,139,64,8 ; mov 0x8(%r8),%rax
2704 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1
2705 DB 196,226,117,144,28,128 ; vpgatherdd %ymm1,(%rax,%ymm0,4),%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04002706 DB 197,229,219,5,85,32,0,0 ; vpand 0x2055(%rip),%ymm3,%ymm0 # 4d80 <_sk_callback_hsw+0x573>
Mike Klein7d3d8722017-04-06 17:53:18 -04002707 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002708 DB 196,98,125,24,5,92,30,0,0 ; vbroadcastss 0x1e5c(%rip),%ymm8 # 4b94 <_sk_callback_hsw+0x387>
Mike Klein7d3d8722017-04-06 17:53:18 -04002709 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002710 DB 196,226,101,0,13,90,32,0,0 ; vpshufb 0x205a(%rip),%ymm3,%ymm1 # 4da0 <_sk_callback_hsw+0x593>
Mike Klein7d3d8722017-04-06 17:53:18 -04002711 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
2712 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002713 DB 196,226,101,0,21,104,32,0,0 ; vpshufb 0x2068(%rip),%ymm3,%ymm2 # 4dc0 <_sk_callback_hsw+0x5b3>
Mike Klein7d3d8722017-04-06 17:53:18 -04002714 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
2715 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
2716 DB 197,229,114,211,24 ; vpsrld $0x18,%ymm3,%ymm3
2717 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
2718 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
2719 DB 72,173 ; lods %ds:(%rsi),%rax
2720 DB 91 ; pop %rbx
2721 DB 65,92 ; pop %r12
2722 DB 65,93 ; pop %r13
2723 DB 65,94 ; pop %r14
2724 DB 65,95 ; pop %r15
2725 DB 255,224 ; jmpq *%rax
2726
Mike Kleind7e06ae2017-03-29 16:33:06 -04002727PUBLIC _sk_load_565_hsw
2728_sk_load_565_hsw LABEL PROC
2729 DB 72,173 ; lods %ds:(%rsi),%rax
2730 DB 76,139,16 ; mov (%rax),%r10
2731 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04002732 DB 117,114 ; jne 2df8 <_sk_load_565_hsw+0x7c>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002733 DB 196,193,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm0
2734 DB 196,226,125,51,208 ; vpmovzxwd %xmm0,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002735 DB 196,226,125,88,5,254,29,0,0 ; vpbroadcastd 0x1dfe(%rip),%ymm0 # 4b98 <_sk_callback_hsw+0x38b>
Mike Klein308e6242017-04-27 13:56:33 -04002736 DB 197,237,219,192 ; vpand %ymm0,%ymm2,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04002737 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002738 DB 196,226,125,24,13,241,29,0,0 ; vbroadcastss 0x1df1(%rip),%ymm1 # 4b9c <_sk_callback_hsw+0x38f>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002739 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002740 DB 196,226,125,88,13,232,29,0,0 ; vpbroadcastd 0x1de8(%rip),%ymm1 # 4ba0 <_sk_callback_hsw+0x393>
Mike Klein308e6242017-04-27 13:56:33 -04002741 DB 197,237,219,201 ; vpand %ymm1,%ymm2,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04002742 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002743 DB 196,226,125,24,29,219,29,0,0 ; vbroadcastss 0x1ddb(%rip),%ymm3 # 4ba4 <_sk_callback_hsw+0x397>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002744 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002745 DB 196,226,125,88,29,210,29,0,0 ; vpbroadcastd 0x1dd2(%rip),%ymm3 # 4ba8 <_sk_callback_hsw+0x39b>
Mike Klein308e6242017-04-27 13:56:33 -04002746 DB 197,237,219,211 ; vpand %ymm3,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04002747 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002748 DB 196,226,125,24,29,197,29,0,0 ; vbroadcastss 0x1dc5(%rip),%ymm3 # 4bac <_sk_callback_hsw+0x39f>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002749 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04002750 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04002751 DB 196,226,125,24,29,186,29,0,0 ; vbroadcastss 0x1dba(%rip),%ymm3 # 4bb0 <_sk_callback_hsw+0x3a3>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002752 DB 255,224 ; jmpq *%rax
2753 DB 65,137,200 ; mov %ecx,%r8d
2754 DB 65,128,224,7 ; and $0x7,%r8b
2755 DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0
2756 DB 65,254,200 ; dec %r8b
2757 DB 65,128,248,6 ; cmp $0x6,%r8b
Mike Klein5d7f2b52017-05-20 13:21:59 -04002758 DB 119,128 ; ja 2d8c <_sk_load_565_hsw+0x10>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002759 DB 69,15,182,192 ; movzbl %r8b,%r8d
Mike Klein5d7f2b52017-05-20 13:21:59 -04002760 DB 76,141,13,73,0,0,0 ; lea 0x49(%rip),%r9 # 2e60 <_sk_load_565_hsw+0xe4>
Mike Kleind7e06ae2017-03-29 16:33:06 -04002761 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
2762 DB 76,1,200 ; add %r9,%rax
2763 DB 255,224 ; jmpq *%rax
2764 DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0
2765 DB 196,193,121,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
2766 DB 196,193,121,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
2767 DB 196,193,121,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
2768 DB 196,193,121,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
2769 DB 196,193,121,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
2770 DB 196,193,121,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
2771 DB 196,193,121,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm0,%xmm0
Mike Klein5d7f2b52017-05-20 13:21:59 -04002772 DB 233,44,255,255,255 ; jmpq 2d8c <_sk_load_565_hsw+0x10>
Mike Kleinfe560a82017-05-01 12:56:35 -04002773 DB 244 ; hlt
Mike Kleind7e06ae2017-03-29 16:33:06 -04002774 DB 255 ; (bad)
2775 DB 255 ; (bad)
2776 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04002777 DB 236 ; in (%dx),%al
2778 DB 255 ; (bad)
2779 DB 255 ; (bad)
2780 DB 255,228 ; jmpq *%rsp
Mike Kleind7e06ae2017-03-29 16:33:06 -04002781 DB 255 ; (bad)
2782 DB 255 ; (bad)
2783 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04002784 DB 220,255 ; fdivr %st,%st(7)
Mike Klein0aa742f2017-04-27 13:36:57 -04002785 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04002786 DB 255,212 ; callq *%rsp
Mike Klein0aa742f2017-04-27 13:36:57 -04002787 DB 255 ; (bad)
2788 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04002789 DB 255,204 ; dec %esp
Mike Klein0aa742f2017-04-27 13:36:57 -04002790 DB 255 ; (bad)
2791 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04002792 DB 255,192 ; inc %eax
Mike Kleind7e06ae2017-03-29 16:33:06 -04002793 DB 255 ; (bad)
2794 DB 255 ; (bad)
2795 DB 255 ; .byte 0xff
2796
Mike Klein21bd3e42017-04-06 16:32:29 -04002797PUBLIC _sk_gather_565_hsw
2798_sk_gather_565_hsw LABEL PROC
2799 DB 65,87 ; push %r15
2800 DB 65,86 ; push %r14
2801 DB 65,84 ; push %r12
2802 DB 83 ; push %rbx
2803 DB 72,173 ; lods %ds:(%rsi),%rax
2804 DB 76,139,0 ; mov (%rax),%r8
2805 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
2806 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2
2807 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1
2808 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
2809 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0
2810 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax
2811 DB 65,137,193 ; mov %eax,%r9d
2812 DB 72,193,232,32 ; shr $0x20,%rax
2813 DB 196,193,249,126,194 ; vmovq %xmm0,%r10
2814 DB 69,137,211 ; mov %r10d,%r11d
2815 DB 73,193,234,32 ; shr $0x20,%r10
2816 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0
2817 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx
2818 DB 65,137,222 ; mov %ebx,%r14d
2819 DB 72,193,235,32 ; shr $0x20,%rbx
2820 DB 196,193,249,126,199 ; vmovq %xmm0,%r15
2821 DB 69,137,252 ; mov %r15d,%r12d
2822 DB 73,193,239,32 ; shr $0x20,%r15
2823 DB 71,15,183,20,80 ; movzwl (%r8,%r10,2),%r10d
2824 DB 71,15,183,28,88 ; movzwl (%r8,%r11,2),%r11d
2825 DB 196,193,121,110,195 ; vmovd %r11d,%xmm0
2826 DB 196,193,121,196,194,1 ; vpinsrw $0x1,%r10d,%xmm0,%xmm0
2827 DB 71,15,183,12,72 ; movzwl (%r8,%r9,2),%r9d
2828 DB 196,193,121,196,193,2 ; vpinsrw $0x2,%r9d,%xmm0,%xmm0
2829 DB 65,15,183,4,64 ; movzwl (%r8,%rax,2),%eax
2830 DB 197,249,196,192,3 ; vpinsrw $0x3,%eax,%xmm0,%xmm0
2831 DB 67,15,183,4,96 ; movzwl (%r8,%r12,2),%eax
2832 DB 197,249,196,192,4 ; vpinsrw $0x4,%eax,%xmm0,%xmm0
2833 DB 67,15,183,4,120 ; movzwl (%r8,%r15,2),%eax
2834 DB 197,249,196,192,5 ; vpinsrw $0x5,%eax,%xmm0,%xmm0
2835 DB 67,15,183,4,112 ; movzwl (%r8,%r14,2),%eax
2836 DB 197,249,196,192,6 ; vpinsrw $0x6,%eax,%xmm0,%xmm0
2837 DB 65,15,183,4,88 ; movzwl (%r8,%rbx,2),%eax
2838 DB 197,249,196,192,7 ; vpinsrw $0x7,%eax,%xmm0,%xmm0
2839 DB 196,226,125,51,208 ; vpmovzxwd %xmm0,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002840 DB 196,226,125,88,5,125,28,0,0 ; vpbroadcastd 0x1c7d(%rip),%ymm0 # 4bb4 <_sk_callback_hsw+0x3a7>
Mike Klein308e6242017-04-27 13:56:33 -04002841 DB 197,237,219,192 ; vpand %ymm0,%ymm2,%ymm0
Mike Klein21bd3e42017-04-06 16:32:29 -04002842 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002843 DB 196,226,125,24,13,112,28,0,0 ; vbroadcastss 0x1c70(%rip),%ymm1 # 4bb8 <_sk_callback_hsw+0x3ab>
Mike Klein21bd3e42017-04-06 16:32:29 -04002844 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002845 DB 196,226,125,88,13,103,28,0,0 ; vpbroadcastd 0x1c67(%rip),%ymm1 # 4bbc <_sk_callback_hsw+0x3af>
Mike Klein308e6242017-04-27 13:56:33 -04002846 DB 197,237,219,201 ; vpand %ymm1,%ymm2,%ymm1
Mike Klein21bd3e42017-04-06 16:32:29 -04002847 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002848 DB 196,226,125,24,29,90,28,0,0 ; vbroadcastss 0x1c5a(%rip),%ymm3 # 4bc0 <_sk_callback_hsw+0x3b3>
Mike Klein21bd3e42017-04-06 16:32:29 -04002849 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002850 DB 196,226,125,88,29,81,28,0,0 ; vpbroadcastd 0x1c51(%rip),%ymm3 # 4bc4 <_sk_callback_hsw+0x3b7>
Mike Klein308e6242017-04-27 13:56:33 -04002851 DB 197,237,219,211 ; vpand %ymm3,%ymm2,%ymm2
Mike Klein21bd3e42017-04-06 16:32:29 -04002852 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002853 DB 196,226,125,24,29,68,28,0,0 ; vbroadcastss 0x1c44(%rip),%ymm3 # 4bc8 <_sk_callback_hsw+0x3bb>
Mike Klein21bd3e42017-04-06 16:32:29 -04002854 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2
Mike Klein21bd3e42017-04-06 16:32:29 -04002855 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04002856 DB 196,226,125,24,29,57,28,0,0 ; vbroadcastss 0x1c39(%rip),%ymm3 # 4bcc <_sk_callback_hsw+0x3bf>
Mike Klein21bd3e42017-04-06 16:32:29 -04002857 DB 91 ; pop %rbx
2858 DB 65,92 ; pop %r12
2859 DB 65,94 ; pop %r14
2860 DB 65,95 ; pop %r15
2861 DB 255,224 ; jmpq *%rax
2862
Mike Kleind7e06ae2017-03-29 16:33:06 -04002863PUBLIC _sk_store_565_hsw
2864_sk_store_565_hsw LABEL PROC
2865 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04002866 DB 76,139,16 ; mov (%rax),%r10
Mike Klein8ca33562017-05-23 08:07:43 -04002867 DB 196,98,125,24,5,38,28,0,0 ; vbroadcastss 0x1c26(%rip),%ymm8 # 4bd0 <_sk_callback_hsw+0x3c3>
Mike Kleinfe560a82017-05-01 12:56:35 -04002868 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04002869 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9
2870 DB 196,193,53,114,241,11 ; vpslld $0xb,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04002871 DB 196,98,125,24,21,17,28,0,0 ; vbroadcastss 0x1c11(%rip),%ymm10 # 4bd4 <_sk_callback_hsw+0x3c7>
Mike Kleinfe560a82017-05-01 12:56:35 -04002872 DB 196,65,116,89,210 ; vmulps %ymm10,%ymm1,%ymm10
Mike Kleind7e06ae2017-03-29 16:33:06 -04002873 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
2874 DB 196,193,45,114,242,5 ; vpslld $0x5,%ymm10,%ymm10
2875 DB 196,65,45,235,201 ; vpor %ymm9,%ymm10,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04002876 DB 196,65,108,89,192 ; vmulps %ymm8,%ymm2,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04002877 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
2878 DB 196,65,53,235,192 ; vpor %ymm8,%ymm9,%ymm8
2879 DB 196,67,125,57,193,1 ; vextracti128 $0x1,%ymm8,%xmm9
2880 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8
2881 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04002882 DB 117,10 ; jne 3001 <_sk_store_565_hsw+0x65>
Mike Kleinfe560a82017-05-01 12:56:35 -04002883 DB 196,65,122,127,4,122 ; vmovdqu %xmm8,(%r10,%rdi,2)
Mike Kleind7e06ae2017-03-29 16:33:06 -04002884 DB 72,173 ; lods %ds:(%rsi),%rax
2885 DB 255,224 ; jmpq *%rax
2886 DB 65,137,200 ; mov %ecx,%r8d
2887 DB 65,128,224,7 ; and $0x7,%r8b
2888 DB 65,254,200 ; dec %r8b
2889 DB 65,128,248,6 ; cmp $0x6,%r8b
Mike Klein5d7f2b52017-05-20 13:21:59 -04002890 DB 119,236 ; ja 2ffd <_sk_store_565_hsw+0x61>
Mike Kleinfe560a82017-05-01 12:56:35 -04002891 DB 69,15,182,192 ; movzbl %r8b,%r8d
Mike Klein5d7f2b52017-05-20 13:21:59 -04002892 DB 76,141,13,68,0,0,0 ; lea 0x44(%rip),%r9 # 3060 <_sk_store_565_hsw+0xc4>
Mike Kleinfe560a82017-05-01 12:56:35 -04002893 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
2894 DB 76,1,200 ; add %r9,%rax
Mike Kleind7e06ae2017-03-29 16:33:06 -04002895 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04002896 DB 196,67,121,21,68,122,12,6 ; vpextrw $0x6,%xmm8,0xc(%r10,%rdi,2)
2897 DB 196,67,121,21,68,122,10,5 ; vpextrw $0x5,%xmm8,0xa(%r10,%rdi,2)
2898 DB 196,67,121,21,68,122,8,4 ; vpextrw $0x4,%xmm8,0x8(%r10,%rdi,2)
2899 DB 196,67,121,21,68,122,6,3 ; vpextrw $0x3,%xmm8,0x6(%r10,%rdi,2)
2900 DB 196,67,121,21,68,122,4,2 ; vpextrw $0x2,%xmm8,0x4(%r10,%rdi,2)
2901 DB 196,67,121,21,68,122,2,1 ; vpextrw $0x1,%xmm8,0x2(%r10,%rdi,2)
2902 DB 196,67,121,21,4,122,0 ; vpextrw $0x0,%xmm8,(%r10,%rdi,2)
Mike Klein5d7f2b52017-05-20 13:21:59 -04002903 DB 235,159 ; jmp 2ffd <_sk_store_565_hsw+0x61>
Mike Kleinfe560a82017-05-01 12:56:35 -04002904 DB 102,144 ; xchg %ax,%ax
2905 DB 245 ; cmc
2906 DB 255 ; (bad)
2907 DB 255 ; (bad)
2908 DB 255 ; (bad)
2909 DB 237 ; in (%dx),%eax
2910 DB 255 ; (bad)
2911 DB 255 ; (bad)
2912 DB 255,229 ; jmpq *%rbp
2913 DB 255 ; (bad)
2914 DB 255 ; (bad)
2915 DB 255 ; (bad)
2916 DB 221,255 ; (bad)
2917 DB 255 ; (bad)
2918 DB 255,213 ; callq *%rbp
2919 DB 255 ; (bad)
2920 DB 255 ; (bad)
2921 DB 255,205 ; dec %ebp
2922 DB 255 ; (bad)
2923 DB 255 ; (bad)
2924 DB 255,197 ; inc %ebp
2925 DB 255 ; (bad)
2926 DB 255 ; (bad)
2927 DB 255 ; .byte 0xff
2928
2929PUBLIC _sk_load_4444_hsw
2930_sk_load_4444_hsw LABEL PROC
2931 DB 72,173 ; lods %ds:(%rsi),%rax
2932 DB 76,139,16 ; mov (%rax),%r10
2933 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04002934 DB 15,133,138,0,0,0 ; jne 3114 <_sk_load_4444_hsw+0x98>
Mike Kleinfe560a82017-05-01 12:56:35 -04002935 DB 196,193,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm0
2936 DB 196,226,125,51,216 ; vpmovzxwd %xmm0,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04002937 DB 196,226,125,88,5,58,27,0,0 ; vpbroadcastd 0x1b3a(%rip),%ymm0 # 4bd8 <_sk_callback_hsw+0x3cb>
Mike Kleinfe560a82017-05-01 12:56:35 -04002938 DB 197,229,219,192 ; vpand %ymm0,%ymm3,%ymm0
2939 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002940 DB 196,226,125,24,13,45,27,0,0 ; vbroadcastss 0x1b2d(%rip),%ymm1 # 4bdc <_sk_callback_hsw+0x3cf>
Mike Kleinfe560a82017-05-01 12:56:35 -04002941 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04002942 DB 196,226,125,88,13,36,27,0,0 ; vpbroadcastd 0x1b24(%rip),%ymm1 # 4be0 <_sk_callback_hsw+0x3d3>
Mike Kleinfe560a82017-05-01 12:56:35 -04002943 DB 197,229,219,201 ; vpand %ymm1,%ymm3,%ymm1
2944 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002945 DB 196,226,125,24,21,23,27,0,0 ; vbroadcastss 0x1b17(%rip),%ymm2 # 4be4 <_sk_callback_hsw+0x3d7>
Mike Kleinfe560a82017-05-01 12:56:35 -04002946 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04002947 DB 196,226,125,88,21,14,27,0,0 ; vpbroadcastd 0x1b0e(%rip),%ymm2 # 4be8 <_sk_callback_hsw+0x3db>
Mike Kleinfe560a82017-05-01 12:56:35 -04002948 DB 197,229,219,210 ; vpand %ymm2,%ymm3,%ymm2
2949 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002950 DB 196,98,125,24,5,1,27,0,0 ; vbroadcastss 0x1b01(%rip),%ymm8 # 4bec <_sk_callback_hsw+0x3df>
Mike Kleinfe560a82017-05-01 12:56:35 -04002951 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04002952 DB 196,98,125,88,5,247,26,0,0 ; vpbroadcastd 0x1af7(%rip),%ymm8 # 4bf0 <_sk_callback_hsw+0x3e3>
Mike Kleinfe560a82017-05-01 12:56:35 -04002953 DB 196,193,101,219,216 ; vpand %ymm8,%ymm3,%ymm3
2954 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04002955 DB 196,98,125,24,5,233,26,0,0 ; vbroadcastss 0x1ae9(%rip),%ymm8 # 4bf4 <_sk_callback_hsw+0x3e7>
Mike Kleinfe560a82017-05-01 12:56:35 -04002956 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
2957 DB 72,173 ; lods %ds:(%rsi),%rax
2958 DB 255,224 ; jmpq *%rax
2959 DB 65,137,200 ; mov %ecx,%r8d
2960 DB 65,128,224,7 ; and $0x7,%r8b
2961 DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0
2962 DB 65,254,200 ; dec %r8b
2963 DB 65,128,248,6 ; cmp $0x6,%r8b
Mike Klein5d7f2b52017-05-20 13:21:59 -04002964 DB 15,135,100,255,255,255 ; ja 3090 <_sk_load_4444_hsw+0x14>
Mike Kleinfe560a82017-05-01 12:56:35 -04002965 DB 69,15,182,192 ; movzbl %r8b,%r8d
Mike Klein5d7f2b52017-05-20 13:21:59 -04002966 DB 76,141,13,73,0,0,0 ; lea 0x49(%rip),%r9 # 3180 <_sk_load_4444_hsw+0x104>
Mike Kleinfe560a82017-05-01 12:56:35 -04002967 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
2968 DB 76,1,200 ; add %r9,%rax
2969 DB 255,224 ; jmpq *%rax
2970 DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0
2971 DB 196,193,121,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
2972 DB 196,193,121,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
2973 DB 196,193,121,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
2974 DB 196,193,121,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
2975 DB 196,193,121,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
2976 DB 196,193,121,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
2977 DB 196,193,121,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm0,%xmm0
Mike Klein5d7f2b52017-05-20 13:21:59 -04002978 DB 233,16,255,255,255 ; jmpq 3090 <_sk_load_4444_hsw+0x14>
Mike Klein308e6242017-04-27 13:56:33 -04002979 DB 244 ; hlt
Mike Kleind7e06ae2017-03-29 16:33:06 -04002980 DB 255 ; (bad)
2981 DB 255 ; (bad)
2982 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04002983 DB 236 ; in (%dx),%al
Mike Kleind7e06ae2017-03-29 16:33:06 -04002984 DB 255 ; (bad)
2985 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04002986 DB 255,228 ; jmpq *%rsp
Mike Kleind7e06ae2017-03-29 16:33:06 -04002987 DB 255 ; (bad)
2988 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04002989 DB 255 ; (bad)
2990 DB 220,255 ; fdivr %st,%st(7)
2991 DB 255 ; (bad)
2992 DB 255,212 ; callq *%rsp
2993 DB 255 ; (bad)
2994 DB 255 ; (bad)
2995 DB 255,204 ; dec %esp
2996 DB 255 ; (bad)
2997 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04002998 DB 255,192 ; inc %eax
Mike Kleinf809fef2017-03-31 13:52:45 -04002999 DB 255 ; (bad)
3000 DB 255 ; (bad)
3001 DB 255 ; .byte 0xff
3002
Mike Klein21bd3e42017-04-06 16:32:29 -04003003PUBLIC _sk_gather_4444_hsw
3004_sk_gather_4444_hsw LABEL PROC
3005 DB 65,87 ; push %r15
3006 DB 65,86 ; push %r14
3007 DB 65,84 ; push %r12
3008 DB 83 ; push %rbx
3009 DB 72,173 ; lods %ds:(%rsi),%rax
3010 DB 76,139,0 ; mov (%rax),%r8
3011 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
3012 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2
3013 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1
3014 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
3015 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0
3016 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax
3017 DB 65,137,193 ; mov %eax,%r9d
3018 DB 72,193,232,32 ; shr $0x20,%rax
3019 DB 196,193,249,126,194 ; vmovq %xmm0,%r10
3020 DB 69,137,211 ; mov %r10d,%r11d
3021 DB 73,193,234,32 ; shr $0x20,%r10
3022 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0
3023 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx
3024 DB 65,137,222 ; mov %ebx,%r14d
3025 DB 72,193,235,32 ; shr $0x20,%rbx
3026 DB 196,193,249,126,199 ; vmovq %xmm0,%r15
3027 DB 69,137,252 ; mov %r15d,%r12d
3028 DB 73,193,239,32 ; shr $0x20,%r15
3029 DB 71,15,183,20,80 ; movzwl (%r8,%r10,2),%r10d
3030 DB 71,15,183,28,88 ; movzwl (%r8,%r11,2),%r11d
3031 DB 196,193,121,110,195 ; vmovd %r11d,%xmm0
3032 DB 196,193,121,196,194,1 ; vpinsrw $0x1,%r10d,%xmm0,%xmm0
3033 DB 71,15,183,12,72 ; movzwl (%r8,%r9,2),%r9d
3034 DB 196,193,121,196,193,2 ; vpinsrw $0x2,%r9d,%xmm0,%xmm0
3035 DB 65,15,183,4,64 ; movzwl (%r8,%rax,2),%eax
3036 DB 197,249,196,192,3 ; vpinsrw $0x3,%eax,%xmm0,%xmm0
3037 DB 67,15,183,4,96 ; movzwl (%r8,%r12,2),%eax
3038 DB 197,249,196,192,4 ; vpinsrw $0x4,%eax,%xmm0,%xmm0
3039 DB 67,15,183,4,120 ; movzwl (%r8,%r15,2),%eax
3040 DB 197,249,196,192,5 ; vpinsrw $0x5,%eax,%xmm0,%xmm0
3041 DB 67,15,183,4,112 ; movzwl (%r8,%r14,2),%eax
3042 DB 197,249,196,192,6 ; vpinsrw $0x6,%eax,%xmm0,%xmm0
3043 DB 65,15,183,4,88 ; movzwl (%r8,%rbx,2),%eax
3044 DB 197,249,196,192,7 ; vpinsrw $0x7,%eax,%xmm0,%xmm0
Mike Klein308e6242017-04-27 13:56:33 -04003045 DB 196,226,125,51,216 ; vpmovzxwd %xmm0,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04003046 DB 196,226,125,88,5,161,25,0,0 ; vpbroadcastd 0x19a1(%rip),%ymm0 # 4bf8 <_sk_callback_hsw+0x3eb>
Mike Klein308e6242017-04-27 13:56:33 -04003047 DB 197,229,219,192 ; vpand %ymm0,%ymm3,%ymm0
Mike Klein21bd3e42017-04-06 16:32:29 -04003048 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003049 DB 196,226,125,24,13,148,25,0,0 ; vbroadcastss 0x1994(%rip),%ymm1 # 4bfc <_sk_callback_hsw+0x3ef>
Mike Klein21bd3e42017-04-06 16:32:29 -04003050 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003051 DB 196,226,125,88,13,139,25,0,0 ; vpbroadcastd 0x198b(%rip),%ymm1 # 4c00 <_sk_callback_hsw+0x3f3>
Mike Klein308e6242017-04-27 13:56:33 -04003052 DB 197,229,219,201 ; vpand %ymm1,%ymm3,%ymm1
Mike Klein21bd3e42017-04-06 16:32:29 -04003053 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04003054 DB 196,226,125,24,21,126,25,0,0 ; vbroadcastss 0x197e(%rip),%ymm2 # 4c04 <_sk_callback_hsw+0x3f7>
Mike Klein21bd3e42017-04-06 16:32:29 -04003055 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04003056 DB 196,226,125,88,21,117,25,0,0 ; vpbroadcastd 0x1975(%rip),%ymm2 # 4c08 <_sk_callback_hsw+0x3fb>
Mike Klein308e6242017-04-27 13:56:33 -04003057 DB 197,229,219,210 ; vpand %ymm2,%ymm3,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04003058 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04003059 DB 196,98,125,24,5,104,25,0,0 ; vbroadcastss 0x1968(%rip),%ymm8 # 4c0c <_sk_callback_hsw+0x3ff>
Mike Kleinfe560a82017-05-01 12:56:35 -04003060 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04003061 DB 196,98,125,88,5,94,25,0,0 ; vpbroadcastd 0x195e(%rip),%ymm8 # 4c10 <_sk_callback_hsw+0x403>
Mike Klein308e6242017-04-27 13:56:33 -04003062 DB 196,193,101,219,216 ; vpand %ymm8,%ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04003063 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04003064 DB 196,98,125,24,5,80,25,0,0 ; vbroadcastss 0x1950(%rip),%ymm8 # 4c14 <_sk_callback_hsw+0x407>
Mike Kleinfe560a82017-05-01 12:56:35 -04003065 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
Mike Klein21bd3e42017-04-06 16:32:29 -04003066 DB 72,173 ; lods %ds:(%rsi),%rax
3067 DB 91 ; pop %rbx
3068 DB 65,92 ; pop %r12
3069 DB 65,94 ; pop %r14
3070 DB 65,95 ; pop %r15
3071 DB 255,224 ; jmpq *%rax
3072
Mike Kleinf809fef2017-03-31 13:52:45 -04003073PUBLIC _sk_store_4444_hsw
3074_sk_store_4444_hsw LABEL PROC
3075 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04003076 DB 76,139,16 ; mov (%rax),%r10
Mike Klein8ca33562017-05-23 08:07:43 -04003077 DB 196,98,125,24,5,54,25,0,0 ; vbroadcastss 0x1936(%rip),%ymm8 # 4c18 <_sk_callback_hsw+0x40b>
Mike Kleinfe560a82017-05-01 12:56:35 -04003078 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Kleinf809fef2017-03-31 13:52:45 -04003079 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9
3080 DB 196,193,53,114,241,12 ; vpslld $0xc,%ymm9,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04003081 DB 196,65,116,89,208 ; vmulps %ymm8,%ymm1,%ymm10
Mike Kleinf809fef2017-03-31 13:52:45 -04003082 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
3083 DB 196,193,45,114,242,8 ; vpslld $0x8,%ymm10,%ymm10
3084 DB 196,65,45,235,201 ; vpor %ymm9,%ymm10,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04003085 DB 196,65,108,89,208 ; vmulps %ymm8,%ymm2,%ymm10
Mike Kleinf809fef2017-03-31 13:52:45 -04003086 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
3087 DB 196,193,45,114,242,4 ; vpslld $0x4,%ymm10,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -04003088 DB 196,65,100,89,192 ; vmulps %ymm8,%ymm3,%ymm8
Mike Kleinf809fef2017-03-31 13:52:45 -04003089 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
3090 DB 196,65,45,235,192 ; vpor %ymm8,%ymm10,%ymm8
3091 DB 196,65,53,235,192 ; vpor %ymm8,%ymm9,%ymm8
3092 DB 196,67,125,57,193,1 ; vextracti128 $0x1,%ymm8,%xmm9
3093 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8
3094 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003095 DB 117,10 ; jne 3345 <_sk_store_4444_hsw+0x71>
Mike Kleinfe560a82017-05-01 12:56:35 -04003096 DB 196,65,122,127,4,122 ; vmovdqu %xmm8,(%r10,%rdi,2)
Mike Kleinf809fef2017-03-31 13:52:45 -04003097 DB 72,173 ; lods %ds:(%rsi),%rax
3098 DB 255,224 ; jmpq *%rax
3099 DB 65,137,200 ; mov %ecx,%r8d
3100 DB 65,128,224,7 ; and $0x7,%r8b
3101 DB 65,254,200 ; dec %r8b
3102 DB 65,128,248,6 ; cmp $0x6,%r8b
Mike Klein5d7f2b52017-05-20 13:21:59 -04003103 DB 119,236 ; ja 3341 <_sk_store_4444_hsw+0x6d>
Mike Kleinfe560a82017-05-01 12:56:35 -04003104 DB 69,15,182,192 ; movzbl %r8b,%r8d
Mike Klein5d7f2b52017-05-20 13:21:59 -04003105 DB 76,141,13,68,0,0,0 ; lea 0x44(%rip),%r9 # 33a4 <_sk_store_4444_hsw+0xd0>
Mike Kleinfe560a82017-05-01 12:56:35 -04003106 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
3107 DB 76,1,200 ; add %r9,%rax
Mike Kleinf809fef2017-03-31 13:52:45 -04003108 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04003109 DB 196,67,121,21,68,122,12,6 ; vpextrw $0x6,%xmm8,0xc(%r10,%rdi,2)
3110 DB 196,67,121,21,68,122,10,5 ; vpextrw $0x5,%xmm8,0xa(%r10,%rdi,2)
3111 DB 196,67,121,21,68,122,8,4 ; vpextrw $0x4,%xmm8,0x8(%r10,%rdi,2)
3112 DB 196,67,121,21,68,122,6,3 ; vpextrw $0x3,%xmm8,0x6(%r10,%rdi,2)
3113 DB 196,67,121,21,68,122,4,2 ; vpextrw $0x2,%xmm8,0x4(%r10,%rdi,2)
3114 DB 196,67,121,21,68,122,2,1 ; vpextrw $0x1,%xmm8,0x2(%r10,%rdi,2)
3115 DB 196,67,121,21,4,122,0 ; vpextrw $0x0,%xmm8,(%r10,%rdi,2)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003116 DB 235,159 ; jmp 3341 <_sk_store_4444_hsw+0x6d>
Mike Kleinfe560a82017-05-01 12:56:35 -04003117 DB 102,144 ; xchg %ax,%ax
3118 DB 245 ; cmc
Mike Kleinf809fef2017-03-31 13:52:45 -04003119 DB 255 ; (bad)
3120 DB 255 ; (bad)
3121 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04003122 DB 237 ; in (%dx),%eax
Mike Kleinf809fef2017-03-31 13:52:45 -04003123 DB 255 ; (bad)
3124 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04003125 DB 255,229 ; jmpq *%rbp
Mike Kleinf809fef2017-03-31 13:52:45 -04003126 DB 255 ; (bad)
3127 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04003128 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04003129 DB 221,255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04003130 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04003131 DB 255,213 ; callq *%rbp
Mike Klein308e6242017-04-27 13:56:33 -04003132 DB 255 ; (bad)
3133 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04003134 DB 255,205 ; dec %ebp
Mike Klein308e6242017-04-27 13:56:33 -04003135 DB 255 ; (bad)
3136 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04003137 DB 255,197 ; inc %ebp
Mike Kleinf809fef2017-03-31 13:52:45 -04003138 DB 255 ; (bad)
3139 DB 255 ; (bad)
3140 DB 255 ; .byte 0xff
3141
Mike Kleind7e06ae2017-03-29 16:33:06 -04003142PUBLIC _sk_load_8888_hsw
3143_sk_load_8888_hsw LABEL PROC
3144 DB 73,137,200 ; mov %rcx,%r8
3145 DB 72,173 ; lods %ds:(%rsi),%rax
3146 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9
3147 DB 76,3,8 ; add (%rax),%r9
3148 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04003149 DB 117,88 ; jne 342d <_sk_load_8888_hsw+0x6d>
Brian Osman74fc5932017-05-22 19:25:36 +00003150 DB 196,193,126,111,25 ; vmovdqu (%r9),%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04003151 DB 197,229,219,5,254,25,0,0 ; vpand 0x19fe(%rip),%ymm3,%ymm0 # 4de0 <_sk_callback_hsw+0x5d3>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003152 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003153 DB 196,98,125,24,5,45,24,0,0 ; vbroadcastss 0x182d(%rip),%ymm8 # 4c1c <_sk_callback_hsw+0x40f>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003154 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003155 DB 196,226,101,0,13,3,26,0,0 ; vpshufb 0x1a03(%rip),%ymm3,%ymm1 # 4e00 <_sk_callback_hsw+0x5f3>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003156 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
3157 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04003158 DB 196,226,101,0,21,17,26,0,0 ; vpshufb 0x1a11(%rip),%ymm3,%ymm2 # 4e20 <_sk_callback_hsw+0x613>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003159 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
3160 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
3161 DB 197,229,114,211,24 ; vpsrld $0x18,%ymm3,%ymm3
3162 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
3163 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
3164 DB 72,173 ; lods %ds:(%rsi),%rax
3165 DB 76,137,193 ; mov %r8,%rcx
3166 DB 255,224 ; jmpq *%rax
3167 DB 185,8,0,0,0 ; mov $0x8,%ecx
3168 DB 68,41,193 ; sub %r8d,%ecx
3169 DB 192,225,3 ; shl $0x3,%cl
3170 DB 72,199,192,255,255,255,255 ; mov $0xffffffffffffffff,%rax
3171 DB 72,211,232 ; shr %cl,%rax
3172 DB 196,225,249,110,192 ; vmovq %rax,%xmm0
3173 DB 196,226,125,33,192 ; vpmovsxbd %xmm0,%ymm0
Brian Osman74fc5932017-05-22 19:25:36 +00003174 DB 196,194,125,140,25 ; vpmaskmovd (%r9),%ymm0,%ymm3
Mike Klein5d7f2b52017-05-20 13:21:59 -04003175 DB 235,135 ; jmp 33da <_sk_load_8888_hsw+0x1a>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003176
Mike Kleindec4ea82017-04-06 15:04:05 -04003177PUBLIC _sk_gather_8888_hsw
3178_sk_gather_8888_hsw LABEL PROC
3179 DB 72,173 ; lods %ds:(%rsi),%rax
3180 DB 76,139,0 ; mov (%rax),%r8
3181 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
3182 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2
3183 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1
3184 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
3185 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0
3186 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1
3187 DB 196,194,117,144,28,128 ; vpgatherdd %ymm1,(%r8,%ymm0,4),%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04003188 DB 197,229,219,5,191,25,0,0 ; vpand 0x19bf(%rip),%ymm3,%ymm0 # 4e40 <_sk_callback_hsw+0x633>
Mike Kleindec4ea82017-04-06 15:04:05 -04003189 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003190 DB 196,98,125,24,5,146,23,0,0 ; vbroadcastss 0x1792(%rip),%ymm8 # 4c20 <_sk_callback_hsw+0x413>
Mike Kleindec4ea82017-04-06 15:04:05 -04003191 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003192 DB 196,226,101,0,13,196,25,0,0 ; vpshufb 0x19c4(%rip),%ymm3,%ymm1 # 4e60 <_sk_callback_hsw+0x653>
Mike Kleindec4ea82017-04-06 15:04:05 -04003193 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
3194 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04003195 DB 196,226,101,0,21,210,25,0,0 ; vpshufb 0x19d2(%rip),%ymm3,%ymm2 # 4e80 <_sk_callback_hsw+0x673>
Mike Kleindec4ea82017-04-06 15:04:05 -04003196 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
3197 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
3198 DB 197,229,114,211,24 ; vpsrld $0x18,%ymm3,%ymm3
3199 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
3200 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
3201 DB 72,173 ; lods %ds:(%rsi),%rax
3202 DB 255,224 ; jmpq *%rax
3203
Mike Kleind7e06ae2017-03-29 16:33:06 -04003204PUBLIC _sk_store_8888_hsw
3205_sk_store_8888_hsw LABEL PROC
3206 DB 73,137,200 ; mov %rcx,%r8
3207 DB 72,173 ; lods %ds:(%rsi),%rax
3208 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9
3209 DB 76,3,8 ; add (%rax),%r9
Mike Klein8ca33562017-05-23 08:07:43 -04003210 DB 196,98,125,24,5,66,23,0,0 ; vbroadcastss 0x1742(%rip),%ymm8 # 4c24 <_sk_callback_hsw+0x417>
Mike Kleinfe560a82017-05-01 12:56:35 -04003211 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04003212 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04003213 DB 196,65,116,89,208 ; vmulps %ymm8,%ymm1,%ymm10
Mike Kleind7e06ae2017-03-29 16:33:06 -04003214 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
3215 DB 196,193,45,114,242,8 ; vpslld $0x8,%ymm10,%ymm10
3216 DB 196,65,45,235,201 ; vpor %ymm9,%ymm10,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04003217 DB 196,65,108,89,208 ; vmulps %ymm8,%ymm2,%ymm10
Mike Kleind7e06ae2017-03-29 16:33:06 -04003218 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
3219 DB 196,193,45,114,242,16 ; vpslld $0x10,%ymm10,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -04003220 DB 196,65,100,89,192 ; vmulps %ymm8,%ymm3,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04003221 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
3222 DB 196,193,61,114,240,24 ; vpslld $0x18,%ymm8,%ymm8
3223 DB 196,65,45,235,192 ; vpor %ymm8,%ymm10,%ymm8
3224 DB 196,65,53,235,192 ; vpor %ymm8,%ymm9,%ymm8
3225 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04003226 DB 117,12 ; jne 353c <_sk_store_8888_hsw+0x73>
Brian Osman74fc5932017-05-22 19:25:36 +00003227 DB 196,65,126,127,1 ; vmovdqu %ymm8,(%r9)
Mike Kleind7e06ae2017-03-29 16:33:06 -04003228 DB 72,173 ; lods %ds:(%rsi),%rax
3229 DB 76,137,193 ; mov %r8,%rcx
3230 DB 255,224 ; jmpq *%rax
3231 DB 185,8,0,0,0 ; mov $0x8,%ecx
3232 DB 68,41,193 ; sub %r8d,%ecx
3233 DB 192,225,3 ; shl $0x3,%cl
3234 DB 72,199,192,255,255,255,255 ; mov $0xffffffffffffffff,%rax
3235 DB 72,211,232 ; shr %cl,%rax
3236 DB 196,97,249,110,200 ; vmovq %rax,%xmm9
3237 DB 196,66,125,33,201 ; vpmovsxbd %xmm9,%ymm9
Brian Osman74fc5932017-05-22 19:25:36 +00003238 DB 196,66,53,142,1 ; vpmaskmovd %ymm8,%ymm9,(%r9)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003239 DB 235,211 ; jmp 3535 <_sk_store_8888_hsw+0x6c>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003240
3241PUBLIC _sk_load_f16_hsw
3242_sk_load_f16_hsw LABEL PROC
3243 DB 72,173 ; lods %ds:(%rsi),%rax
3244 DB 72,139,0 ; mov (%rax),%rax
3245 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003246 DB 117,97 ; jne 35cd <_sk_load_f16_hsw+0x6b>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003247 DB 197,121,16,4,248 ; vmovupd (%rax,%rdi,8),%xmm8
3248 DB 197,249,16,84,248,16 ; vmovupd 0x10(%rax,%rdi,8),%xmm2
3249 DB 197,249,16,92,248,32 ; vmovupd 0x20(%rax,%rdi,8),%xmm3
3250 DB 197,122,111,76,248,48 ; vmovdqu 0x30(%rax,%rdi,8),%xmm9
3251 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0
3252 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2
3253 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1
3254 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3
3255 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8
3256 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9
3257 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2
3258 DB 197,241,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm3
3259 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0
3260 DB 196,226,125,19,192 ; vcvtph2ps %xmm0,%ymm0
3261 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1
3262 DB 196,226,125,19,201 ; vcvtph2ps %xmm1,%ymm1
3263 DB 197,177,108,211 ; vpunpcklqdq %xmm3,%xmm9,%xmm2
3264 DB 196,226,125,19,210 ; vcvtph2ps %xmm2,%ymm2
3265 DB 197,177,109,219 ; vpunpckhqdq %xmm3,%xmm9,%xmm3
3266 DB 196,226,125,19,219 ; vcvtph2ps %xmm3,%ymm3
3267 DB 72,173 ; lods %ds:(%rsi),%rax
3268 DB 255,224 ; jmpq *%rax
3269 DB 197,123,16,4,248 ; vmovsd (%rax,%rdi,8),%xmm8
3270 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9
3271 DB 72,131,249,1 ; cmp $0x1,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003272 DB 116,79 ; je 362c <_sk_load_f16_hsw+0xca>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003273 DB 197,57,22,68,248,8 ; vmovhpd 0x8(%rax,%rdi,8),%xmm8,%xmm8
3274 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003275 DB 114,67 ; jb 362c <_sk_load_f16_hsw+0xca>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003276 DB 197,251,16,84,248,16 ; vmovsd 0x10(%rax,%rdi,8),%xmm2
3277 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003278 DB 116,68 ; je 3639 <_sk_load_f16_hsw+0xd7>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003279 DB 197,233,22,84,248,24 ; vmovhpd 0x18(%rax,%rdi,8),%xmm2,%xmm2
3280 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003281 DB 114,56 ; jb 3639 <_sk_load_f16_hsw+0xd7>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003282 DB 197,251,16,92,248,32 ; vmovsd 0x20(%rax,%rdi,8),%xmm3
3283 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003284 DB 15,132,114,255,255,255 ; je 3583 <_sk_load_f16_hsw+0x21>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003285 DB 197,225,22,92,248,40 ; vmovhpd 0x28(%rax,%rdi,8),%xmm3,%xmm3
3286 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003287 DB 15,130,98,255,255,255 ; jb 3583 <_sk_load_f16_hsw+0x21>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003288 DB 197,122,126,76,248,48 ; vmovq 0x30(%rax,%rdi,8),%xmm9
Mike Klein5d7f2b52017-05-20 13:21:59 -04003289 DB 233,87,255,255,255 ; jmpq 3583 <_sk_load_f16_hsw+0x21>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003290 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
3291 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2
Mike Klein5d7f2b52017-05-20 13:21:59 -04003292 DB 233,74,255,255,255 ; jmpq 3583 <_sk_load_f16_hsw+0x21>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003293 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
Mike Klein5d7f2b52017-05-20 13:21:59 -04003294 DB 233,65,255,255,255 ; jmpq 3583 <_sk_load_f16_hsw+0x21>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003295
Mike Klein5f055f02017-04-06 20:02:11 -04003296PUBLIC _sk_gather_f16_hsw
3297_sk_gather_f16_hsw LABEL PROC
3298 DB 72,173 ; lods %ds:(%rsi),%rax
3299 DB 76,139,0 ; mov (%rax),%r8
3300 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
3301 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2
3302 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1
3303 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
3304 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0
3305 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1
3306 DB 197,237,118,210 ; vpcmpeqd %ymm2,%ymm2,%ymm2
3307 DB 196,194,237,144,28,192 ; vpgatherdq %ymm2,(%r8,%xmm0,8),%ymm3
3308 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0
3309 DB 196,194,245,144,20,192 ; vpgatherdq %ymm1,(%r8,%xmm0,8),%ymm2
3310 DB 196,227,125,57,216,1 ; vextracti128 $0x1,%ymm3,%xmm0
3311 DB 196,227,125,57,209,1 ; vextracti128 $0x1,%ymm2,%xmm1
3312 DB 197,97,97,192 ; vpunpcklwd %xmm0,%xmm3,%xmm8
3313 DB 197,225,105,192 ; vpunpckhwd %xmm0,%xmm3,%xmm0
3314 DB 197,233,97,217 ; vpunpcklwd %xmm1,%xmm2,%xmm3
3315 DB 197,233,105,201 ; vpunpckhwd %xmm1,%xmm2,%xmm1
3316 DB 197,57,97,200 ; vpunpcklwd %xmm0,%xmm8,%xmm9
3317 DB 197,57,105,192 ; vpunpckhwd %xmm0,%xmm8,%xmm8
3318 DB 197,225,97,209 ; vpunpcklwd %xmm1,%xmm3,%xmm2
3319 DB 197,225,105,217 ; vpunpckhwd %xmm1,%xmm3,%xmm3
3320 DB 197,177,108,194 ; vpunpcklqdq %xmm2,%xmm9,%xmm0
3321 DB 196,226,125,19,192 ; vcvtph2ps %xmm0,%ymm0
3322 DB 197,177,109,202 ; vpunpckhqdq %xmm2,%xmm9,%xmm1
3323 DB 196,226,125,19,201 ; vcvtph2ps %xmm1,%ymm1
3324 DB 197,185,108,211 ; vpunpcklqdq %xmm3,%xmm8,%xmm2
3325 DB 196,226,125,19,210 ; vcvtph2ps %xmm2,%ymm2
3326 DB 197,185,109,219 ; vpunpckhqdq %xmm3,%xmm8,%xmm3
3327 DB 196,226,125,19,219 ; vcvtph2ps %xmm3,%ymm3
3328 DB 72,173 ; lods %ds:(%rsi),%rax
3329 DB 255,224 ; jmpq *%rax
3330
Mike Kleind7e06ae2017-03-29 16:33:06 -04003331PUBLIC _sk_store_f16_hsw
3332_sk_store_f16_hsw LABEL PROC
3333 DB 72,173 ; lods %ds:(%rsi),%rax
3334 DB 72,139,0 ; mov (%rax),%rax
3335 DB 196,195,125,29,192,4 ; vcvtps2ph $0x4,%ymm0,%xmm8
3336 DB 196,195,125,29,201,4 ; vcvtps2ph $0x4,%ymm1,%xmm9
3337 DB 196,195,125,29,210,4 ; vcvtps2ph $0x4,%ymm2,%xmm10
3338 DB 196,195,125,29,219,4 ; vcvtps2ph $0x4,%ymm3,%xmm11
3339 DB 196,65,57,97,225 ; vpunpcklwd %xmm9,%xmm8,%xmm12
3340 DB 196,65,57,105,193 ; vpunpckhwd %xmm9,%xmm8,%xmm8
3341 DB 196,65,41,97,203 ; vpunpcklwd %xmm11,%xmm10,%xmm9
3342 DB 196,65,41,105,235 ; vpunpckhwd %xmm11,%xmm10,%xmm13
3343 DB 196,65,25,98,217 ; vpunpckldq %xmm9,%xmm12,%xmm11
3344 DB 196,65,25,106,209 ; vpunpckhdq %xmm9,%xmm12,%xmm10
3345 DB 196,65,57,98,205 ; vpunpckldq %xmm13,%xmm8,%xmm9
3346 DB 196,65,57,106,197 ; vpunpckhdq %xmm13,%xmm8,%xmm8
3347 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003348 DB 117,27 ; jne 3731 <_sk_store_f16_hsw+0x65>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003349 DB 197,120,17,28,248 ; vmovups %xmm11,(%rax,%rdi,8)
3350 DB 197,120,17,84,248,16 ; vmovups %xmm10,0x10(%rax,%rdi,8)
3351 DB 197,120,17,76,248,32 ; vmovups %xmm9,0x20(%rax,%rdi,8)
3352 DB 197,122,127,68,248,48 ; vmovdqu %xmm8,0x30(%rax,%rdi,8)
3353 DB 72,173 ; lods %ds:(%rsi),%rax
3354 DB 255,224 ; jmpq *%rax
3355 DB 197,121,214,28,248 ; vmovq %xmm11,(%rax,%rdi,8)
3356 DB 72,131,249,1 ; cmp $0x1,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003357 DB 116,241 ; je 372d <_sk_store_f16_hsw+0x61>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003358 DB 197,121,23,92,248,8 ; vmovhpd %xmm11,0x8(%rax,%rdi,8)
3359 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003360 DB 114,229 ; jb 372d <_sk_store_f16_hsw+0x61>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003361 DB 197,121,214,84,248,16 ; vmovq %xmm10,0x10(%rax,%rdi,8)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003362 DB 116,221 ; je 372d <_sk_store_f16_hsw+0x61>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003363 DB 197,121,23,84,248,24 ; vmovhpd %xmm10,0x18(%rax,%rdi,8)
3364 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003365 DB 114,209 ; jb 372d <_sk_store_f16_hsw+0x61>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003366 DB 197,121,214,76,248,32 ; vmovq %xmm9,0x20(%rax,%rdi,8)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003367 DB 116,201 ; je 372d <_sk_store_f16_hsw+0x61>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003368 DB 197,121,23,76,248,40 ; vmovhpd %xmm9,0x28(%rax,%rdi,8)
3369 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003370 DB 114,189 ; jb 372d <_sk_store_f16_hsw+0x61>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003371 DB 197,121,214,68,248,48 ; vmovq %xmm8,0x30(%rax,%rdi,8)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003372 DB 235,181 ; jmp 372d <_sk_store_f16_hsw+0x61>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003373
Mike Klein3146bb92017-04-05 14:45:02 -04003374PUBLIC _sk_load_u16_be_hsw
3375_sk_load_u16_be_hsw LABEL PROC
3376 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinb3821732017-04-17 10:58:05 -04003377 DB 76,139,0 ; mov (%rax),%r8
3378 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax
Mike Klein3146bb92017-04-05 14:45:02 -04003379 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003380 DB 15,133,204,0,0,0 ; jne 385a <_sk_load_u16_be_hsw+0xe2>
Mike Kleinb3821732017-04-17 10:58:05 -04003381 DB 196,65,121,16,4,64 ; vmovupd (%r8,%rax,2),%xmm8
3382 DB 196,193,121,16,84,64,16 ; vmovupd 0x10(%r8,%rax,2),%xmm2
3383 DB 196,193,121,16,92,64,32 ; vmovupd 0x20(%r8,%rax,2),%xmm3
3384 DB 196,65,122,111,76,64,48 ; vmovdqu 0x30(%r8,%rax,2),%xmm9
Mike Klein3146bb92017-04-05 14:45:02 -04003385 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0
3386 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2
3387 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1
3388 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3
3389 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8
3390 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9
3391 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2
3392 DB 197,113,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm11
Mike Klein3146bb92017-04-05 14:45:02 -04003393 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0
3394 DB 197,241,113,240,8 ; vpsllw $0x8,%xmm0,%xmm1
3395 DB 197,249,113,208,8 ; vpsrlw $0x8,%xmm0,%xmm0
3396 DB 197,241,235,192 ; vpor %xmm0,%xmm1,%xmm0
3397 DB 196,226,125,51,192 ; vpmovzxwd %xmm0,%ymm0
3398 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003399 DB 196,98,125,24,21,57,20,0,0 ; vbroadcastss 0x1439(%rip),%ymm10 # 4c28 <_sk_callback_hsw+0x41b>
Mike Kleinfe560a82017-05-01 12:56:35 -04003400 DB 196,193,124,89,194 ; vmulps %ymm10,%ymm0,%ymm0
Mike Klein3146bb92017-04-05 14:45:02 -04003401 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1
3402 DB 197,233,113,241,8 ; vpsllw $0x8,%xmm1,%xmm2
3403 DB 197,241,113,209,8 ; vpsrlw $0x8,%xmm1,%xmm1
3404 DB 197,233,235,201 ; vpor %xmm1,%xmm2,%xmm1
3405 DB 196,226,125,51,201 ; vpmovzxwd %xmm1,%ymm1
3406 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04003407 DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1
Mike Klein3146bb92017-04-05 14:45:02 -04003408 DB 196,193,49,108,211 ; vpunpcklqdq %xmm11,%xmm9,%xmm2
3409 DB 197,225,113,242,8 ; vpsllw $0x8,%xmm2,%xmm3
3410 DB 197,233,113,210,8 ; vpsrlw $0x8,%xmm2,%xmm2
3411 DB 197,225,235,210 ; vpor %xmm2,%xmm3,%xmm2
3412 DB 196,226,125,51,210 ; vpmovzxwd %xmm2,%ymm2
3413 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04003414 DB 196,193,108,89,210 ; vmulps %ymm10,%ymm2,%ymm2
Mike Klein3146bb92017-04-05 14:45:02 -04003415 DB 196,193,49,109,219 ; vpunpckhqdq %xmm11,%xmm9,%xmm3
3416 DB 197,185,113,243,8 ; vpsllw $0x8,%xmm3,%xmm8
3417 DB 197,225,113,211,8 ; vpsrlw $0x8,%xmm3,%xmm3
3418 DB 197,185,235,219 ; vpor %xmm3,%xmm8,%xmm3
3419 DB 196,226,125,51,219 ; vpmovzxwd %xmm3,%ymm3
3420 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04003421 DB 196,193,100,89,218 ; vmulps %ymm10,%ymm3,%ymm3
Mike Klein3146bb92017-04-05 14:45:02 -04003422 DB 72,173 ; lods %ds:(%rsi),%rax
3423 DB 255,224 ; jmpq *%rax
Mike Kleinb3821732017-04-17 10:58:05 -04003424 DB 196,65,123,16,4,64 ; vmovsd (%r8,%rax,2),%xmm8
Mike Klein3146bb92017-04-05 14:45:02 -04003425 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9
3426 DB 72,131,249,1 ; cmp $0x1,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003427 DB 116,85 ; je 38c0 <_sk_load_u16_be_hsw+0x148>
Mike Kleinb3821732017-04-17 10:58:05 -04003428 DB 196,65,57,22,68,64,8 ; vmovhpd 0x8(%r8,%rax,2),%xmm8,%xmm8
Mike Klein3146bb92017-04-05 14:45:02 -04003429 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003430 DB 114,72 ; jb 38c0 <_sk_load_u16_be_hsw+0x148>
Mike Kleinb3821732017-04-17 10:58:05 -04003431 DB 196,193,123,16,84,64,16 ; vmovsd 0x10(%r8,%rax,2),%xmm2
Mike Klein3146bb92017-04-05 14:45:02 -04003432 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003433 DB 116,72 ; je 38cd <_sk_load_u16_be_hsw+0x155>
Mike Kleinb3821732017-04-17 10:58:05 -04003434 DB 196,193,105,22,84,64,24 ; vmovhpd 0x18(%r8,%rax,2),%xmm2,%xmm2
Mike Klein3146bb92017-04-05 14:45:02 -04003435 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003436 DB 114,59 ; jb 38cd <_sk_load_u16_be_hsw+0x155>
Mike Kleinb3821732017-04-17 10:58:05 -04003437 DB 196,193,123,16,92,64,32 ; vmovsd 0x20(%r8,%rax,2),%xmm3
Mike Klein3146bb92017-04-05 14:45:02 -04003438 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003439 DB 15,132,6,255,255,255 ; je 37a9 <_sk_load_u16_be_hsw+0x31>
Mike Kleinb3821732017-04-17 10:58:05 -04003440 DB 196,193,97,22,92,64,40 ; vmovhpd 0x28(%r8,%rax,2),%xmm3,%xmm3
Mike Klein3146bb92017-04-05 14:45:02 -04003441 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003442 DB 15,130,245,254,255,255 ; jb 37a9 <_sk_load_u16_be_hsw+0x31>
Mike Kleinb3821732017-04-17 10:58:05 -04003443 DB 196,65,122,126,76,64,48 ; vmovq 0x30(%r8,%rax,2),%xmm9
Mike Klein5d7f2b52017-05-20 13:21:59 -04003444 DB 233,233,254,255,255 ; jmpq 37a9 <_sk_load_u16_be_hsw+0x31>
Mike Klein3146bb92017-04-05 14:45:02 -04003445 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
3446 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2
Mike Klein5d7f2b52017-05-20 13:21:59 -04003447 DB 233,220,254,255,255 ; jmpq 37a9 <_sk_load_u16_be_hsw+0x31>
Mike Klein3146bb92017-04-05 14:45:02 -04003448 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
Mike Klein5d7f2b52017-05-20 13:21:59 -04003449 DB 233,211,254,255,255 ; jmpq 37a9 <_sk_load_u16_be_hsw+0x31>
Mike Kleinb3821732017-04-17 10:58:05 -04003450
3451PUBLIC _sk_load_rgb_u16_be_hsw
3452_sk_load_rgb_u16_be_hsw LABEL PROC
3453 DB 72,173 ; lods %ds:(%rsi),%rax
3454 DB 76,139,0 ; mov (%rax),%r8
3455 DB 72,141,4,127 ; lea (%rdi,%rdi,2),%rax
3456 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003457 DB 15,133,204,0,0,0 ; jne 39b4 <_sk_load_rgb_u16_be_hsw+0xde>
Mike Kleinb3821732017-04-17 10:58:05 -04003458 DB 196,193,122,111,4,64 ; vmovdqu (%r8,%rax,2),%xmm0
3459 DB 196,193,122,111,84,64,12 ; vmovdqu 0xc(%r8,%rax,2),%xmm2
3460 DB 196,193,122,111,76,64,24 ; vmovdqu 0x18(%r8,%rax,2),%xmm1
3461 DB 196,193,122,111,92,64,32 ; vmovdqu 0x20(%r8,%rax,2),%xmm3
3462 DB 197,225,115,219,4 ; vpsrldq $0x4,%xmm3,%xmm3
3463 DB 197,185,115,216,6 ; vpsrldq $0x6,%xmm0,%xmm8
3464 DB 197,177,115,218,6 ; vpsrldq $0x6,%xmm2,%xmm9
3465 DB 197,161,115,217,6 ; vpsrldq $0x6,%xmm1,%xmm11
3466 DB 197,169,115,219,6 ; vpsrldq $0x6,%xmm3,%xmm10
3467 DB 197,249,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm0
3468 DB 196,193,57,97,209 ; vpunpcklwd %xmm9,%xmm8,%xmm2
3469 DB 197,241,97,203 ; vpunpcklwd %xmm3,%xmm1,%xmm1
3470 DB 196,193,33,97,218 ; vpunpcklwd %xmm10,%xmm11,%xmm3
3471 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8
3472 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9
3473 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2
3474 DB 197,241,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm3
Mike Kleinb3821732017-04-17 10:58:05 -04003475 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0
3476 DB 197,241,113,240,8 ; vpsllw $0x8,%xmm0,%xmm1
3477 DB 197,249,113,208,8 ; vpsrlw $0x8,%xmm0,%xmm0
3478 DB 197,241,235,192 ; vpor %xmm0,%xmm1,%xmm0
3479 DB 196,226,125,51,192 ; vpmovzxwd %xmm0,%ymm0
3480 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003481 DB 196,98,125,24,21,202,18,0,0 ; vbroadcastss 0x12ca(%rip),%ymm10 # 4c2c <_sk_callback_hsw+0x41f>
Mike Kleinfe560a82017-05-01 12:56:35 -04003482 DB 196,193,124,89,194 ; vmulps %ymm10,%ymm0,%ymm0
Mike Kleinb3821732017-04-17 10:58:05 -04003483 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1
3484 DB 197,233,113,241,8 ; vpsllw $0x8,%xmm1,%xmm2
3485 DB 197,241,113,209,8 ; vpsrlw $0x8,%xmm1,%xmm1
3486 DB 197,233,235,201 ; vpor %xmm1,%xmm2,%xmm1
3487 DB 196,226,125,51,201 ; vpmovzxwd %xmm1,%ymm1
3488 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04003489 DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1
Mike Kleinb3821732017-04-17 10:58:05 -04003490 DB 197,177,108,211 ; vpunpcklqdq %xmm3,%xmm9,%xmm2
3491 DB 197,225,113,242,8 ; vpsllw $0x8,%xmm2,%xmm3
3492 DB 197,233,113,210,8 ; vpsrlw $0x8,%xmm2,%xmm2
3493 DB 197,225,235,210 ; vpor %xmm2,%xmm3,%xmm2
3494 DB 196,226,125,51,210 ; vpmovzxwd %xmm2,%ymm2
3495 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04003496 DB 196,193,108,89,210 ; vmulps %ymm10,%ymm2,%ymm2
Mike Kleinb3821732017-04-17 10:58:05 -04003497 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04003498 DB 196,226,125,24,29,126,18,0,0 ; vbroadcastss 0x127e(%rip),%ymm3 # 4c30 <_sk_callback_hsw+0x423>
Mike Kleinb3821732017-04-17 10:58:05 -04003499 DB 255,224 ; jmpq *%rax
3500 DB 196,193,121,110,4,64 ; vmovd (%r8,%rax,2),%xmm0
3501 DB 196,193,121,196,68,64,4,2 ; vpinsrw $0x2,0x4(%r8,%rax,2),%xmm0,%xmm0
3502 DB 72,131,249,1 ; cmp $0x1,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003503 DB 117,5 ; jne 39cd <_sk_load_rgb_u16_be_hsw+0xf7>
3504 DB 233,79,255,255,255 ; jmpq 391c <_sk_load_rgb_u16_be_hsw+0x46>
Mike Kleinb3821732017-04-17 10:58:05 -04003505 DB 196,193,121,110,76,64,6 ; vmovd 0x6(%r8,%rax,2),%xmm1
3506 DB 196,65,113,196,68,64,10,2 ; vpinsrw $0x2,0xa(%r8,%rax,2),%xmm1,%xmm8
3507 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003508 DB 114,26 ; jb 39fc <_sk_load_rgb_u16_be_hsw+0x126>
Mike Kleinb3821732017-04-17 10:58:05 -04003509 DB 196,193,121,110,76,64,12 ; vmovd 0xc(%r8,%rax,2),%xmm1
3510 DB 196,193,113,196,84,64,16,2 ; vpinsrw $0x2,0x10(%r8,%rax,2),%xmm1,%xmm2
3511 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003512 DB 117,10 ; jne 3a01 <_sk_load_rgb_u16_be_hsw+0x12b>
3513 DB 233,32,255,255,255 ; jmpq 391c <_sk_load_rgb_u16_be_hsw+0x46>
3514 DB 233,27,255,255,255 ; jmpq 391c <_sk_load_rgb_u16_be_hsw+0x46>
Mike Kleinb3821732017-04-17 10:58:05 -04003515 DB 196,193,121,110,76,64,18 ; vmovd 0x12(%r8,%rax,2),%xmm1
3516 DB 196,65,113,196,76,64,22,2 ; vpinsrw $0x2,0x16(%r8,%rax,2),%xmm1,%xmm9
3517 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003518 DB 114,26 ; jb 3a30 <_sk_load_rgb_u16_be_hsw+0x15a>
Mike Kleinb3821732017-04-17 10:58:05 -04003519 DB 196,193,121,110,76,64,24 ; vmovd 0x18(%r8,%rax,2),%xmm1
3520 DB 196,193,113,196,76,64,28,2 ; vpinsrw $0x2,0x1c(%r8,%rax,2),%xmm1,%xmm1
3521 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003522 DB 117,10 ; jne 3a35 <_sk_load_rgb_u16_be_hsw+0x15f>
3523 DB 233,236,254,255,255 ; jmpq 391c <_sk_load_rgb_u16_be_hsw+0x46>
3524 DB 233,231,254,255,255 ; jmpq 391c <_sk_load_rgb_u16_be_hsw+0x46>
Mike Kleinb3821732017-04-17 10:58:05 -04003525 DB 196,193,121,110,92,64,30 ; vmovd 0x1e(%r8,%rax,2),%xmm3
3526 DB 196,65,97,196,92,64,34,2 ; vpinsrw $0x2,0x22(%r8,%rax,2),%xmm3,%xmm11
3527 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003528 DB 114,20 ; jb 3a5e <_sk_load_rgb_u16_be_hsw+0x188>
Mike Kleinb3821732017-04-17 10:58:05 -04003529 DB 196,193,121,110,92,64,36 ; vmovd 0x24(%r8,%rax,2),%xmm3
3530 DB 196,193,97,196,92,64,40,2 ; vpinsrw $0x2,0x28(%r8,%rax,2),%xmm3,%xmm3
Mike Klein5d7f2b52017-05-20 13:21:59 -04003531 DB 233,190,254,255,255 ; jmpq 391c <_sk_load_rgb_u16_be_hsw+0x46>
3532 DB 233,185,254,255,255 ; jmpq 391c <_sk_load_rgb_u16_be_hsw+0x46>
Mike Klein3146bb92017-04-05 14:45:02 -04003533
3534PUBLIC _sk_store_u16_be_hsw
3535_sk_store_u16_be_hsw LABEL PROC
3536 DB 72,173 ; lods %ds:(%rsi),%rax
3537 DB 76,139,0 ; mov (%rax),%r8
Mike Kleinfe560a82017-05-01 12:56:35 -04003538 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04003539 DB 196,98,125,24,5,187,17,0,0 ; vbroadcastss 0x11bb(%rip),%ymm8 # 4c34 <_sk_callback_hsw+0x427>
Mike Kleinfe560a82017-05-01 12:56:35 -04003540 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Klein3146bb92017-04-05 14:45:02 -04003541 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9
3542 DB 196,67,125,25,202,1 ; vextractf128 $0x1,%ymm9,%xmm10
3543 DB 196,66,49,43,202 ; vpackusdw %xmm10,%xmm9,%xmm9
3544 DB 196,193,41,113,241,8 ; vpsllw $0x8,%xmm9,%xmm10
3545 DB 196,193,49,113,209,8 ; vpsrlw $0x8,%xmm9,%xmm9
3546 DB 196,65,41,235,201 ; vpor %xmm9,%xmm10,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -04003547 DB 196,65,116,89,208 ; vmulps %ymm8,%ymm1,%ymm10
Mike Klein3146bb92017-04-05 14:45:02 -04003548 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
3549 DB 196,67,125,25,211,1 ; vextractf128 $0x1,%ymm10,%xmm11
3550 DB 196,66,41,43,211 ; vpackusdw %xmm11,%xmm10,%xmm10
3551 DB 196,193,33,113,242,8 ; vpsllw $0x8,%xmm10,%xmm11
3552 DB 196,193,41,113,210,8 ; vpsrlw $0x8,%xmm10,%xmm10
3553 DB 196,65,33,235,210 ; vpor %xmm10,%xmm11,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -04003554 DB 196,65,108,89,216 ; vmulps %ymm8,%ymm2,%ymm11
Mike Klein3146bb92017-04-05 14:45:02 -04003555 DB 196,65,125,91,219 ; vcvtps2dq %ymm11,%ymm11
3556 DB 196,67,125,25,220,1 ; vextractf128 $0x1,%ymm11,%xmm12
3557 DB 196,66,33,43,220 ; vpackusdw %xmm12,%xmm11,%xmm11
3558 DB 196,193,25,113,243,8 ; vpsllw $0x8,%xmm11,%xmm12
3559 DB 196,193,33,113,211,8 ; vpsrlw $0x8,%xmm11,%xmm11
3560 DB 196,65,25,235,219 ; vpor %xmm11,%xmm12,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -04003561 DB 196,65,100,89,192 ; vmulps %ymm8,%ymm3,%ymm8
Mike Klein3146bb92017-04-05 14:45:02 -04003562 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
3563 DB 196,67,125,25,196,1 ; vextractf128 $0x1,%ymm8,%xmm12
3564 DB 196,66,57,43,196 ; vpackusdw %xmm12,%xmm8,%xmm8
3565 DB 196,193,25,113,240,8 ; vpsllw $0x8,%xmm8,%xmm12
3566 DB 196,193,57,113,208,8 ; vpsrlw $0x8,%xmm8,%xmm8
3567 DB 196,65,25,235,192 ; vpor %xmm8,%xmm12,%xmm8
3568 DB 196,65,49,97,226 ; vpunpcklwd %xmm10,%xmm9,%xmm12
3569 DB 196,65,49,105,234 ; vpunpckhwd %xmm10,%xmm9,%xmm13
3570 DB 196,65,33,97,200 ; vpunpcklwd %xmm8,%xmm11,%xmm9
3571 DB 196,65,33,105,192 ; vpunpckhwd %xmm8,%xmm11,%xmm8
3572 DB 196,65,25,98,217 ; vpunpckldq %xmm9,%xmm12,%xmm11
3573 DB 196,65,25,106,209 ; vpunpckhdq %xmm9,%xmm12,%xmm10
3574 DB 196,65,17,98,200 ; vpunpckldq %xmm8,%xmm13,%xmm9
3575 DB 196,65,17,106,192 ; vpunpckhdq %xmm8,%xmm13,%xmm8
3576 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003577 DB 117,31 ; jne 3b5d <_sk_store_u16_be_hsw+0xfa>
Mike Kleinfe560a82017-05-01 12:56:35 -04003578 DB 196,65,120,17,28,64 ; vmovups %xmm11,(%r8,%rax,2)
3579 DB 196,65,120,17,84,64,16 ; vmovups %xmm10,0x10(%r8,%rax,2)
3580 DB 196,65,120,17,76,64,32 ; vmovups %xmm9,0x20(%r8,%rax,2)
3581 DB 196,65,122,127,68,64,48 ; vmovdqu %xmm8,0x30(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04003582 DB 72,173 ; lods %ds:(%rsi),%rax
3583 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04003584 DB 196,65,121,214,28,64 ; vmovq %xmm11,(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04003585 DB 72,131,249,1 ; cmp $0x1,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003586 DB 116,240 ; je 3b59 <_sk_store_u16_be_hsw+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04003587 DB 196,65,121,23,92,64,8 ; vmovhpd %xmm11,0x8(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04003588 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003589 DB 114,227 ; jb 3b59 <_sk_store_u16_be_hsw+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04003590 DB 196,65,121,214,84,64,16 ; vmovq %xmm10,0x10(%r8,%rax,2)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003591 DB 116,218 ; je 3b59 <_sk_store_u16_be_hsw+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04003592 DB 196,65,121,23,84,64,24 ; vmovhpd %xmm10,0x18(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04003593 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003594 DB 114,205 ; jb 3b59 <_sk_store_u16_be_hsw+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04003595 DB 196,65,121,214,76,64,32 ; vmovq %xmm9,0x20(%r8,%rax,2)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003596 DB 116,196 ; je 3b59 <_sk_store_u16_be_hsw+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04003597 DB 196,65,121,23,76,64,40 ; vmovhpd %xmm9,0x28(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04003598 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003599 DB 114,183 ; jb 3b59 <_sk_store_u16_be_hsw+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04003600 DB 196,65,121,214,68,64,48 ; vmovq %xmm8,0x30(%r8,%rax,2)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003601 DB 235,174 ; jmp 3b59 <_sk_store_u16_be_hsw+0xf6>
Mike Klein3146bb92017-04-05 14:45:02 -04003602
Mike Klein14987eb2017-04-06 10:22:26 -04003603PUBLIC _sk_load_f32_hsw
3604_sk_load_f32_hsw LABEL PROC
3605 DB 72,173 ; lods %ds:(%rsi),%rax
3606 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003607 DB 119,110 ; ja 3c21 <_sk_load_f32_hsw+0x76>
Mike Klein14987eb2017-04-06 10:22:26 -04003608 DB 76,139,0 ; mov (%rax),%r8
3609 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9
Mike Klein5d7f2b52017-05-20 13:21:59 -04003610 DB 76,141,21,135,0,0,0 ; lea 0x87(%rip),%r10 # 3c4c <_sk_load_f32_hsw+0xa1>
Mike Klein14987eb2017-04-06 10:22:26 -04003611 DB 73,99,4,138 ; movslq (%r10,%rcx,4),%rax
3612 DB 76,1,208 ; add %r10,%rax
3613 DB 255,224 ; jmpq *%rax
3614 DB 196,3,125,24,68,136,112,1 ; vinsertf128 $0x1,0x70(%r8,%r9,4),%ymm0,%ymm8
3615 DB 196,131,125,24,92,136,96,1 ; vinsertf128 $0x1,0x60(%r8,%r9,4),%ymm0,%ymm3
3616 DB 196,131,125,24,76,136,80,1 ; vinsertf128 $0x1,0x50(%r8,%r9,4),%ymm0,%ymm1
3617 DB 196,131,125,24,84,136,64,1 ; vinsertf128 $0x1,0x40(%r8,%r9,4),%ymm0,%ymm2
3618 DB 196,129,121,16,68,136,48 ; vmovupd 0x30(%r8,%r9,4),%xmm0
3619 DB 196,195,125,13,192,12 ; vblendpd $0xc,%ymm8,%ymm0,%ymm0
3620 DB 196,1,121,16,68,136,32 ; vmovupd 0x20(%r8,%r9,4),%xmm8
3621 DB 196,99,61,13,203,12 ; vblendpd $0xc,%ymm3,%ymm8,%ymm9
3622 DB 196,129,121,16,92,136,16 ; vmovupd 0x10(%r8,%r9,4),%xmm3
3623 DB 196,99,101,13,209,12 ; vblendpd $0xc,%ymm1,%ymm3,%ymm10
3624 DB 196,129,121,16,12,136 ; vmovupd (%r8,%r9,4),%xmm1
3625 DB 196,227,117,13,202,12 ; vblendpd $0xc,%ymm2,%ymm1,%ymm1
3626 DB 196,193,116,20,210 ; vunpcklps %ymm10,%ymm1,%ymm2
3627 DB 196,193,116,21,218 ; vunpckhps %ymm10,%ymm1,%ymm3
3628 DB 197,180,20,200 ; vunpcklps %ymm0,%ymm9,%ymm1
3629 DB 197,52,21,192 ; vunpckhps %ymm0,%ymm9,%ymm8
3630 DB 197,237,20,193 ; vunpcklpd %ymm1,%ymm2,%ymm0
3631 DB 197,237,21,201 ; vunpckhpd %ymm1,%ymm2,%ymm1
3632 DB 196,193,101,20,208 ; vunpcklpd %ymm8,%ymm3,%ymm2
3633 DB 196,193,101,21,216 ; vunpckhpd %ymm8,%ymm3,%ymm3
3634 DB 72,173 ; lods %ds:(%rsi),%rax
3635 DB 255,224 ; jmpq *%rax
Mike Klein0aa742f2017-04-27 13:36:57 -04003636 DB 15,31,0 ; nopl (%rax)
3637 DB 130 ; (bad)
3638 DB 255 ; (bad)
3639 DB 255 ; (bad)
3640 DB 255,201 ; dec %ecx
Mike Klein14987eb2017-04-06 10:22:26 -04003641 DB 255 ; (bad)
3642 DB 255 ; (bad)
3643 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04003644 DB 188,255,255,255,175 ; mov $0xafffffff,%esp
Mike Klein14987eb2017-04-06 10:22:26 -04003645 DB 255 ; (bad)
3646 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04003647 DB 255,162,255,255,255,154 ; jmpq *-0x65000001(%rdx)
Mike Klein14987eb2017-04-06 10:22:26 -04003648 DB 255 ; (bad)
Mike Kleinb3821732017-04-17 10:58:05 -04003649 DB 255 ; (bad)
Mike Klein0aa742f2017-04-27 13:36:57 -04003650 DB 255,146,255,255,255,138 ; callq *-0x75000001(%rdx)
Mike Kleinb3821732017-04-17 10:58:05 -04003651 DB 255 ; (bad)
Mike Klein14987eb2017-04-06 10:22:26 -04003652 DB 255 ; (bad)
3653 DB 255 ; .byte 0xff
3654
Mike Kleind7e06ae2017-03-29 16:33:06 -04003655PUBLIC _sk_store_f32_hsw
3656_sk_store_f32_hsw LABEL PROC
3657 DB 72,173 ; lods %ds:(%rsi),%rax
3658 DB 76,139,0 ; mov (%rax),%r8
3659 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax
3660 DB 197,124,20,193 ; vunpcklps %ymm1,%ymm0,%ymm8
3661 DB 197,124,21,217 ; vunpckhps %ymm1,%ymm0,%ymm11
3662 DB 197,108,20,203 ; vunpcklps %ymm3,%ymm2,%ymm9
3663 DB 197,108,21,227 ; vunpckhps %ymm3,%ymm2,%ymm12
3664 DB 196,65,61,20,209 ; vunpcklpd %ymm9,%ymm8,%ymm10
3665 DB 196,65,61,21,201 ; vunpckhpd %ymm9,%ymm8,%ymm9
3666 DB 196,65,37,20,196 ; vunpcklpd %ymm12,%ymm11,%ymm8
3667 DB 196,65,37,21,220 ; vunpckhpd %ymm12,%ymm11,%ymm11
3668 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003669 DB 117,55 ; jne 3cd9 <_sk_store_f32_hsw+0x6d>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003670 DB 196,67,45,24,225,1 ; vinsertf128 $0x1,%xmm9,%ymm10,%ymm12
3671 DB 196,67,61,24,235,1 ; vinsertf128 $0x1,%xmm11,%ymm8,%ymm13
3672 DB 196,67,45,6,201,49 ; vperm2f128 $0x31,%ymm9,%ymm10,%ymm9
3673 DB 196,67,61,6,195,49 ; vperm2f128 $0x31,%ymm11,%ymm8,%ymm8
3674 DB 196,65,125,17,36,128 ; vmovupd %ymm12,(%r8,%rax,4)
3675 DB 196,65,125,17,108,128,32 ; vmovupd %ymm13,0x20(%r8,%rax,4)
3676 DB 196,65,125,17,76,128,64 ; vmovupd %ymm9,0x40(%r8,%rax,4)
3677 DB 196,65,125,17,68,128,96 ; vmovupd %ymm8,0x60(%r8,%rax,4)
3678 DB 72,173 ; lods %ds:(%rsi),%rax
3679 DB 255,224 ; jmpq *%rax
3680 DB 196,65,121,17,20,128 ; vmovupd %xmm10,(%r8,%rax,4)
3681 DB 72,131,249,1 ; cmp $0x1,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003682 DB 116,240 ; je 3cd5 <_sk_store_f32_hsw+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003683 DB 196,65,121,17,76,128,16 ; vmovupd %xmm9,0x10(%r8,%rax,4)
3684 DB 72,131,249,3 ; cmp $0x3,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003685 DB 114,227 ; jb 3cd5 <_sk_store_f32_hsw+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003686 DB 196,65,121,17,68,128,32 ; vmovupd %xmm8,0x20(%r8,%rax,4)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003687 DB 116,218 ; je 3cd5 <_sk_store_f32_hsw+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003688 DB 196,65,121,17,92,128,48 ; vmovupd %xmm11,0x30(%r8,%rax,4)
3689 DB 72,131,249,5 ; cmp $0x5,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003690 DB 114,205 ; jb 3cd5 <_sk_store_f32_hsw+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003691 DB 196,67,125,25,84,128,64,1 ; vextractf128 $0x1,%ymm10,0x40(%r8,%rax,4)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003692 DB 116,195 ; je 3cd5 <_sk_store_f32_hsw+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003693 DB 196,67,125,25,76,128,80,1 ; vextractf128 $0x1,%ymm9,0x50(%r8,%rax,4)
3694 DB 72,131,249,7 ; cmp $0x7,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04003695 DB 114,181 ; jb 3cd5 <_sk_store_f32_hsw+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003696 DB 196,67,125,25,68,128,96,1 ; vextractf128 $0x1,%ymm8,0x60(%r8,%rax,4)
Mike Klein5d7f2b52017-05-20 13:21:59 -04003697 DB 235,171 ; jmp 3cd5 <_sk_store_f32_hsw+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04003698
3699PUBLIC _sk_clamp_x_hsw
3700_sk_clamp_x_hsw LABEL PROC
3701 DB 72,173 ; lods %ds:(%rsi),%rax
3702 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
3703 DB 197,188,95,192 ; vmaxps %ymm0,%ymm8,%ymm0
Mike Kleinfc84dc52017-05-11 15:29:31 -04003704 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04003705 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0
3706 DB 72,173 ; lods %ds:(%rsi),%rax
3707 DB 255,224 ; jmpq *%rax
3708
3709PUBLIC _sk_clamp_y_hsw
3710_sk_clamp_y_hsw LABEL PROC
3711 DB 72,173 ; lods %ds:(%rsi),%rax
3712 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
3713 DB 197,188,95,201 ; vmaxps %ymm1,%ymm8,%ymm1
Mike Kleinfc84dc52017-05-11 15:29:31 -04003714 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04003715 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1
3716 DB 72,173 ; lods %ds:(%rsi),%rax
3717 DB 255,224 ; jmpq *%rax
3718
3719PUBLIC _sk_repeat_x_hsw
3720_sk_repeat_x_hsw LABEL PROC
3721 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04003722 DB 196,98,125,24,8 ; vbroadcastss (%rax),%ymm9
3723 DB 196,65,124,94,193 ; vdivps %ymm9,%ymm0,%ymm8
3724 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8
3725 DB 196,98,53,172,192 ; vfnmadd213ps %ymm0,%ymm9,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04003726 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04003727 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04003728 DB 255,224 ; jmpq *%rax
3729
3730PUBLIC _sk_repeat_y_hsw
3731_sk_repeat_y_hsw LABEL PROC
3732 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04003733 DB 196,98,125,24,8 ; vbroadcastss (%rax),%ymm9
3734 DB 196,65,116,94,193 ; vdivps %ymm9,%ymm1,%ymm8
3735 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8
3736 DB 196,98,53,172,193 ; vfnmadd213ps %ymm1,%ymm9,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04003737 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04003738 DB 197,124,41,193 ; vmovaps %ymm8,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04003739 DB 255,224 ; jmpq *%rax
3740
3741PUBLIC _sk_mirror_x_hsw
3742_sk_mirror_x_hsw LABEL PROC
3743 DB 72,173 ; lods %ds:(%rsi),%rax
3744 DB 197,122,16,0 ; vmovss (%rax),%xmm8
3745 DB 196,66,125,24,200 ; vbroadcastss %xmm8,%ymm9
3746 DB 196,65,124,92,209 ; vsubps %ymm9,%ymm0,%ymm10
3747 DB 196,193,58,88,192 ; vaddss %xmm8,%xmm8,%xmm0
3748 DB 196,226,125,24,192 ; vbroadcastss %xmm0,%ymm0
3749 DB 197,44,94,192 ; vdivps %ymm0,%ymm10,%ymm8
3750 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8
3751 DB 196,66,125,172,194 ; vfnmadd213ps %ymm10,%ymm0,%ymm8
3752 DB 196,193,60,92,193 ; vsubps %ymm9,%ymm8,%ymm0
3753 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
3754 DB 197,60,92,192 ; vsubps %ymm0,%ymm8,%ymm8
3755 DB 197,188,84,192 ; vandps %ymm0,%ymm8,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04003756 DB 72,173 ; lods %ds:(%rsi),%rax
3757 DB 255,224 ; jmpq *%rax
3758
3759PUBLIC _sk_mirror_y_hsw
3760_sk_mirror_y_hsw LABEL PROC
3761 DB 72,173 ; lods %ds:(%rsi),%rax
3762 DB 197,122,16,0 ; vmovss (%rax),%xmm8
3763 DB 196,66,125,24,200 ; vbroadcastss %xmm8,%ymm9
3764 DB 196,65,116,92,209 ; vsubps %ymm9,%ymm1,%ymm10
3765 DB 196,193,58,88,200 ; vaddss %xmm8,%xmm8,%xmm1
3766 DB 196,226,125,24,201 ; vbroadcastss %xmm1,%ymm1
3767 DB 197,44,94,193 ; vdivps %ymm1,%ymm10,%ymm8
3768 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8
3769 DB 196,66,117,172,194 ; vfnmadd213ps %ymm10,%ymm1,%ymm8
3770 DB 196,193,60,92,201 ; vsubps %ymm9,%ymm8,%ymm1
3771 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
3772 DB 197,60,92,193 ; vsubps %ymm1,%ymm8,%ymm8
3773 DB 197,188,84,201 ; vandps %ymm1,%ymm8,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04003774 DB 72,173 ; lods %ds:(%rsi),%rax
3775 DB 255,224 ; jmpq *%rax
3776
Mike Klein9f85d682017-05-23 07:52:01 -04003777PUBLIC _sk_clamp_x_1_hsw
3778_sk_clamp_x_1_hsw LABEL PROC
3779 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
3780 DB 197,188,95,192 ; vmaxps %ymm0,%ymm8,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003781 DB 196,98,125,24,5,14,14,0,0 ; vbroadcastss 0xe0e(%rip),%ymm8 # 4c38 <_sk_callback_hsw+0x42b>
Mike Klein9f85d682017-05-23 07:52:01 -04003782 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0
3783 DB 72,173 ; lods %ds:(%rsi),%rax
3784 DB 255,224 ; jmpq *%rax
3785
3786PUBLIC _sk_repeat_x_1_hsw
3787_sk_repeat_x_1_hsw LABEL PROC
3788 DB 196,99,125,8,192,1 ; vroundps $0x1,%ymm0,%ymm8
3789 DB 196,193,124,92,192 ; vsubps %ymm8,%ymm0,%ymm0
3790 DB 72,173 ; lods %ds:(%rsi),%rax
3791 DB 255,224 ; jmpq *%rax
3792
3793PUBLIC _sk_mirror_x_1_hsw
3794_sk_mirror_x_1_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04003795 DB 196,98,125,24,5,241,13,0,0 ; vbroadcastss 0xdf1(%rip),%ymm8 # 4c3c <_sk_callback_hsw+0x42f>
Mike Klein9f85d682017-05-23 07:52:01 -04003796 DB 196,193,124,88,192 ; vaddps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04003797 DB 196,98,125,24,13,231,13,0,0 ; vbroadcastss 0xde7(%rip),%ymm9 # 4c40 <_sk_callback_hsw+0x433>
Mike Klein9f85d682017-05-23 07:52:01 -04003798 DB 196,65,124,89,201 ; vmulps %ymm9,%ymm0,%ymm9
3799 DB 196,67,125,8,201,1 ; vroundps $0x1,%ymm9,%ymm9
3800 DB 196,65,52,88,201 ; vaddps %ymm9,%ymm9,%ymm9
3801 DB 196,193,124,92,193 ; vsubps %ymm9,%ymm0,%ymm0
3802 DB 196,193,124,88,192 ; vaddps %ymm8,%ymm0,%ymm0
3803 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
3804 DB 197,60,92,192 ; vsubps %ymm0,%ymm8,%ymm8
3805 DB 197,188,84,192 ; vandps %ymm0,%ymm8,%ymm0
3806 DB 72,173 ; lods %ds:(%rsi),%rax
3807 DB 255,224 ; jmpq *%rax
3808
Mike Kleind7e06ae2017-03-29 16:33:06 -04003809PUBLIC _sk_luminance_to_alpha_hsw
3810_sk_luminance_to_alpha_hsw LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04003811 DB 196,226,125,24,29,183,13,0,0 ; vbroadcastss 0xdb7(%rip),%ymm3 # 4c44 <_sk_callback_hsw+0x437>
3812 DB 196,98,125,24,5,178,13,0,0 ; vbroadcastss 0xdb2(%rip),%ymm8 # 4c48 <_sk_callback_hsw+0x43b>
Mike Kleinfe560a82017-05-01 12:56:35 -04003813 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
3814 DB 196,226,125,184,203 ; vfmadd231ps %ymm3,%ymm0,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04003815 DB 196,226,125,24,29,163,13,0,0 ; vbroadcastss 0xda3(%rip),%ymm3 # 4c4c <_sk_callback_hsw+0x43f>
Mike Kleinfe560a82017-05-01 12:56:35 -04003816 DB 196,226,109,168,217 ; vfmadd213ps %ymm1,%ymm2,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04003817 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04003818 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04003819 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
3820 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
3821 DB 255,224 ; jmpq *%rax
3822
3823PUBLIC _sk_matrix_2x3_hsw
3824_sk_matrix_2x3_hsw LABEL PROC
3825 DB 72,173 ; lods %ds:(%rsi),%rax
3826 DB 196,98,125,24,8 ; vbroadcastss (%rax),%ymm9
3827 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10
3828 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
3829 DB 196,66,117,184,194 ; vfmadd231ps %ymm10,%ymm1,%ymm8
3830 DB 196,66,125,184,193 ; vfmadd231ps %ymm9,%ymm0,%ymm8
3831 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
3832 DB 196,98,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm11
3833 DB 196,98,125,24,72,20 ; vbroadcastss 0x14(%rax),%ymm9
3834 DB 196,66,117,184,203 ; vfmadd231ps %ymm11,%ymm1,%ymm9
3835 DB 196,66,125,184,202 ; vfmadd231ps %ymm10,%ymm0,%ymm9
3836 DB 72,173 ; lods %ds:(%rsi),%rax
3837 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
3838 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1
3839 DB 255,224 ; jmpq *%rax
3840
3841PUBLIC _sk_matrix_3x4_hsw
3842_sk_matrix_3x4_hsw LABEL PROC
3843 DB 72,173 ; lods %ds:(%rsi),%rax
3844 DB 196,98,125,24,8 ; vbroadcastss (%rax),%ymm9
3845 DB 196,98,125,24,80,12 ; vbroadcastss 0xc(%rax),%ymm10
3846 DB 196,98,125,24,88,24 ; vbroadcastss 0x18(%rax),%ymm11
3847 DB 196,98,125,24,64,36 ; vbroadcastss 0x24(%rax),%ymm8
3848 DB 196,66,109,184,195 ; vfmadd231ps %ymm11,%ymm2,%ymm8
3849 DB 196,66,117,184,194 ; vfmadd231ps %ymm10,%ymm1,%ymm8
3850 DB 196,66,125,184,193 ; vfmadd231ps %ymm9,%ymm0,%ymm8
3851 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
3852 DB 196,98,125,24,88,16 ; vbroadcastss 0x10(%rax),%ymm11
3853 DB 196,98,125,24,96,28 ; vbroadcastss 0x1c(%rax),%ymm12
3854 DB 196,98,125,24,72,40 ; vbroadcastss 0x28(%rax),%ymm9
3855 DB 196,66,109,184,204 ; vfmadd231ps %ymm12,%ymm2,%ymm9
3856 DB 196,66,117,184,203 ; vfmadd231ps %ymm11,%ymm1,%ymm9
3857 DB 196,66,125,184,202 ; vfmadd231ps %ymm10,%ymm0,%ymm9
3858 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
3859 DB 196,98,125,24,96,20 ; vbroadcastss 0x14(%rax),%ymm12
3860 DB 196,98,125,24,104,32 ; vbroadcastss 0x20(%rax),%ymm13
3861 DB 196,98,125,24,80,44 ; vbroadcastss 0x2c(%rax),%ymm10
3862 DB 196,66,109,184,213 ; vfmadd231ps %ymm13,%ymm2,%ymm10
3863 DB 196,66,117,184,212 ; vfmadd231ps %ymm12,%ymm1,%ymm10
3864 DB 196,66,125,184,211 ; vfmadd231ps %ymm11,%ymm0,%ymm10
3865 DB 72,173 ; lods %ds:(%rsi),%rax
3866 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
3867 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1
3868 DB 197,124,41,210 ; vmovaps %ymm10,%ymm2
3869 DB 255,224 ; jmpq *%rax
3870
3871PUBLIC _sk_matrix_4x5_hsw
3872_sk_matrix_4x5_hsw LABEL PROC
3873 DB 72,173 ; lods %ds:(%rsi),%rax
3874 DB 196,98,125,24,8 ; vbroadcastss (%rax),%ymm9
3875 DB 196,98,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm10
3876 DB 196,98,125,24,88,32 ; vbroadcastss 0x20(%rax),%ymm11
3877 DB 196,98,125,24,96,48 ; vbroadcastss 0x30(%rax),%ymm12
3878 DB 196,98,125,24,64,64 ; vbroadcastss 0x40(%rax),%ymm8
3879 DB 196,66,101,184,196 ; vfmadd231ps %ymm12,%ymm3,%ymm8
3880 DB 196,66,109,184,195 ; vfmadd231ps %ymm11,%ymm2,%ymm8
3881 DB 196,66,117,184,194 ; vfmadd231ps %ymm10,%ymm1,%ymm8
3882 DB 196,66,125,184,193 ; vfmadd231ps %ymm9,%ymm0,%ymm8
3883 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
3884 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11
3885 DB 196,98,125,24,96,36 ; vbroadcastss 0x24(%rax),%ymm12
3886 DB 196,98,125,24,104,52 ; vbroadcastss 0x34(%rax),%ymm13
3887 DB 196,98,125,24,72,68 ; vbroadcastss 0x44(%rax),%ymm9
3888 DB 196,66,101,184,205 ; vfmadd231ps %ymm13,%ymm3,%ymm9
3889 DB 196,66,109,184,204 ; vfmadd231ps %ymm12,%ymm2,%ymm9
3890 DB 196,66,117,184,203 ; vfmadd231ps %ymm11,%ymm1,%ymm9
3891 DB 196,66,125,184,202 ; vfmadd231ps %ymm10,%ymm0,%ymm9
3892 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
3893 DB 196,98,125,24,96,24 ; vbroadcastss 0x18(%rax),%ymm12
3894 DB 196,98,125,24,104,40 ; vbroadcastss 0x28(%rax),%ymm13
3895 DB 196,98,125,24,112,56 ; vbroadcastss 0x38(%rax),%ymm14
3896 DB 196,98,125,24,80,72 ; vbroadcastss 0x48(%rax),%ymm10
3897 DB 196,66,101,184,214 ; vfmadd231ps %ymm14,%ymm3,%ymm10
3898 DB 196,66,109,184,213 ; vfmadd231ps %ymm13,%ymm2,%ymm10
3899 DB 196,66,117,184,212 ; vfmadd231ps %ymm12,%ymm1,%ymm10
3900 DB 196,66,125,184,211 ; vfmadd231ps %ymm11,%ymm0,%ymm10
3901 DB 196,98,125,24,96,12 ; vbroadcastss 0xc(%rax),%ymm12
3902 DB 196,98,125,24,104,28 ; vbroadcastss 0x1c(%rax),%ymm13
3903 DB 196,98,125,24,112,44 ; vbroadcastss 0x2c(%rax),%ymm14
3904 DB 196,98,125,24,120,60 ; vbroadcastss 0x3c(%rax),%ymm15
3905 DB 196,98,125,24,88,76 ; vbroadcastss 0x4c(%rax),%ymm11
3906 DB 196,66,101,184,223 ; vfmadd231ps %ymm15,%ymm3,%ymm11
3907 DB 196,66,109,184,222 ; vfmadd231ps %ymm14,%ymm2,%ymm11
3908 DB 196,66,117,184,221 ; vfmadd231ps %ymm13,%ymm1,%ymm11
3909 DB 196,66,125,184,220 ; vfmadd231ps %ymm12,%ymm0,%ymm11
3910 DB 72,173 ; lods %ds:(%rsi),%rax
3911 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
3912 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1
3913 DB 197,124,41,210 ; vmovaps %ymm10,%ymm2
3914 DB 197,124,41,219 ; vmovaps %ymm11,%ymm3
3915 DB 255,224 ; jmpq *%rax
3916
Mike Reed02640952017-05-19 15:32:13 -04003917PUBLIC _sk_matrix_4x3_hsw
3918_sk_matrix_4x3_hsw LABEL PROC
3919 DB 72,173 ; lods %ds:(%rsi),%rax
3920 DB 196,226,125,24,16 ; vbroadcastss (%rax),%ymm2
3921 DB 196,226,125,24,88,16 ; vbroadcastss 0x10(%rax),%ymm3
3922 DB 196,98,125,24,64,32 ; vbroadcastss 0x20(%rax),%ymm8
3923 DB 196,98,117,184,195 ; vfmadd231ps %ymm3,%ymm1,%ymm8
3924 DB 196,98,125,184,194 ; vfmadd231ps %ymm2,%ymm0,%ymm8
3925 DB 196,226,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm2
3926 DB 196,226,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm3
3927 DB 196,98,125,24,72,36 ; vbroadcastss 0x24(%rax),%ymm9
3928 DB 196,98,117,184,203 ; vfmadd231ps %ymm3,%ymm1,%ymm9
3929 DB 196,98,125,184,202 ; vfmadd231ps %ymm2,%ymm0,%ymm9
3930 DB 196,226,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm3
3931 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
3932 DB 196,226,125,24,80,40 ; vbroadcastss 0x28(%rax),%ymm2
3933 DB 196,194,117,184,210 ; vfmadd231ps %ymm10,%ymm1,%ymm2
3934 DB 196,226,125,184,211 ; vfmadd231ps %ymm3,%ymm0,%ymm2
3935 DB 196,98,125,24,80,12 ; vbroadcastss 0xc(%rax),%ymm10
3936 DB 196,98,125,24,88,28 ; vbroadcastss 0x1c(%rax),%ymm11
3937 DB 196,226,125,24,88,44 ; vbroadcastss 0x2c(%rax),%ymm3
3938 DB 196,194,117,184,219 ; vfmadd231ps %ymm11,%ymm1,%ymm3
3939 DB 196,194,125,184,218 ; vfmadd231ps %ymm10,%ymm0,%ymm3
3940 DB 72,173 ; lods %ds:(%rsi),%rax
3941 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
3942 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1
3943 DB 255,224 ; jmpq *%rax
3944
Mike Kleind7e06ae2017-03-29 16:33:06 -04003945PUBLIC _sk_matrix_perspective_hsw
3946_sk_matrix_perspective_hsw LABEL PROC
3947 DB 72,173 ; lods %ds:(%rsi),%rax
3948 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
3949 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9
3950 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10
3951 DB 196,66,117,184,209 ; vfmadd231ps %ymm9,%ymm1,%ymm10
3952 DB 196,66,125,184,208 ; vfmadd231ps %ymm8,%ymm0,%ymm10
3953 DB 196,98,125,24,64,12 ; vbroadcastss 0xc(%rax),%ymm8
3954 DB 196,98,125,24,72,16 ; vbroadcastss 0x10(%rax),%ymm9
3955 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11
3956 DB 196,66,117,184,217 ; vfmadd231ps %ymm9,%ymm1,%ymm11
3957 DB 196,66,125,184,216 ; vfmadd231ps %ymm8,%ymm0,%ymm11
3958 DB 196,98,125,24,64,24 ; vbroadcastss 0x18(%rax),%ymm8
3959 DB 196,98,125,24,72,28 ; vbroadcastss 0x1c(%rax),%ymm9
3960 DB 196,98,125,24,96,32 ; vbroadcastss 0x20(%rax),%ymm12
3961 DB 196,66,117,184,225 ; vfmadd231ps %ymm9,%ymm1,%ymm12
3962 DB 196,66,125,184,224 ; vfmadd231ps %ymm8,%ymm0,%ymm12
3963 DB 196,193,124,83,204 ; vrcpps %ymm12,%ymm1
3964 DB 197,172,89,193 ; vmulps %ymm1,%ymm10,%ymm0
3965 DB 197,164,89,201 ; vmulps %ymm1,%ymm11,%ymm1
3966 DB 72,173 ; lods %ds:(%rsi),%rax
3967 DB 255,224 ; jmpq *%rax
3968
Herb Derby4de13042017-05-15 10:49:39 -04003969PUBLIC _sk_evenly_spaced_gradient_hsw
3970_sk_evenly_spaced_gradient_hsw LABEL PROC
3971 DB 72,173 ; lods %ds:(%rsi),%rax
3972 DB 76,139,8 ; mov (%rax),%r9
3973 DB 76,139,64,8 ; mov 0x8(%rax),%r8
3974 DB 77,137,202 ; mov %r9,%r10
3975 DB 73,255,202 ; dec %r10
Mike Klein8ca33562017-05-23 08:07:43 -04003976 DB 120,7 ; js 4161 <_sk_evenly_spaced_gradient_hsw+0x18>
Herb Derby4de13042017-05-15 10:49:39 -04003977 DB 196,193,242,42,202 ; vcvtsi2ss %r10,%xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -04003978 DB 235,22 ; jmp 4177 <_sk_evenly_spaced_gradient_hsw+0x2e>
Herb Derby4de13042017-05-15 10:49:39 -04003979 DB 77,137,211 ; mov %r10,%r11
3980 DB 73,209,235 ; shr %r11
3981 DB 65,131,226,1 ; and $0x1,%r10d
3982 DB 77,9,218 ; or %r11,%r10
3983 DB 196,193,242,42,202 ; vcvtsi2ss %r10,%xmm1,%xmm1
3984 DB 197,242,88,201 ; vaddss %xmm1,%xmm1,%xmm1
3985 DB 196,226,125,24,201 ; vbroadcastss %xmm1,%ymm1
3986 DB 197,244,89,200 ; vmulps %ymm0,%ymm1,%ymm1
3987 DB 197,126,91,217 ; vcvttps2dq %ymm1,%ymm11
3988 DB 73,131,249,8 ; cmp $0x8,%r9
Mike Klein8ca33562017-05-23 08:07:43 -04003989 DB 119,70 ; ja 41d0 <_sk_evenly_spaced_gradient_hsw+0x87>
Herb Derby4de13042017-05-15 10:49:39 -04003990 DB 196,66,37,22,0 ; vpermps (%r8),%ymm11,%ymm8
3991 DB 76,139,64,40 ; mov 0x28(%rax),%r8
3992 DB 196,66,37,22,8 ; vpermps (%r8),%ymm11,%ymm9
3993 DB 76,139,64,16 ; mov 0x10(%rax),%r8
3994 DB 76,139,72,24 ; mov 0x18(%rax),%r9
3995 DB 196,194,37,22,8 ; vpermps (%r8),%ymm11,%ymm1
3996 DB 76,139,64,48 ; mov 0x30(%rax),%r8
3997 DB 196,66,37,22,16 ; vpermps (%r8),%ymm11,%ymm10
3998 DB 196,194,37,22,17 ; vpermps (%r9),%ymm11,%ymm2
3999 DB 76,139,64,56 ; mov 0x38(%rax),%r8
4000 DB 196,66,37,22,32 ; vpermps (%r8),%ymm11,%ymm12
4001 DB 76,139,64,32 ; mov 0x20(%rax),%r8
4002 DB 196,194,37,22,24 ; vpermps (%r8),%ymm11,%ymm3
4003 DB 72,139,64,64 ; mov 0x40(%rax),%rax
4004 DB 196,98,37,22,40 ; vpermps (%rax),%ymm11,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04004005 DB 235,110 ; jmp 423e <_sk_evenly_spaced_gradient_hsw+0xf5>
Herb Derby4de13042017-05-15 10:49:39 -04004006 DB 196,65,13,118,246 ; vpcmpeqd %ymm14,%ymm14,%ymm14
4007 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1
4008 DB 196,2,117,146,4,152 ; vgatherdps %ymm1,(%r8,%ymm11,4),%ymm8
4009 DB 76,139,64,40 ; mov 0x28(%rax),%r8
4010 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1
4011 DB 196,2,117,146,12,152 ; vgatherdps %ymm1,(%r8,%ymm11,4),%ymm9
4012 DB 76,139,64,16 ; mov 0x10(%rax),%r8
4013 DB 76,139,72,24 ; mov 0x18(%rax),%r9
4014 DB 197,237,118,210 ; vpcmpeqd %ymm2,%ymm2,%ymm2
4015 DB 196,130,109,146,12,152 ; vgatherdps %ymm2,(%r8,%ymm11,4),%ymm1
4016 DB 76,139,64,48 ; mov 0x30(%rax),%r8
4017 DB 197,237,118,210 ; vpcmpeqd %ymm2,%ymm2,%ymm2
4018 DB 196,2,109,146,20,152 ; vgatherdps %ymm2,(%r8,%ymm11,4),%ymm10
4019 DB 197,229,118,219 ; vpcmpeqd %ymm3,%ymm3,%ymm3
4020 DB 196,130,101,146,20,153 ; vgatherdps %ymm3,(%r9,%ymm11,4),%ymm2
4021 DB 76,139,64,56 ; mov 0x38(%rax),%r8
4022 DB 197,229,118,219 ; vpcmpeqd %ymm3,%ymm3,%ymm3
4023 DB 196,2,101,146,36,152 ; vgatherdps %ymm3,(%r8,%ymm11,4),%ymm12
4024 DB 76,139,64,32 ; mov 0x20(%rax),%r8
4025 DB 196,65,21,118,237 ; vpcmpeqd %ymm13,%ymm13,%ymm13
4026 DB 196,130,21,146,28,152 ; vgatherdps %ymm13,(%r8,%ymm11,4),%ymm3
4027 DB 72,139,64,64 ; mov 0x40(%rax),%rax
4028 DB 196,34,13,146,44,152 ; vgatherdps %ymm14,(%rax,%ymm11,4),%ymm13
4029 DB 196,66,125,168,193 ; vfmadd213ps %ymm9,%ymm0,%ymm8
4030 DB 196,194,125,168,202 ; vfmadd213ps %ymm10,%ymm0,%ymm1
4031 DB 196,194,125,168,212 ; vfmadd213ps %ymm12,%ymm0,%ymm2
4032 DB 196,194,125,168,221 ; vfmadd213ps %ymm13,%ymm0,%ymm3
4033 DB 72,173 ; lods %ds:(%rsi),%rax
4034 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
4035 DB 255,224 ; jmpq *%rax
4036
Mike Klein5c7960b2017-05-11 10:59:22 -04004037PUBLIC _sk_gradient_hsw
4038_sk_gradient_hsw LABEL PROC
Herb Derby7b4202d2017-04-10 10:52:34 -04004039 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby7b4202d2017-04-10 10:52:34 -04004040 DB 76,139,0 ; mov (%rax),%r8
Herb Derby4de13042017-05-15 10:49:39 -04004041 DB 73,131,248,1 ; cmp $0x1,%r8
Mike Klein8ca33562017-05-23 08:07:43 -04004042 DB 15,134,180,0,0,0 ; jbe 431d <_sk_gradient_hsw+0xc3>
Herb Derby4de13042017-05-15 10:49:39 -04004043 DB 76,139,72,72 ; mov 0x48(%rax),%r9
Herb Derby7b4202d2017-04-10 10:52:34 -04004044 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
Herb Derby4de13042017-05-15 10:49:39 -04004045 DB 65,186,1,0,0,0 ; mov $0x1,%r10d
Mike Klein8ca33562017-05-23 08:07:43 -04004046 DB 196,226,125,24,21,208,9,0,0 ; vbroadcastss 0x9d0(%rip),%ymm2 # 4c50 <_sk_callback_hsw+0x443>
Herb Derby4de13042017-05-15 10:49:39 -04004047 DB 196,65,53,239,201 ; vpxor %ymm9,%ymm9,%ymm9
4048 DB 196,130,125,24,28,145 ; vbroadcastss (%r9,%r10,4),%ymm3
4049 DB 197,228,194,216,2 ; vcmpleps %ymm0,%ymm3,%ymm3
4050 DB 196,227,117,74,218,48 ; vblendvps %ymm3,%ymm2,%ymm1,%ymm3
4051 DB 196,65,101,254,201 ; vpaddd %ymm9,%ymm3,%ymm9
4052 DB 73,255,194 ; inc %r10
4053 DB 77,57,208 ; cmp %r10,%r8
Mike Klein8ca33562017-05-23 08:07:43 -04004054 DB 117,226 ; jne 4285 <_sk_gradient_hsw+0x2b>
Herb Derby4de13042017-05-15 10:49:39 -04004055 DB 76,139,72,8 ; mov 0x8(%rax),%r9
4056 DB 73,131,248,8 ; cmp $0x8,%r8
Mike Klein8ca33562017-05-23 08:07:43 -04004057 DB 118,121 ; jbe 4326 <_sk_gradient_hsw+0xcc>
Herb Derby4de13042017-05-15 10:49:39 -04004058 DB 196,65,13,118,246 ; vpcmpeqd %ymm14,%ymm14,%ymm14
4059 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1
4060 DB 196,2,117,146,4,137 ; vgatherdps %ymm1,(%r9,%ymm9,4),%ymm8
4061 DB 76,139,64,40 ; mov 0x28(%rax),%r8
4062 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1
4063 DB 196,2,117,146,20,136 ; vgatherdps %ymm1,(%r8,%ymm9,4),%ymm10
4064 DB 76,139,64,16 ; mov 0x10(%rax),%r8
4065 DB 76,139,72,24 ; mov 0x18(%rax),%r9
4066 DB 197,237,118,210 ; vpcmpeqd %ymm2,%ymm2,%ymm2
4067 DB 196,130,109,146,12,136 ; vgatherdps %ymm2,(%r8,%ymm9,4),%ymm1
4068 DB 76,139,64,48 ; mov 0x30(%rax),%r8
4069 DB 197,237,118,210 ; vpcmpeqd %ymm2,%ymm2,%ymm2
4070 DB 196,2,109,146,28,136 ; vgatherdps %ymm2,(%r8,%ymm9,4),%ymm11
4071 DB 197,229,118,219 ; vpcmpeqd %ymm3,%ymm3,%ymm3
4072 DB 196,130,101,146,20,137 ; vgatherdps %ymm3,(%r9,%ymm9,4),%ymm2
4073 DB 76,139,64,56 ; mov 0x38(%rax),%r8
4074 DB 197,229,118,219 ; vpcmpeqd %ymm3,%ymm3,%ymm3
4075 DB 196,2,101,146,36,136 ; vgatherdps %ymm3,(%r8,%ymm9,4),%ymm12
4076 DB 76,139,64,32 ; mov 0x20(%rax),%r8
4077 DB 196,65,21,118,237 ; vpcmpeqd %ymm13,%ymm13,%ymm13
4078 DB 196,130,21,146,28,136 ; vgatherdps %ymm13,(%r8,%ymm9,4),%ymm3
4079 DB 72,139,64,64 ; mov 0x40(%rax),%rax
4080 DB 196,34,13,146,44,136 ; vgatherdps %ymm14,(%rax,%ymm9,4),%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04004081 DB 235,77 ; jmp 436a <_sk_gradient_hsw+0x110>
Herb Derby4de13042017-05-15 10:49:39 -04004082 DB 76,139,72,8 ; mov 0x8(%rax),%r9
4083 DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9
4084 DB 196,66,53,22,1 ; vpermps (%r9),%ymm9,%ymm8
4085 DB 76,139,64,40 ; mov 0x28(%rax),%r8
4086 DB 196,66,53,22,16 ; vpermps (%r8),%ymm9,%ymm10
4087 DB 76,139,64,16 ; mov 0x10(%rax),%r8
4088 DB 76,139,72,24 ; mov 0x18(%rax),%r9
4089 DB 196,194,53,22,8 ; vpermps (%r8),%ymm9,%ymm1
4090 DB 76,139,64,48 ; mov 0x30(%rax),%r8
4091 DB 196,66,53,22,24 ; vpermps (%r8),%ymm9,%ymm11
4092 DB 196,194,53,22,17 ; vpermps (%r9),%ymm9,%ymm2
4093 DB 76,139,64,56 ; mov 0x38(%rax),%r8
4094 DB 196,66,53,22,32 ; vpermps (%r8),%ymm9,%ymm12
4095 DB 76,139,64,32 ; mov 0x20(%rax),%r8
4096 DB 196,194,53,22,24 ; vpermps (%r8),%ymm9,%ymm3
4097 DB 72,139,64,64 ; mov 0x40(%rax),%rax
4098 DB 196,98,53,22,40 ; vpermps (%rax),%ymm9,%ymm13
4099 DB 196,66,125,168,194 ; vfmadd213ps %ymm10,%ymm0,%ymm8
Herb Derby7b4202d2017-04-10 10:52:34 -04004100 DB 196,194,125,168,203 ; vfmadd213ps %ymm11,%ymm0,%ymm1
Herb Derby4de13042017-05-15 10:49:39 -04004101 DB 196,194,125,168,212 ; vfmadd213ps %ymm12,%ymm0,%ymm2
4102 DB 196,194,125,168,221 ; vfmadd213ps %ymm13,%ymm0,%ymm3
Herb Derby7b4202d2017-04-10 10:52:34 -04004103 DB 72,173 ; lods %ds:(%rsi),%rax
4104 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
4105 DB 255,224 ; jmpq *%rax
4106
Mike Klein5c7960b2017-05-11 10:59:22 -04004107PUBLIC _sk_evenly_spaced_2_stop_gradient_hsw
4108_sk_evenly_spaced_2_stop_gradient_hsw LABEL PROC
Mike Kleind7e06ae2017-03-29 16:33:06 -04004109 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby7b4202d2017-04-10 10:52:34 -04004110 DB 196,226,125,24,8 ; vbroadcastss (%rax),%ymm1
4111 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04004112 DB 196,98,125,184,193 ; vfmadd231ps %ymm1,%ymm0,%ymm8
Herb Derby7b4202d2017-04-10 10:52:34 -04004113 DB 196,226,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm2
4114 DB 196,226,125,24,72,20 ; vbroadcastss 0x14(%rax),%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04004115 DB 196,226,125,184,202 ; vfmadd231ps %ymm2,%ymm0,%ymm1
Herb Derby7b4202d2017-04-10 10:52:34 -04004116 DB 196,226,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm3
4117 DB 196,226,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04004118 DB 196,226,125,184,211 ; vfmadd231ps %ymm3,%ymm0,%ymm2
Herb Derby7b4202d2017-04-10 10:52:34 -04004119 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
4120 DB 196,226,125,24,88,28 ; vbroadcastss 0x1c(%rax),%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04004121 DB 196,194,125,184,217 ; vfmadd231ps %ymm9,%ymm0,%ymm3
4122 DB 72,173 ; lods %ds:(%rsi),%rax
4123 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
4124 DB 255,224 ; jmpq *%rax
4125
Mike Klein5c7960b2017-05-11 10:59:22 -04004126PUBLIC _sk_xy_to_unit_angle_hsw
4127_sk_xy_to_unit_angle_hsw LABEL PROC
Herb Derby7eb86982017-05-02 19:04:39 -04004128 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
4129 DB 197,60,92,200 ; vsubps %ymm0,%ymm8,%ymm9
4130 DB 197,52,84,200 ; vandps %ymm0,%ymm9,%ymm9
4131 DB 197,60,92,209 ; vsubps %ymm1,%ymm8,%ymm10
4132 DB 197,44,84,209 ; vandps %ymm1,%ymm10,%ymm10
4133 DB 196,65,52,93,218 ; vminps %ymm10,%ymm9,%ymm11
4134 DB 196,65,52,95,226 ; vmaxps %ymm10,%ymm9,%ymm12
4135 DB 196,65,36,94,220 ; vdivps %ymm12,%ymm11,%ymm11
4136 DB 196,65,36,89,227 ; vmulps %ymm11,%ymm11,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04004137 DB 196,98,125,24,45,79,8,0,0 ; vbroadcastss 0x84f(%rip),%ymm13 # 4c54 <_sk_callback_hsw+0x447>
4138 DB 196,98,125,24,53,74,8,0,0 ; vbroadcastss 0x84a(%rip),%ymm14 # 4c58 <_sk_callback_hsw+0x44b>
Herb Derby7eb86982017-05-02 19:04:39 -04004139 DB 196,66,29,184,245 ; vfmadd231ps %ymm13,%ymm12,%ymm14
Mike Klein8ca33562017-05-23 08:07:43 -04004140 DB 196,98,125,24,45,64,8,0,0 ; vbroadcastss 0x840(%rip),%ymm13 # 4c5c <_sk_callback_hsw+0x44f>
Herb Derby7eb86982017-05-02 19:04:39 -04004141 DB 196,66,29,184,238 ; vfmadd231ps %ymm14,%ymm12,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -04004142 DB 196,98,125,24,53,54,8,0,0 ; vbroadcastss 0x836(%rip),%ymm14 # 4c60 <_sk_callback_hsw+0x453>
Herb Derby7eb86982017-05-02 19:04:39 -04004143 DB 196,66,29,184,245 ; vfmadd231ps %ymm13,%ymm12,%ymm14
4144 DB 196,65,36,89,222 ; vmulps %ymm14,%ymm11,%ymm11
4145 DB 196,65,52,194,202,1 ; vcmpltps %ymm10,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004146 DB 196,98,125,24,21,33,8,0,0 ; vbroadcastss 0x821(%rip),%ymm10 # 4c64 <_sk_callback_hsw+0x457>
Herb Derby7eb86982017-05-02 19:04:39 -04004147 DB 196,65,44,92,211 ; vsubps %ymm11,%ymm10,%ymm10
4148 DB 196,67,37,74,202,144 ; vblendvps %ymm9,%ymm10,%ymm11,%ymm9
4149 DB 196,193,124,194,192,1 ; vcmpltps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04004150 DB 196,98,125,24,21,11,8,0,0 ; vbroadcastss 0x80b(%rip),%ymm10 # 4c68 <_sk_callback_hsw+0x45b>
Herb Derby7eb86982017-05-02 19:04:39 -04004151 DB 196,65,44,92,209 ; vsubps %ymm9,%ymm10,%ymm10
4152 DB 196,195,53,74,194,0 ; vblendvps %ymm0,%ymm10,%ymm9,%ymm0
4153 DB 196,65,116,194,200,1 ; vcmpltps %ymm8,%ymm1,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004154 DB 196,98,125,24,21,245,7,0,0 ; vbroadcastss 0x7f5(%rip),%ymm10 # 4c6c <_sk_callback_hsw+0x45f>
Herb Derby7eb86982017-05-02 19:04:39 -04004155 DB 197,44,92,208 ; vsubps %ymm0,%ymm10,%ymm10
4156 DB 196,195,125,74,194,144 ; vblendvps %ymm9,%ymm10,%ymm0,%ymm0
4157 DB 196,65,124,194,200,3 ; vcmpunordps %ymm8,%ymm0,%ymm9
4158 DB 196,195,125,74,192,144 ; vblendvps %ymm9,%ymm8,%ymm0,%ymm0
4159 DB 72,173 ; lods %ds:(%rsi),%rax
4160 DB 255,224 ; jmpq *%rax
4161
Herb Derby090fbf82017-05-08 15:10:36 -04004162PUBLIC _sk_xy_to_radius_hsw
4163_sk_xy_to_radius_hsw LABEL PROC
4164 DB 197,116,89,193 ; vmulps %ymm1,%ymm1,%ymm8
4165 DB 196,98,125,184,192 ; vfmadd231ps %ymm0,%ymm0,%ymm8
Mike Kleinfd35c742017-05-15 15:55:54 -04004166 DB 196,193,124,81,192 ; vsqrtps %ymm8,%ymm0
Herb Derby090fbf82017-05-08 15:10:36 -04004167 DB 72,173 ; lods %ds:(%rsi),%rax
4168 DB 255,224 ; jmpq *%rax
4169
Mike Klein0a904492017-04-12 12:52:48 -04004170PUBLIC _sk_save_xy_hsw
4171_sk_save_xy_hsw LABEL PROC
4172 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004173 DB 196,98,125,24,5,194,7,0,0 ; vbroadcastss 0x7c2(%rip),%ymm8 # 4c70 <_sk_callback_hsw+0x463>
Mike Kleinfe560a82017-05-01 12:56:35 -04004174 DB 196,65,124,88,200 ; vaddps %ymm8,%ymm0,%ymm9
Mike Klein0a904492017-04-12 12:52:48 -04004175 DB 196,67,125,8,209,1 ; vroundps $0x1,%ymm9,%ymm10
4176 DB 196,65,52,92,202 ; vsubps %ymm10,%ymm9,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04004177 DB 196,65,116,88,192 ; vaddps %ymm8,%ymm1,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -04004178 DB 196,67,125,8,208,1 ; vroundps $0x1,%ymm8,%ymm10
4179 DB 196,65,60,92,194 ; vsubps %ymm10,%ymm8,%ymm8
4180 DB 197,252,17,0 ; vmovups %ymm0,(%rax)
4181 DB 197,252,17,72,32 ; vmovups %ymm1,0x20(%rax)
4182 DB 197,124,17,72,64 ; vmovups %ymm9,0x40(%rax)
4183 DB 197,124,17,64,96 ; vmovups %ymm8,0x60(%rax)
4184 DB 72,173 ; lods %ds:(%rsi),%rax
4185 DB 255,224 ; jmpq *%rax
4186
4187PUBLIC _sk_accumulate_hsw
4188_sk_accumulate_hsw LABEL PROC
4189 DB 72,173 ; lods %ds:(%rsi),%rax
4190 DB 197,124,16,128,128,0,0,0 ; vmovups 0x80(%rax),%ymm8
4191 DB 197,60,89,128,160,0,0,0 ; vmulps 0xa0(%rax),%ymm8,%ymm8
4192 DB 196,226,61,184,224 ; vfmadd231ps %ymm0,%ymm8,%ymm4
4193 DB 196,226,61,184,233 ; vfmadd231ps %ymm1,%ymm8,%ymm5
4194 DB 196,226,61,184,242 ; vfmadd231ps %ymm2,%ymm8,%ymm6
4195 DB 196,98,101,168,199 ; vfmadd213ps %ymm7,%ymm3,%ymm8
4196 DB 72,173 ; lods %ds:(%rsi),%rax
4197 DB 197,124,41,199 ; vmovaps %ymm8,%ymm7
4198 DB 255,224 ; jmpq *%rax
4199
4200PUBLIC _sk_bilinear_nx_hsw
4201_sk_bilinear_nx_hsw LABEL PROC
4202 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004203 DB 196,226,125,24,5,86,7,0,0 ; vbroadcastss 0x756(%rip),%ymm0 # 4c74 <_sk_callback_hsw+0x467>
Mike Klein0a904492017-04-12 12:52:48 -04004204 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04004205 DB 196,98,125,24,5,77,7,0,0 ; vbroadcastss 0x74d(%rip),%ymm8 # 4c78 <_sk_callback_hsw+0x46b>
Mike Klein0a904492017-04-12 12:52:48 -04004206 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8
4207 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
4208 DB 72,173 ; lods %ds:(%rsi),%rax
4209 DB 255,224 ; jmpq *%rax
4210
4211PUBLIC _sk_bilinear_px_hsw
4212_sk_bilinear_px_hsw LABEL PROC
4213 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004214 DB 196,226,125,24,5,53,7,0,0 ; vbroadcastss 0x735(%rip),%ymm0 # 4c7c <_sk_callback_hsw+0x46f>
Mike Klein0a904492017-04-12 12:52:48 -04004215 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
4216 DB 197,124,16,64,64 ; vmovups 0x40(%rax),%ymm8
4217 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
4218 DB 72,173 ; lods %ds:(%rsi),%rax
4219 DB 255,224 ; jmpq *%rax
4220
4221PUBLIC _sk_bilinear_ny_hsw
4222_sk_bilinear_ny_hsw LABEL PROC
4223 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004224 DB 196,226,125,24,13,25,7,0,0 ; vbroadcastss 0x719(%rip),%ymm1 # 4c80 <_sk_callback_hsw+0x473>
Mike Klein0a904492017-04-12 12:52:48 -04004225 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04004226 DB 196,98,125,24,5,15,7,0,0 ; vbroadcastss 0x70f(%rip),%ymm8 # 4c84 <_sk_callback_hsw+0x477>
Mike Klein0a904492017-04-12 12:52:48 -04004227 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8
4228 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
4229 DB 72,173 ; lods %ds:(%rsi),%rax
4230 DB 255,224 ; jmpq *%rax
4231
4232PUBLIC _sk_bilinear_py_hsw
4233_sk_bilinear_py_hsw LABEL PROC
4234 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004235 DB 196,226,125,24,13,247,6,0,0 ; vbroadcastss 0x6f7(%rip),%ymm1 # 4c88 <_sk_callback_hsw+0x47b>
Mike Klein0a904492017-04-12 12:52:48 -04004236 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
4237 DB 197,124,16,64,96 ; vmovups 0x60(%rax),%ymm8
4238 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
4239 DB 72,173 ; lods %ds:(%rsi),%rax
4240 DB 255,224 ; jmpq *%rax
4241
4242PUBLIC _sk_bicubic_n3x_hsw
4243_sk_bicubic_n3x_hsw LABEL PROC
4244 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004245 DB 196,226,125,24,5,218,6,0,0 ; vbroadcastss 0x6da(%rip),%ymm0 # 4c8c <_sk_callback_hsw+0x47f>
Mike Klein0a904492017-04-12 12:52:48 -04004246 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04004247 DB 196,98,125,24,5,209,6,0,0 ; vbroadcastss 0x6d1(%rip),%ymm8 # 4c90 <_sk_callback_hsw+0x483>
Mike Klein0a904492017-04-12 12:52:48 -04004248 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8
4249 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004250 DB 196,98,125,24,21,194,6,0,0 ; vbroadcastss 0x6c2(%rip),%ymm10 # 4c94 <_sk_callback_hsw+0x487>
4251 DB 196,98,125,24,29,189,6,0,0 ; vbroadcastss 0x6bd(%rip),%ymm11 # 4c98 <_sk_callback_hsw+0x48b>
Mike Kleinfe560a82017-05-01 12:56:35 -04004252 DB 196,66,61,168,218 ; vfmadd213ps %ymm10,%ymm8,%ymm11
4253 DB 196,65,36,89,193 ; vmulps %ymm9,%ymm11,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -04004254 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
4255 DB 72,173 ; lods %ds:(%rsi),%rax
4256 DB 255,224 ; jmpq *%rax
4257
4258PUBLIC _sk_bicubic_n1x_hsw
4259_sk_bicubic_n1x_hsw LABEL PROC
4260 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004261 DB 196,226,125,24,5,160,6,0,0 ; vbroadcastss 0x6a0(%rip),%ymm0 # 4c9c <_sk_callback_hsw+0x48f>
Mike Klein0a904492017-04-12 12:52:48 -04004262 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04004263 DB 196,98,125,24,5,151,6,0,0 ; vbroadcastss 0x697(%rip),%ymm8 # 4ca0 <_sk_callback_hsw+0x493>
Mike Klein0a904492017-04-12 12:52:48 -04004264 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04004265 DB 196,98,125,24,13,141,6,0,0 ; vbroadcastss 0x68d(%rip),%ymm9 # 4ca4 <_sk_callback_hsw+0x497>
4266 DB 196,98,125,24,21,136,6,0,0 ; vbroadcastss 0x688(%rip),%ymm10 # 4ca8 <_sk_callback_hsw+0x49b>
Mike Kleinfe560a82017-05-01 12:56:35 -04004267 DB 196,66,61,168,209 ; vfmadd213ps %ymm9,%ymm8,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04004268 DB 196,98,125,24,13,126,6,0,0 ; vbroadcastss 0x67e(%rip),%ymm9 # 4cac <_sk_callback_hsw+0x49f>
Mike Klein0a904492017-04-12 12:52:48 -04004269 DB 196,66,61,184,202 ; vfmadd231ps %ymm10,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004270 DB 196,98,125,24,21,116,6,0,0 ; vbroadcastss 0x674(%rip),%ymm10 # 4cb0 <_sk_callback_hsw+0x4a3>
Mike Kleinfe560a82017-05-01 12:56:35 -04004271 DB 196,66,61,184,209 ; vfmadd231ps %ymm9,%ymm8,%ymm10
4272 DB 197,124,17,144,128,0,0,0 ; vmovups %ymm10,0x80(%rax)
Mike Klein0a904492017-04-12 12:52:48 -04004273 DB 72,173 ; lods %ds:(%rsi),%rax
4274 DB 255,224 ; jmpq *%rax
4275
4276PUBLIC _sk_bicubic_p1x_hsw
4277_sk_bicubic_p1x_hsw LABEL PROC
4278 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004279 DB 196,98,125,24,5,92,6,0,0 ; vbroadcastss 0x65c(%rip),%ymm8 # 4cb4 <_sk_callback_hsw+0x4a7>
Mike Klein0a904492017-04-12 12:52:48 -04004280 DB 197,188,88,0 ; vaddps (%rax),%ymm8,%ymm0
4281 DB 197,124,16,72,64 ; vmovups 0x40(%rax),%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004282 DB 196,98,125,24,21,78,6,0,0 ; vbroadcastss 0x64e(%rip),%ymm10 # 4cb8 <_sk_callback_hsw+0x4ab>
4283 DB 196,98,125,24,29,73,6,0,0 ; vbroadcastss 0x649(%rip),%ymm11 # 4cbc <_sk_callback_hsw+0x4af>
Mike Kleinfe560a82017-05-01 12:56:35 -04004284 DB 196,66,53,168,218 ; vfmadd213ps %ymm10,%ymm9,%ymm11
4285 DB 196,66,53,168,216 ; vfmadd213ps %ymm8,%ymm9,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04004286 DB 196,98,125,24,5,58,6,0,0 ; vbroadcastss 0x63a(%rip),%ymm8 # 4cc0 <_sk_callback_hsw+0x4b3>
Mike Kleinfe560a82017-05-01 12:56:35 -04004287 DB 196,66,53,184,195 ; vfmadd231ps %ymm11,%ymm9,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -04004288 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
4289 DB 72,173 ; lods %ds:(%rsi),%rax
4290 DB 255,224 ; jmpq *%rax
4291
4292PUBLIC _sk_bicubic_p3x_hsw
4293_sk_bicubic_p3x_hsw LABEL PROC
4294 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004295 DB 196,226,125,24,5,34,6,0,0 ; vbroadcastss 0x622(%rip),%ymm0 # 4cc4 <_sk_callback_hsw+0x4b7>
Mike Klein0a904492017-04-12 12:52:48 -04004296 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
4297 DB 197,124,16,64,64 ; vmovups 0x40(%rax),%ymm8
4298 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004299 DB 196,98,125,24,21,15,6,0,0 ; vbroadcastss 0x60f(%rip),%ymm10 # 4cc8 <_sk_callback_hsw+0x4bb>
4300 DB 196,98,125,24,29,10,6,0,0 ; vbroadcastss 0x60a(%rip),%ymm11 # 4ccc <_sk_callback_hsw+0x4bf>
Mike Kleinfe560a82017-05-01 12:56:35 -04004301 DB 196,66,61,168,218 ; vfmadd213ps %ymm10,%ymm8,%ymm11
4302 DB 196,65,52,89,195 ; vmulps %ymm11,%ymm9,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -04004303 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
4304 DB 72,173 ; lods %ds:(%rsi),%rax
4305 DB 255,224 ; jmpq *%rax
4306
4307PUBLIC _sk_bicubic_n3y_hsw
4308_sk_bicubic_n3y_hsw LABEL PROC
4309 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004310 DB 196,226,125,24,13,237,5,0,0 ; vbroadcastss 0x5ed(%rip),%ymm1 # 4cd0 <_sk_callback_hsw+0x4c3>
Mike Klein0a904492017-04-12 12:52:48 -04004311 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04004312 DB 196,98,125,24,5,227,5,0,0 ; vbroadcastss 0x5e3(%rip),%ymm8 # 4cd4 <_sk_callback_hsw+0x4c7>
Mike Klein0a904492017-04-12 12:52:48 -04004313 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8
4314 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004315 DB 196,98,125,24,21,212,5,0,0 ; vbroadcastss 0x5d4(%rip),%ymm10 # 4cd8 <_sk_callback_hsw+0x4cb>
4316 DB 196,98,125,24,29,207,5,0,0 ; vbroadcastss 0x5cf(%rip),%ymm11 # 4cdc <_sk_callback_hsw+0x4cf>
Mike Kleinfe560a82017-05-01 12:56:35 -04004317 DB 196,66,61,168,218 ; vfmadd213ps %ymm10,%ymm8,%ymm11
4318 DB 196,65,36,89,193 ; vmulps %ymm9,%ymm11,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -04004319 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
4320 DB 72,173 ; lods %ds:(%rsi),%rax
4321 DB 255,224 ; jmpq *%rax
4322
4323PUBLIC _sk_bicubic_n1y_hsw
4324_sk_bicubic_n1y_hsw LABEL PROC
4325 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004326 DB 196,226,125,24,13,178,5,0,0 ; vbroadcastss 0x5b2(%rip),%ymm1 # 4ce0 <_sk_callback_hsw+0x4d3>
Mike Klein0a904492017-04-12 12:52:48 -04004327 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04004328 DB 196,98,125,24,5,168,5,0,0 ; vbroadcastss 0x5a8(%rip),%ymm8 # 4ce4 <_sk_callback_hsw+0x4d7>
Mike Klein0a904492017-04-12 12:52:48 -04004329 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04004330 DB 196,98,125,24,13,158,5,0,0 ; vbroadcastss 0x59e(%rip),%ymm9 # 4ce8 <_sk_callback_hsw+0x4db>
4331 DB 196,98,125,24,21,153,5,0,0 ; vbroadcastss 0x599(%rip),%ymm10 # 4cec <_sk_callback_hsw+0x4df>
Mike Kleinfe560a82017-05-01 12:56:35 -04004332 DB 196,66,61,168,209 ; vfmadd213ps %ymm9,%ymm8,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04004333 DB 196,98,125,24,13,143,5,0,0 ; vbroadcastss 0x58f(%rip),%ymm9 # 4cf0 <_sk_callback_hsw+0x4e3>
Mike Klein0a904492017-04-12 12:52:48 -04004334 DB 196,66,61,184,202 ; vfmadd231ps %ymm10,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004335 DB 196,98,125,24,21,133,5,0,0 ; vbroadcastss 0x585(%rip),%ymm10 # 4cf4 <_sk_callback_hsw+0x4e7>
Mike Kleinfe560a82017-05-01 12:56:35 -04004336 DB 196,66,61,184,209 ; vfmadd231ps %ymm9,%ymm8,%ymm10
4337 DB 197,124,17,144,160,0,0,0 ; vmovups %ymm10,0xa0(%rax)
Mike Klein0a904492017-04-12 12:52:48 -04004338 DB 72,173 ; lods %ds:(%rsi),%rax
4339 DB 255,224 ; jmpq *%rax
4340
4341PUBLIC _sk_bicubic_p1y_hsw
4342_sk_bicubic_p1y_hsw LABEL PROC
4343 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004344 DB 196,98,125,24,5,109,5,0,0 ; vbroadcastss 0x56d(%rip),%ymm8 # 4cf8 <_sk_callback_hsw+0x4eb>
Mike Klein0a904492017-04-12 12:52:48 -04004345 DB 197,188,88,72,32 ; vaddps 0x20(%rax),%ymm8,%ymm1
4346 DB 197,124,16,72,96 ; vmovups 0x60(%rax),%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004347 DB 196,98,125,24,21,94,5,0,0 ; vbroadcastss 0x55e(%rip),%ymm10 # 4cfc <_sk_callback_hsw+0x4ef>
4348 DB 196,98,125,24,29,89,5,0,0 ; vbroadcastss 0x559(%rip),%ymm11 # 4d00 <_sk_callback_hsw+0x4f3>
Mike Kleinfe560a82017-05-01 12:56:35 -04004349 DB 196,66,53,168,218 ; vfmadd213ps %ymm10,%ymm9,%ymm11
4350 DB 196,66,53,168,216 ; vfmadd213ps %ymm8,%ymm9,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04004351 DB 196,98,125,24,5,74,5,0,0 ; vbroadcastss 0x54a(%rip),%ymm8 # 4d04 <_sk_callback_hsw+0x4f7>
Mike Kleinfe560a82017-05-01 12:56:35 -04004352 DB 196,66,53,184,195 ; vfmadd231ps %ymm11,%ymm9,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -04004353 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
4354 DB 72,173 ; lods %ds:(%rsi),%rax
4355 DB 255,224 ; jmpq *%rax
4356
4357PUBLIC _sk_bicubic_p3y_hsw
4358_sk_bicubic_p3y_hsw LABEL PROC
4359 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04004360 DB 196,226,125,24,13,50,5,0,0 ; vbroadcastss 0x532(%rip),%ymm1 # 4d08 <_sk_callback_hsw+0x4fb>
Mike Klein0a904492017-04-12 12:52:48 -04004361 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
4362 DB 197,124,16,64,96 ; vmovups 0x60(%rax),%ymm8
4363 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04004364 DB 196,98,125,24,21,30,5,0,0 ; vbroadcastss 0x51e(%rip),%ymm10 # 4d0c <_sk_callback_hsw+0x4ff>
4365 DB 196,98,125,24,29,25,5,0,0 ; vbroadcastss 0x519(%rip),%ymm11 # 4d10 <_sk_callback_hsw+0x503>
Mike Kleinfe560a82017-05-01 12:56:35 -04004366 DB 196,66,61,168,218 ; vfmadd213ps %ymm10,%ymm8,%ymm11
4367 DB 196,65,52,89,195 ; vmulps %ymm11,%ymm9,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -04004368 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
4369 DB 72,173 ; lods %ds:(%rsi),%rax
4370 DB 255,224 ; jmpq *%rax
4371
Mike Klein7fee90c2017-04-07 16:55:09 -04004372PUBLIC _sk_callback_hsw
4373_sk_callback_hsw LABEL PROC
Mike Kleinc17dc242017-04-20 16:21:57 -04004374 DB 65,87 ; push %r15
Mike Klein7fee90c2017-04-07 16:55:09 -04004375 DB 65,86 ; push %r14
4376 DB 83 ; push %rbx
Mike Kleinc17dc242017-04-20 16:21:57 -04004377 DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp
4378 DB 197,252,17,188,36,128,0,0,0 ; vmovups %ymm7,0x80(%rsp)
4379 DB 197,252,17,116,36,96 ; vmovups %ymm6,0x60(%rsp)
4380 DB 197,252,17,108,36,64 ; vmovups %ymm5,0x40(%rsp)
4381 DB 197,252,17,100,36,32 ; vmovups %ymm4,0x20(%rsp)
4382 DB 73,137,207 ; mov %rcx,%r15
Mike Klein7fee90c2017-04-07 16:55:09 -04004383 DB 73,137,214 ; mov %rdx,%r14
4384 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinc17dc242017-04-20 16:21:57 -04004385 DB 72,137,195 ; mov %rax,%rbx
4386 DB 197,252,20,225 ; vunpcklps %ymm1,%ymm0,%ymm4
4387 DB 197,252,21,193 ; vunpckhps %ymm1,%ymm0,%ymm0
4388 DB 197,236,20,203 ; vunpcklps %ymm3,%ymm2,%ymm1
4389 DB 197,236,21,211 ; vunpckhps %ymm3,%ymm2,%ymm2
4390 DB 197,221,20,217 ; vunpcklpd %ymm1,%ymm4,%ymm3
4391 DB 197,221,21,201 ; vunpckhpd %ymm1,%ymm4,%ymm1
4392 DB 197,253,20,226 ; vunpcklpd %ymm2,%ymm0,%ymm4
4393 DB 197,253,21,194 ; vunpckhpd %ymm2,%ymm0,%ymm0
4394 DB 196,227,101,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm3,%ymm2
4395 DB 196,227,93,24,232,1 ; vinsertf128 $0x1,%xmm0,%ymm4,%ymm5
4396 DB 196,227,101,6,201,49 ; vperm2f128 $0x31,%ymm1,%ymm3,%ymm1
4397 DB 196,227,93,6,192,49 ; vperm2f128 $0x31,%ymm0,%ymm4,%ymm0
4398 DB 197,253,17,83,8 ; vmovupd %ymm2,0x8(%rbx)
4399 DB 197,253,17,107,40 ; vmovupd %ymm5,0x28(%rbx)
4400 DB 197,253,17,75,72 ; vmovupd %ymm1,0x48(%rbx)
4401 DB 197,253,17,67,104 ; vmovupd %ymm0,0x68(%rbx)
4402 DB 77,133,255 ; test %r15,%r15
Mike Klein7fee90c2017-04-07 16:55:09 -04004403 DB 186,8,0,0,0 ; mov $0x8,%edx
Mike Kleinc17dc242017-04-20 16:21:57 -04004404 DB 65,15,69,215 ; cmovne %r15d,%edx
4405 DB 72,137,217 ; mov %rbx,%rcx
Mike Klein7fee90c2017-04-07 16:55:09 -04004406 DB 197,248,119 ; vzeroupper
Mike Kleinc17dc242017-04-20 16:21:57 -04004407 DB 255,19 ; callq *(%rbx)
4408 DB 72,139,131,136,0,0,0 ; mov 0x88(%rbx),%rax
4409 DB 197,248,16,0 ; vmovups (%rax),%xmm0
4410 DB 197,248,16,72,16 ; vmovups 0x10(%rax),%xmm1
4411 DB 197,248,16,80,32 ; vmovups 0x20(%rax),%xmm2
4412 DB 197,248,16,88,48 ; vmovups 0x30(%rax),%xmm3
4413 DB 196,227,101,24,88,112,1 ; vinsertf128 $0x1,0x70(%rax),%ymm3,%ymm3
4414 DB 196,227,109,24,80,96,1 ; vinsertf128 $0x1,0x60(%rax),%ymm2,%ymm2
4415 DB 196,227,117,24,72,80,1 ; vinsertf128 $0x1,0x50(%rax),%ymm1,%ymm1
4416 DB 196,227,125,24,64,64,1 ; vinsertf128 $0x1,0x40(%rax),%ymm0,%ymm0
4417 DB 197,252,20,225 ; vunpcklps %ymm1,%ymm0,%ymm4
4418 DB 197,252,21,233 ; vunpckhps %ymm1,%ymm0,%ymm5
4419 DB 197,236,20,203 ; vunpcklps %ymm3,%ymm2,%ymm1
4420 DB 197,236,21,219 ; vunpckhps %ymm3,%ymm2,%ymm3
4421 DB 197,221,20,193 ; vunpcklpd %ymm1,%ymm4,%ymm0
4422 DB 197,221,21,201 ; vunpckhpd %ymm1,%ymm4,%ymm1
4423 DB 197,213,20,211 ; vunpcklpd %ymm3,%ymm5,%ymm2
4424 DB 197,213,21,219 ; vunpckhpd %ymm3,%ymm5,%ymm3
Mike Klein7fee90c2017-04-07 16:55:09 -04004425 DB 72,173 ; lods %ds:(%rsi),%rax
4426 DB 76,137,242 ; mov %r14,%rdx
Mike Kleinc17dc242017-04-20 16:21:57 -04004427 DB 76,137,249 ; mov %r15,%rcx
4428 DB 197,252,16,100,36,32 ; vmovups 0x20(%rsp),%ymm4
4429 DB 197,252,16,108,36,64 ; vmovups 0x40(%rsp),%ymm5
4430 DB 197,252,16,116,36,96 ; vmovups 0x60(%rsp),%ymm6
4431 DB 197,252,16,188,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm7
4432 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp
Mike Klein7fee90c2017-04-07 16:55:09 -04004433 DB 91 ; pop %rbx
4434 DB 65,94 ; pop %r14
Mike Kleinc17dc242017-04-20 16:21:57 -04004435 DB 65,95 ; pop %r15
Mike Klein7fee90c2017-04-07 16:55:09 -04004436 DB 255,224 ; jmpq *%rax
4437
Mike Klein2229b572017-04-21 10:30:29 -04004438ALIGN 4
4439 DB 0,0 ; add %al,(%rax)
4440 DB 0,63 ; add %bh,(%rdi)
4441 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -04004442 DB 128,63,1 ; cmpb $0x1,(%rdi)
4443 DB 0,0 ; add %al,(%rax)
4444 DB 0,4,0 ; add %al,(%rax,%rax,1)
4445 DB 0,0 ; add %al,(%rax)
4446 DB 2,0 ; add (%rax),%al
4447 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -04004448 DB 0,0 ; add %al,(%rax)
Mike Kleindb711c92017-05-03 17:57:48 -04004449 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
4450 DB 252 ; cld
4451 DB 190,0,0,128,63 ; mov $0x3f800000,%esi
Mike Klein308e6242017-04-27 13:56:33 -04004452 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004453 DB 128,63,0 ; cmpb $0x0,(%rdi)
4454 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
4455 DB 63 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04004456 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004457 DB 128,63,0 ; cmpb $0x0,(%rdi)
4458 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
4459 DB 63 ; (bad)
4460 DB 0,0 ; add %al,(%rax)
4461 DB 128,63,0 ; cmpb $0x0,(%rdi)
4462 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
4463 DB 63 ; (bad)
4464 DB 0,0 ; add %al,(%rax)
4465 DB 128,63,0 ; cmpb $0x0,(%rdi)
4466 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
4467 DB 63 ; (bad)
4468 DB 0,0 ; add %al,(%rax)
4469 DB 128,63,0 ; cmpb $0x0,(%rdi)
4470 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
4471 DB 63 ; (bad)
4472 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -04004473 DB 128,63,0 ; cmpb $0x0,(%rdi)
4474 DB 0,128,191,0,0,224 ; add %al,-0x1fffff41(%rax)
Mike Klein08aa88d2017-05-12 12:59:24 -04004475 DB 64,154 ; rex (bad)
Mike Kleinbb338332017-05-04 12:42:52 -04004476 DB 153 ; cltd
4477 DB 153 ; cltd
4478 DB 62,61,10,23,63,174 ; ds cmp $0xae3f170a,%eax
Mike Klein8ca33562017-05-23 08:07:43 -04004479 DB 71,225,61 ; rex.RXB loope 49d9 <.literal4+0xb1>
Mike Kleinbb338332017-05-04 12:42:52 -04004480 DB 0,0 ; add %al,(%rax)
4481 DB 128,63,154 ; cmpb $0x9a,(%rdi)
4482 DB 153 ; cltd
4483 DB 153 ; cltd
4484 DB 62,61,10,23,63,174 ; ds cmp $0xae3f170a,%eax
Mike Klein8ca33562017-05-23 08:07:43 -04004485 DB 71,225,61 ; rex.RXB loope 49e9 <.literal4+0xc1>
Mike Kleinbb338332017-05-04 12:42:52 -04004486 DB 0,0 ; add %al,(%rax)
4487 DB 128,63,154 ; cmpb $0x9a,(%rdi)
4488 DB 153 ; cltd
4489 DB 153 ; cltd
4490 DB 62,61,10,23,63,174 ; ds cmp $0xae3f170a,%eax
Mike Klein8ca33562017-05-23 08:07:43 -04004491 DB 71,225,61 ; rex.RXB loope 49f9 <.literal4+0xd1>
Mike Kleinbb338332017-05-04 12:42:52 -04004492 DB 0,0 ; add %al,(%rax)
4493 DB 128,63,154 ; cmpb $0x9a,(%rdi)
4494 DB 153 ; cltd
4495 DB 153 ; cltd
4496 DB 62,61,10,23,63,174 ; ds cmp $0xae3f170a,%eax
Mike Klein8ca33562017-05-23 08:07:43 -04004497 DB 71,225,61 ; rex.RXB loope 4a09 <.literal4+0xe1>
Mike Kleinbb338332017-05-04 12:42:52 -04004498 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -04004499 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -04004500 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
4501 DB 63 ; (bad)
Mike Klein08aa88d2017-05-12 12:59:24 -04004502 DB 0,0 ; add %al,(%rax)
4503 DB 128,63,145 ; cmpb $0x91,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -04004504 DB 131,158,61,92,143,50,63 ; sbbl $0x3f,0x328f5c3d(%rsi)
4505 DB 154 ; (bad)
4506 DB 153 ; cltd
4507 DB 153 ; cltd
4508 DB 62,10,215 ; ds or %bh,%dl
4509 DB 35,59 ; and (%rbx),%edi
4510 DB 174 ; scas %es:(%rdi),%al
4511 DB 71,97 ; rex.RXB (bad)
Mike Kleinf45e3d72017-05-15 17:36:59 -04004512 DB 61,82,184,78,65 ; cmp $0x414eb852,%eax
4513 DB 186,159,98,60,57 ; mov $0x393c629f,%edx
4514 DB 215 ; xlat %ds:(%rbx)
4515 DB 32,187,13,20,145,63 ; and %bh,0x3f91140d(%rbx)
4516 DB 141,158,20,62,168,177 ; lea -0x4e57c1ec(%rsi),%ebx
4517 DB 152 ; cwtl
Mike Kleinfe560a82017-05-01 12:56:35 -04004518 DB 59,0 ; cmp (%rax),%eax
4519 DB 0,128,63,0,0,192 ; add %al,-0x3fffffc1(%rax)
4520 DB 64,0,0 ; add %al,(%rax)
4521 DB 0,64,0 ; add %al,0x0(%rax)
4522 DB 0,128,64,171,170,42 ; add %al,0x2aaaab40(%rax)
4523 DB 62,0,0 ; add %al,%ds:(%rax)
4524 DB 0,63 ; add %bh,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -04004525 DB 0,0 ; add %al,(%rax)
Mike Klein5664e652017-05-01 16:01:38 -04004526 DB 0,63 ; add %bh,(%rdi)
4527 DB 0,0 ; add %al,(%rax)
Mike Klein879a08a2017-05-01 15:34:01 -04004528 DB 0,64,171 ; add %al,-0x55(%rax)
Mike Kleinfb11acd2017-05-01 14:22:10 -04004529 DB 170 ; stos %al,%es:(%rdi)
4530 DB 170 ; stos %al,%es:(%rdi)
Mike Klein5664e652017-05-01 16:01:38 -04004531 DB 62,171 ; ds stos %eax,%es:(%rdi)
4532 DB 170 ; stos %al,%es:(%rdi)
4533 DB 42,63 ; sub (%rdi),%bh
4534 DB 0,0 ; add %al,(%rax)
Mike Klein879a08a2017-05-01 15:34:01 -04004535 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
4536 DB 128,64,171,170 ; addb $0xaa,-0x55(%rax)
Mike Klein5664e652017-05-01 16:01:38 -04004537 DB 42,62 ; sub (%rsi),%bh
4538 DB 171 ; stos %eax,%es:(%rdi)
4539 DB 170 ; stos %al,%es:(%rdi)
Mike Kleinfb11acd2017-05-01 14:22:10 -04004540 DB 170 ; stos %al,%es:(%rdi)
4541 DB 190,129,128,128,59 ; mov $0x3b808081,%esi
4542 DB 129,128,128,59,0,248,0,0,8,33 ; addl $0x21080000,-0x7ffc480(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004543 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -04004544 DB 224,7 ; loopne 4a59 <.literal4+0x131>
Mike Kleinfe560a82017-05-01 12:56:35 -04004545 DB 0,0 ; add %al,(%rax)
4546 DB 33,8 ; and %ecx,(%rax)
4547 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -04004548 DB 31 ; (bad)
4549 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004550 DB 0,8 ; add %cl,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -04004551 DB 33,4,61,129,128,128,59 ; and %eax,0x3b808081(,%rdi,1)
4552 DB 128,0,128 ; addb $0x80,(%rax)
4553 DB 55 ; (bad)
4554 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004555 DB 128,63,0 ; cmpb $0x0,(%rdi)
4556 DB 0,127,67 ; add %bh,0x43(%rdi)
4557 DB 129,128,128,59,129,128,128,59,0,0 ; addl $0x3b80,-0x7f7ec480(%rax)
4558 DB 0,52,255 ; add %dh,(%rdi,%rdi,8)
Mike Kleinb4bbc642017-04-27 08:59:55 -04004559 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004560 DB 127,0 ; jg 4a80 <.literal4+0x158>
Mike Kleinb4bbc642017-04-27 08:59:55 -04004561 DB 0,0 ; add %al,(%rax)
4562 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -04004563 DB 119,115 ; ja 4af9 <.literal4+0x1d1>
Mike Kleinb4bbc642017-04-27 08:59:55 -04004564 DB 248 ; clc
4565 DB 194,117,191 ; retq $0xbf75
4566 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi
4567 DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9
4568 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp
4569 DB 154 ; (bad)
4570 DB 64,254 ; rex (bad)
4571 DB 210,221 ; rcr %cl,%ch
4572 DB 65,0,0 ; add %al,(%r8)
4573 DB 0,75,0 ; add %cl,0x0(%rbx)
Mike Kleinfe560a82017-05-01 12:56:35 -04004574 DB 0,128,63,0,0,0 ; add %al,0x3f(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -04004575 DB 52,255 ; xor $0xff,%al
4576 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004577 DB 127,0 ; jg 4ab4 <.literal4+0x18c>
Mike Kleinb4bbc642017-04-27 08:59:55 -04004578 DB 0,0 ; add %al,(%rax)
4579 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -04004580 DB 119,115 ; ja 4b2d <.literal4+0x205>
Mike Kleinb4bbc642017-04-27 08:59:55 -04004581 DB 248 ; clc
4582 DB 194,117,191 ; retq $0xbf75
4583 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi
4584 DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9
4585 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp
4586 DB 154 ; (bad)
4587 DB 64,254 ; rex (bad)
4588 DB 210,221 ; rcr %cl,%ch
4589 DB 65,0,0 ; add %al,(%r8)
4590 DB 0,75,0 ; add %cl,0x0(%rbx)
Mike Kleinfe560a82017-05-01 12:56:35 -04004591 DB 0,128,63,0,0,0 ; add %al,0x3f(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -04004592 DB 52,255 ; xor $0xff,%al
4593 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004594 DB 127,0 ; jg 4ae8 <.literal4+0x1c0>
Mike Kleinb4bbc642017-04-27 08:59:55 -04004595 DB 0,0 ; add %al,(%rax)
4596 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -04004597 DB 119,115 ; ja 4b61 <.literal4+0x239>
Mike Kleinb4bbc642017-04-27 08:59:55 -04004598 DB 248 ; clc
4599 DB 194,117,191 ; retq $0xbf75
4600 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi
4601 DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9
4602 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp
4603 DB 154 ; (bad)
4604 DB 64,254 ; rex (bad)
4605 DB 210,221 ; rcr %cl,%ch
4606 DB 65,0,0 ; add %al,(%r8)
4607 DB 0,75,0 ; add %cl,0x0(%rbx)
Mike Kleinfe560a82017-05-01 12:56:35 -04004608 DB 0,128,63,0,0,0 ; add %al,0x3f(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -04004609 DB 52,255 ; xor $0xff,%al
4610 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004611 DB 127,0 ; jg 4b1c <.literal4+0x1f4>
Mike Kleinb4bbc642017-04-27 08:59:55 -04004612 DB 0,0 ; add %al,(%rax)
4613 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -04004614 DB 119,115 ; ja 4b95 <.literal4+0x26d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04004615 DB 248 ; clc
4616 DB 194,117,191 ; retq $0xbf75
4617 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi
4618 DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9
4619 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp
4620 DB 154 ; (bad)
4621 DB 64,254 ; rex (bad)
4622 DB 210,221 ; rcr %cl,%ch
4623 DB 65,0,0 ; add %al,(%r8)
Mike Klein308e6242017-04-27 13:56:33 -04004624 DB 0,75,0 ; add %cl,0x0(%rbx)
Mike Kleinfe560a82017-05-01 12:56:35 -04004625 DB 0,128,63,0,0,200 ; add %al,-0x37ffffc1(%rax)
4626 DB 66,0,0 ; rex.X add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -04004627 DB 127,67 ; jg 4b93 <.literal4+0x26b>
Mike Kleinfe560a82017-05-01 12:56:35 -04004628 DB 0,0 ; add %al,(%rax)
4629 DB 0,195 ; add %al,%bl
4630 DB 0,0 ; add %al,(%rax)
4631 DB 128,65,203,61 ; addb $0x3d,-0x35(%rcx)
4632 DB 13,60,111,18,3 ; or $0x3126f3c,%eax
4633 DB 59,10 ; cmp (%rdx),%ecx
4634 DB 215 ; xlat %ds:(%rbx)
4635 DB 163,59,194,24,17,60,203,61,13 ; movabs %eax,0xd3dcb3c1118c23b
4636 DB 190,80,128,3,62 ; mov $0x3e038050,%esi
4637 DB 31 ; (bad)
4638 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -04004639 DB 118,63 ; jbe 4bb3 <.literal4+0x28b>
Mike Kleinfe560a82017-05-01 12:56:35 -04004640 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
4641 DB 129,128,128,59,129,128,128,59,0,0 ; addl $0x3b80,-0x7f7ec480(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -04004642 DB 127,67 ; jg 4bc7 <.literal4+0x29f>
Mike Kleinfe560a82017-05-01 12:56:35 -04004643 DB 129,128,128,59,0,0,128,63,129,128 ; addl $0x80813f80,0x3b80(%rax)
4644 DB 128,59,0 ; cmpb $0x0,(%rbx)
4645 DB 0,128,63,129,128,128 ; add %al,-0x7f7f7ec1(%rax)
4646 DB 59,0 ; cmp (%rax),%eax
Mike Klein308e6242017-04-27 13:56:33 -04004647 DB 248 ; clc
4648 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004649 DB 8,33 ; or %ah,(%rcx)
4650 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -04004651 DB 224,7 ; loopne 4ba9 <.literal4+0x281>
Mike Klein308e6242017-04-27 13:56:33 -04004652 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004653 DB 33,8 ; and %ecx,(%rax)
4654 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -04004655 DB 31 ; (bad)
4656 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004657 DB 0,8 ; add %cl,(%rax)
4658 DB 33,4,61,0,0,128,63 ; and %eax,0x3f800000(,%rdi,1)
4659 DB 0,248 ; add %bh,%al
Mike Klein308e6242017-04-27 13:56:33 -04004660 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004661 DB 8,33 ; or %ah,(%rcx)
4662 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -04004663 DB 224,7 ; loopne 4bc5 <.literal4+0x29d>
Mike Klein308e6242017-04-27 13:56:33 -04004664 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004665 DB 33,8 ; and %ecx,(%rax)
4666 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -04004667 DB 31 ; (bad)
4668 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004669 DB 0,8 ; add %cl,(%rax)
4670 DB 33,4,61,0,0,128,63 ; and %eax,0x3f800000(,%rdi,1)
Mike Klein308e6242017-04-27 13:56:33 -04004671 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004672 DB 248 ; clc
4673 DB 65,0,0 ; add %al,(%r8)
Mike Klein8ca33562017-05-23 08:07:43 -04004674 DB 124,66 ; jl 4c1a <.literal4+0x2f2>
Mike Kleinfe560a82017-05-01 12:56:35 -04004675 DB 0,240 ; add %dh,%al
Mike Klein308e6242017-04-27 13:56:33 -04004676 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004677 DB 137,136,136,55,0,15 ; mov %ecx,0xf003788(%rax)
Mike Klein308e6242017-04-27 13:56:33 -04004678 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004679 DB 137,136,136,57,240,0 ; mov %ecx,0xf03988(%rax)
Mike Klein308e6242017-04-27 13:56:33 -04004680 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004681 DB 137,136,136,59,15,0 ; mov %ecx,0xf3b88(%rax)
Mike Klein308e6242017-04-27 13:56:33 -04004682 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004683 DB 137,136,136,61,0,240 ; mov %ecx,-0xfffc278(%rax)
Mike Klein308e6242017-04-27 13:56:33 -04004684 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004685 DB 137,136,136,55,0,15 ; mov %ecx,0xf003788(%rax)
4686 DB 0,0 ; add %al,(%rax)
4687 DB 137,136,136,57,240,0 ; mov %ecx,0xf03988(%rax)
4688 DB 0,0 ; add %al,(%rax)
4689 DB 137,136,136,59,15,0 ; mov %ecx,0xf3b88(%rax)
4690 DB 0,0 ; add %al,(%rax)
4691 DB 137,136,136,61,0,0 ; mov %ecx,0x3d88(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -04004692 DB 112,65 ; jo 4c5d <.literal4+0x335>
Mike Kleinfe560a82017-05-01 12:56:35 -04004693 DB 129,128,128,59,129,128,128,59,0,0 ; addl $0x3b80,-0x7f7ec480(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -04004694 DB 127,67 ; jg 4c6b <.literal4+0x343>
Mike Kleinfe560a82017-05-01 12:56:35 -04004695 DB 128,0,128 ; addb $0x80,(%rax)
4696 DB 55 ; (bad)
4697 DB 128,0,128 ; addb $0x80,(%rax)
4698 DB 55 ; (bad)
4699 DB 0,0 ; add %al,(%rax)
4700 DB 128,63,0 ; cmpb $0x0,(%rdi)
4701 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004702 DB 127,71 ; jg 4c7f <.literal4+0x357>
Mike Klein9f85d682017-05-23 07:52:01 -04004703 DB 0,0 ; add %al,(%rax)
4704 DB 128,63,0 ; cmpb $0x0,(%rdi)
4705 DB 0,128,191,0,0,0 ; add %al,0xbf(%rax)
4706 DB 63 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04004707 DB 208 ; (bad)
4708 DB 179,89 ; mov $0x59,%bl
4709 DB 62,89 ; ds pop %rcx
4710 DB 23 ; (bad)
4711 DB 55 ; (bad)
4712 DB 63 ; (bad)
4713 DB 152 ; cwtl
Herb Derby4de13042017-05-15 10:49:39 -04004714 DB 221,147,61,1,0,0 ; fstl 0x13d(%rbx)
4715 DB 0,111,43 ; add %ch,0x2b(%rdi)
4716 DB 231,187 ; out %eax,$0xbb
4717 DB 159 ; lahf
4718 DB 215 ; xlat %ds:(%rbx)
4719 DB 202,60,212 ; lret $0xd43c
Herb Derby7eb86982017-05-02 19:04:39 -04004720 DB 100,84 ; fs push %rsp
4721 DB 189,169,240,34,62 ; mov $0x3e22f0a9,%ebp
4722 DB 0,0 ; add %al,(%rax)
4723 DB 128,62,0 ; cmpb $0x0,(%rsi)
4724 DB 0,0 ; add %al,(%rax)
4725 DB 63 ; (bad)
4726 DB 0,0 ; add %al,(%rax)
4727 DB 128,63,0 ; cmpb $0x0,(%rdi)
4728 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -04004729 DB 63 ; (bad)
4730 DB 0,0 ; add %al,(%rax)
4731 DB 0,191,0,0,128,63 ; add %bh,0x3f800000(%rdi)
4732 DB 0,0 ; add %al,(%rax)
4733 DB 0,63 ; add %bh,(%rdi)
4734 DB 0,0 ; add %al,(%rax)
4735 DB 0,191,0,0,128,63 ; add %bh,0x3f800000(%rdi)
4736 DB 0,0 ; add %al,(%rax)
4737 DB 0,63 ; add %bh,(%rdi)
4738 DB 0,0 ; add %al,(%rax)
4739 DB 192,191,0,0,128,63,171 ; sarb $0xab,0x3f800000(%rdi)
4740 DB 170 ; stos %al,%es:(%rdi)
4741 DB 170 ; stos %al,%es:(%rdi)
4742 DB 190,114,28,199,62 ; mov $0x3ec71c72,%esi
4743 DB 0,0 ; add %al,(%rax)
4744 DB 0,191,0,0,128,63 ; add %bh,0x3f800000(%rdi)
4745 DB 0,0 ; add %al,(%rax)
4746 DB 192,63,85 ; sarb $0x55,(%rdi)
4747 DB 85 ; push %rbp
4748 DB 149 ; xchg %eax,%ebp
4749 DB 191,0,0,0,63 ; mov $0x3f000000,%edi
4750 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
4751 DB 0,63 ; add %bh,(%rdi)
4752 DB 0,0 ; add %al,(%rax)
4753 DB 192,63,85 ; sarb $0x55,(%rdi)
4754 DB 85 ; push %rbp
4755 DB 149 ; xchg %eax,%ebp
4756 DB 191,57,142,99,61 ; mov $0x3d638e39,%edi
4757 DB 0,0 ; add %al,(%rax)
4758 DB 192,63,171 ; sarb $0xab,(%rdi)
4759 DB 170 ; stos %al,%es:(%rdi)
4760 DB 170 ; stos %al,%es:(%rdi)
4761 DB 190,114,28,199,62 ; mov $0x3ec71c72,%esi
4762 DB 0,0 ; add %al,(%rax)
4763 DB 192,191,0,0,128,63,171 ; sarb $0xab,0x3f800000(%rdi)
4764 DB 170 ; stos %al,%es:(%rdi)
4765 DB 170 ; stos %al,%es:(%rdi)
4766 DB 190,114,28,199,62 ; mov $0x3ec71c72,%esi
4767 DB 0,0 ; add %al,(%rax)
4768 DB 0,191,0,0,128,63 ; add %bh,0x3f800000(%rdi)
4769 DB 0,0 ; add %al,(%rax)
4770 DB 192,63,85 ; sarb $0x55,(%rdi)
4771 DB 85 ; push %rbp
4772 DB 149 ; xchg %eax,%ebp
4773 DB 191,0,0,0,63 ; mov $0x3f000000,%edi
4774 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
4775 DB 0,63 ; add %bh,(%rdi)
4776 DB 0,0 ; add %al,(%rax)
4777 DB 192,63,85 ; sarb $0x55,(%rdi)
4778 DB 85 ; push %rbp
4779 DB 149 ; xchg %eax,%ebp
4780 DB 191,57,142,99,61 ; mov $0x3d638e39,%edi
4781 DB 0,0 ; add %al,(%rax)
4782 DB 192,63,171 ; sarb $0xab,(%rdi)
4783 DB 170 ; stos %al,%es:(%rdi)
4784 DB 170 ; stos %al,%es:(%rdi)
4785 DB 190,114,28,199,62 ; mov $0x3ec71c72,%esi
Mike Klein0aa742f2017-04-27 13:36:57 -04004786
4787ALIGN 32
4788 DB 255,0 ; incl (%rax)
4789 DB 0,0 ; add %al,(%rax)
4790 DB 255,0 ; incl (%rax)
4791 DB 0,0 ; add %al,(%rax)
4792 DB 255,0 ; incl (%rax)
4793 DB 0,0 ; add %al,(%rax)
4794 DB 255,0 ; incl (%rax)
4795 DB 0,0 ; add %al,(%rax)
4796 DB 255,0 ; incl (%rax)
4797 DB 0,0 ; add %al,(%rax)
4798 DB 255,0 ; incl (%rax)
4799 DB 0,0 ; add %al,(%rax)
4800 DB 255,0 ; incl (%rax)
4801 DB 0,0 ; add %al,(%rax)
4802 DB 255,0 ; incl (%rax)
4803 DB 0,0 ; add %al,(%rax)
4804 DB 1,255 ; add %edi,%edi
4805 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004806 DB 255,5,255,255,255,9 ; incl 0x9ffffff(%rip) # a004d48 <_sk_callback_hsw+0xa00053b>
Mike Klein0aa742f2017-04-27 13:36:57 -04004807 DB 255 ; (bad)
4808 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004809 DB 255,13,255,255,255,17 ; decl 0x11ffffff(%rip) # 12004d50 <_sk_callback_hsw+0x12000543>
Mike Klein0aa742f2017-04-27 13:36:57 -04004810 DB 255 ; (bad)
4811 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004812 DB 255,21,255,255,255,25 ; callq *0x19ffffff(%rip) # 1a004d58 <_sk_callback_hsw+0x1a00054b>
Mike Klein0aa742f2017-04-27 13:36:57 -04004813 DB 255 ; (bad)
4814 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004815 DB 255,29,255,255,255,2 ; lcall *0x2ffffff(%rip) # 3004d60 <_sk_callback_hsw+0x3000553>
Mike Klein0aa742f2017-04-27 13:36:57 -04004816 DB 255 ; (bad)
4817 DB 255 ; (bad)
4818 DB 255,6 ; incl (%rsi)
4819 DB 255 ; (bad)
4820 DB 255 ; (bad)
4821 DB 255,10 ; decl (%rdx)
4822 DB 255 ; (bad)
4823 DB 255 ; (bad)
4824 DB 255,14 ; decl (%rsi)
4825 DB 255 ; (bad)
4826 DB 255 ; (bad)
4827 DB 255,18 ; callq *(%rdx)
4828 DB 255 ; (bad)
4829 DB 255 ; (bad)
4830 DB 255,22 ; callq *(%rsi)
4831 DB 255 ; (bad)
4832 DB 255 ; (bad)
4833 DB 255,26 ; lcall *(%rdx)
4834 DB 255 ; (bad)
4835 DB 255 ; (bad)
4836 DB 255,30 ; lcall *(%rsi)
4837 DB 255 ; (bad)
4838 DB 255 ; (bad)
4839 DB 255 ; (bad)
4840 DB 255,0 ; incl (%rax)
4841 DB 0,0 ; add %al,(%rax)
4842 DB 255,0 ; incl (%rax)
4843 DB 0,0 ; add %al,(%rax)
4844 DB 255,0 ; incl (%rax)
4845 DB 0,0 ; add %al,(%rax)
4846 DB 255,0 ; incl (%rax)
4847 DB 0,0 ; add %al,(%rax)
4848 DB 255,0 ; incl (%rax)
4849 DB 0,0 ; add %al,(%rax)
4850 DB 255,0 ; incl (%rax)
4851 DB 0,0 ; add %al,(%rax)
4852 DB 255,0 ; incl (%rax)
4853 DB 0,0 ; add %al,(%rax)
4854 DB 255,0 ; incl (%rax)
4855 DB 0,0 ; add %al,(%rax)
4856 DB 1,255 ; add %edi,%edi
4857 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004858 DB 255,5,255,255,255,9 ; incl 0x9ffffff(%rip) # a004da8 <_sk_callback_hsw+0xa00059b>
Mike Klein0aa742f2017-04-27 13:36:57 -04004859 DB 255 ; (bad)
4860 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004861 DB 255,13,255,255,255,17 ; decl 0x11ffffff(%rip) # 12004db0 <_sk_callback_hsw+0x120005a3>
Mike Klein0aa742f2017-04-27 13:36:57 -04004862 DB 255 ; (bad)
4863 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004864 DB 255,21,255,255,255,25 ; callq *0x19ffffff(%rip) # 1a004db8 <_sk_callback_hsw+0x1a0005ab>
Mike Klein0aa742f2017-04-27 13:36:57 -04004865 DB 255 ; (bad)
4866 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004867 DB 255,29,255,255,255,2 ; lcall *0x2ffffff(%rip) # 3004dc0 <_sk_callback_hsw+0x30005b3>
Mike Klein0aa742f2017-04-27 13:36:57 -04004868 DB 255 ; (bad)
4869 DB 255 ; (bad)
4870 DB 255,6 ; incl (%rsi)
4871 DB 255 ; (bad)
4872 DB 255 ; (bad)
4873 DB 255,10 ; decl (%rdx)
4874 DB 255 ; (bad)
4875 DB 255 ; (bad)
4876 DB 255,14 ; decl (%rsi)
4877 DB 255 ; (bad)
4878 DB 255 ; (bad)
4879 DB 255,18 ; callq *(%rdx)
4880 DB 255 ; (bad)
4881 DB 255 ; (bad)
4882 DB 255,22 ; callq *(%rsi)
4883 DB 255 ; (bad)
4884 DB 255 ; (bad)
4885 DB 255,26 ; lcall *(%rdx)
4886 DB 255 ; (bad)
4887 DB 255 ; (bad)
4888 DB 255,30 ; lcall *(%rsi)
4889 DB 255 ; (bad)
4890 DB 255 ; (bad)
4891 DB 255 ; (bad)
4892 DB 255,0 ; incl (%rax)
4893 DB 0,0 ; add %al,(%rax)
4894 DB 255,0 ; incl (%rax)
4895 DB 0,0 ; add %al,(%rax)
4896 DB 255,0 ; incl (%rax)
4897 DB 0,0 ; add %al,(%rax)
4898 DB 255,0 ; incl (%rax)
4899 DB 0,0 ; add %al,(%rax)
4900 DB 255,0 ; incl (%rax)
4901 DB 0,0 ; add %al,(%rax)
4902 DB 255,0 ; incl (%rax)
4903 DB 0,0 ; add %al,(%rax)
4904 DB 255,0 ; incl (%rax)
4905 DB 0,0 ; add %al,(%rax)
4906 DB 255,0 ; incl (%rax)
4907 DB 0,0 ; add %al,(%rax)
4908 DB 1,255 ; add %edi,%edi
4909 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004910 DB 255,5,255,255,255,9 ; incl 0x9ffffff(%rip) # a004e08 <_sk_callback_hsw+0xa0005fb>
Mike Klein0aa742f2017-04-27 13:36:57 -04004911 DB 255 ; (bad)
4912 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004913 DB 255,13,255,255,255,17 ; decl 0x11ffffff(%rip) # 12004e10 <_sk_callback_hsw+0x12000603>
Mike Klein0aa742f2017-04-27 13:36:57 -04004914 DB 255 ; (bad)
4915 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004916 DB 255,21,255,255,255,25 ; callq *0x19ffffff(%rip) # 1a004e18 <_sk_callback_hsw+0x1a00060b>
Mike Klein0aa742f2017-04-27 13:36:57 -04004917 DB 255 ; (bad)
4918 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004919 DB 255,29,255,255,255,2 ; lcall *0x2ffffff(%rip) # 3004e20 <_sk_callback_hsw+0x3000613>
Mike Klein0aa742f2017-04-27 13:36:57 -04004920 DB 255 ; (bad)
4921 DB 255 ; (bad)
4922 DB 255,6 ; incl (%rsi)
4923 DB 255 ; (bad)
4924 DB 255 ; (bad)
4925 DB 255,10 ; decl (%rdx)
4926 DB 255 ; (bad)
4927 DB 255 ; (bad)
4928 DB 255,14 ; decl (%rsi)
4929 DB 255 ; (bad)
4930 DB 255 ; (bad)
4931 DB 255,18 ; callq *(%rdx)
4932 DB 255 ; (bad)
4933 DB 255 ; (bad)
4934 DB 255,22 ; callq *(%rsi)
4935 DB 255 ; (bad)
4936 DB 255 ; (bad)
4937 DB 255,26 ; lcall *(%rdx)
4938 DB 255 ; (bad)
4939 DB 255 ; (bad)
4940 DB 255,30 ; lcall *(%rsi)
4941 DB 255 ; (bad)
4942 DB 255 ; (bad)
4943 DB 255 ; (bad)
4944 DB 255,0 ; incl (%rax)
4945 DB 0,0 ; add %al,(%rax)
4946 DB 255,0 ; incl (%rax)
4947 DB 0,0 ; add %al,(%rax)
4948 DB 255,0 ; incl (%rax)
4949 DB 0,0 ; add %al,(%rax)
4950 DB 255,0 ; incl (%rax)
4951 DB 0,0 ; add %al,(%rax)
4952 DB 255,0 ; incl (%rax)
4953 DB 0,0 ; add %al,(%rax)
4954 DB 255,0 ; incl (%rax)
4955 DB 0,0 ; add %al,(%rax)
4956 DB 255,0 ; incl (%rax)
4957 DB 0,0 ; add %al,(%rax)
4958 DB 255,0 ; incl (%rax)
4959 DB 0,0 ; add %al,(%rax)
4960 DB 1,255 ; add %edi,%edi
4961 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004962 DB 255,5,255,255,255,9 ; incl 0x9ffffff(%rip) # a004e68 <_sk_callback_hsw+0xa00065b>
Mike Klein0aa742f2017-04-27 13:36:57 -04004963 DB 255 ; (bad)
4964 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004965 DB 255,13,255,255,255,17 ; decl 0x11ffffff(%rip) # 12004e70 <_sk_callback_hsw+0x12000663>
Mike Klein0aa742f2017-04-27 13:36:57 -04004966 DB 255 ; (bad)
4967 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004968 DB 255,21,255,255,255,25 ; callq *0x19ffffff(%rip) # 1a004e78 <_sk_callback_hsw+0x1a00066b>
Mike Klein0aa742f2017-04-27 13:36:57 -04004969 DB 255 ; (bad)
4970 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -04004971 DB 255,29,255,255,255,2 ; lcall *0x2ffffff(%rip) # 3004e80 <_sk_callback_hsw+0x3000673>
Mike Klein0aa742f2017-04-27 13:36:57 -04004972 DB 255 ; (bad)
4973 DB 255 ; (bad)
4974 DB 255,6 ; incl (%rsi)
4975 DB 255 ; (bad)
4976 DB 255 ; (bad)
4977 DB 255,10 ; decl (%rdx)
4978 DB 255 ; (bad)
4979 DB 255 ; (bad)
4980 DB 255,14 ; decl (%rsi)
4981 DB 255 ; (bad)
4982 DB 255 ; (bad)
4983 DB 255,18 ; callq *(%rdx)
4984 DB 255 ; (bad)
4985 DB 255 ; (bad)
4986 DB 255,22 ; callq *(%rsi)
4987 DB 255 ; (bad)
4988 DB 255 ; (bad)
4989 DB 255,26 ; lcall *(%rdx)
4990 DB 255 ; (bad)
4991 DB 255 ; (bad)
4992 DB 255,30 ; lcall *(%rsi)
4993 DB 255 ; (bad)
4994 DB 255 ; (bad)
4995 DB 255 ; .byte 0xff
4996
4997ALIGN 16
4998 DB 255,0 ; incl (%rax)
4999 DB 255,0 ; incl (%rax)
5000 DB 255,0 ; incl (%rax)
5001 DB 255,0 ; incl (%rax)
5002 DB 255,0 ; incl (%rax)
5003 DB 255,0 ; incl (%rax)
5004 DB 255,0 ; incl (%rax)
5005 DB 255,0 ; incl (%rax)
5006 DB 255,0 ; incl (%rax)
5007 DB 255,0 ; incl (%rax)
5008 DB 255,0 ; incl (%rax)
5009 DB 255,0 ; incl (%rax)
5010 DB 255,0 ; incl (%rax)
5011 DB 255,0 ; incl (%rax)
5012 DB 255,0 ; incl (%rax)
5013 DB 255,0 ; incl (%rax)
Mike Klein67e61712017-04-26 09:52:09 -04005014ALIGN 32
Mike Klein2229b572017-04-21 10:30:29 -04005015
Mike Kleind7e06ae2017-03-29 16:33:06 -04005016PUBLIC _sk_start_pipeline_avx
5017_sk_start_pipeline_avx LABEL PROC
5018 DB 65,87 ; push %r15
5019 DB 65,86 ; push %r14
5020 DB 65,85 ; push %r13
5021 DB 65,84 ; push %r12
5022 DB 86 ; push %rsi
5023 DB 87 ; push %rdi
5024 DB 83 ; push %rbx
5025 DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp
5026 DB 197,120,41,188,36,144,0,0,0 ; vmovaps %xmm15,0x90(%rsp)
5027 DB 197,120,41,180,36,128,0,0,0 ; vmovaps %xmm14,0x80(%rsp)
5028 DB 197,120,41,108,36,112 ; vmovaps %xmm13,0x70(%rsp)
5029 DB 197,120,41,100,36,96 ; vmovaps %xmm12,0x60(%rsp)
5030 DB 197,120,41,92,36,80 ; vmovaps %xmm11,0x50(%rsp)
5031 DB 197,120,41,84,36,64 ; vmovaps %xmm10,0x40(%rsp)
5032 DB 197,120,41,76,36,48 ; vmovaps %xmm9,0x30(%rsp)
5033 DB 197,120,41,68,36,32 ; vmovaps %xmm8,0x20(%rsp)
5034 DB 197,248,41,124,36,16 ; vmovaps %xmm7,0x10(%rsp)
5035 DB 197,248,41,52,36 ; vmovaps %xmm6,(%rsp)
5036 DB 77,137,205 ; mov %r9,%r13
5037 DB 77,137,198 ; mov %r8,%r14
5038 DB 72,137,203 ; mov %rcx,%rbx
5039 DB 72,137,214 ; mov %rdx,%rsi
5040 DB 72,173 ; lods %ds:(%rsi),%rax
5041 DB 73,137,199 ; mov %rax,%r15
5042 DB 73,137,244 ; mov %rsi,%r12
5043 DB 72,141,67,8 ; lea 0x8(%rbx),%rax
5044 DB 76,57,232 ; cmp %r13,%rax
5045 DB 118,5 ; jbe 75 <_sk_start_pipeline_avx+0x75>
5046 DB 72,137,223 ; mov %rbx,%rdi
5047 DB 235,65 ; jmp b6 <_sk_start_pipeline_avx+0xb6>
5048 DB 185,0,0,0,0 ; mov $0x0,%ecx
5049 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
5050 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
5051 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
5052 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3
5053 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4
5054 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5
5055 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6
5056 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7
5057 DB 72,137,223 ; mov %rbx,%rdi
5058 DB 76,137,230 ; mov %r12,%rsi
5059 DB 76,137,242 ; mov %r14,%rdx
5060 DB 65,255,215 ; callq *%r15
5061 DB 72,141,123,8 ; lea 0x8(%rbx),%rdi
5062 DB 72,131,195,16 ; add $0x10,%rbx
5063 DB 76,57,235 ; cmp %r13,%rbx
5064 DB 72,137,251 ; mov %rdi,%rbx
5065 DB 118,191 ; jbe 75 <_sk_start_pipeline_avx+0x75>
5066 DB 76,137,233 ; mov %r13,%rcx
5067 DB 72,41,249 ; sub %rdi,%rcx
5068 DB 116,41 ; je e7 <_sk_start_pipeline_avx+0xe7>
5069 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
5070 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
5071 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
5072 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3
5073 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4
5074 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5
5075 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6
5076 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7
5077 DB 76,137,230 ; mov %r12,%rsi
5078 DB 76,137,242 ; mov %r14,%rdx
5079 DB 65,255,215 ; callq *%r15
5080 DB 76,137,232 ; mov %r13,%rax
5081 DB 197,248,40,52,36 ; vmovaps (%rsp),%xmm6
5082 DB 197,248,40,124,36,16 ; vmovaps 0x10(%rsp),%xmm7
5083 DB 197,120,40,68,36,32 ; vmovaps 0x20(%rsp),%xmm8
5084 DB 197,120,40,76,36,48 ; vmovaps 0x30(%rsp),%xmm9
5085 DB 197,120,40,84,36,64 ; vmovaps 0x40(%rsp),%xmm10
5086 DB 197,120,40,92,36,80 ; vmovaps 0x50(%rsp),%xmm11
5087 DB 197,120,40,100,36,96 ; vmovaps 0x60(%rsp),%xmm12
5088 DB 197,120,40,108,36,112 ; vmovaps 0x70(%rsp),%xmm13
5089 DB 197,120,40,180,36,128,0,0,0 ; vmovaps 0x80(%rsp),%xmm14
5090 DB 197,120,40,188,36,144,0,0,0 ; vmovaps 0x90(%rsp),%xmm15
5091 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp
5092 DB 91 ; pop %rbx
5093 DB 95 ; pop %rdi
5094 DB 94 ; pop %rsi
5095 DB 65,92 ; pop %r12
5096 DB 65,93 ; pop %r13
5097 DB 65,94 ; pop %r14
5098 DB 65,95 ; pop %r15
5099 DB 197,248,119 ; vzeroupper
5100 DB 195 ; retq
5101
5102PUBLIC _sk_just_return_avx
5103_sk_just_return_avx LABEL PROC
5104 DB 195 ; retq
5105
5106PUBLIC _sk_seed_shader_avx
5107_sk_seed_shader_avx LABEL PROC
5108 DB 72,173 ; lods %ds:(%rsi),%rax
5109 DB 197,249,110,199 ; vmovd %edi,%xmm0
5110 DB 197,249,112,192,0 ; vpshufd $0x0,%xmm0,%xmm0
5111 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0
5112 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04005113 DB 196,226,125,24,13,240,99,0,0 ; vbroadcastss 0x63f0(%rip),%ymm1 # 6550 <_sk_callback_avx+0x119>
Mike Kleind7e06ae2017-03-29 16:33:06 -04005114 DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0
5115 DB 197,252,88,2 ; vaddps (%rdx),%ymm0,%ymm0
5116 DB 196,226,125,24,16 ; vbroadcastss (%rax),%ymm2
5117 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
5118 DB 197,236,88,201 ; vaddps %ymm1,%ymm2,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04005119 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04005120 DB 196,226,125,24,21,212,99,0,0 ; vbroadcastss 0x63d4(%rip),%ymm2 # 6554 <_sk_callback_avx+0x11d>
Mike Kleind7e06ae2017-03-29 16:33:06 -04005121 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3
5122 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4
5123 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5
5124 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6
5125 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7
5126 DB 255,224 ; jmpq *%rax
5127
Mike Klein581e6982017-05-03 13:05:13 -04005128PUBLIC _sk_dither_avx
5129_sk_dither_avx LABEL PROC
5130 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein5d7f2b52017-05-20 13:21:59 -04005131 DB 197,124,16,66,32 ; vmovups 0x20(%rdx),%ymm8
5132 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9
5133 DB 197,121,110,215 ; vmovd %edi,%xmm10
5134 DB 196,65,121,112,210,0 ; vpshufd $0x0,%xmm10,%xmm10
5135 DB 196,65,49,254,202 ; vpaddd %xmm10,%xmm9,%xmm9
5136 DB 196,65,57,254,194 ; vpaddd %xmm10,%xmm8,%xmm8
5137 DB 196,67,61,24,193,1 ; vinsertf128 $0x1,%xmm9,%ymm8,%ymm8
Mike Klein581e6982017-05-03 13:05:13 -04005138 DB 76,139,0 ; mov (%rax),%r8
5139 DB 196,66,125,24,8 ; vbroadcastss (%r8),%ymm9
5140 DB 196,65,60,87,209 ; vxorps %ymm9,%ymm8,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04005141 DB 196,98,125,24,29,133,99,0,0 ; vbroadcastss 0x6385(%rip),%ymm11 # 6558 <_sk_callback_avx+0x121>
Mike Klein581e6982017-05-03 13:05:13 -04005142 DB 196,65,44,84,203 ; vandps %ymm11,%ymm10,%ymm9
5143 DB 196,193,25,114,241,5 ; vpslld $0x5,%xmm9,%xmm12
5144 DB 196,67,125,25,201,1 ; vextractf128 $0x1,%ymm9,%xmm9
5145 DB 196,193,49,114,241,5 ; vpslld $0x5,%xmm9,%xmm9
5146 DB 196,67,29,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm12,%ymm9
5147 DB 196,65,60,84,219 ; vandps %ymm11,%ymm8,%ymm11
5148 DB 196,193,25,114,243,4 ; vpslld $0x4,%xmm11,%xmm12
5149 DB 196,67,125,25,219,1 ; vextractf128 $0x1,%ymm11,%xmm11
5150 DB 196,193,33,114,243,4 ; vpslld $0x4,%xmm11,%xmm11
5151 DB 196,67,29,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm12,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04005152 DB 196,98,125,24,37,70,99,0,0 ; vbroadcastss 0x6346(%rip),%ymm12 # 655c <_sk_callback_avx+0x125>
5153 DB 196,98,125,24,45,65,99,0,0 ; vbroadcastss 0x6341(%rip),%ymm13 # 6560 <_sk_callback_avx+0x129>
Mike Klein581e6982017-05-03 13:05:13 -04005154 DB 196,65,44,84,245 ; vandps %ymm13,%ymm10,%ymm14
5155 DB 196,193,1,114,246,2 ; vpslld $0x2,%xmm14,%xmm15
5156 DB 196,67,125,25,246,1 ; vextractf128 $0x1,%ymm14,%xmm14
5157 DB 196,193,9,114,246,2 ; vpslld $0x2,%xmm14,%xmm14
5158 DB 196,67,5,24,246,1 ; vinsertf128 $0x1,%xmm14,%ymm15,%ymm14
5159 DB 196,65,60,84,237 ; vandps %ymm13,%ymm8,%ymm13
5160 DB 196,65,17,254,253 ; vpaddd %xmm13,%xmm13,%xmm15
5161 DB 196,67,125,25,237,1 ; vextractf128 $0x1,%ymm13,%xmm13
5162 DB 196,65,17,254,237 ; vpaddd %xmm13,%xmm13,%xmm13
5163 DB 196,67,5,24,237,1 ; vinsertf128 $0x1,%xmm13,%ymm15,%ymm13
5164 DB 196,65,44,84,212 ; vandps %ymm12,%ymm10,%ymm10
5165 DB 196,193,1,114,210,1 ; vpsrld $0x1,%xmm10,%xmm15
5166 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10
5167 DB 196,193,41,114,210,1 ; vpsrld $0x1,%xmm10,%xmm10
5168 DB 196,67,5,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm15,%ymm10
5169 DB 196,65,60,84,196 ; vandps %ymm12,%ymm8,%ymm8
5170 DB 196,193,25,114,208,2 ; vpsrld $0x2,%xmm8,%xmm12
5171 DB 196,67,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm8
5172 DB 196,193,57,114,208,2 ; vpsrld $0x2,%xmm8,%xmm8
5173 DB 196,67,29,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm12,%ymm8
5174 DB 196,65,20,86,219 ; vorps %ymm11,%ymm13,%ymm11
5175 DB 196,65,36,86,192 ; vorps %ymm8,%ymm11,%ymm8
Mike Klein581e6982017-05-03 13:05:13 -04005176 DB 196,65,60,86,193 ; vorps %ymm9,%ymm8,%ymm8
Mike Klein5d7f2b52017-05-20 13:21:59 -04005177 DB 196,65,12,86,202 ; vorps %ymm10,%ymm14,%ymm9
5178 DB 196,65,60,86,193 ; vorps %ymm9,%ymm8,%ymm8
Mike Klein581e6982017-05-03 13:05:13 -04005179 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04005180 DB 196,98,125,24,13,172,98,0,0 ; vbroadcastss 0x62ac(%rip),%ymm9 # 6564 <_sk_callback_avx+0x12d>
Mike Klein581e6982017-05-03 13:05:13 -04005181 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04005182 DB 196,98,125,24,13,162,98,0,0 ; vbroadcastss 0x62a2(%rip),%ymm9 # 6568 <_sk_callback_avx+0x131>
Mike Klein581e6982017-05-03 13:05:13 -04005183 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
5184 DB 196,98,125,24,72,8 ; vbroadcastss 0x8(%rax),%ymm9
5185 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
Mike Klein581e6982017-05-03 13:05:13 -04005186 DB 197,188,88,192 ; vaddps %ymm0,%ymm8,%ymm0
5187 DB 197,188,88,201 ; vaddps %ymm1,%ymm8,%ymm1
5188 DB 197,188,88,210 ; vaddps %ymm2,%ymm8,%ymm2
Mike Klein7e68bc92017-05-16 12:03:15 -04005189 DB 197,252,93,195 ; vminps %ymm3,%ymm0,%ymm0
5190 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
5191 DB 197,188,95,192 ; vmaxps %ymm0,%ymm8,%ymm0
5192 DB 197,244,93,203 ; vminps %ymm3,%ymm1,%ymm1
5193 DB 197,188,95,201 ; vmaxps %ymm1,%ymm8,%ymm1
5194 DB 197,236,93,211 ; vminps %ymm3,%ymm2,%ymm2
5195 DB 197,188,95,210 ; vmaxps %ymm2,%ymm8,%ymm2
Mike Klein581e6982017-05-03 13:05:13 -04005196 DB 72,173 ; lods %ds:(%rsi),%rax
5197 DB 255,224 ; jmpq *%rax
5198
Mike Kleind7e06ae2017-03-29 16:33:06 -04005199PUBLIC _sk_constant_color_avx
5200_sk_constant_color_avx LABEL PROC
5201 DB 72,173 ; lods %ds:(%rsi),%rax
5202 DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0
5203 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1
5204 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2
5205 DB 196,226,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm3
5206 DB 72,173 ; lods %ds:(%rsi),%rax
5207 DB 255,224 ; jmpq *%rax
5208
Mike Reed9959f722017-05-15 09:34:22 -04005209PUBLIC _sk_load_rgba_avx
5210_sk_load_rgba_avx LABEL PROC
5211 DB 72,173 ; lods %ds:(%rsi),%rax
5212 DB 197,252,16,0 ; vmovups (%rax),%ymm0
5213 DB 197,252,16,72,32 ; vmovups 0x20(%rax),%ymm1
5214 DB 197,252,16,80,64 ; vmovups 0x40(%rax),%ymm2
5215 DB 197,252,16,88,96 ; vmovups 0x60(%rax),%ymm3
5216 DB 72,173 ; lods %ds:(%rsi),%rax
5217 DB 255,224 ; jmpq *%rax
5218
5219PUBLIC _sk_store_rgba_avx
5220_sk_store_rgba_avx LABEL PROC
5221 DB 72,173 ; lods %ds:(%rsi),%rax
5222 DB 197,252,17,0 ; vmovups %ymm0,(%rax)
5223 DB 197,252,17,72,32 ; vmovups %ymm1,0x20(%rax)
5224 DB 197,252,17,80,64 ; vmovups %ymm2,0x40(%rax)
5225 DB 197,252,17,88,96 ; vmovups %ymm3,0x60(%rax)
5226 DB 72,173 ; lods %ds:(%rsi),%rax
5227 DB 255,224 ; jmpq *%rax
5228
Mike Kleind7e06ae2017-03-29 16:33:06 -04005229PUBLIC _sk_clear_avx
5230_sk_clear_avx LABEL PROC
5231 DB 72,173 ; lods %ds:(%rsi),%rax
5232 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
5233 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
5234 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
5235 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3
5236 DB 255,224 ; jmpq *%rax
5237
Mike Kleinaaca1e42017-03-31 09:29:01 -04005238PUBLIC _sk_srcatop_avx
5239_sk_srcatop_avx LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -04005240 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04005241 DB 196,98,125,24,5,249,97,0,0 ; vbroadcastss 0x61f9(%rip),%ymm8 # 656c <_sk_callback_avx+0x135>
Mike Kleinfe560a82017-05-01 12:56:35 -04005242 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5243 DB 197,60,89,204 ; vmulps %ymm4,%ymm8,%ymm9
5244 DB 197,180,88,192 ; vaddps %ymm0,%ymm9,%ymm0
Mike Kleinaaca1e42017-03-31 09:29:01 -04005245 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04005246 DB 197,60,89,205 ; vmulps %ymm5,%ymm8,%ymm9
5247 DB 197,180,88,201 ; vaddps %ymm1,%ymm9,%ymm1
Mike Kleinaaca1e42017-03-31 09:29:01 -04005248 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04005249 DB 197,60,89,206 ; vmulps %ymm6,%ymm8,%ymm9
5250 DB 197,180,88,210 ; vaddps %ymm2,%ymm9,%ymm2
Mike Kleinaaca1e42017-03-31 09:29:01 -04005251 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04005252 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
Mike Kleinaaca1e42017-03-31 09:29:01 -04005253 DB 196,193,100,88,216 ; vaddps %ymm8,%ymm3,%ymm3
5254 DB 72,173 ; lods %ds:(%rsi),%rax
5255 DB 255,224 ; jmpq *%rax
5256
5257PUBLIC _sk_dstatop_avx
5258_sk_dstatop_avx LABEL PROC
5259 DB 197,100,89,196 ; vmulps %ymm4,%ymm3,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04005260 DB 196,98,125,24,13,187,97,0,0 ; vbroadcastss 0x61bb(%rip),%ymm9 # 6570 <_sk_callback_avx+0x139>
Mike Kleinaaca1e42017-03-31 09:29:01 -04005261 DB 197,52,92,207 ; vsubps %ymm7,%ymm9,%ymm9
5262 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
5263 DB 197,188,88,192 ; vaddps %ymm0,%ymm8,%ymm0
5264 DB 197,100,89,197 ; vmulps %ymm5,%ymm3,%ymm8
5265 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1
5266 DB 197,188,88,201 ; vaddps %ymm1,%ymm8,%ymm1
5267 DB 197,100,89,198 ; vmulps %ymm6,%ymm3,%ymm8
5268 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2
5269 DB 197,188,88,210 ; vaddps %ymm2,%ymm8,%ymm2
5270 DB 197,100,89,199 ; vmulps %ymm7,%ymm3,%ymm8
5271 DB 197,180,89,219 ; vmulps %ymm3,%ymm9,%ymm3
5272 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5273 DB 72,173 ; lods %ds:(%rsi),%rax
5274 DB 255,224 ; jmpq *%rax
5275
5276PUBLIC _sk_srcin_avx
5277_sk_srcin_avx LABEL PROC
5278 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
5279 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
5280 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
5281 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
5282 DB 72,173 ; lods %ds:(%rsi),%rax
5283 DB 255,224 ; jmpq *%rax
5284
5285PUBLIC _sk_dstin_avx
5286_sk_dstin_avx LABEL PROC
5287 DB 197,228,89,196 ; vmulps %ymm4,%ymm3,%ymm0
5288 DB 197,228,89,205 ; vmulps %ymm5,%ymm3,%ymm1
5289 DB 197,228,89,214 ; vmulps %ymm6,%ymm3,%ymm2
5290 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
5291 DB 72,173 ; lods %ds:(%rsi),%rax
5292 DB 255,224 ; jmpq *%rax
5293
5294PUBLIC _sk_srcout_avx
5295_sk_srcout_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005296 DB 196,98,125,24,5,90,97,0,0 ; vbroadcastss 0x615a(%rip),%ymm8 # 6574 <_sk_callback_avx+0x13d>
Mike Kleinaaca1e42017-03-31 09:29:01 -04005297 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8
5298 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
5299 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
5300 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
5301 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
5302 DB 72,173 ; lods %ds:(%rsi),%rax
5303 DB 255,224 ; jmpq *%rax
5304
5305PUBLIC _sk_dstout_avx
5306_sk_dstout_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005307 DB 196,226,125,24,5,61,97,0,0 ; vbroadcastss 0x613d(%rip),%ymm0 # 6578 <_sk_callback_avx+0x141>
Mike Kleinaaca1e42017-03-31 09:29:01 -04005308 DB 197,252,92,219 ; vsubps %ymm3,%ymm0,%ymm3
5309 DB 197,228,89,196 ; vmulps %ymm4,%ymm3,%ymm0
5310 DB 197,228,89,205 ; vmulps %ymm5,%ymm3,%ymm1
5311 DB 197,228,89,214 ; vmulps %ymm6,%ymm3,%ymm2
5312 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04005313 DB 72,173 ; lods %ds:(%rsi),%rax
5314 DB 255,224 ; jmpq *%rax
5315
5316PUBLIC _sk_srcover_avx
5317_sk_srcover_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005318 DB 196,98,125,24,5,32,97,0,0 ; vbroadcastss 0x6120(%rip),%ymm8 # 657c <_sk_callback_avx+0x145>
Mike Kleind7e06ae2017-03-29 16:33:06 -04005319 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5320 DB 197,60,89,204 ; vmulps %ymm4,%ymm8,%ymm9
5321 DB 197,180,88,192 ; vaddps %ymm0,%ymm9,%ymm0
5322 DB 197,60,89,205 ; vmulps %ymm5,%ymm8,%ymm9
5323 DB 197,180,88,201 ; vaddps %ymm1,%ymm9,%ymm1
5324 DB 197,60,89,206 ; vmulps %ymm6,%ymm8,%ymm9
5325 DB 197,180,88,210 ; vaddps %ymm2,%ymm9,%ymm2
5326 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5327 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5328 DB 72,173 ; lods %ds:(%rsi),%rax
5329 DB 255,224 ; jmpq *%rax
5330
5331PUBLIC _sk_dstover_avx
5332_sk_dstover_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005333 DB 196,98,125,24,5,243,96,0,0 ; vbroadcastss 0x60f3(%rip),%ymm8 # 6580 <_sk_callback_avx+0x149>
Mike Kleind7e06ae2017-03-29 16:33:06 -04005334 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8
5335 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
5336 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0
5337 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
5338 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1
5339 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
5340 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2
5341 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
5342 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
5343 DB 72,173 ; lods %ds:(%rsi),%rax
5344 DB 255,224 ; jmpq *%rax
5345
Mike Kleinaaca1e42017-03-31 09:29:01 -04005346PUBLIC _sk_modulate_avx
5347_sk_modulate_avx LABEL PROC
5348 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0
5349 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1
5350 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2
5351 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
5352 DB 72,173 ; lods %ds:(%rsi),%rax
5353 DB 255,224 ; jmpq *%rax
5354
5355PUBLIC _sk_multiply_avx
5356_sk_multiply_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005357 DB 196,98,125,24,5,178,96,0,0 ; vbroadcastss 0x60b2(%rip),%ymm8 # 6584 <_sk_callback_avx+0x14d>
Mike Kleinaaca1e42017-03-31 09:29:01 -04005358 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9
5359 DB 197,52,89,208 ; vmulps %ymm0,%ymm9,%ymm10
5360 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5361 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11
Mike Kleinfe560a82017-05-01 12:56:35 -04005362 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10
Mike Kleinaaca1e42017-03-31 09:29:01 -04005363 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0
5364 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0
5365 DB 197,52,89,209 ; vmulps %ymm1,%ymm9,%ymm10
5366 DB 197,60,89,221 ; vmulps %ymm5,%ymm8,%ymm11
5367 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10
5368 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1
5369 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1
5370 DB 197,52,89,210 ; vmulps %ymm2,%ymm9,%ymm10
5371 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11
5372 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10
5373 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2
5374 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2
5375 DB 197,52,89,203 ; vmulps %ymm3,%ymm9,%ymm9
5376 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5377 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
5378 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
5379 DB 196,193,100,88,216 ; vaddps %ymm8,%ymm3,%ymm3
5380 DB 72,173 ; lods %ds:(%rsi),%rax
5381 DB 255,224 ; jmpq *%rax
5382
5383PUBLIC _sk_plus__avx
5384_sk_plus__avx LABEL PROC
5385 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0
5386 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1
5387 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2
5388 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
5389 DB 72,173 ; lods %ds:(%rsi),%rax
5390 DB 255,224 ; jmpq *%rax
5391
5392PUBLIC _sk_screen_avx
5393_sk_screen_avx LABEL PROC
5394 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
5395 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0
5396 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
5397 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
5398 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1
5399 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
5400 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
5401 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2
5402 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
5403 DB 197,100,88,199 ; vaddps %ymm7,%ymm3,%ymm8
5404 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3
5405 DB 197,188,92,219 ; vsubps %ymm3,%ymm8,%ymm3
5406 DB 72,173 ; lods %ds:(%rsi),%rax
5407 DB 255,224 ; jmpq *%rax
5408
5409PUBLIC _sk_xor__avx
5410_sk_xor__avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005411 DB 196,98,125,24,5,1,96,0,0 ; vbroadcastss 0x6001(%rip),%ymm8 # 6588 <_sk_callback_avx+0x151>
Mike Kleinaaca1e42017-03-31 09:29:01 -04005412 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9
5413 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
5414 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5415 DB 197,60,89,212 ; vmulps %ymm4,%ymm8,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -04005416 DB 197,172,88,192 ; vaddps %ymm0,%ymm10,%ymm0
Mike Kleinaaca1e42017-03-31 09:29:01 -04005417 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1
5418 DB 197,60,89,213 ; vmulps %ymm5,%ymm8,%ymm10
5419 DB 197,172,88,201 ; vaddps %ymm1,%ymm10,%ymm1
5420 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2
5421 DB 197,60,89,214 ; vmulps %ymm6,%ymm8,%ymm10
5422 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2
5423 DB 197,180,89,219 ; vmulps %ymm3,%ymm9,%ymm3
5424 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5425 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5426 DB 72,173 ; lods %ds:(%rsi),%rax
5427 DB 255,224 ; jmpq *%rax
5428
Mike Klein66b09ab2017-03-31 10:29:40 -04005429PUBLIC _sk_darken_avx
5430_sk_darken_avx LABEL PROC
5431 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
5432 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
5433 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9
5434 DB 196,193,124,95,193 ; vmaxps %ymm9,%ymm0,%ymm0
5435 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
5436 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
5437 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
5438 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9
5439 DB 196,193,116,95,201 ; vmaxps %ymm9,%ymm1,%ymm1
5440 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
5441 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
5442 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
5443 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9
5444 DB 196,193,108,95,209 ; vmaxps %ymm9,%ymm2,%ymm2
5445 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04005446 DB 196,98,125,24,5,129,95,0,0 ; vbroadcastss 0x5f81(%rip),%ymm8 # 658c <_sk_callback_avx+0x155>
Mike Klein66b09ab2017-03-31 10:29:40 -04005447 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5448 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5449 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5450 DB 72,173 ; lods %ds:(%rsi),%rax
5451 DB 255,224 ; jmpq *%rax
5452
5453PUBLIC _sk_lighten_avx
5454_sk_lighten_avx LABEL PROC
5455 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
5456 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
5457 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9
5458 DB 196,193,124,93,193 ; vminps %ymm9,%ymm0,%ymm0
5459 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
5460 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
5461 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
5462 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9
5463 DB 196,193,116,93,201 ; vminps %ymm9,%ymm1,%ymm1
5464 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
5465 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
5466 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
5467 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9
5468 DB 196,193,108,93,209 ; vminps %ymm9,%ymm2,%ymm2
5469 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04005470 DB 196,98,125,24,5,45,95,0,0 ; vbroadcastss 0x5f2d(%rip),%ymm8 # 6590 <_sk_callback_avx+0x159>
Mike Klein66b09ab2017-03-31 10:29:40 -04005471 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5472 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5473 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5474 DB 72,173 ; lods %ds:(%rsi),%rax
5475 DB 255,224 ; jmpq *%rax
5476
5477PUBLIC _sk_difference_avx
5478_sk_difference_avx LABEL PROC
5479 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
5480 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
5481 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9
5482 DB 196,193,124,93,193 ; vminps %ymm9,%ymm0,%ymm0
5483 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0
5484 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
5485 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
5486 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1
5487 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9
5488 DB 196,193,116,93,201 ; vminps %ymm9,%ymm1,%ymm1
5489 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1
5490 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
5491 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
5492 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2
5493 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9
5494 DB 196,193,108,93,209 ; vminps %ymm9,%ymm2,%ymm2
5495 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2
5496 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04005497 DB 196,98,125,24,5,205,94,0,0 ; vbroadcastss 0x5ecd(%rip),%ymm8 # 6594 <_sk_callback_avx+0x15d>
Mike Klein66b09ab2017-03-31 10:29:40 -04005498 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5499 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5500 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5501 DB 72,173 ; lods %ds:(%rsi),%rax
5502 DB 255,224 ; jmpq *%rax
5503
5504PUBLIC _sk_exclusion_avx
5505_sk_exclusion_avx LABEL PROC
5506 DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8
5507 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0
5508 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0
5509 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
5510 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8
5511 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1
5512 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1
5513 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1
5514 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8
5515 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2
5516 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2
5517 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04005518 DB 196,98,125,24,5,136,94,0,0 ; vbroadcastss 0x5e88(%rip),%ymm8 # 6598 <_sk_callback_avx+0x161>
Mike Klein66b09ab2017-03-31 10:29:40 -04005519 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5520 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5521 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5522 DB 72,173 ; lods %ds:(%rsi),%rax
5523 DB 255,224 ; jmpq *%rax
5524
Mike Klein61b84162017-03-31 11:48:14 -04005525PUBLIC _sk_colorburn_avx
5526_sk_colorburn_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005527 DB 196,98,125,24,5,115,94,0,0 ; vbroadcastss 0x5e73(%rip),%ymm8 # 659c <_sk_callback_avx+0x165>
Mike Klein61b84162017-03-31 11:48:14 -04005528 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9
5529 DB 197,52,89,216 ; vmulps %ymm0,%ymm9,%ymm11
5530 DB 196,65,44,87,210 ; vxorps %ymm10,%ymm10,%ymm10
5531 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5532 DB 197,60,89,228 ; vmulps %ymm4,%ymm8,%ymm12
5533 DB 197,68,92,236 ; vsubps %ymm4,%ymm7,%ymm13
5534 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13
5535 DB 197,20,94,232 ; vdivps %ymm0,%ymm13,%ymm13
5536 DB 196,65,68,93,237 ; vminps %ymm13,%ymm7,%ymm13
5537 DB 196,65,68,92,237 ; vsubps %ymm13,%ymm7,%ymm13
5538 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13
Mike Kleinfe560a82017-05-01 12:56:35 -04005539 DB 196,65,36,88,237 ; vaddps %ymm13,%ymm11,%ymm13
Mike Klein61b84162017-03-31 11:48:14 -04005540 DB 196,65,28,88,237 ; vaddps %ymm13,%ymm12,%ymm13
5541 DB 197,28,88,224 ; vaddps %ymm0,%ymm12,%ymm12
5542 DB 196,193,124,194,194,0 ; vcmpeqps %ymm10,%ymm0,%ymm0
5543 DB 196,195,21,74,196,0 ; vblendvps %ymm0,%ymm12,%ymm13,%ymm0
5544 DB 197,92,194,231,0 ; vcmpeqps %ymm7,%ymm4,%ymm12
5545 DB 197,36,88,220 ; vaddps %ymm4,%ymm11,%ymm11
5546 DB 196,195,125,74,195,192 ; vblendvps %ymm12,%ymm11,%ymm0,%ymm0
5547 DB 197,52,89,217 ; vmulps %ymm1,%ymm9,%ymm11
5548 DB 197,60,89,229 ; vmulps %ymm5,%ymm8,%ymm12
5549 DB 197,68,92,237 ; vsubps %ymm5,%ymm7,%ymm13
5550 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13
5551 DB 197,20,94,233 ; vdivps %ymm1,%ymm13,%ymm13
5552 DB 196,65,68,93,237 ; vminps %ymm13,%ymm7,%ymm13
5553 DB 196,65,68,92,237 ; vsubps %ymm13,%ymm7,%ymm13
5554 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13
5555 DB 196,65,36,88,237 ; vaddps %ymm13,%ymm11,%ymm13
5556 DB 196,65,28,88,237 ; vaddps %ymm13,%ymm12,%ymm13
5557 DB 197,28,88,225 ; vaddps %ymm1,%ymm12,%ymm12
5558 DB 196,193,116,194,202,0 ; vcmpeqps %ymm10,%ymm1,%ymm1
5559 DB 196,195,21,74,204,16 ; vblendvps %ymm1,%ymm12,%ymm13,%ymm1
5560 DB 197,84,194,231,0 ; vcmpeqps %ymm7,%ymm5,%ymm12
5561 DB 197,36,88,221 ; vaddps %ymm5,%ymm11,%ymm11
5562 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1
5563 DB 197,52,89,202 ; vmulps %ymm2,%ymm9,%ymm9
5564 DB 196,65,108,194,210,0 ; vcmpeqps %ymm10,%ymm2,%ymm10
5565 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11
5566 DB 197,68,92,230 ; vsubps %ymm6,%ymm7,%ymm12
5567 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12
5568 DB 197,28,94,226 ; vdivps %ymm2,%ymm12,%ymm12
5569 DB 197,164,88,210 ; vaddps %ymm2,%ymm11,%ymm2
5570 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12
5571 DB 196,65,68,92,228 ; vsubps %ymm12,%ymm7,%ymm12
5572 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12
5573 DB 196,65,52,88,228 ; vaddps %ymm12,%ymm9,%ymm12
5574 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
5575 DB 196,227,37,74,210,160 ; vblendvps %ymm10,%ymm2,%ymm11,%ymm2
5576 DB 197,76,194,215,0 ; vcmpeqps %ymm7,%ymm6,%ymm10
5577 DB 197,52,88,206 ; vaddps %ymm6,%ymm9,%ymm9
5578 DB 196,195,109,74,209,160 ; vblendvps %ymm10,%ymm9,%ymm2,%ymm2
5579 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5580 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5581 DB 72,173 ; lods %ds:(%rsi),%rax
5582 DB 255,224 ; jmpq *%rax
5583
5584PUBLIC _sk_colordodge_avx
5585_sk_colordodge_avx LABEL PROC
5586 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04005587 DB 196,98,125,24,13,111,93,0,0 ; vbroadcastss 0x5d6f(%rip),%ymm9 # 65a0 <_sk_callback_avx+0x169>
Mike Klein61b84162017-03-31 11:48:14 -04005588 DB 197,52,92,215 ; vsubps %ymm7,%ymm9,%ymm10
5589 DB 197,44,89,216 ; vmulps %ymm0,%ymm10,%ymm11
5590 DB 197,52,92,203 ; vsubps %ymm3,%ymm9,%ymm9
5591 DB 197,100,89,228 ; vmulps %ymm4,%ymm3,%ymm12
5592 DB 197,100,92,232 ; vsubps %ymm0,%ymm3,%ymm13
5593 DB 196,65,28,94,229 ; vdivps %ymm13,%ymm12,%ymm12
5594 DB 197,52,89,236 ; vmulps %ymm4,%ymm9,%ymm13
5595 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12
5596 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12
Mike Kleinfe560a82017-05-01 12:56:35 -04005597 DB 196,65,36,88,228 ; vaddps %ymm12,%ymm11,%ymm12
Mike Klein61b84162017-03-31 11:48:14 -04005598 DB 196,65,20,88,228 ; vaddps %ymm12,%ymm13,%ymm12
5599 DB 197,20,88,232 ; vaddps %ymm0,%ymm13,%ymm13
5600 DB 197,252,194,195,0 ; vcmpeqps %ymm3,%ymm0,%ymm0
5601 DB 196,195,29,74,197,0 ; vblendvps %ymm0,%ymm13,%ymm12,%ymm0
5602 DB 196,65,92,194,224,0 ; vcmpeqps %ymm8,%ymm4,%ymm12
5603 DB 197,36,88,220 ; vaddps %ymm4,%ymm11,%ymm11
5604 DB 196,195,125,74,195,192 ; vblendvps %ymm12,%ymm11,%ymm0,%ymm0
5605 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11
5606 DB 197,100,89,229 ; vmulps %ymm5,%ymm3,%ymm12
5607 DB 197,100,92,233 ; vsubps %ymm1,%ymm3,%ymm13
5608 DB 196,65,28,94,229 ; vdivps %ymm13,%ymm12,%ymm12
5609 DB 197,52,89,237 ; vmulps %ymm5,%ymm9,%ymm13
5610 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12
5611 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12
Mike Kleinfe560a82017-05-01 12:56:35 -04005612 DB 196,65,36,88,228 ; vaddps %ymm12,%ymm11,%ymm12
Mike Klein61b84162017-03-31 11:48:14 -04005613 DB 196,65,20,88,228 ; vaddps %ymm12,%ymm13,%ymm12
5614 DB 197,20,88,233 ; vaddps %ymm1,%ymm13,%ymm13
5615 DB 197,244,194,203,0 ; vcmpeqps %ymm3,%ymm1,%ymm1
5616 DB 196,195,29,74,205,16 ; vblendvps %ymm1,%ymm13,%ymm12,%ymm1
5617 DB 196,65,84,194,224,0 ; vcmpeqps %ymm8,%ymm5,%ymm12
5618 DB 197,36,88,221 ; vaddps %ymm5,%ymm11,%ymm11
5619 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1
5620 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10
5621 DB 197,100,89,222 ; vmulps %ymm6,%ymm3,%ymm11
5622 DB 197,100,92,226 ; vsubps %ymm2,%ymm3,%ymm12
5623 DB 196,65,36,94,220 ; vdivps %ymm12,%ymm11,%ymm11
5624 DB 197,52,89,230 ; vmulps %ymm6,%ymm9,%ymm12
5625 DB 196,65,68,93,219 ; vminps %ymm11,%ymm7,%ymm11
5626 DB 197,36,89,219 ; vmulps %ymm3,%ymm11,%ymm11
5627 DB 196,65,44,88,219 ; vaddps %ymm11,%ymm10,%ymm11
5628 DB 196,65,28,88,219 ; vaddps %ymm11,%ymm12,%ymm11
5629 DB 197,28,88,226 ; vaddps %ymm2,%ymm12,%ymm12
5630 DB 197,236,194,211,0 ; vcmpeqps %ymm3,%ymm2,%ymm2
5631 DB 196,195,37,74,212,32 ; vblendvps %ymm2,%ymm12,%ymm11,%ymm2
5632 DB 196,65,76,194,192,0 ; vcmpeqps %ymm8,%ymm6,%ymm8
5633 DB 197,44,88,214 ; vaddps %ymm6,%ymm10,%ymm10
5634 DB 196,195,109,74,210,128 ; vblendvps %ymm8,%ymm10,%ymm2,%ymm2
5635 DB 197,52,89,199 ; vmulps %ymm7,%ymm9,%ymm8
5636 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5637 DB 72,173 ; lods %ds:(%rsi),%rax
5638 DB 255,224 ; jmpq *%rax
5639
5640PUBLIC _sk_hardlight_avx
5641_sk_hardlight_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005642 DB 196,98,125,24,5,129,92,0,0 ; vbroadcastss 0x5c81(%rip),%ymm8 # 65a4 <_sk_callback_avx+0x16d>
Mike Klein61b84162017-03-31 11:48:14 -04005643 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10
5644 DB 197,44,89,200 ; vmulps %ymm0,%ymm10,%ymm9
5645 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5646 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11
Mike Kleinfe560a82017-05-01 12:56:35 -04005647 DB 196,65,36,88,217 ; vaddps %ymm9,%ymm11,%ymm11
Mike Klein61b84162017-03-31 11:48:14 -04005648 DB 197,124,88,200 ; vaddps %ymm0,%ymm0,%ymm9
5649 DB 197,52,194,227,2 ; vcmpleps %ymm3,%ymm9,%ymm12
5650 DB 197,124,89,204 ; vmulps %ymm4,%ymm0,%ymm9
5651 DB 196,65,52,88,233 ; vaddps %ymm9,%ymm9,%ymm13
5652 DB 197,100,89,207 ; vmulps %ymm7,%ymm3,%ymm9
5653 DB 197,68,92,244 ; vsubps %ymm4,%ymm7,%ymm14
5654 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0
5655 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0
5656 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0
5657 DB 197,180,92,192 ; vsubps %ymm0,%ymm9,%ymm0
5658 DB 196,195,125,74,197,192 ; vblendvps %ymm12,%ymm13,%ymm0,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04005659 DB 197,164,88,192 ; vaddps %ymm0,%ymm11,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -04005660 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11
5661 DB 197,60,89,229 ; vmulps %ymm5,%ymm8,%ymm12
5662 DB 196,65,28,88,219 ; vaddps %ymm11,%ymm12,%ymm11
5663 DB 197,116,88,225 ; vaddps %ymm1,%ymm1,%ymm12
5664 DB 197,28,194,227,2 ; vcmpleps %ymm3,%ymm12,%ymm12
5665 DB 197,116,89,237 ; vmulps %ymm5,%ymm1,%ymm13
5666 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13
5667 DB 197,68,92,245 ; vsubps %ymm5,%ymm7,%ymm14
5668 DB 197,228,92,201 ; vsubps %ymm1,%ymm3,%ymm1
5669 DB 196,193,116,89,206 ; vmulps %ymm14,%ymm1,%ymm1
5670 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1
5671 DB 197,180,92,201 ; vsubps %ymm1,%ymm9,%ymm1
5672 DB 196,195,117,74,205,192 ; vblendvps %ymm12,%ymm13,%ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04005673 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
Mike Klein61b84162017-03-31 11:48:14 -04005674 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10
5675 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11
5676 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10
5677 DB 197,108,88,218 ; vaddps %ymm2,%ymm2,%ymm11
5678 DB 197,36,194,219,2 ; vcmpleps %ymm3,%ymm11,%ymm11
5679 DB 197,108,89,230 ; vmulps %ymm6,%ymm2,%ymm12
5680 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12
5681 DB 197,68,92,238 ; vsubps %ymm6,%ymm7,%ymm13
5682 DB 197,228,92,210 ; vsubps %ymm2,%ymm3,%ymm2
5683 DB 196,193,108,89,213 ; vmulps %ymm13,%ymm2,%ymm2
5684 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2
5685 DB 197,180,92,210 ; vsubps %ymm2,%ymm9,%ymm2
5686 DB 196,195,109,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04005687 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2
Mike Klein61b84162017-03-31 11:48:14 -04005688 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5689 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5690 DB 72,173 ; lods %ds:(%rsi),%rax
5691 DB 255,224 ; jmpq *%rax
5692
5693PUBLIC _sk_overlay_avx
5694_sk_overlay_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04005695 DB 196,98,125,24,5,170,91,0,0 ; vbroadcastss 0x5baa(%rip),%ymm8 # 65a8 <_sk_callback_avx+0x171>
Mike Klein61b84162017-03-31 11:48:14 -04005696 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10
5697 DB 197,44,89,200 ; vmulps %ymm0,%ymm10,%ymm9
5698 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5699 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11
Mike Kleinfe560a82017-05-01 12:56:35 -04005700 DB 196,65,36,88,217 ; vaddps %ymm9,%ymm11,%ymm11
Mike Klein61b84162017-03-31 11:48:14 -04005701 DB 197,92,88,204 ; vaddps %ymm4,%ymm4,%ymm9
5702 DB 197,52,194,231,2 ; vcmpleps %ymm7,%ymm9,%ymm12
5703 DB 197,124,89,204 ; vmulps %ymm4,%ymm0,%ymm9
5704 DB 196,65,52,88,233 ; vaddps %ymm9,%ymm9,%ymm13
5705 DB 197,100,89,207 ; vmulps %ymm7,%ymm3,%ymm9
5706 DB 197,68,92,244 ; vsubps %ymm4,%ymm7,%ymm14
5707 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0
5708 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0
5709 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0
5710 DB 197,180,92,192 ; vsubps %ymm0,%ymm9,%ymm0
5711 DB 196,195,125,74,197,192 ; vblendvps %ymm12,%ymm13,%ymm0,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04005712 DB 197,164,88,192 ; vaddps %ymm0,%ymm11,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -04005713 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11
5714 DB 197,60,89,229 ; vmulps %ymm5,%ymm8,%ymm12
5715 DB 196,65,28,88,219 ; vaddps %ymm11,%ymm12,%ymm11
5716 DB 197,84,88,229 ; vaddps %ymm5,%ymm5,%ymm12
5717 DB 197,28,194,231,2 ; vcmpleps %ymm7,%ymm12,%ymm12
5718 DB 197,116,89,237 ; vmulps %ymm5,%ymm1,%ymm13
5719 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13
5720 DB 197,68,92,245 ; vsubps %ymm5,%ymm7,%ymm14
5721 DB 197,228,92,201 ; vsubps %ymm1,%ymm3,%ymm1
5722 DB 196,193,116,89,206 ; vmulps %ymm14,%ymm1,%ymm1
5723 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1
5724 DB 197,180,92,201 ; vsubps %ymm1,%ymm9,%ymm1
5725 DB 196,195,117,74,205,192 ; vblendvps %ymm12,%ymm13,%ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04005726 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
Mike Klein61b84162017-03-31 11:48:14 -04005727 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10
5728 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11
5729 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10
5730 DB 197,76,88,222 ; vaddps %ymm6,%ymm6,%ymm11
5731 DB 197,36,194,223,2 ; vcmpleps %ymm7,%ymm11,%ymm11
5732 DB 197,108,89,230 ; vmulps %ymm6,%ymm2,%ymm12
5733 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12
5734 DB 197,68,92,238 ; vsubps %ymm6,%ymm7,%ymm13
5735 DB 197,228,92,210 ; vsubps %ymm2,%ymm3,%ymm2
5736 DB 196,193,108,89,213 ; vmulps %ymm13,%ymm2,%ymm2
5737 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2
5738 DB 197,180,92,210 ; vsubps %ymm2,%ymm9,%ymm2
5739 DB 196,195,109,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04005740 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2
Mike Klein61b84162017-03-31 11:48:14 -04005741 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5742 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5743 DB 72,173 ; lods %ds:(%rsi),%rax
5744 DB 255,224 ; jmpq *%rax
5745
5746PUBLIC _sk_softlight_avx
5747_sk_softlight_avx LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -04005748 DB 72,131,236,88 ; sub $0x58,%rsp
5749 DB 197,252,17,84,36,32 ; vmovups %ymm2,0x20(%rsp)
Mike Klein61b84162017-03-31 11:48:14 -04005750 DB 197,252,40,209 ; vmovaps %ymm1,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04005751 DB 197,252,40,200 ; vmovaps %ymm0,%ymm1
Mike Klein61b84162017-03-31 11:48:14 -04005752 DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9
5753 DB 197,52,194,215,1 ; vcmpltps %ymm7,%ymm9,%ymm10
5754 DB 197,92,94,199 ; vdivps %ymm7,%ymm4,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04005755 DB 196,67,53,74,224,160 ; vblendvps %ymm10,%ymm8,%ymm9,%ymm12
5756 DB 196,65,28,88,196 ; vaddps %ymm12,%ymm12,%ymm8
5757 DB 196,65,60,88,192 ; vaddps %ymm8,%ymm8,%ymm8
5758 DB 196,65,60,89,216 ; vmulps %ymm8,%ymm8,%ymm11
5759 DB 196,65,60,88,195 ; vaddps %ymm11,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04005760 DB 196,98,125,24,29,157,90,0,0 ; vbroadcastss 0x5a9d(%rip),%ymm11 # 65b0 <_sk_callback_avx+0x179>
Mike Kleinfe560a82017-05-01 12:56:35 -04005761 DB 196,65,28,88,235 ; vaddps %ymm11,%ymm12,%ymm13
5762 DB 196,65,20,89,192 ; vmulps %ymm8,%ymm13,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04005763 DB 196,98,125,24,45,142,90,0,0 ; vbroadcastss 0x5a8e(%rip),%ymm13 # 65b4 <_sk_callback_avx+0x17d>
Mike Kleinfe560a82017-05-01 12:56:35 -04005764 DB 196,65,28,89,245 ; vmulps %ymm13,%ymm12,%ymm14
5765 DB 196,65,12,88,192 ; vaddps %ymm8,%ymm14,%ymm8
5766 DB 196,65,124,82,244 ; vrsqrtps %ymm12,%ymm14
Mike Klein61b84162017-03-31 11:48:14 -04005767 DB 196,65,124,83,246 ; vrcpps %ymm14,%ymm14
Mike Kleinfe560a82017-05-01 12:56:35 -04005768 DB 196,65,12,92,244 ; vsubps %ymm12,%ymm14,%ymm14
Mike Klein61b84162017-03-31 11:48:14 -04005769 DB 197,92,88,252 ; vaddps %ymm4,%ymm4,%ymm15
5770 DB 196,65,4,88,255 ; vaddps %ymm15,%ymm15,%ymm15
5771 DB 197,4,194,255,2 ; vcmpleps %ymm7,%ymm15,%ymm15
Mike Kleinfe560a82017-05-01 12:56:35 -04005772 DB 196,67,13,74,240,240 ; vblendvps %ymm15,%ymm8,%ymm14,%ymm14
5773 DB 197,116,88,249 ; vaddps %ymm1,%ymm1,%ymm15
Mike Klein8ca33562017-05-23 08:07:43 -04005774 DB 196,98,125,24,5,76,90,0,0 ; vbroadcastss 0x5a4c(%rip),%ymm8 # 65ac <_sk_callback_avx+0x175>
Mike Kleinfe560a82017-05-01 12:56:35 -04005775 DB 196,65,60,92,228 ; vsubps %ymm12,%ymm8,%ymm12
5776 DB 197,132,92,195 ; vsubps %ymm3,%ymm15,%ymm0
5777 DB 196,65,124,89,228 ; vmulps %ymm12,%ymm0,%ymm12
5778 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
5779 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0
5780 DB 197,100,89,244 ; vmulps %ymm4,%ymm3,%ymm14
5781 DB 197,140,88,192 ; vaddps %ymm0,%ymm14,%ymm0
5782 DB 197,28,88,227 ; vaddps %ymm3,%ymm12,%ymm12
5783 DB 197,28,89,228 ; vmulps %ymm4,%ymm12,%ymm12
5784 DB 197,4,194,243,2 ; vcmpleps %ymm3,%ymm15,%ymm14
5785 DB 196,195,125,74,196,224 ; vblendvps %ymm14,%ymm12,%ymm0,%ymm0
5786 DB 197,252,17,4,36 ; vmovups %ymm0,(%rsp)
5787 DB 197,212,94,199 ; vdivps %ymm7,%ymm5,%ymm0
5788 DB 196,227,53,74,192,160 ; vblendvps %ymm10,%ymm0,%ymm9,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -04005789 DB 197,124,88,240 ; vaddps %ymm0,%ymm0,%ymm14
Mike Klein61b84162017-03-31 11:48:14 -04005790 DB 196,65,12,88,246 ; vaddps %ymm14,%ymm14,%ymm14
5791 DB 196,65,12,89,254 ; vmulps %ymm14,%ymm14,%ymm15
5792 DB 196,65,12,88,247 ; vaddps %ymm15,%ymm14,%ymm14
Mike Kleinfe560a82017-05-01 12:56:35 -04005793 DB 196,65,124,88,251 ; vaddps %ymm11,%ymm0,%ymm15
Mike Klein61b84162017-03-31 11:48:14 -04005794 DB 196,65,4,89,246 ; vmulps %ymm14,%ymm15,%ymm14
Mike Kleinfe560a82017-05-01 12:56:35 -04005795 DB 196,65,124,89,253 ; vmulps %ymm13,%ymm0,%ymm15
Mike Klein61b84162017-03-31 11:48:14 -04005796 DB 196,65,4,88,246 ; vaddps %ymm14,%ymm15,%ymm14
Mike Kleinfe560a82017-05-01 12:56:35 -04005797 DB 197,124,82,248 ; vrsqrtps %ymm0,%ymm15
Mike Klein61b84162017-03-31 11:48:14 -04005798 DB 196,65,124,83,255 ; vrcpps %ymm15,%ymm15
Mike Kleinfe560a82017-05-01 12:56:35 -04005799 DB 197,4,92,248 ; vsubps %ymm0,%ymm15,%ymm15
5800 DB 197,84,88,229 ; vaddps %ymm5,%ymm5,%ymm12
Mike Klein61b84162017-03-31 11:48:14 -04005801 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12
5802 DB 197,28,194,231,2 ; vcmpleps %ymm7,%ymm12,%ymm12
Mike Kleinfe560a82017-05-01 12:56:35 -04005803 DB 196,67,5,74,230,192 ; vblendvps %ymm12,%ymm14,%ymm15,%ymm12
5804 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
5805 DB 197,108,88,242 ; vaddps %ymm2,%ymm2,%ymm14
5806 DB 197,12,92,251 ; vsubps %ymm3,%ymm14,%ymm15
5807 DB 197,132,89,192 ; vmulps %ymm0,%ymm15,%ymm0
5808 DB 197,4,89,255 ; vmulps %ymm7,%ymm15,%ymm15
5809 DB 196,65,4,89,228 ; vmulps %ymm12,%ymm15,%ymm12
5810 DB 197,100,89,253 ; vmulps %ymm5,%ymm3,%ymm15
5811 DB 196,65,4,88,228 ; vaddps %ymm12,%ymm15,%ymm12
5812 DB 197,252,88,195 ; vaddps %ymm3,%ymm0,%ymm0
5813 DB 197,252,89,197 ; vmulps %ymm5,%ymm0,%ymm0
5814 DB 197,12,194,243,2 ; vcmpleps %ymm3,%ymm14,%ymm14
5815 DB 196,99,29,74,240,224 ; vblendvps %ymm14,%ymm0,%ymm12,%ymm14
5816 DB 197,204,94,199 ; vdivps %ymm7,%ymm6,%ymm0
5817 DB 196,227,53,74,192,160 ; vblendvps %ymm10,%ymm0,%ymm9,%ymm0
5818 DB 197,124,88,200 ; vaddps %ymm0,%ymm0,%ymm9
5819 DB 196,65,52,88,201 ; vaddps %ymm9,%ymm9,%ymm9
5820 DB 196,65,52,89,209 ; vmulps %ymm9,%ymm9,%ymm10
5821 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
5822 DB 196,65,124,88,211 ; vaddps %ymm11,%ymm0,%ymm10
5823 DB 196,65,44,89,201 ; vmulps %ymm9,%ymm10,%ymm9
5824 DB 196,65,124,89,213 ; vmulps %ymm13,%ymm0,%ymm10
5825 DB 196,65,44,88,201 ; vaddps %ymm9,%ymm10,%ymm9
5826 DB 197,124,82,208 ; vrsqrtps %ymm0,%ymm10
5827 DB 196,65,124,83,210 ; vrcpps %ymm10,%ymm10
5828 DB 197,44,92,208 ; vsubps %ymm0,%ymm10,%ymm10
5829 DB 197,76,88,222 ; vaddps %ymm6,%ymm6,%ymm11
5830 DB 196,65,36,88,219 ; vaddps %ymm11,%ymm11,%ymm11
5831 DB 197,36,194,223,2 ; vcmpleps %ymm7,%ymm11,%ymm11
Mike Klein61b84162017-03-31 11:48:14 -04005832 DB 196,67,45,74,201,176 ; vblendvps %ymm11,%ymm9,%ymm10,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04005833 DB 197,124,16,100,36,32 ; vmovups 0x20(%rsp),%ymm12
5834 DB 196,65,28,88,212 ; vaddps %ymm12,%ymm12,%ymm10
5835 DB 197,44,92,219 ; vsubps %ymm3,%ymm10,%ymm11
5836 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0
5837 DB 197,164,89,192 ; vmulps %ymm0,%ymm11,%ymm0
5838 DB 197,36,89,223 ; vmulps %ymm7,%ymm11,%ymm11
5839 DB 196,65,36,89,201 ; vmulps %ymm9,%ymm11,%ymm9
5840 DB 197,100,89,222 ; vmulps %ymm6,%ymm3,%ymm11
5841 DB 196,65,36,88,201 ; vaddps %ymm9,%ymm11,%ymm9
5842 DB 197,252,88,195 ; vaddps %ymm3,%ymm0,%ymm0
5843 DB 197,252,89,198 ; vmulps %ymm6,%ymm0,%ymm0
5844 DB 197,44,194,211,2 ; vcmpleps %ymm3,%ymm10,%ymm10
5845 DB 196,99,53,74,200,160 ; vblendvps %ymm10,%ymm0,%ymm9,%ymm9
Mike Klein61b84162017-03-31 11:48:14 -04005846 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -04005847 DB 197,172,89,193 ; vmulps %ymm1,%ymm10,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -04005848 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04005849 DB 197,188,89,204 ; vmulps %ymm4,%ymm8,%ymm1
Mike Klein61b84162017-03-31 11:48:14 -04005850 DB 197,244,88,192 ; vaddps %ymm0,%ymm1,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04005851 DB 197,252,88,4,36 ; vaddps (%rsp),%ymm0,%ymm0
Mike Klein61b84162017-03-31 11:48:14 -04005852 DB 197,172,89,202 ; vmulps %ymm2,%ymm10,%ymm1
5853 DB 197,188,89,213 ; vmulps %ymm5,%ymm8,%ymm2
5854 DB 197,236,88,201 ; vaddps %ymm1,%ymm2,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04005855 DB 196,193,116,88,206 ; vaddps %ymm14,%ymm1,%ymm1
5856 DB 196,193,44,89,212 ; vmulps %ymm12,%ymm10,%ymm2
Mike Klein61b84162017-03-31 11:48:14 -04005857 DB 197,60,89,214 ; vmulps %ymm6,%ymm8,%ymm10
5858 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2
5859 DB 196,193,108,88,209 ; vaddps %ymm9,%ymm2,%ymm2
5860 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8
5861 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3
5862 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04005863 DB 72,131,196,88 ; add $0x58,%rsp
Mike Klein61b84162017-03-31 11:48:14 -04005864 DB 255,224 ; jmpq *%rax
5865
Mike Kleinbb338332017-05-04 12:42:52 -04005866PUBLIC _sk_hue_avx
5867_sk_hue_avx LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -04005868 DB 72,131,236,88 ; sub $0x58,%rsp
5869 DB 197,252,17,84,36,32 ; vmovups %ymm2,0x20(%rsp)
5870 DB 197,124,40,193 ; vmovaps %ymm1,%ymm8
5871 DB 197,124,17,4,36 ; vmovups %ymm8,(%rsp)
5872 DB 197,252,40,200 ; vmovaps %ymm0,%ymm1
5873 DB 197,116,89,203 ; vmulps %ymm3,%ymm1,%ymm9
5874 DB 197,60,89,211 ; vmulps %ymm3,%ymm8,%ymm10
5875 DB 197,108,89,219 ; vmulps %ymm3,%ymm2,%ymm11
5876 DB 197,84,95,198 ; vmaxps %ymm6,%ymm5,%ymm8
5877 DB 196,65,92,95,192 ; vmaxps %ymm8,%ymm4,%ymm8
5878 DB 197,84,93,230 ; vminps %ymm6,%ymm5,%ymm12
5879 DB 196,65,92,93,228 ; vminps %ymm12,%ymm4,%ymm12
5880 DB 196,65,60,92,196 ; vsubps %ymm12,%ymm8,%ymm8
5881 DB 197,60,89,227 ; vmulps %ymm3,%ymm8,%ymm12
5882 DB 196,65,44,93,195 ; vminps %ymm11,%ymm10,%ymm8
5883 DB 196,65,52,93,232 ; vminps %ymm8,%ymm9,%ymm13
5884 DB 196,65,44,95,195 ; vmaxps %ymm11,%ymm10,%ymm8
5885 DB 196,65,52,95,192 ; vmaxps %ymm8,%ymm9,%ymm8
5886 DB 196,65,60,92,245 ; vsubps %ymm13,%ymm8,%ymm14
Mike Kleinbb338332017-05-04 12:42:52 -04005887 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Klein08aa88d2017-05-12 12:59:24 -04005888 DB 196,65,12,194,248,0 ; vcmpeqps %ymm8,%ymm14,%ymm15
5889 DB 196,65,52,92,205 ; vsubps %ymm13,%ymm9,%ymm9
5890 DB 196,65,28,89,201 ; vmulps %ymm9,%ymm12,%ymm9
5891 DB 196,65,52,94,206 ; vdivps %ymm14,%ymm9,%ymm9
5892 DB 196,67,53,74,200,240 ; vblendvps %ymm15,%ymm8,%ymm9,%ymm9
5893 DB 196,65,44,92,213 ; vsubps %ymm13,%ymm10,%ymm10
5894 DB 196,65,28,89,210 ; vmulps %ymm10,%ymm12,%ymm10
5895 DB 196,65,44,94,214 ; vdivps %ymm14,%ymm10,%ymm10
5896 DB 196,67,45,74,208,240 ; vblendvps %ymm15,%ymm8,%ymm10,%ymm10
5897 DB 196,65,36,92,221 ; vsubps %ymm13,%ymm11,%ymm11
5898 DB 196,65,28,89,219 ; vmulps %ymm11,%ymm12,%ymm11
5899 DB 196,65,36,94,222 ; vdivps %ymm14,%ymm11,%ymm11
5900 DB 196,67,37,74,224,240 ; vblendvps %ymm15,%ymm8,%ymm11,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04005901 DB 196,98,125,24,53,22,88,0,0 ; vbroadcastss 0x5816(%rip),%ymm14 # 65b8 <_sk_callback_avx+0x181>
Mike Klein08aa88d2017-05-12 12:59:24 -04005902 DB 196,65,92,89,222 ; vmulps %ymm14,%ymm4,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04005903 DB 196,98,125,24,61,12,88,0,0 ; vbroadcastss 0x580c(%rip),%ymm15 # 65bc <_sk_callback_avx+0x185>
Mike Klein08aa88d2017-05-12 12:59:24 -04005904 DB 196,65,84,89,239 ; vmulps %ymm15,%ymm5,%ymm13
Mike Kleinbb338332017-05-04 12:42:52 -04005905 DB 196,65,36,88,221 ; vaddps %ymm13,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04005906 DB 196,226,125,24,5,253,87,0,0 ; vbroadcastss 0x57fd(%rip),%ymm0 # 65c0 <_sk_callback_avx+0x189>
Mike Klein08aa88d2017-05-12 12:59:24 -04005907 DB 197,76,89,232 ; vmulps %ymm0,%ymm6,%ymm13
5908 DB 196,65,36,88,221 ; vaddps %ymm13,%ymm11,%ymm11
5909 DB 196,65,52,89,238 ; vmulps %ymm14,%ymm9,%ymm13
5910 DB 196,193,44,89,215 ; vmulps %ymm15,%ymm10,%ymm2
5911 DB 197,148,88,210 ; vaddps %ymm2,%ymm13,%ymm2
5912 DB 197,28,89,232 ; vmulps %ymm0,%ymm12,%ymm13
5913 DB 196,193,108,88,213 ; vaddps %ymm13,%ymm2,%ymm2
5914 DB 197,36,89,219 ; vmulps %ymm3,%ymm11,%ymm11
5915 DB 197,164,92,210 ; vsubps %ymm2,%ymm11,%ymm2
5916 DB 197,52,88,202 ; vaddps %ymm2,%ymm9,%ymm9
5917 DB 197,44,88,218 ; vaddps %ymm2,%ymm10,%ymm11
5918 DB 197,28,88,226 ; vaddps %ymm2,%ymm12,%ymm12
5919 DB 196,193,36,93,212 ; vminps %ymm12,%ymm11,%ymm2
5920 DB 197,52,93,234 ; vminps %ymm2,%ymm9,%ymm13
5921 DB 196,193,52,89,214 ; vmulps %ymm14,%ymm9,%ymm2
5922 DB 196,65,36,89,215 ; vmulps %ymm15,%ymm11,%ymm10
5923 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2
5924 DB 197,156,89,192 ; vmulps %ymm0,%ymm12,%ymm0
5925 DB 197,124,88,210 ; vaddps %ymm2,%ymm0,%ymm10
5926 DB 196,193,52,92,194 ; vsubps %ymm10,%ymm9,%ymm0
5927 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0
5928 DB 196,193,44,92,213 ; vsubps %ymm13,%ymm10,%ymm2
5929 DB 197,252,94,194 ; vdivps %ymm2,%ymm0,%ymm0
5930 DB 196,65,36,92,242 ; vsubps %ymm10,%ymm11,%ymm14
5931 DB 196,65,44,89,246 ; vmulps %ymm14,%ymm10,%ymm14
Mike Kleinbb338332017-05-04 12:42:52 -04005932 DB 197,12,94,242 ; vdivps %ymm2,%ymm14,%ymm14
Mike Klein08aa88d2017-05-12 12:59:24 -04005933 DB 196,65,28,92,250 ; vsubps %ymm10,%ymm12,%ymm15
5934 DB 196,65,44,89,255 ; vmulps %ymm15,%ymm10,%ymm15
Mike Kleinbb338332017-05-04 12:42:52 -04005935 DB 197,132,94,210 ; vdivps %ymm2,%ymm15,%ymm2
Mike Klein08aa88d2017-05-12 12:59:24 -04005936 DB 196,65,60,194,237,2 ; vcmpleps %ymm13,%ymm8,%ymm13
5937 DB 196,65,44,88,246 ; vaddps %ymm14,%ymm10,%ymm14
5938 DB 196,67,13,74,243,208 ; vblendvps %ymm13,%ymm11,%ymm14,%ymm14
5939 DB 196,65,36,95,220 ; vmaxps %ymm12,%ymm11,%ymm11
5940 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2
5941 DB 196,195,109,74,212,208 ; vblendvps %ymm13,%ymm12,%ymm2,%ymm2
5942 DB 197,172,88,192 ; vaddps %ymm0,%ymm10,%ymm0
5943 DB 196,195,125,74,193,208 ; vblendvps %ymm13,%ymm9,%ymm0,%ymm0
5944 DB 197,100,89,231 ; vmulps %ymm7,%ymm3,%ymm12
5945 DB 196,65,52,95,203 ; vmaxps %ymm11,%ymm9,%ymm9
5946 DB 196,65,124,92,218 ; vsubps %ymm10,%ymm0,%ymm11
5947 DB 196,65,28,92,234 ; vsubps %ymm10,%ymm12,%ymm13
5948 DB 196,65,20,89,219 ; vmulps %ymm11,%ymm13,%ymm11
5949 DB 196,65,28,194,249,1 ; vcmpltps %ymm9,%ymm12,%ymm15
5950 DB 196,65,52,92,202 ; vsubps %ymm10,%ymm9,%ymm9
5951 DB 196,65,36,94,217 ; vdivps %ymm9,%ymm11,%ymm11
5952 DB 196,65,44,88,219 ; vaddps %ymm11,%ymm10,%ymm11
5953 DB 196,195,125,74,195,240 ; vblendvps %ymm15,%ymm11,%ymm0,%ymm0
5954 DB 196,65,12,92,218 ; vsubps %ymm10,%ymm14,%ymm11
5955 DB 196,65,20,89,219 ; vmulps %ymm11,%ymm13,%ymm11
5956 DB 196,65,36,94,217 ; vdivps %ymm9,%ymm11,%ymm11
5957 DB 196,65,44,88,219 ; vaddps %ymm11,%ymm10,%ymm11
5958 DB 196,67,13,74,219,240 ; vblendvps %ymm15,%ymm11,%ymm14,%ymm11
5959 DB 196,65,108,92,242 ; vsubps %ymm10,%ymm2,%ymm14
5960 DB 196,65,20,89,238 ; vmulps %ymm14,%ymm13,%ymm13
5961 DB 196,65,20,94,201 ; vdivps %ymm9,%ymm13,%ymm9
5962 DB 196,65,44,88,201 ; vaddps %ymm9,%ymm10,%ymm9
5963 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0
5964 DB 196,65,36,95,208 ; vmaxps %ymm8,%ymm11,%ymm10
5965 DB 196,195,109,74,209,240 ; vblendvps %ymm15,%ymm9,%ymm2,%ymm2
5966 DB 196,193,108,95,208 ; vmaxps %ymm8,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04005967 DB 196,98,125,24,5,214,86,0,0 ; vbroadcastss 0x56d6(%rip),%ymm8 # 65c4 <_sk_callback_avx+0x18d>
Mike Klein08aa88d2017-05-12 12:59:24 -04005968 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9
5969 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1
5970 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
5971 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11
5972 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
5973 DB 197,244,88,192 ; vaddps %ymm0,%ymm1,%ymm0
5974 DB 197,180,89,12,36 ; vmulps (%rsp),%ymm9,%ymm1
5975 DB 197,60,89,221 ; vmulps %ymm5,%ymm8,%ymm11
5976 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
5977 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1
5978 DB 197,52,89,76,36,32 ; vmulps 0x20(%rsp),%ymm9,%ymm9
5979 DB 197,60,89,198 ; vmulps %ymm6,%ymm8,%ymm8
5980 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
5981 DB 197,188,88,210 ; vaddps %ymm2,%ymm8,%ymm2
5982 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
5983 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3
Mike Kleinbb338332017-05-04 12:42:52 -04005984 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -04005985 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -04005986 DB 255,224 ; jmpq *%rax
5987
5988PUBLIC _sk_saturation_avx
5989_sk_saturation_avx LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -04005990 DB 72,131,236,88 ; sub $0x58,%rsp
5991 DB 197,124,40,193 ; vmovaps %ymm1,%ymm8
5992 DB 197,252,40,200 ; vmovaps %ymm0,%ymm1
5993 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9
5994 DB 197,100,89,213 ; vmulps %ymm5,%ymm3,%ymm10
5995 DB 197,100,89,222 ; vmulps %ymm6,%ymm3,%ymm11
5996 DB 197,252,17,84,36,32 ; vmovups %ymm2,0x20(%rsp)
5997 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
5998 DB 197,252,17,4,36 ; vmovups %ymm0,(%rsp)
5999 DB 197,124,95,194 ; vmaxps %ymm2,%ymm0,%ymm8
6000 DB 196,65,116,95,192 ; vmaxps %ymm8,%ymm1,%ymm8
6001 DB 197,124,93,226 ; vminps %ymm2,%ymm0,%ymm12
6002 DB 196,65,116,93,228 ; vminps %ymm12,%ymm1,%ymm12
6003 DB 196,65,60,92,196 ; vsubps %ymm12,%ymm8,%ymm8
6004 DB 197,60,89,231 ; vmulps %ymm7,%ymm8,%ymm12
6005 DB 196,65,44,93,195 ; vminps %ymm11,%ymm10,%ymm8
6006 DB 196,65,52,93,232 ; vminps %ymm8,%ymm9,%ymm13
6007 DB 196,65,44,95,195 ; vmaxps %ymm11,%ymm10,%ymm8
6008 DB 196,65,52,95,192 ; vmaxps %ymm8,%ymm9,%ymm8
6009 DB 196,65,60,92,245 ; vsubps %ymm13,%ymm8,%ymm14
Mike Kleinbb338332017-05-04 12:42:52 -04006010 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Klein08aa88d2017-05-12 12:59:24 -04006011 DB 196,65,12,194,248,0 ; vcmpeqps %ymm8,%ymm14,%ymm15
6012 DB 196,65,52,92,205 ; vsubps %ymm13,%ymm9,%ymm9
6013 DB 196,65,28,89,201 ; vmulps %ymm9,%ymm12,%ymm9
6014 DB 196,65,52,94,206 ; vdivps %ymm14,%ymm9,%ymm9
6015 DB 196,67,53,74,200,240 ; vblendvps %ymm15,%ymm8,%ymm9,%ymm9
6016 DB 196,65,44,92,213 ; vsubps %ymm13,%ymm10,%ymm10
Mike Kleinbb338332017-05-04 12:42:52 -04006017 DB 196,65,28,89,210 ; vmulps %ymm10,%ymm12,%ymm10
Mike Klein08aa88d2017-05-12 12:59:24 -04006018 DB 196,65,44,94,214 ; vdivps %ymm14,%ymm10,%ymm10
6019 DB 196,67,45,74,208,240 ; vblendvps %ymm15,%ymm8,%ymm10,%ymm10
6020 DB 196,65,36,92,221 ; vsubps %ymm13,%ymm11,%ymm11
6021 DB 196,65,28,89,219 ; vmulps %ymm11,%ymm12,%ymm11
6022 DB 196,65,36,94,222 ; vdivps %ymm14,%ymm11,%ymm11
6023 DB 196,67,37,74,224,240 ; vblendvps %ymm15,%ymm8,%ymm11,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04006024 DB 196,98,125,24,53,222,85,0,0 ; vbroadcastss 0x55de(%rip),%ymm14 # 65c8 <_sk_callback_avx+0x191>
Mike Klein08aa88d2017-05-12 12:59:24 -04006025 DB 196,65,92,89,222 ; vmulps %ymm14,%ymm4,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04006026 DB 196,98,125,24,61,212,85,0,0 ; vbroadcastss 0x55d4(%rip),%ymm15 # 65cc <_sk_callback_avx+0x195>
Mike Klein08aa88d2017-05-12 12:59:24 -04006027 DB 196,65,84,89,239 ; vmulps %ymm15,%ymm5,%ymm13
6028 DB 196,65,36,88,221 ; vaddps %ymm13,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04006029 DB 196,226,125,24,5,197,85,0,0 ; vbroadcastss 0x55c5(%rip),%ymm0 # 65d0 <_sk_callback_avx+0x199>
Mike Klein08aa88d2017-05-12 12:59:24 -04006030 DB 197,76,89,232 ; vmulps %ymm0,%ymm6,%ymm13
6031 DB 196,65,36,88,221 ; vaddps %ymm13,%ymm11,%ymm11
6032 DB 196,65,52,89,238 ; vmulps %ymm14,%ymm9,%ymm13
6033 DB 196,193,44,89,215 ; vmulps %ymm15,%ymm10,%ymm2
6034 DB 197,148,88,210 ; vaddps %ymm2,%ymm13,%ymm2
6035 DB 197,28,89,232 ; vmulps %ymm0,%ymm12,%ymm13
6036 DB 196,193,108,88,213 ; vaddps %ymm13,%ymm2,%ymm2
6037 DB 197,36,89,219 ; vmulps %ymm3,%ymm11,%ymm11
6038 DB 197,164,92,210 ; vsubps %ymm2,%ymm11,%ymm2
6039 DB 197,52,88,202 ; vaddps %ymm2,%ymm9,%ymm9
6040 DB 197,44,88,218 ; vaddps %ymm2,%ymm10,%ymm11
6041 DB 197,28,88,226 ; vaddps %ymm2,%ymm12,%ymm12
6042 DB 196,193,36,93,212 ; vminps %ymm12,%ymm11,%ymm2
6043 DB 197,52,93,234 ; vminps %ymm2,%ymm9,%ymm13
6044 DB 196,193,52,89,214 ; vmulps %ymm14,%ymm9,%ymm2
6045 DB 196,65,36,89,215 ; vmulps %ymm15,%ymm11,%ymm10
6046 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2
6047 DB 197,156,89,192 ; vmulps %ymm0,%ymm12,%ymm0
6048 DB 197,124,88,210 ; vaddps %ymm2,%ymm0,%ymm10
6049 DB 196,193,52,92,194 ; vsubps %ymm10,%ymm9,%ymm0
6050 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0
6051 DB 196,193,44,92,213 ; vsubps %ymm13,%ymm10,%ymm2
6052 DB 197,252,94,194 ; vdivps %ymm2,%ymm0,%ymm0
6053 DB 196,65,36,92,242 ; vsubps %ymm10,%ymm11,%ymm14
6054 DB 196,65,44,89,246 ; vmulps %ymm14,%ymm10,%ymm14
6055 DB 197,12,94,242 ; vdivps %ymm2,%ymm14,%ymm14
6056 DB 196,65,28,92,250 ; vsubps %ymm10,%ymm12,%ymm15
6057 DB 196,65,44,89,255 ; vmulps %ymm15,%ymm10,%ymm15
Mike Kleinbb338332017-05-04 12:42:52 -04006058 DB 197,132,94,210 ; vdivps %ymm2,%ymm15,%ymm2
Mike Klein08aa88d2017-05-12 12:59:24 -04006059 DB 196,65,60,194,237,2 ; vcmpleps %ymm13,%ymm8,%ymm13
6060 DB 196,65,44,88,246 ; vaddps %ymm14,%ymm10,%ymm14
6061 DB 196,67,13,74,243,208 ; vblendvps %ymm13,%ymm11,%ymm14,%ymm14
6062 DB 196,65,36,95,220 ; vmaxps %ymm12,%ymm11,%ymm11
6063 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2
6064 DB 196,195,109,74,212,208 ; vblendvps %ymm13,%ymm12,%ymm2,%ymm2
6065 DB 197,172,88,192 ; vaddps %ymm0,%ymm10,%ymm0
6066 DB 196,195,125,74,193,208 ; vblendvps %ymm13,%ymm9,%ymm0,%ymm0
6067 DB 197,100,89,231 ; vmulps %ymm7,%ymm3,%ymm12
6068 DB 196,65,52,95,203 ; vmaxps %ymm11,%ymm9,%ymm9
6069 DB 196,65,124,92,218 ; vsubps %ymm10,%ymm0,%ymm11
6070 DB 196,65,28,92,234 ; vsubps %ymm10,%ymm12,%ymm13
6071 DB 196,65,20,89,219 ; vmulps %ymm11,%ymm13,%ymm11
6072 DB 196,65,28,194,249,1 ; vcmpltps %ymm9,%ymm12,%ymm15
6073 DB 196,65,52,92,202 ; vsubps %ymm10,%ymm9,%ymm9
6074 DB 196,65,36,94,217 ; vdivps %ymm9,%ymm11,%ymm11
6075 DB 196,65,44,88,219 ; vaddps %ymm11,%ymm10,%ymm11
6076 DB 196,195,125,74,195,240 ; vblendvps %ymm15,%ymm11,%ymm0,%ymm0
6077 DB 196,65,12,92,218 ; vsubps %ymm10,%ymm14,%ymm11
6078 DB 196,65,20,89,219 ; vmulps %ymm11,%ymm13,%ymm11
6079 DB 196,65,36,94,217 ; vdivps %ymm9,%ymm11,%ymm11
6080 DB 196,65,44,88,219 ; vaddps %ymm11,%ymm10,%ymm11
6081 DB 196,67,13,74,219,240 ; vblendvps %ymm15,%ymm11,%ymm14,%ymm11
6082 DB 196,65,108,92,242 ; vsubps %ymm10,%ymm2,%ymm14
6083 DB 196,65,20,89,238 ; vmulps %ymm14,%ymm13,%ymm13
6084 DB 196,65,20,94,201 ; vdivps %ymm9,%ymm13,%ymm9
6085 DB 196,65,44,88,201 ; vaddps %ymm9,%ymm10,%ymm9
6086 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0
6087 DB 196,65,36,95,208 ; vmaxps %ymm8,%ymm11,%ymm10
6088 DB 196,195,109,74,209,240 ; vblendvps %ymm15,%ymm9,%ymm2,%ymm2
6089 DB 196,193,108,95,208 ; vmaxps %ymm8,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04006090 DB 196,98,125,24,5,158,84,0,0 ; vbroadcastss 0x549e(%rip),%ymm8 # 65d4 <_sk_callback_avx+0x19d>
Mike Klein08aa88d2017-05-12 12:59:24 -04006091 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9
6092 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1
6093 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8
6094 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11
6095 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
6096 DB 197,244,88,192 ; vaddps %ymm0,%ymm1,%ymm0
6097 DB 197,180,89,12,36 ; vmulps (%rsp),%ymm9,%ymm1
6098 DB 197,60,89,221 ; vmulps %ymm5,%ymm8,%ymm11
6099 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1
6100 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1
6101 DB 197,52,89,76,36,32 ; vmulps 0x20(%rsp),%ymm9,%ymm9
6102 DB 197,60,89,198 ; vmulps %ymm6,%ymm8,%ymm8
6103 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
6104 DB 197,188,88,210 ; vaddps %ymm2,%ymm8,%ymm2
6105 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
6106 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3
Mike Kleinbb338332017-05-04 12:42:52 -04006107 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -04006108 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -04006109 DB 255,224 ; jmpq *%rax
6110
6111PUBLIC _sk_color_avx
6112_sk_color_avx LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -04006113 DB 72,131,236,120 ; sub $0x78,%rsp
6114 DB 197,252,17,20,36 ; vmovups %ymm2,(%rsp)
6115 DB 197,252,17,76,36,64 ; vmovups %ymm1,0x40(%rsp)
6116 DB 197,252,17,68,36,32 ; vmovups %ymm0,0x20(%rsp)
6117 DB 197,124,89,199 ; vmulps %ymm7,%ymm0,%ymm8
6118 DB 197,116,89,207 ; vmulps %ymm7,%ymm1,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04006119 DB 196,98,125,24,45,46,84,0,0 ; vbroadcastss 0x542e(%rip),%ymm13 # 65d8 <_sk_callback_avx+0x1a1>
Mike Klein08aa88d2017-05-12 12:59:24 -04006120 DB 196,65,92,89,213 ; vmulps %ymm13,%ymm4,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006121 DB 196,98,125,24,53,36,84,0,0 ; vbroadcastss 0x5424(%rip),%ymm14 # 65dc <_sk_callback_avx+0x1a5>
Mike Klein08aa88d2017-05-12 12:59:24 -04006122 DB 196,65,84,89,222 ; vmulps %ymm14,%ymm5,%ymm11
6123 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006124 DB 196,98,125,24,61,21,84,0,0 ; vbroadcastss 0x5415(%rip),%ymm15 # 65e0 <_sk_callback_avx+0x1a9>
Mike Klein08aa88d2017-05-12 12:59:24 -04006125 DB 196,65,76,89,223 ; vmulps %ymm15,%ymm6,%ymm11
6126 DB 196,193,44,88,195 ; vaddps %ymm11,%ymm10,%ymm0
6127 DB 196,65,60,89,221 ; vmulps %ymm13,%ymm8,%ymm11
6128 DB 196,65,52,89,230 ; vmulps %ymm14,%ymm9,%ymm12
6129 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
6130 DB 197,108,89,231 ; vmulps %ymm7,%ymm2,%ymm12
6131 DB 196,65,28,89,215 ; vmulps %ymm15,%ymm12,%ymm10
6132 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
6133 DB 197,252,89,195 ; vmulps %ymm3,%ymm0,%ymm0
6134 DB 196,193,124,92,194 ; vsubps %ymm10,%ymm0,%ymm0
6135 DB 197,60,88,192 ; vaddps %ymm0,%ymm8,%ymm8
6136 DB 197,52,88,208 ; vaddps %ymm0,%ymm9,%ymm10
6137 DB 197,28,88,216 ; vaddps %ymm0,%ymm12,%ymm11
6138 DB 196,193,44,93,195 ; vminps %ymm11,%ymm10,%ymm0
6139 DB 197,60,93,224 ; vminps %ymm0,%ymm8,%ymm12
6140 DB 196,193,60,89,197 ; vmulps %ymm13,%ymm8,%ymm0
6141 DB 196,65,44,89,206 ; vmulps %ymm14,%ymm10,%ymm9
6142 DB 196,193,124,88,193 ; vaddps %ymm9,%ymm0,%ymm0
6143 DB 196,65,36,89,207 ; vmulps %ymm15,%ymm11,%ymm9
6144 DB 197,52,88,200 ; vaddps %ymm0,%ymm9,%ymm9
6145 DB 196,193,60,92,193 ; vsubps %ymm9,%ymm8,%ymm0
6146 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
6147 DB 196,65,52,92,236 ; vsubps %ymm12,%ymm9,%ymm13
6148 DB 196,193,124,94,197 ; vdivps %ymm13,%ymm0,%ymm0
6149 DB 196,65,44,92,241 ; vsubps %ymm9,%ymm10,%ymm14
Mike Kleinbb338332017-05-04 12:42:52 -04006150 DB 196,65,52,89,246 ; vmulps %ymm14,%ymm9,%ymm14
Mike Klein08aa88d2017-05-12 12:59:24 -04006151 DB 196,65,12,94,245 ; vdivps %ymm13,%ymm14,%ymm14
6152 DB 196,65,36,92,249 ; vsubps %ymm9,%ymm11,%ymm15
Mike Kleinbb338332017-05-04 12:42:52 -04006153 DB 196,65,52,89,255 ; vmulps %ymm15,%ymm9,%ymm15
Mike Klein08aa88d2017-05-12 12:59:24 -04006154 DB 196,65,4,94,237 ; vdivps %ymm13,%ymm15,%ymm13
6155 DB 196,65,4,87,255 ; vxorps %ymm15,%ymm15,%ymm15
6156 DB 196,65,4,194,228,2 ; vcmpleps %ymm12,%ymm15,%ymm12
6157 DB 196,65,52,88,246 ; vaddps %ymm14,%ymm9,%ymm14
6158 DB 196,67,13,74,242,192 ; vblendvps %ymm12,%ymm10,%ymm14,%ymm14
6159 DB 196,65,44,95,211 ; vmaxps %ymm11,%ymm10,%ymm10
6160 DB 196,65,52,88,237 ; vaddps %ymm13,%ymm9,%ymm13
6161 DB 196,67,21,74,219,192 ; vblendvps %ymm12,%ymm11,%ymm13,%ymm11
6162 DB 197,180,88,192 ; vaddps %ymm0,%ymm9,%ymm0
6163 DB 196,195,125,74,200,192 ; vblendvps %ymm12,%ymm8,%ymm0,%ymm1
6164 DB 197,100,89,231 ; vmulps %ymm7,%ymm3,%ymm12
6165 DB 196,65,60,95,194 ; vmaxps %ymm10,%ymm8,%ymm8
6166 DB 196,65,116,92,209 ; vsubps %ymm9,%ymm1,%ymm10
6167 DB 196,65,28,92,233 ; vsubps %ymm9,%ymm12,%ymm13
6168 DB 196,65,20,89,210 ; vmulps %ymm10,%ymm13,%ymm10
6169 DB 196,193,28,194,192,1 ; vcmpltps %ymm8,%ymm12,%ymm0
6170 DB 196,65,60,92,193 ; vsubps %ymm9,%ymm8,%ymm8
6171 DB 196,65,44,94,208 ; vdivps %ymm8,%ymm10,%ymm10
6172 DB 196,65,52,88,210 ; vaddps %ymm10,%ymm9,%ymm10
6173 DB 196,195,117,74,202,0 ; vblendvps %ymm0,%ymm10,%ymm1,%ymm1
6174 DB 196,65,12,92,209 ; vsubps %ymm9,%ymm14,%ymm10
6175 DB 196,65,20,89,210 ; vmulps %ymm10,%ymm13,%ymm10
6176 DB 196,65,44,94,208 ; vdivps %ymm8,%ymm10,%ymm10
6177 DB 196,65,52,88,210 ; vaddps %ymm10,%ymm9,%ymm10
6178 DB 196,67,13,74,210,0 ; vblendvps %ymm0,%ymm10,%ymm14,%ymm10
6179 DB 196,65,36,92,241 ; vsubps %ymm9,%ymm11,%ymm14
6180 DB 196,65,20,89,238 ; vmulps %ymm14,%ymm13,%ymm13
6181 DB 196,65,20,94,192 ; vdivps %ymm8,%ymm13,%ymm8
6182 DB 196,65,52,88,192 ; vaddps %ymm8,%ymm9,%ymm8
6183 DB 196,193,116,95,207 ; vmaxps %ymm15,%ymm1,%ymm1
6184 DB 196,65,44,95,207 ; vmaxps %ymm15,%ymm10,%ymm9
6185 DB 196,195,37,74,192,0 ; vblendvps %ymm0,%ymm8,%ymm11,%ymm0
6186 DB 196,65,124,95,199 ; vmaxps %ymm15,%ymm0,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04006187 DB 196,226,125,24,5,220,82,0,0 ; vbroadcastss 0x52dc(%rip),%ymm0 # 65e4 <_sk_callback_avx+0x1ad>
Mike Klein08aa88d2017-05-12 12:59:24 -04006188 DB 197,124,92,215 ; vsubps %ymm7,%ymm0,%ymm10
6189 DB 197,172,89,84,36,32 ; vmulps 0x20(%rsp),%ymm10,%ymm2
6190 DB 197,124,92,219 ; vsubps %ymm3,%ymm0,%ymm11
6191 DB 197,164,89,196 ; vmulps %ymm4,%ymm11,%ymm0
6192 DB 197,252,88,194 ; vaddps %ymm2,%ymm0,%ymm0
6193 DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0
6194 DB 197,172,89,76,36,64 ; vmulps 0x40(%rsp),%ymm10,%ymm1
6195 DB 197,164,89,213 ; vmulps %ymm5,%ymm11,%ymm2
6196 DB 197,236,88,201 ; vaddps %ymm1,%ymm2,%ymm1
6197 DB 196,193,116,88,201 ; vaddps %ymm9,%ymm1,%ymm1
6198 DB 197,172,89,20,36 ; vmulps (%rsp),%ymm10,%ymm2
6199 DB 197,36,89,206 ; vmulps %ymm6,%ymm11,%ymm9
6200 DB 197,180,88,210 ; vaddps %ymm2,%ymm9,%ymm2
6201 DB 196,193,108,88,208 ; vaddps %ymm8,%ymm2,%ymm2
6202 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
6203 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3
Mike Kleinbb338332017-05-04 12:42:52 -04006204 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -04006205 DB 72,131,196,120 ; add $0x78,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -04006206 DB 255,224 ; jmpq *%rax
6207
6208PUBLIC _sk_luminosity_avx
6209_sk_luminosity_avx LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -04006210 DB 72,131,236,88 ; sub $0x58,%rsp
6211 DB 197,124,40,226 ; vmovaps %ymm2,%ymm12
6212 DB 197,124,17,36,36 ; vmovups %ymm12,(%rsp)
6213 DB 197,252,17,76,36,32 ; vmovups %ymm1,0x20(%rsp)
6214 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
6215 DB 197,100,89,196 ; vmulps %ymm4,%ymm3,%ymm8
6216 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04006217 DB 196,98,125,24,45,104,82,0,0 ; vbroadcastss 0x5268(%rip),%ymm13 # 65e8 <_sk_callback_avx+0x1b1>
Mike Klein08aa88d2017-05-12 12:59:24 -04006218 DB 196,65,108,89,213 ; vmulps %ymm13,%ymm2,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006219 DB 196,98,125,24,53,94,82,0,0 ; vbroadcastss 0x525e(%rip),%ymm14 # 65ec <_sk_callback_avx+0x1b5>
Mike Klein08aa88d2017-05-12 12:59:24 -04006220 DB 196,65,116,89,222 ; vmulps %ymm14,%ymm1,%ymm11
6221 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006222 DB 196,98,125,24,61,79,82,0,0 ; vbroadcastss 0x524f(%rip),%ymm15 # 65f0 <_sk_callback_avx+0x1b9>
Mike Klein08aa88d2017-05-12 12:59:24 -04006223 DB 196,65,28,89,223 ; vmulps %ymm15,%ymm12,%ymm11
6224 DB 196,193,44,88,195 ; vaddps %ymm11,%ymm10,%ymm0
6225 DB 196,65,60,89,221 ; vmulps %ymm13,%ymm8,%ymm11
6226 DB 196,65,52,89,230 ; vmulps %ymm14,%ymm9,%ymm12
6227 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
6228 DB 197,100,89,230 ; vmulps %ymm6,%ymm3,%ymm12
6229 DB 196,65,28,89,215 ; vmulps %ymm15,%ymm12,%ymm10
6230 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10
6231 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0
6232 DB 196,193,124,92,194 ; vsubps %ymm10,%ymm0,%ymm0
6233 DB 197,60,88,192 ; vaddps %ymm0,%ymm8,%ymm8
6234 DB 197,52,88,208 ; vaddps %ymm0,%ymm9,%ymm10
Mike Kleinbb338332017-05-04 12:42:52 -04006235 DB 197,28,88,216 ; vaddps %ymm0,%ymm12,%ymm11
Mike Klein08aa88d2017-05-12 12:59:24 -04006236 DB 196,193,44,93,195 ; vminps %ymm11,%ymm10,%ymm0
6237 DB 197,60,93,224 ; vminps %ymm0,%ymm8,%ymm12
6238 DB 196,193,60,89,197 ; vmulps %ymm13,%ymm8,%ymm0
6239 DB 196,65,44,89,206 ; vmulps %ymm14,%ymm10,%ymm9
6240 DB 196,193,124,88,193 ; vaddps %ymm9,%ymm0,%ymm0
6241 DB 196,65,36,89,207 ; vmulps %ymm15,%ymm11,%ymm9
6242 DB 197,52,88,200 ; vaddps %ymm0,%ymm9,%ymm9
6243 DB 196,193,60,92,193 ; vsubps %ymm9,%ymm8,%ymm0
6244 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
6245 DB 196,65,52,92,236 ; vsubps %ymm12,%ymm9,%ymm13
6246 DB 196,193,124,94,197 ; vdivps %ymm13,%ymm0,%ymm0
6247 DB 196,65,44,92,241 ; vsubps %ymm9,%ymm10,%ymm14
6248 DB 196,65,52,89,246 ; vmulps %ymm14,%ymm9,%ymm14
6249 DB 196,65,12,94,245 ; vdivps %ymm13,%ymm14,%ymm14
6250 DB 196,65,36,92,249 ; vsubps %ymm9,%ymm11,%ymm15
Mike Kleinbb338332017-05-04 12:42:52 -04006251 DB 196,65,52,89,255 ; vmulps %ymm15,%ymm9,%ymm15
Mike Klein08aa88d2017-05-12 12:59:24 -04006252 DB 196,65,4,94,237 ; vdivps %ymm13,%ymm15,%ymm13
6253 DB 196,65,4,87,255 ; vxorps %ymm15,%ymm15,%ymm15
6254 DB 196,65,4,194,228,2 ; vcmpleps %ymm12,%ymm15,%ymm12
6255 DB 196,65,52,88,246 ; vaddps %ymm14,%ymm9,%ymm14
6256 DB 196,67,13,74,242,192 ; vblendvps %ymm12,%ymm10,%ymm14,%ymm14
6257 DB 196,65,44,95,211 ; vmaxps %ymm11,%ymm10,%ymm10
6258 DB 196,65,52,88,237 ; vaddps %ymm13,%ymm9,%ymm13
6259 DB 196,67,21,74,219,192 ; vblendvps %ymm12,%ymm11,%ymm13,%ymm11
6260 DB 197,180,88,192 ; vaddps %ymm0,%ymm9,%ymm0
6261 DB 196,195,125,74,200,192 ; vblendvps %ymm12,%ymm8,%ymm0,%ymm1
6262 DB 197,100,89,231 ; vmulps %ymm7,%ymm3,%ymm12
6263 DB 196,65,60,95,194 ; vmaxps %ymm10,%ymm8,%ymm8
6264 DB 196,65,116,92,209 ; vsubps %ymm9,%ymm1,%ymm10
6265 DB 196,65,28,92,233 ; vsubps %ymm9,%ymm12,%ymm13
6266 DB 196,65,20,89,210 ; vmulps %ymm10,%ymm13,%ymm10
6267 DB 196,193,28,194,192,1 ; vcmpltps %ymm8,%ymm12,%ymm0
6268 DB 196,65,60,92,193 ; vsubps %ymm9,%ymm8,%ymm8
6269 DB 196,65,44,94,208 ; vdivps %ymm8,%ymm10,%ymm10
6270 DB 196,65,52,88,210 ; vaddps %ymm10,%ymm9,%ymm10
6271 DB 196,195,117,74,202,0 ; vblendvps %ymm0,%ymm10,%ymm1,%ymm1
6272 DB 196,65,12,92,209 ; vsubps %ymm9,%ymm14,%ymm10
6273 DB 196,65,20,89,210 ; vmulps %ymm10,%ymm13,%ymm10
6274 DB 196,65,44,94,208 ; vdivps %ymm8,%ymm10,%ymm10
6275 DB 196,65,52,88,210 ; vaddps %ymm10,%ymm9,%ymm10
6276 DB 196,67,13,74,210,0 ; vblendvps %ymm0,%ymm10,%ymm14,%ymm10
6277 DB 196,65,36,92,241 ; vsubps %ymm9,%ymm11,%ymm14
6278 DB 196,65,20,89,238 ; vmulps %ymm14,%ymm13,%ymm13
6279 DB 196,65,20,94,192 ; vdivps %ymm8,%ymm13,%ymm8
6280 DB 196,65,52,88,192 ; vaddps %ymm8,%ymm9,%ymm8
6281 DB 196,193,116,95,207 ; vmaxps %ymm15,%ymm1,%ymm1
6282 DB 196,65,44,95,207 ; vmaxps %ymm15,%ymm10,%ymm9
6283 DB 196,195,37,74,192,0 ; vblendvps %ymm0,%ymm8,%ymm11,%ymm0
6284 DB 196,65,124,95,199 ; vmaxps %ymm15,%ymm0,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04006285 DB 196,226,125,24,5,22,81,0,0 ; vbroadcastss 0x5116(%rip),%ymm0 # 65f4 <_sk_callback_avx+0x1bd>
Mike Klein08aa88d2017-05-12 12:59:24 -04006286 DB 197,124,92,215 ; vsubps %ymm7,%ymm0,%ymm10
6287 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2
6288 DB 197,124,92,219 ; vsubps %ymm3,%ymm0,%ymm11
6289 DB 197,164,89,196 ; vmulps %ymm4,%ymm11,%ymm0
6290 DB 197,252,88,194 ; vaddps %ymm2,%ymm0,%ymm0
6291 DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0
6292 DB 197,172,89,76,36,32 ; vmulps 0x20(%rsp),%ymm10,%ymm1
6293 DB 197,164,89,213 ; vmulps %ymm5,%ymm11,%ymm2
6294 DB 197,236,88,201 ; vaddps %ymm1,%ymm2,%ymm1
Mike Kleinbb338332017-05-04 12:42:52 -04006295 DB 196,193,116,88,201 ; vaddps %ymm9,%ymm1,%ymm1
Mike Klein08aa88d2017-05-12 12:59:24 -04006296 DB 197,172,89,20,36 ; vmulps (%rsp),%ymm10,%ymm2
6297 DB 197,36,89,206 ; vmulps %ymm6,%ymm11,%ymm9
6298 DB 197,180,88,210 ; vaddps %ymm2,%ymm9,%ymm2
6299 DB 196,193,108,88,208 ; vaddps %ymm8,%ymm2,%ymm2
6300 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
6301 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3
Mike Kleinbb338332017-05-04 12:42:52 -04006302 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -04006303 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -04006304 DB 255,224 ; jmpq *%rax
6305
Mike Kleind7e06ae2017-03-29 16:33:06 -04006306PUBLIC _sk_clamp_0_avx
6307_sk_clamp_0_avx LABEL PROC
6308 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
6309 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0
6310 DB 196,193,116,95,200 ; vmaxps %ymm8,%ymm1,%ymm1
6311 DB 196,193,108,95,208 ; vmaxps %ymm8,%ymm2,%ymm2
6312 DB 196,193,100,95,216 ; vmaxps %ymm8,%ymm3,%ymm3
6313 DB 72,173 ; lods %ds:(%rsi),%rax
6314 DB 255,224 ; jmpq *%rax
6315
6316PUBLIC _sk_clamp_1_avx
6317_sk_clamp_1_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04006318 DB 196,98,125,24,5,166,80,0,0 ; vbroadcastss 0x50a6(%rip),%ymm8 # 65f8 <_sk_callback_avx+0x1c1>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006319 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0
6320 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1
6321 DB 196,193,108,93,208 ; vminps %ymm8,%ymm2,%ymm2
6322 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3
6323 DB 72,173 ; lods %ds:(%rsi),%rax
6324 DB 255,224 ; jmpq *%rax
6325
6326PUBLIC _sk_clamp_a_avx
6327_sk_clamp_a_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04006328 DB 196,98,125,24,5,137,80,0,0 ; vbroadcastss 0x5089(%rip),%ymm8 # 65fc <_sk_callback_avx+0x1c5>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006329 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3
6330 DB 197,252,93,195 ; vminps %ymm3,%ymm0,%ymm0
6331 DB 197,244,93,203 ; vminps %ymm3,%ymm1,%ymm1
6332 DB 197,236,93,211 ; vminps %ymm3,%ymm2,%ymm2
6333 DB 72,173 ; lods %ds:(%rsi),%rax
6334 DB 255,224 ; jmpq *%rax
6335
6336PUBLIC _sk_set_rgb_avx
6337_sk_set_rgb_avx LABEL PROC
6338 DB 72,173 ; lods %ds:(%rsi),%rax
6339 DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0
6340 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1
6341 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2
6342 DB 72,173 ; lods %ds:(%rsi),%rax
6343 DB 255,224 ; jmpq *%rax
6344
6345PUBLIC _sk_swap_rb_avx
6346_sk_swap_rb_avx LABEL PROC
6347 DB 197,124,40,192 ; vmovaps %ymm0,%ymm8
6348 DB 72,173 ; lods %ds:(%rsi),%rax
6349 DB 197,252,40,194 ; vmovaps %ymm2,%ymm0
6350 DB 197,124,41,194 ; vmovaps %ymm8,%ymm2
6351 DB 255,224 ; jmpq *%rax
6352
6353PUBLIC _sk_swap_avx
6354_sk_swap_avx LABEL PROC
6355 DB 197,124,40,195 ; vmovaps %ymm3,%ymm8
6356 DB 197,124,40,202 ; vmovaps %ymm2,%ymm9
6357 DB 197,124,40,209 ; vmovaps %ymm1,%ymm10
6358 DB 197,124,40,216 ; vmovaps %ymm0,%ymm11
6359 DB 72,173 ; lods %ds:(%rsi),%rax
6360 DB 197,252,40,196 ; vmovaps %ymm4,%ymm0
6361 DB 197,252,40,205 ; vmovaps %ymm5,%ymm1
6362 DB 197,252,40,214 ; vmovaps %ymm6,%ymm2
6363 DB 197,252,40,223 ; vmovaps %ymm7,%ymm3
6364 DB 197,124,41,220 ; vmovaps %ymm11,%ymm4
6365 DB 197,124,41,213 ; vmovaps %ymm10,%ymm5
6366 DB 197,124,41,206 ; vmovaps %ymm9,%ymm6
6367 DB 197,124,41,199 ; vmovaps %ymm8,%ymm7
6368 DB 255,224 ; jmpq *%rax
6369
6370PUBLIC _sk_move_src_dst_avx
6371_sk_move_src_dst_avx LABEL PROC
6372 DB 72,173 ; lods %ds:(%rsi),%rax
6373 DB 197,252,40,224 ; vmovaps %ymm0,%ymm4
6374 DB 197,252,40,233 ; vmovaps %ymm1,%ymm5
6375 DB 197,252,40,242 ; vmovaps %ymm2,%ymm6
6376 DB 197,252,40,251 ; vmovaps %ymm3,%ymm7
6377 DB 255,224 ; jmpq *%rax
6378
6379PUBLIC _sk_move_dst_src_avx
6380_sk_move_dst_src_avx LABEL PROC
6381 DB 72,173 ; lods %ds:(%rsi),%rax
6382 DB 197,252,40,196 ; vmovaps %ymm4,%ymm0
6383 DB 197,252,40,205 ; vmovaps %ymm5,%ymm1
6384 DB 197,252,40,214 ; vmovaps %ymm6,%ymm2
6385 DB 197,252,40,223 ; vmovaps %ymm7,%ymm3
6386 DB 255,224 ; jmpq *%rax
6387
6388PUBLIC _sk_premul_avx
6389_sk_premul_avx LABEL PROC
6390 DB 197,252,89,195 ; vmulps %ymm3,%ymm0,%ymm0
6391 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1
6392 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2
6393 DB 72,173 ; lods %ds:(%rsi),%rax
6394 DB 255,224 ; jmpq *%rax
6395
6396PUBLIC _sk_unpremul_avx
6397_sk_unpremul_avx LABEL PROC
6398 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
6399 DB 196,65,100,194,200,0 ; vcmpeqps %ymm8,%ymm3,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04006400 DB 196,98,125,24,21,209,79,0,0 ; vbroadcastss 0x4fd1(%rip),%ymm10 # 6600 <_sk_callback_avx+0x1c9>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006401 DB 197,44,94,211 ; vdivps %ymm3,%ymm10,%ymm10
6402 DB 196,67,45,74,192,144 ; vblendvps %ymm9,%ymm8,%ymm10,%ymm8
6403 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
6404 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
6405 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
6406 DB 72,173 ; lods %ds:(%rsi),%rax
6407 DB 255,224 ; jmpq *%rax
6408
6409PUBLIC _sk_from_srgb_avx
6410_sk_from_srgb_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04006411 DB 196,98,125,24,5,178,79,0,0 ; vbroadcastss 0x4fb2(%rip),%ymm8 # 6604 <_sk_callback_avx+0x1cd>
Mike Kleinfe560a82017-05-01 12:56:35 -04006412 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04006413 DB 197,124,89,208 ; vmulps %ymm0,%ymm0,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006414 DB 196,98,125,24,29,164,79,0,0 ; vbroadcastss 0x4fa4(%rip),%ymm11 # 6608 <_sk_callback_avx+0x1d1>
Mike Kleinfe560a82017-05-01 12:56:35 -04006415 DB 196,65,124,89,227 ; vmulps %ymm11,%ymm0,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04006416 DB 196,98,125,24,45,154,79,0,0 ; vbroadcastss 0x4f9a(%rip),%ymm13 # 660c <_sk_callback_avx+0x1d5>
Mike Kleinfe560a82017-05-01 12:56:35 -04006417 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12
6418 DB 196,65,44,89,212 ; vmulps %ymm12,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006419 DB 196,98,125,24,37,139,79,0,0 ; vbroadcastss 0x4f8b(%rip),%ymm12 # 6610 <_sk_callback_avx+0x1d9>
Mike Kleinfe560a82017-05-01 12:56:35 -04006420 DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006421 DB 196,98,125,24,53,129,79,0,0 ; vbroadcastss 0x4f81(%rip),%ymm14 # 6614 <_sk_callback_avx+0x1dd>
Mike Kleinfe560a82017-05-01 12:56:35 -04006422 DB 196,193,124,194,198,1 ; vcmpltps %ymm14,%ymm0,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04006423 DB 196,195,45,74,193,0 ; vblendvps %ymm0,%ymm9,%ymm10,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04006424 DB 196,65,116,89,200 ; vmulps %ymm8,%ymm1,%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04006425 DB 197,116,89,209 ; vmulps %ymm1,%ymm1,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -04006426 DB 196,65,116,89,251 ; vmulps %ymm11,%ymm1,%ymm15
6427 DB 196,65,4,88,253 ; vaddps %ymm13,%ymm15,%ymm15
Mike Kleind7e06ae2017-03-29 16:33:06 -04006428 DB 196,65,44,89,215 ; vmulps %ymm15,%ymm10,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -04006429 DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10
6430 DB 196,193,116,194,206,1 ; vcmpltps %ymm14,%ymm1,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04006431 DB 196,195,45,74,201,16 ; vblendvps %ymm1,%ymm9,%ymm10,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04006432 DB 196,65,108,89,192 ; vmulps %ymm8,%ymm2,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04006433 DB 197,108,89,202 ; vmulps %ymm2,%ymm2,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04006434 DB 196,65,108,89,211 ; vmulps %ymm11,%ymm2,%ymm10
6435 DB 196,65,44,88,213 ; vaddps %ymm13,%ymm10,%ymm10
Mike Kleind7e06ae2017-03-29 16:33:06 -04006436 DB 196,65,52,89,202 ; vmulps %ymm10,%ymm9,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04006437 DB 196,65,52,88,204 ; vaddps %ymm12,%ymm9,%ymm9
6438 DB 196,193,108,194,214,1 ; vcmpltps %ymm14,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04006439 DB 196,195,53,74,208,32 ; vblendvps %ymm2,%ymm8,%ymm9,%ymm2
6440 DB 72,173 ; lods %ds:(%rsi),%rax
6441 DB 255,224 ; jmpq *%rax
6442
6443PUBLIC _sk_to_srgb_avx
6444_sk_to_srgb_avx LABEL PROC
Mike Kleinf45e3d72017-05-15 17:36:59 -04006445 DB 197,124,82,200 ; vrsqrtps %ymm0,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04006446 DB 196,98,125,24,5,22,79,0,0 ; vbroadcastss 0x4f16(%rip),%ymm8 # 6618 <_sk_callback_avx+0x1e1>
Mike Kleinf45e3d72017-05-15 17:36:59 -04006447 DB 196,65,124,89,208 ; vmulps %ymm8,%ymm0,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006448 DB 196,98,125,24,29,12,79,0,0 ; vbroadcastss 0x4f0c(%rip),%ymm11 # 661c <_sk_callback_avx+0x1e5>
Mike Kleinf45e3d72017-05-15 17:36:59 -04006449 DB 196,65,52,89,227 ; vmulps %ymm11,%ymm9,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04006450 DB 196,98,125,24,45,2,79,0,0 ; vbroadcastss 0x4f02(%rip),%ymm13 # 6620 <_sk_callback_avx+0x1e9>
Mike Kleinf45e3d72017-05-15 17:36:59 -04006451 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12
6452 DB 196,65,52,89,228 ; vmulps %ymm12,%ymm9,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04006453 DB 196,98,125,24,53,243,78,0,0 ; vbroadcastss 0x4ef3(%rip),%ymm14 # 6624 <_sk_callback_avx+0x1ed>
Mike Kleinf45e3d72017-05-15 17:36:59 -04006454 DB 196,65,28,88,230 ; vaddps %ymm14,%ymm12,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -04006455 DB 196,98,125,24,61,233,78,0,0 ; vbroadcastss 0x4ee9(%rip),%ymm15 # 6628 <_sk_callback_avx+0x1f1>
Mike Kleinf45e3d72017-05-15 17:36:59 -04006456 DB 196,65,52,88,207 ; vaddps %ymm15,%ymm9,%ymm9
6457 DB 196,65,124,83,201 ; vrcpps %ymm9,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04006458 DB 196,65,52,89,204 ; vmulps %ymm12,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04006459 DB 196,98,125,24,37,213,78,0,0 ; vbroadcastss 0x4ed5(%rip),%ymm12 # 662c <_sk_callback_avx+0x1f5>
Mike Kleinf45e3d72017-05-15 17:36:59 -04006460 DB 196,193,124,194,196,1 ; vcmpltps %ymm12,%ymm0,%ymm0
6461 DB 196,195,53,74,194,0 ; vblendvps %ymm0,%ymm10,%ymm9,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04006462 DB 197,124,82,201 ; vrsqrtps %ymm1,%ymm9
Mike Kleinf45e3d72017-05-15 17:36:59 -04006463 DB 196,65,52,89,211 ; vmulps %ymm11,%ymm9,%ymm10
6464 DB 196,65,44,88,213 ; vaddps %ymm13,%ymm10,%ymm10
6465 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10
6466 DB 196,65,44,88,214 ; vaddps %ymm14,%ymm10,%ymm10
6467 DB 196,65,52,88,207 ; vaddps %ymm15,%ymm9,%ymm9
6468 DB 196,65,124,83,201 ; vrcpps %ymm9,%ymm9
6469 DB 196,65,52,89,202 ; vmulps %ymm10,%ymm9,%ymm9
6470 DB 196,65,116,89,208 ; vmulps %ymm8,%ymm1,%ymm10
6471 DB 196,193,116,194,204,1 ; vcmpltps %ymm12,%ymm1,%ymm1
6472 DB 196,195,53,74,202,16 ; vblendvps %ymm1,%ymm10,%ymm9,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04006473 DB 197,124,82,202 ; vrsqrtps %ymm2,%ymm9
Mike Kleinf45e3d72017-05-15 17:36:59 -04006474 DB 196,65,52,89,211 ; vmulps %ymm11,%ymm9,%ymm10
6475 DB 196,65,44,88,213 ; vaddps %ymm13,%ymm10,%ymm10
6476 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10
6477 DB 196,65,44,88,214 ; vaddps %ymm14,%ymm10,%ymm10
6478 DB 196,65,52,88,207 ; vaddps %ymm15,%ymm9,%ymm9
6479 DB 196,65,124,83,201 ; vrcpps %ymm9,%ymm9
6480 DB 196,65,52,89,202 ; vmulps %ymm10,%ymm9,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04006481 DB 196,65,108,89,192 ; vmulps %ymm8,%ymm2,%ymm8
Mike Kleinf45e3d72017-05-15 17:36:59 -04006482 DB 196,193,108,194,212,1 ; vcmpltps %ymm12,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04006483 DB 196,195,53,74,208,32 ; vblendvps %ymm2,%ymm8,%ymm9,%ymm2
6484 DB 72,173 ; lods %ds:(%rsi),%rax
6485 DB 255,224 ; jmpq *%rax
6486
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006487PUBLIC _sk_rgb_to_hsl_avx
6488_sk_rgb_to_hsl_avx LABEL PROC
6489 DB 197,124,95,193 ; vmaxps %ymm1,%ymm0,%ymm8
6490 DB 197,60,95,194 ; vmaxps %ymm2,%ymm8,%ymm8
6491 DB 197,124,93,201 ; vminps %ymm1,%ymm0,%ymm9
6492 DB 197,52,93,202 ; vminps %ymm2,%ymm9,%ymm9
6493 DB 196,65,60,92,209 ; vsubps %ymm9,%ymm8,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006494 DB 196,98,125,24,29,59,78,0,0 ; vbroadcastss 0x4e3b(%rip),%ymm11 # 6630 <_sk_callback_avx+0x1f9>
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006495 DB 196,65,36,94,218 ; vdivps %ymm10,%ymm11,%ymm11
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006496 DB 197,116,92,226 ; vsubps %ymm2,%ymm1,%ymm12
6497 DB 196,65,28,89,227 ; vmulps %ymm11,%ymm12,%ymm12
Mike Kleinfe560a82017-05-01 12:56:35 -04006498 DB 197,116,194,234,1 ; vcmpltps %ymm2,%ymm1,%ymm13
6499 DB 197,60,194,241,0 ; vcmpeqps %ymm1,%ymm8,%ymm14
6500 DB 197,236,92,208 ; vsubps %ymm0,%ymm2,%ymm2
6501 DB 196,193,108,89,211 ; vmulps %ymm11,%ymm2,%ymm2
6502 DB 197,252,92,201 ; vsubps %ymm1,%ymm0,%ymm1
6503 DB 196,193,116,89,203 ; vmulps %ymm11,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04006504 DB 196,98,125,24,29,20,78,0,0 ; vbroadcastss 0x4e14(%rip),%ymm11 # 663c <_sk_callback_avx+0x205>
Mike Kleinfe560a82017-05-01 12:56:35 -04006505 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04006506 DB 196,98,125,24,29,2,78,0,0 ; vbroadcastss 0x4e02(%rip),%ymm11 # 6638 <_sk_callback_avx+0x201>
Mike Kleinfe560a82017-05-01 12:56:35 -04006507 DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2
6508 DB 196,227,117,74,202,224 ; vblendvps %ymm14,%ymm2,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04006509 DB 196,226,125,24,21,234,77,0,0 ; vbroadcastss 0x4dea(%rip),%ymm2 # 6634 <_sk_callback_avx+0x1fd>
Mike Kleinfe560a82017-05-01 12:56:35 -04006510 DB 196,65,12,87,246 ; vxorps %ymm14,%ymm14,%ymm14
6511 DB 196,227,13,74,210,208 ; vblendvps %ymm13,%ymm2,%ymm14,%ymm2
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006512 DB 197,188,194,192,0 ; vcmpeqps %ymm0,%ymm8,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04006513 DB 196,193,108,88,212 ; vaddps %ymm12,%ymm2,%ymm2
6514 DB 196,227,117,74,194,0 ; vblendvps %ymm0,%ymm2,%ymm1,%ymm0
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006515 DB 196,193,60,88,201 ; vaddps %ymm9,%ymm8,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04006516 DB 196,98,125,24,37,209,77,0,0 ; vbroadcastss 0x4dd1(%rip),%ymm12 # 6644 <_sk_callback_avx+0x20d>
Mike Kleinfe560a82017-05-01 12:56:35 -04006517 DB 196,193,116,89,212 ; vmulps %ymm12,%ymm1,%ymm2
6518 DB 197,28,194,226,1 ; vcmpltps %ymm2,%ymm12,%ymm12
6519 DB 196,65,36,92,216 ; vsubps %ymm8,%ymm11,%ymm11
6520 DB 196,65,36,92,217 ; vsubps %ymm9,%ymm11,%ymm11
6521 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006522 DB 196,65,60,194,193,0 ; vcmpeqps %ymm9,%ymm8,%ymm8
6523 DB 197,172,94,201 ; vdivps %ymm1,%ymm10,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04006524 DB 196,195,125,74,198,128 ; vblendvps %ymm8,%ymm14,%ymm0,%ymm0
6525 DB 196,195,117,74,206,128 ; vblendvps %ymm8,%ymm14,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04006526 DB 196,98,125,24,5,148,77,0,0 ; vbroadcastss 0x4d94(%rip),%ymm8 # 6640 <_sk_callback_avx+0x209>
Mike Kleinfe560a82017-05-01 12:56:35 -04006527 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006528 DB 72,173 ; lods %ds:(%rsi),%rax
6529 DB 255,224 ; jmpq *%rax
6530
6531PUBLIC _sk_hsl_to_rgb_avx
6532_sk_hsl_to_rgb_avx LABEL PROC
Mike Klein879a08a2017-05-01 15:34:01 -04006533 DB 72,129,236,184,0,0,0 ; sub $0xb8,%rsp
6534 DB 197,252,17,188,36,128,0,0,0 ; vmovups %ymm7,0x80(%rsp)
6535 DB 197,252,17,116,36,96 ; vmovups %ymm6,0x60(%rsp)
6536 DB 197,252,17,108,36,64 ; vmovups %ymm5,0x40(%rsp)
6537 DB 197,252,17,100,36,32 ; vmovups %ymm4,0x20(%rsp)
6538 DB 197,252,17,28,36 ; vmovups %ymm3,(%rsp)
Mike Klein5664e652017-05-01 16:01:38 -04006539 DB 197,252,40,225 ; vmovaps %ymm1,%ymm4
6540 DB 197,252,40,216 ; vmovaps %ymm0,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04006541 DB 196,98,125,24,5,91,77,0,0 ; vbroadcastss 0x4d5b(%rip),%ymm8 # 6648 <_sk_callback_avx+0x211>
Mike Klein5664e652017-05-01 16:01:38 -04006542 DB 197,60,194,202,2 ; vcmpleps %ymm2,%ymm8,%ymm9
6543 DB 197,92,89,210 ; vmulps %ymm2,%ymm4,%ymm10
6544 DB 196,65,92,92,218 ; vsubps %ymm10,%ymm4,%ymm11
6545 DB 196,67,45,74,203,144 ; vblendvps %ymm9,%ymm11,%ymm10,%ymm9
Mike Klein879a08a2017-05-01 15:34:01 -04006546 DB 197,52,88,210 ; vaddps %ymm2,%ymm9,%ymm10
6547 DB 197,108,88,202 ; vaddps %ymm2,%ymm2,%ymm9
6548 DB 196,65,52,92,202 ; vsubps %ymm10,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04006549 DB 196,98,125,24,29,53,77,0,0 ; vbroadcastss 0x4d35(%rip),%ymm11 # 664c <_sk_callback_avx+0x215>
Mike Klein5664e652017-05-01 16:01:38 -04006550 DB 196,65,100,88,219 ; vaddps %ymm11,%ymm3,%ymm11
6551 DB 196,67,125,8,227,1 ; vroundps $0x1,%ymm11,%ymm12
6552 DB 196,65,36,92,252 ; vsubps %ymm12,%ymm11,%ymm15
Mike Klein879a08a2017-05-01 15:34:01 -04006553 DB 196,65,44,92,217 ; vsubps %ymm9,%ymm10,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04006554 DB 196,98,125,24,37,31,77,0,0 ; vbroadcastss 0x4d1f(%rip),%ymm12 # 6654 <_sk_callback_avx+0x21d>
Mike Klein5664e652017-05-01 16:01:38 -04006555 DB 196,193,4,89,196 ; vmulps %ymm12,%ymm15,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04006556 DB 196,98,125,24,45,21,77,0,0 ; vbroadcastss 0x4d15(%rip),%ymm13 # 6658 <_sk_callback_avx+0x221>
Mike Klein5664e652017-05-01 16:01:38 -04006557 DB 197,20,92,240 ; vsubps %ymm0,%ymm13,%ymm14
6558 DB 196,65,36,89,246 ; vmulps %ymm14,%ymm11,%ymm14
6559 DB 196,65,52,88,246 ; vaddps %ymm14,%ymm9,%ymm14
Mike Klein8ca33562017-05-23 08:07:43 -04006560 DB 196,226,125,24,13,246,76,0,0 ; vbroadcastss 0x4cf6(%rip),%ymm1 # 6650 <_sk_callback_avx+0x219>
Mike Klein5664e652017-05-01 16:01:38 -04006561 DB 196,193,116,194,255,2 ; vcmpleps %ymm15,%ymm1,%ymm7
6562 DB 196,195,13,74,249,112 ; vblendvps %ymm7,%ymm9,%ymm14,%ymm7
6563 DB 196,65,60,194,247,2 ; vcmpleps %ymm15,%ymm8,%ymm14
6564 DB 196,227,45,74,255,224 ; vblendvps %ymm14,%ymm7,%ymm10,%ymm7
Mike Klein8ca33562017-05-23 08:07:43 -04006565 DB 196,98,125,24,53,225,76,0,0 ; vbroadcastss 0x4ce1(%rip),%ymm14 # 665c <_sk_callback_avx+0x225>
Mike Klein5664e652017-05-01 16:01:38 -04006566 DB 196,65,12,194,255,2 ; vcmpleps %ymm15,%ymm14,%ymm15
6567 DB 196,193,124,89,195 ; vmulps %ymm11,%ymm0,%ymm0
Mike Klein879a08a2017-05-01 15:34:01 -04006568 DB 197,180,88,192 ; vaddps %ymm0,%ymm9,%ymm0
Mike Klein5664e652017-05-01 16:01:38 -04006569 DB 196,99,125,74,255,240 ; vblendvps %ymm15,%ymm7,%ymm0,%ymm15
6570 DB 196,227,125,8,195,1 ; vroundps $0x1,%ymm3,%ymm0
6571 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0
6572 DB 196,193,124,89,252 ; vmulps %ymm12,%ymm0,%ymm7
6573 DB 197,148,92,247 ; vsubps %ymm7,%ymm13,%ymm6
6574 DB 197,164,89,246 ; vmulps %ymm6,%ymm11,%ymm6
6575 DB 197,180,88,246 ; vaddps %ymm6,%ymm9,%ymm6
6576 DB 197,244,194,232,2 ; vcmpleps %ymm0,%ymm1,%ymm5
6577 DB 196,195,77,74,233,80 ; vblendvps %ymm5,%ymm9,%ymm6,%ymm5
6578 DB 197,188,194,240,2 ; vcmpleps %ymm0,%ymm8,%ymm6
6579 DB 196,227,45,74,237,96 ; vblendvps %ymm6,%ymm5,%ymm10,%ymm5
6580 DB 197,140,194,192,2 ; vcmpleps %ymm0,%ymm14,%ymm0
6581 DB 197,164,89,247 ; vmulps %ymm7,%ymm11,%ymm6
6582 DB 197,180,88,246 ; vaddps %ymm6,%ymm9,%ymm6
6583 DB 196,227,77,74,237,0 ; vblendvps %ymm0,%ymm5,%ymm6,%ymm5
Mike Klein8ca33562017-05-23 08:07:43 -04006584 DB 196,226,125,24,5,131,76,0,0 ; vbroadcastss 0x4c83(%rip),%ymm0 # 6660 <_sk_callback_avx+0x229>
Mike Klein5664e652017-05-01 16:01:38 -04006585 DB 197,228,88,192 ; vaddps %ymm0,%ymm3,%ymm0
6586 DB 196,227,125,8,216,1 ; vroundps $0x1,%ymm0,%ymm3
6587 DB 197,252,92,195 ; vsubps %ymm3,%ymm0,%ymm0
6588 DB 197,244,194,200,2 ; vcmpleps %ymm0,%ymm1,%ymm1
6589 DB 196,193,124,89,220 ; vmulps %ymm12,%ymm0,%ymm3
6590 DB 197,148,92,243 ; vsubps %ymm3,%ymm13,%ymm6
6591 DB 197,164,89,246 ; vmulps %ymm6,%ymm11,%ymm6
6592 DB 197,180,88,246 ; vaddps %ymm6,%ymm9,%ymm6
6593 DB 196,195,77,74,201,16 ; vblendvps %ymm1,%ymm9,%ymm6,%ymm1
6594 DB 197,188,194,240,2 ; vcmpleps %ymm0,%ymm8,%ymm6
6595 DB 196,227,45,74,201,96 ; vblendvps %ymm6,%ymm1,%ymm10,%ymm1
6596 DB 197,140,194,192,2 ; vcmpleps %ymm0,%ymm14,%ymm0
6597 DB 197,164,89,219 ; vmulps %ymm3,%ymm11,%ymm3
6598 DB 197,180,88,219 ; vaddps %ymm3,%ymm9,%ymm3
6599 DB 196,227,101,74,217,0 ; vblendvps %ymm0,%ymm1,%ymm3,%ymm3
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006600 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
Mike Klein5664e652017-05-01 16:01:38 -04006601 DB 197,220,194,224,0 ; vcmpeqps %ymm0,%ymm4,%ymm4
6602 DB 196,227,5,74,194,64 ; vblendvps %ymm4,%ymm2,%ymm15,%ymm0
6603 DB 196,227,85,74,202,64 ; vblendvps %ymm4,%ymm2,%ymm5,%ymm1
6604 DB 196,227,101,74,210,64 ; vblendvps %ymm4,%ymm2,%ymm3,%ymm2
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006605 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein879a08a2017-05-01 15:34:01 -04006606 DB 197,252,16,28,36 ; vmovups (%rsp),%ymm3
6607 DB 197,252,16,100,36,32 ; vmovups 0x20(%rsp),%ymm4
6608 DB 197,252,16,108,36,64 ; vmovups 0x40(%rsp),%ymm5
6609 DB 197,252,16,116,36,96 ; vmovups 0x60(%rsp),%ymm6
6610 DB 197,252,16,188,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm7
6611 DB 72,129,196,184,0,0,0 ; add $0xb8,%rsp
Mike Kleindb1cbcb2017-04-12 08:35:41 -04006612 DB 255,224 ; jmpq *%rax
6613
Mike Kleind7e06ae2017-03-29 16:33:06 -04006614PUBLIC _sk_scale_1_float_avx
6615_sk_scale_1_float_avx LABEL PROC
6616 DB 72,173 ; lods %ds:(%rsi),%rax
6617 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
6618 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
6619 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
6620 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
6621 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
6622 DB 72,173 ; lods %ds:(%rsi),%rax
6623 DB 255,224 ; jmpq *%rax
6624
6625PUBLIC _sk_scale_u8_avx
6626_sk_scale_u8_avx LABEL PROC
6627 DB 73,137,200 ; mov %rcx,%r8
6628 DB 72,173 ; lods %ds:(%rsi),%rax
6629 DB 72,139,0 ; mov (%rax),%rax
6630 DB 72,1,248 ; add %rdi,%rax
6631 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04006632 DB 117,68 ; jne 1ada <_sk_scale_u8_avx+0x54>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006633 DB 197,122,126,0 ; vmovq (%rax),%xmm8
6634 DB 196,66,121,49,200 ; vpmovzxbd %xmm8,%xmm9
6635 DB 196,67,121,4,192,229 ; vpermilps $0xe5,%xmm8,%xmm8
6636 DB 196,66,121,49,192 ; vpmovzxbd %xmm8,%xmm8
6637 DB 196,67,53,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm9,%ymm8
6638 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04006639 DB 196,98,125,24,13,166,75,0,0 ; vbroadcastss 0x4ba6(%rip),%ymm9 # 6664 <_sk_callback_avx+0x22d>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006640 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8
6641 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
6642 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
6643 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
6644 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
6645 DB 72,173 ; lods %ds:(%rsi),%rax
6646 DB 76,137,193 ; mov %r8,%rcx
6647 DB 255,224 ; jmpq *%rax
6648 DB 49,201 ; xor %ecx,%ecx
6649 DB 77,137,194 ; mov %r8,%r10
6650 DB 69,49,201 ; xor %r9d,%r9d
6651 DB 68,15,182,24 ; movzbl (%rax),%r11d
6652 DB 72,255,192 ; inc %rax
6653 DB 73,211,227 ; shl %cl,%r11
6654 DB 77,9,217 ; or %r11,%r9
6655 DB 72,131,193,8 ; add $0x8,%rcx
6656 DB 73,255,202 ; dec %r10
Mike Klein5d7f2b52017-05-20 13:21:59 -04006657 DB 117,234 ; jne 1ae2 <_sk_scale_u8_avx+0x5c>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006658 DB 196,65,249,110,193 ; vmovq %r9,%xmm8
Mike Klein5d7f2b52017-05-20 13:21:59 -04006659 DB 235,155 ; jmp 1a9a <_sk_scale_u8_avx+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006660
6661PUBLIC _sk_lerp_1_float_avx
6662_sk_lerp_1_float_avx LABEL PROC
6663 DB 72,173 ; lods %ds:(%rsi),%rax
6664 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
6665 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0
6666 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
6667 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0
6668 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1
6669 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
6670 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1
6671 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2
6672 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
6673 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2
6674 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3
6675 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
6676 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
6677 DB 72,173 ; lods %ds:(%rsi),%rax
6678 DB 255,224 ; jmpq *%rax
6679
6680PUBLIC _sk_lerp_u8_avx
6681_sk_lerp_u8_avx LABEL PROC
6682 DB 73,137,200 ; mov %rcx,%r8
6683 DB 72,173 ; lods %ds:(%rsi),%rax
6684 DB 72,139,0 ; mov (%rax),%rax
6685 DB 72,1,248 ; add %rdi,%rax
6686 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -04006687 DB 117,104 ; jne 1bb6 <_sk_lerp_u8_avx+0x78>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006688 DB 197,122,126,0 ; vmovq (%rax),%xmm8
6689 DB 196,66,121,49,200 ; vpmovzxbd %xmm8,%xmm9
6690 DB 196,67,121,4,192,229 ; vpermilps $0xe5,%xmm8,%xmm8
6691 DB 196,66,121,49,192 ; vpmovzxbd %xmm8,%xmm8
6692 DB 196,67,53,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm9,%ymm8
6693 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04006694 DB 196,98,125,24,13,242,74,0,0 ; vbroadcastss 0x4af2(%rip),%ymm9 # 6668 <_sk_callback_avx+0x231>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006695 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8
6696 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0
6697 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
6698 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0
6699 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1
6700 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
6701 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1
6702 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2
6703 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
6704 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2
6705 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3
6706 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
6707 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
6708 DB 72,173 ; lods %ds:(%rsi),%rax
6709 DB 76,137,193 ; mov %r8,%rcx
6710 DB 255,224 ; jmpq *%rax
6711 DB 49,201 ; xor %ecx,%ecx
6712 DB 77,137,194 ; mov %r8,%r10
6713 DB 69,49,201 ; xor %r9d,%r9d
6714 DB 68,15,182,24 ; movzbl (%rax),%r11d
6715 DB 72,255,192 ; inc %rax
6716 DB 73,211,227 ; shl %cl,%r11
6717 DB 77,9,217 ; or %r11,%r9
6718 DB 72,131,193,8 ; add $0x8,%rcx
6719 DB 73,255,202 ; dec %r10
Mike Klein5d7f2b52017-05-20 13:21:59 -04006720 DB 117,234 ; jne 1bbe <_sk_lerp_u8_avx+0x80>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006721 DB 196,65,249,110,193 ; vmovq %r9,%xmm8
Mike Klein5d7f2b52017-05-20 13:21:59 -04006722 DB 233,116,255,255,255 ; jmpq 1b52 <_sk_lerp_u8_avx+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006723
6724PUBLIC _sk_lerp_565_avx
6725_sk_lerp_565_avx LABEL PROC
6726 DB 72,173 ; lods %ds:(%rsi),%rax
6727 DB 76,139,16 ; mov (%rax),%r10
6728 DB 72,133,201 ; test %rcx,%rcx
Mike Klein5d7f2b52017-05-20 13:21:59 -04006729 DB 15,133,208,0,0,0 ; jne 1cbc <_sk_lerp_565_avx+0xde>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006730 DB 196,65,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm8
bungeman6f9f2592017-05-10 13:50:12 -04006731 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9
6732 DB 196,65,57,105,201 ; vpunpckhwd %xmm9,%xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04006733 DB 196,66,121,51,192 ; vpmovzxwd %xmm8,%xmm8
bungeman6f9f2592017-05-10 13:50:12 -04006734 DB 196,67,61,24,193,1 ; vinsertf128 $0x1,%xmm9,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04006735 DB 196,98,125,24,13,92,74,0,0 ; vbroadcastss 0x4a5c(%rip),%ymm9 # 666c <_sk_callback_avx+0x235>
bungeman6f9f2592017-05-10 13:50:12 -04006736 DB 196,65,60,84,201 ; vandps %ymm9,%ymm8,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04006737 DB 196,65,124,91,201 ; vcvtdq2ps %ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04006738 DB 196,98,125,24,21,77,74,0,0 ; vbroadcastss 0x4a4d(%rip),%ymm10 # 6670 <_sk_callback_avx+0x239>
Mike Kleinfe560a82017-05-01 12:56:35 -04006739 DB 196,65,52,89,202 ; vmulps %ymm10,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04006740 DB 196,98,125,24,21,67,74,0,0 ; vbroadcastss 0x4a43(%rip),%ymm10 # 6674 <_sk_callback_avx+0x23d>
bungeman6f9f2592017-05-10 13:50:12 -04006741 DB 196,65,60,84,210 ; vandps %ymm10,%ymm8,%ymm10
6742 DB 196,65,124,91,210 ; vcvtdq2ps %ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006743 DB 196,98,125,24,29,52,74,0,0 ; vbroadcastss 0x4a34(%rip),%ymm11 # 6678 <_sk_callback_avx+0x241>
bungeman6f9f2592017-05-10 13:50:12 -04006744 DB 196,65,44,89,211 ; vmulps %ymm11,%ymm10,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04006745 DB 196,98,125,24,29,42,74,0,0 ; vbroadcastss 0x4a2a(%rip),%ymm11 # 667c <_sk_callback_avx+0x245>
bungeman6f9f2592017-05-10 13:50:12 -04006746 DB 196,65,60,84,195 ; vandps %ymm11,%ymm8,%ymm8
6747 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04006748 DB 196,98,125,24,29,27,74,0,0 ; vbroadcastss 0x4a1b(%rip),%ymm11 # 6680 <_sk_callback_avx+0x249>
bungeman6f9f2592017-05-10 13:50:12 -04006749 DB 196,65,60,89,195 ; vmulps %ymm11,%ymm8,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04006750 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0
bungeman6f9f2592017-05-10 13:50:12 -04006751 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04006752 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0
6753 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1
bungeman6f9f2592017-05-10 13:50:12 -04006754 DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04006755 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1
6756 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2
bungeman6f9f2592017-05-10 13:50:12 -04006757 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04006758 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2
bungeman6f9f2592017-05-10 13:50:12 -04006759 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3
6760 DB 196,65,100,89,201 ; vmulps %ymm9,%ymm3,%ymm9
6761 DB 197,52,88,207 ; vaddps %ymm7,%ymm9,%ymm9
6762 DB 196,65,100,89,210 ; vmulps %ymm10,%ymm3,%ymm10
6763 DB 197,44,88,215 ; vaddps %ymm7,%ymm10,%ymm10
6764 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
6765 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3
6766 DB 197,172,95,219 ; vmaxps %ymm3,%ymm10,%ymm3
6767 DB 197,180,95,219 ; vmaxps %ymm3,%ymm9,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04006768 DB 72,173 ; lods %ds:(%rsi),%rax
6769 DB 255,224 ; jmpq *%rax
6770 DB 65,137,200 ; mov %ecx,%r8d
6771 DB 65,128,224,7 ; and $0x7,%r8b
6772 DB 196,65,57,239,192 ; vpxor %xmm8,%xmm8,%xmm8
6773 DB 65,254,200 ; dec %r8b
6774 DB 65,128,248,6 ; cmp $0x6,%r8b
Mike Klein5d7f2b52017-05-20 13:21:59 -04006775 DB 15,135,29,255,255,255 ; ja 1bf2 <_sk_lerp_565_avx+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006776 DB 69,15,182,192 ; movzbl %r8b,%r8d
Mike Klein5d7f2b52017-05-20 13:21:59 -04006777 DB 76,141,13,76,0,0,0 ; lea 0x4c(%rip),%r9 # 1d2c <_sk_lerp_565_avx+0x14e>
Mike Kleind7e06ae2017-03-29 16:33:06 -04006778 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
6779 DB 76,1,200 ; add %r9,%rax
6780 DB 255,224 ; jmpq *%rax
bungeman6f9f2592017-05-10 13:50:12 -04006781 DB 196,65,57,239,192 ; vpxor %xmm8,%xmm8,%xmm8
6782 DB 196,65,57,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm8,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04006783 DB 196,65,57,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm8,%xmm8
6784 DB 196,65,57,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm8,%xmm8
6785 DB 196,65,57,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm8,%xmm8
6786 DB 196,65,57,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm8,%xmm8
6787 DB 196,65,57,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm8,%xmm8
6788 DB 196,65,57,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm8,%xmm8
Mike Klein5d7f2b52017-05-20 13:21:59 -04006789 DB 233,200,254,255,255 ; jmpq 1bf2 <_sk_lerp_565_avx+0x14>
6790 DB 102,144 ; xchg %ax,%ax
6791 DB 242,255 ; repnz (bad)
Mike Reed9959f722017-05-15 09:34:22 -04006792 DB 255 ; (bad)
6793 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04006794 DB 234 ; (bad)
Mike Reed9959f722017-05-15 09:34:22 -04006795 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04006796 DB 255 ; (bad)
6797 DB 255,226 ; jmpq *%rdx
Mike Kleind7e06ae2017-03-29 16:33:06 -04006798 DB 255 ; (bad)
6799 DB 255 ; (bad)
6800 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04006801 DB 218,255 ; (bad)
Mike Reed9959f722017-05-15 09:34:22 -04006802 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04006803 DB 255,210 ; callq *%rdx
Mike Klein08aa88d2017-05-12 12:59:24 -04006804 DB 255 ; (bad)
6805 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04006806 DB 255,202 ; dec %edx
Mike Kleind7e06ae2017-03-29 16:33:06 -04006807 DB 255 ; (bad)
6808 DB 255 ; (bad)
6809 DB 255 ; (bad)
Mike Klein5d7f2b52017-05-20 13:21:59 -04006810 DB 189 ; .byte 0xbd
Mike Kleind7e06ae2017-03-29 16:33:06 -04006811 DB 255 ; (bad)
6812 DB 255 ; (bad)
6813 DB 255 ; .byte 0xff
6814
6815PUBLIC _sk_load_tables_avx
6816_sk_load_tables_avx LABEL PROC
Mike Klein0aa742f2017-04-27 13:36:57 -04006817 DB 72,173 ; lods %ds:(%rsi),%rax
Brian Osman74fc5932017-05-22 19:25:36 +00006818 DB 76,139,0 ; mov (%rax),%r8
6819 DB 72,133,201 ; test %rcx,%rcx
6820 DB 15,133,26,2,0,0 ; jne 1f70 <_sk_load_tables_avx+0x228>
6821 DB 196,65,124,16,4,184 ; vmovups (%r8,%rdi,4),%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04006822 DB 85 ; push %rbp
6823 DB 65,87 ; push %r15
6824 DB 65,86 ; push %r14
6825 DB 65,85 ; push %r13
6826 DB 65,84 ; push %r12
6827 DB 83 ; push %rbx
Mike Klein8ca33562017-05-23 08:07:43 -04006828 DB 197,124,40,13,18,76,0,0 ; vmovaps 0x4c12(%rip),%ymm9 # 6980 <_sk_callback_avx+0x549>
Brian Osman74fc5932017-05-22 19:25:36 +00006829 DB 196,193,60,84,193 ; vandps %ymm9,%ymm8,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04006830 DB 196,193,249,126,193 ; vmovq %xmm0,%r9
6831 DB 69,137,203 ; mov %r9d,%r11d
6832 DB 196,195,249,22,194,1 ; vpextrq $0x1,%xmm0,%r10
6833 DB 69,137,214 ; mov %r10d,%r14d
6834 DB 73,193,234,32 ; shr $0x20,%r10
6835 DB 73,193,233,32 ; shr $0x20,%r9
6836 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0
Brian Osman74fc5932017-05-22 19:25:36 +00006837 DB 196,193,249,126,196 ; vmovq %xmm0,%r12
6838 DB 69,137,231 ; mov %r12d,%r15d
6839 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx
6840 DB 65,137,221 ; mov %ebx,%r13d
Mike Kleind7e06ae2017-03-29 16:33:06 -04006841 DB 72,193,235,32 ; shr $0x20,%rbx
Brian Osman74fc5932017-05-22 19:25:36 +00006842 DB 73,193,236,32 ; shr $0x20,%r12
Mike Kleind7e06ae2017-03-29 16:33:06 -04006843 DB 72,139,104,8 ; mov 0x8(%rax),%rbp
Brian Osman74fc5932017-05-22 19:25:36 +00006844 DB 76,139,64,16 ; mov 0x10(%rax),%r8
Mike Kleind7e06ae2017-03-29 16:33:06 -04006845 DB 196,161,122,16,68,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm0
Brian Osman74fc5932017-05-22 19:25:36 +00006846 DB 196,163,121,33,68,165,0,16 ; vinsertps $0x10,0x0(%rbp,%r12,4),%xmm0,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -04006847 DB 196,163,121,33,68,173,0,32 ; vinsertps $0x20,0x0(%rbp,%r13,4),%xmm0,%xmm0
Brian Osman74fc5932017-05-22 19:25:36 +00006848 DB 196,227,121,33,68,157,0,48 ; vinsertps $0x30,0x0(%rbp,%rbx,4),%xmm0,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04006849 DB 196,161,122,16,76,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm1
6850 DB 196,163,113,33,76,141,0,16 ; vinsertps $0x10,0x0(%rbp,%r9,4),%xmm1,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -04006851 DB 196,163,113,33,76,181,0,32 ; vinsertps $0x20,0x0(%rbp,%r14,4),%xmm1,%xmm1
6852 DB 196,163,113,33,76,149,0,48 ; vinsertps $0x30,0x0(%rbp,%r10,4),%xmm1,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04006853 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0
Brian Osman74fc5932017-05-22 19:25:36 +00006854 DB 196,193,113,114,208,8 ; vpsrld $0x8,%xmm8,%xmm1
6855 DB 196,67,125,25,194,1 ; vextractf128 $0x1,%ymm8,%xmm10
6856 DB 196,193,105,114,210,8 ; vpsrld $0x8,%xmm10,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04006857 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
Mike Klein0aa742f2017-04-27 13:36:57 -04006858 DB 196,193,116,84,201 ; vandps %ymm9,%ymm1,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04006859 DB 196,193,249,126,201 ; vmovq %xmm1,%r9
6860 DB 69,137,203 ; mov %r9d,%r11d
6861 DB 196,195,249,22,202,1 ; vpextrq $0x1,%xmm1,%r10
6862 DB 69,137,214 ; mov %r10d,%r14d
6863 DB 73,193,234,32 ; shr $0x20,%r10
6864 DB 73,193,233,32 ; shr $0x20,%r9
6865 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1
Brian Osman74fc5932017-05-22 19:25:36 +00006866 DB 196,225,249,126,205 ; vmovq %xmm1,%rbp
6867 DB 65,137,239 ; mov %ebp,%r15d
6868 DB 196,227,249,22,203,1 ; vpextrq $0x1,%xmm1,%rbx
6869 DB 65,137,220 ; mov %ebx,%r12d
Mike Klein139e4632017-05-22 10:28:27 -04006870 DB 72,193,235,32 ; shr $0x20,%rbx
Brian Osman74fc5932017-05-22 19:25:36 +00006871 DB 72,193,237,32 ; shr $0x20,%rbp
6872 DB 196,129,122,16,12,184 ; vmovss (%r8,%r15,4),%xmm1
6873 DB 196,195,113,33,12,168,16 ; vinsertps $0x10,(%r8,%rbp,4),%xmm1,%xmm1
6874 DB 196,129,122,16,20,160 ; vmovss (%r8,%r12,4),%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04006875 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
Brian Osman74fc5932017-05-22 19:25:36 +00006876 DB 196,193,122,16,20,152 ; vmovss (%r8,%rbx,4),%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04006877 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
Brian Osman74fc5932017-05-22 19:25:36 +00006878 DB 196,129,122,16,20,152 ; vmovss (%r8,%r11,4),%xmm2
6879 DB 196,131,105,33,20,136,16 ; vinsertps $0x10,(%r8,%r9,4),%xmm2,%xmm2
6880 DB 196,129,122,16,28,176 ; vmovss (%r8,%r14,4),%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04006881 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
Brian Osman74fc5932017-05-22 19:25:36 +00006882 DB 196,129,122,16,28,144 ; vmovss (%r8,%r10,4),%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04006883 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
6884 DB 196,227,109,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm1
6885 DB 72,139,64,24 ; mov 0x18(%rax),%rax
Brian Osman74fc5932017-05-22 19:25:36 +00006886 DB 196,193,105,114,208,16 ; vpsrld $0x10,%xmm8,%xmm2
6887 DB 196,193,97,114,210,16 ; vpsrld $0x10,%xmm10,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04006888 DB 196,227,109,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm2,%ymm2
Mike Klein0aa742f2017-04-27 13:36:57 -04006889 DB 196,193,108,84,209 ; vandps %ymm9,%ymm2,%ymm2
Brian Osman74fc5932017-05-22 19:25:36 +00006890 DB 196,193,249,126,208 ; vmovq %xmm2,%r8
6891 DB 69,137,194 ; mov %r8d,%r10d
6892 DB 196,195,249,22,209,1 ; vpextrq $0x1,%xmm2,%r9
6893 DB 69,137,203 ; mov %r9d,%r11d
Mike Kleind7e06ae2017-03-29 16:33:06 -04006894 DB 73,193,233,32 ; shr $0x20,%r9
Brian Osman74fc5932017-05-22 19:25:36 +00006895 DB 73,193,232,32 ; shr $0x20,%r8
Mike Kleind7e06ae2017-03-29 16:33:06 -04006896 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
6897 DB 196,225,249,126,213 ; vmovq %xmm2,%rbp
6898 DB 65,137,238 ; mov %ebp,%r14d
6899 DB 196,227,249,22,211,1 ; vpextrq $0x1,%xmm2,%rbx
6900 DB 65,137,223 ; mov %ebx,%r15d
6901 DB 72,193,235,32 ; shr $0x20,%rbx
6902 DB 72,193,237,32 ; shr $0x20,%rbp
6903 DB 196,161,122,16,20,176 ; vmovss (%rax,%r14,4),%xmm2
6904 DB 196,227,105,33,20,168,16 ; vinsertps $0x10,(%rax,%rbp,4),%xmm2,%xmm2
6905 DB 196,161,122,16,28,184 ; vmovss (%rax,%r15,4),%xmm3
6906 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
6907 DB 197,250,16,28,152 ; vmovss (%rax,%rbx,4),%xmm3
6908 DB 196,99,105,33,203,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm9
6909 DB 196,161,122,16,28,144 ; vmovss (%rax,%r10,4),%xmm3
Brian Osman74fc5932017-05-22 19:25:36 +00006910 DB 196,163,97,33,28,128,16 ; vinsertps $0x10,(%rax,%r8,4),%xmm3,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04006911 DB 196,161,122,16,20,152 ; vmovss (%rax,%r11,4),%xmm2
6912 DB 196,227,97,33,210,32 ; vinsertps $0x20,%xmm2,%xmm3,%xmm2
Brian Osman74fc5932017-05-22 19:25:36 +00006913 DB 196,161,122,16,28,136 ; vmovss (%rax,%r9,4),%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04006914 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
6915 DB 196,195,109,24,209,1 ; vinsertf128 $0x1,%xmm9,%ymm2,%ymm2
Brian Osman74fc5932017-05-22 19:25:36 +00006916 DB 196,193,57,114,208,24 ; vpsrld $0x18,%xmm8,%xmm8
6917 DB 196,193,97,114,210,24 ; vpsrld $0x18,%xmm10,%xmm3
6918 DB 196,227,61,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04006919 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04006920 DB 196,98,125,24,5,39,71,0,0 ; vbroadcastss 0x4727(%rip),%ymm8 # 6684 <_sk_callback_avx+0x24d>
Mike Kleinfe560a82017-05-01 12:56:35 -04006921 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04006922 DB 72,173 ; lods %ds:(%rsi),%rax
6923 DB 91 ; pop %rbx
6924 DB 65,92 ; pop %r12
6925 DB 65,93 ; pop %r13
6926 DB 65,94 ; pop %r14
6927 DB 65,95 ; pop %r15
6928 DB 93 ; pop %rbp
6929 DB 255,224 ; jmpq *%rax
Brian Osman74fc5932017-05-22 19:25:36 +00006930 DB 65,137,201 ; mov %ecx,%r9d
6931 DB 65,128,225,7 ; and $0x7,%r9b
6932 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
6933 DB 65,254,201 ; dec %r9b
6934 DB 65,128,249,6 ; cmp $0x6,%r9b
6935 DB 15,135,211,253,255,255 ; ja 1d5c <_sk_load_tables_avx+0x14>
6936 DB 69,15,182,201 ; movzbl %r9b,%r9d
6937 DB 76,141,21,140,0,0,0 ; lea 0x8c(%rip),%r10 # 2020 <_sk_load_tables_avx+0x2d8>
6938 DB 79,99,12,138 ; movslq (%r10,%r9,4),%r9
6939 DB 77,1,209 ; add %r10,%r9
6940 DB 65,255,225 ; jmpq *%r9
6941 DB 196,193,121,110,68,184,24 ; vmovd 0x18(%r8,%rdi,4),%xmm0
6942 DB 197,249,112,192,68 ; vpshufd $0x44,%xmm0,%xmm0
6943 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0
6944 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
6945 DB 196,99,117,12,192,64 ; vblendps $0x40,%ymm0,%ymm1,%ymm8
6946 DB 196,99,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm0
6947 DB 196,195,121,34,68,184,20,1 ; vpinsrd $0x1,0x14(%r8,%rdi,4),%xmm0,%xmm0
6948 DB 196,99,61,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm8,%ymm8
6949 DB 196,99,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm0
6950 DB 196,195,121,34,68,184,16,0 ; vpinsrd $0x0,0x10(%r8,%rdi,4),%xmm0,%xmm0
6951 DB 196,99,61,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm8,%ymm8
6952 DB 196,195,57,34,68,184,12,3 ; vpinsrd $0x3,0xc(%r8,%rdi,4),%xmm8,%xmm0
6953 DB 196,99,61,12,192,15 ; vblendps $0xf,%ymm0,%ymm8,%ymm8
6954 DB 196,195,57,34,68,184,8,2 ; vpinsrd $0x2,0x8(%r8,%rdi,4),%xmm8,%xmm0
6955 DB 196,99,61,12,192,15 ; vblendps $0xf,%ymm0,%ymm8,%ymm8
6956 DB 196,195,57,34,68,184,4,1 ; vpinsrd $0x1,0x4(%r8,%rdi,4),%xmm8,%xmm0
6957 DB 196,99,61,12,192,15 ; vblendps $0xf,%ymm0,%ymm8,%ymm8
6958 DB 196,195,57,34,4,184,0 ; vpinsrd $0x0,(%r8,%rdi,4),%xmm8,%xmm0
6959 DB 196,99,61,12,192,15 ; vblendps $0xf,%ymm0,%ymm8,%ymm8
6960 DB 233,62,253,255,255 ; jmpq 1d5c <_sk_load_tables_avx+0x14>
6961 DB 102,144 ; xchg %ax,%ax
6962 DB 236 ; in (%dx),%al
6963 DB 255 ; (bad)
6964 DB 255 ; (bad)
6965 DB 255 ; (bad)
6966 DB 222,255 ; fdivrp %st,%st(7)
6967 DB 255 ; (bad)
6968 DB 255,208 ; callq *%rax
6969 DB 255 ; (bad)
6970 DB 255 ; (bad)
6971 DB 255,194 ; inc %edx
6972 DB 255 ; (bad)
6973 DB 255 ; (bad)
6974 DB 255,174,255,255,255,154 ; ljmp *-0x65000001(%rsi)
6975 DB 255 ; (bad)
6976 DB 255 ; (bad)
6977 DB 255 ; (bad)
6978 DB 126,255 ; jle 2039 <_sk_load_tables_avx+0x2f1>
6979 DB 255 ; (bad)
6980 DB 255 ; .byte 0xff
Mike Kleind7e06ae2017-03-29 16:33:06 -04006981
Mike Kleina3735cd2017-04-17 13:19:05 -04006982PUBLIC _sk_load_tables_u16_be_avx
6983_sk_load_tables_u16_be_avx LABEL PROC
6984 DB 72,173 ; lods %ds:(%rsi),%rax
6985 DB 76,139,0 ; mov (%rax),%r8
6986 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9
6987 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00006988 DB 15,133,113,2,0,0 ; jne 22c3 <_sk_load_tables_u16_be_avx+0x287>
Mike Kleina3735cd2017-04-17 13:19:05 -04006989 DB 196,1,121,16,4,72 ; vmovupd (%r8,%r9,2),%xmm8
6990 DB 196,129,121,16,84,72,16 ; vmovupd 0x10(%r8,%r9,2),%xmm2
6991 DB 196,129,121,16,92,72,32 ; vmovupd 0x20(%r8,%r9,2),%xmm3
6992 DB 196,1,122,111,76,72,48 ; vmovdqu 0x30(%r8,%r9,2),%xmm9
6993 DB 85 ; push %rbp
6994 DB 65,87 ; push %r15
6995 DB 65,86 ; push %r14
6996 DB 65,85 ; push %r13
6997 DB 65,84 ; push %r12
6998 DB 83 ; push %rbx
6999 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0
7000 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2
7001 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1
7002 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3
Mike Klein0aa742f2017-04-27 13:36:57 -04007003 DB 197,121,97,202 ; vpunpcklwd %xmm2,%xmm0,%xmm9
7004 DB 197,121,105,194 ; vpunpckhwd %xmm2,%xmm0,%xmm8
7005 DB 197,241,97,195 ; vpunpcklwd %xmm3,%xmm1,%xmm0
7006 DB 197,113,105,227 ; vpunpckhwd %xmm3,%xmm1,%xmm12
7007 DB 197,177,108,208 ; vpunpcklqdq %xmm0,%xmm9,%xmm2
7008 DB 197,177,109,200 ; vpunpckhqdq %xmm0,%xmm9,%xmm1
7009 DB 196,65,57,108,212 ; vpunpcklqdq %xmm12,%xmm8,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -04007010 DB 197,121,111,29,82,73,0,0 ; vmovdqa 0x4952(%rip),%xmm11 # 6a00 <_sk_callback_avx+0x5c9>
Mike Klein0aa742f2017-04-27 13:36:57 -04007011 DB 196,193,105,219,195 ; vpand %xmm11,%xmm2,%xmm0
7012 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9
7013 DB 196,193,121,105,209 ; vpunpckhwd %xmm9,%xmm0,%xmm2
7014 DB 196,195,249,22,208,1 ; vpextrq $0x1,%xmm2,%r8
7015 DB 69,137,193 ; mov %r8d,%r9d
7016 DB 77,137,194 ; mov %r8,%r10
Mike Kleina3735cd2017-04-17 13:19:05 -04007017 DB 73,193,234,32 ; shr $0x20,%r10
Mike Klein0aa742f2017-04-27 13:36:57 -04007018 DB 196,193,249,126,208 ; vmovq %xmm2,%r8
7019 DB 69,137,195 ; mov %r8d,%r11d
7020 DB 77,137,198 ; mov %r8,%r14
7021 DB 73,193,238,32 ; shr $0x20,%r14
7022 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
7023 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
7024 DB 65,137,223 ; mov %ebx,%r15d
7025 DB 72,193,235,30 ; shr $0x1e,%rbx
7026 DB 196,195,249,22,196,1 ; vpextrq $0x1,%xmm0,%r12
7027 DB 69,137,229 ; mov %r12d,%r13d
7028 DB 73,193,236,30 ; shr $0x1e,%r12
Mike Kleina3735cd2017-04-17 13:19:05 -04007029 DB 72,139,104,8 ; mov 0x8(%rax),%rbp
7030 DB 76,139,64,16 ; mov 0x10(%rax),%r8
Mike Klein0aa742f2017-04-27 13:36:57 -04007031 DB 196,161,122,16,68,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm0
7032 DB 196,163,121,33,68,181,0,16 ; vinsertps $0x10,0x0(%rbp,%r14,4),%xmm0,%xmm0
7033 DB 196,161,122,16,84,141,0 ; vmovss 0x0(%rbp,%r9,4),%xmm2
7034 DB 196,227,121,33,194,32 ; vinsertps $0x20,%xmm2,%xmm0,%xmm0
7035 DB 196,161,122,16,84,149,0 ; vmovss 0x0(%rbp,%r10,4),%xmm2
7036 DB 196,227,121,33,194,48 ; vinsertps $0x30,%xmm2,%xmm0,%xmm0
7037 DB 196,161,122,16,84,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm2
7038 DB 196,227,105,33,84,29,0,16 ; vinsertps $0x10,0x0(%rbp,%rbx,1),%xmm2,%xmm2
7039 DB 196,161,122,16,92,173,0 ; vmovss 0x0(%rbp,%r13,4),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007040 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007041 DB 196,161,122,16,92,37,0 ; vmovss 0x0(%rbp,%r12,1),%xmm3
7042 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
7043 DB 196,227,109,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm2,%ymm0
7044 DB 196,193,113,219,203 ; vpand %xmm11,%xmm1,%xmm1
7045 DB 196,193,113,105,209 ; vpunpckhwd %xmm9,%xmm1,%xmm2
7046 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp
7047 DB 65,137,233 ; mov %ebp,%r9d
7048 DB 72,193,237,32 ; shr $0x20,%rbp
7049 DB 196,225,249,126,211 ; vmovq %xmm2,%rbx
7050 DB 65,137,218 ; mov %ebx,%r10d
7051 DB 72,193,235,32 ; shr $0x20,%rbx
7052 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1
7053 DB 196,193,249,126,203 ; vmovq %xmm1,%r11
7054 DB 69,137,222 ; mov %r11d,%r14d
7055 DB 73,193,235,30 ; shr $0x1e,%r11
7056 DB 196,195,249,22,207,1 ; vpextrq $0x1,%xmm1,%r15
7057 DB 69,137,252 ; mov %r15d,%r12d
7058 DB 73,193,239,30 ; shr $0x1e,%r15
7059 DB 196,129,122,16,12,144 ; vmovss (%r8,%r10,4),%xmm1
7060 DB 196,195,113,33,12,152,16 ; vinsertps $0x10,(%r8,%rbx,4),%xmm1,%xmm1
7061 DB 196,129,122,16,20,136 ; vmovss (%r8,%r9,4),%xmm2
7062 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
7063 DB 196,193,122,16,20,168 ; vmovss (%r8,%rbp,4),%xmm2
7064 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
7065 DB 196,129,122,16,20,176 ; vmovss (%r8,%r14,4),%xmm2
7066 DB 196,131,105,33,20,24,16 ; vinsertps $0x10,(%r8,%r11,1),%xmm2,%xmm2
7067 DB 196,129,122,16,28,160 ; vmovss (%r8,%r12,4),%xmm3
7068 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
7069 DB 196,129,122,16,28,56 ; vmovss (%r8,%r15,1),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007070 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
7071 DB 196,227,109,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm1
Mike Klein0aa742f2017-04-27 13:36:57 -04007072 DB 76,139,80,24 ; mov 0x18(%rax),%r10
7073 DB 196,193,41,219,211 ; vpand %xmm11,%xmm10,%xmm2
7074 DB 196,193,105,105,217 ; vpunpckhwd %xmm9,%xmm2,%xmm3
7075 DB 196,227,249,22,221,1 ; vpextrq $0x1,%xmm3,%rbp
7076 DB 65,137,232 ; mov %ebp,%r8d
Mike Kleina3735cd2017-04-17 13:19:05 -04007077 DB 72,193,237,32 ; shr $0x20,%rbp
Mike Klein0aa742f2017-04-27 13:36:57 -04007078 DB 196,225,249,126,219 ; vmovq %xmm3,%rbx
7079 DB 65,137,217 ; mov %ebx,%r9d
7080 DB 72,193,235,32 ; shr $0x20,%rbx
7081 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2
7082 DB 196,225,249,126,208 ; vmovq %xmm2,%rax
7083 DB 65,137,195 ; mov %eax,%r11d
7084 DB 72,193,232,30 ; shr $0x1e,%rax
7085 DB 196,195,249,22,214,1 ; vpextrq $0x1,%xmm2,%r14
7086 DB 69,137,247 ; mov %r14d,%r15d
7087 DB 73,193,238,30 ; shr $0x1e,%r14
7088 DB 196,129,122,16,20,138 ; vmovss (%r10,%r9,4),%xmm2
7089 DB 196,195,105,33,20,154,16 ; vinsertps $0x10,(%r10,%rbx,4),%xmm2,%xmm2
7090 DB 196,129,122,16,28,130 ; vmovss (%r10,%r8,4),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007091 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007092 DB 196,193,122,16,28,170 ; vmovss (%r10,%rbp,4),%xmm3
7093 DB 196,99,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm10
7094 DB 196,129,122,16,28,154 ; vmovss (%r10,%r11,4),%xmm3
7095 DB 196,195,97,33,28,2,16 ; vinsertps $0x10,(%r10,%rax,1),%xmm3,%xmm3
7096 DB 196,129,122,16,20,186 ; vmovss (%r10,%r15,4),%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -04007097 DB 196,227,97,33,210,32 ; vinsertps $0x20,%xmm2,%xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007098 DB 196,129,122,16,28,50 ; vmovss (%r10,%r14,1),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007099 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007100 DB 196,195,109,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm2,%ymm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007101 DB 196,193,57,109,220 ; vpunpckhqdq %xmm12,%xmm8,%xmm3
7102 DB 197,185,113,243,8 ; vpsllw $0x8,%xmm3,%xmm8
Mike Kleina3735cd2017-04-17 13:19:05 -04007103 DB 197,225,113,211,8 ; vpsrlw $0x8,%xmm3,%xmm3
Mike Klein0aa742f2017-04-27 13:36:57 -04007104 DB 197,185,235,219 ; vpor %xmm3,%xmm8,%xmm3
7105 DB 196,65,97,105,193 ; vpunpckhwd %xmm9,%xmm3,%xmm8
Mike Kleina3735cd2017-04-17 13:19:05 -04007106 DB 196,226,121,51,219 ; vpmovzxwd %xmm3,%xmm3
7107 DB 196,195,101,24,216,1 ; vinsertf128 $0x1,%xmm8,%ymm3,%ymm3
7108 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04007109 DB 196,98,125,24,5,216,67,0,0 ; vbroadcastss 0x43d8(%rip),%ymm8 # 6688 <_sk_callback_avx+0x251>
Mike Kleinfe560a82017-05-01 12:56:35 -04007110 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007111 DB 72,173 ; lods %ds:(%rsi),%rax
7112 DB 91 ; pop %rbx
7113 DB 65,92 ; pop %r12
7114 DB 65,93 ; pop %r13
7115 DB 65,94 ; pop %r14
7116 DB 65,95 ; pop %r15
7117 DB 93 ; pop %rbp
7118 DB 255,224 ; jmpq *%rax
7119 DB 196,1,123,16,4,72 ; vmovsd (%r8,%r9,2),%xmm8
7120 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9
7121 DB 72,131,249,1 ; cmp $0x1,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007122 DB 116,85 ; je 2329 <_sk_load_tables_u16_be_avx+0x2ed>
Mike Kleina3735cd2017-04-17 13:19:05 -04007123 DB 196,1,57,22,68,72,8 ; vmovhpd 0x8(%r8,%r9,2),%xmm8,%xmm8
7124 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007125 DB 114,72 ; jb 2329 <_sk_load_tables_u16_be_avx+0x2ed>
Mike Kleina3735cd2017-04-17 13:19:05 -04007126 DB 196,129,123,16,84,72,16 ; vmovsd 0x10(%r8,%r9,2),%xmm2
7127 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007128 DB 116,72 ; je 2336 <_sk_load_tables_u16_be_avx+0x2fa>
Mike Kleina3735cd2017-04-17 13:19:05 -04007129 DB 196,129,105,22,84,72,24 ; vmovhpd 0x18(%r8,%r9,2),%xmm2,%xmm2
7130 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007131 DB 114,59 ; jb 2336 <_sk_load_tables_u16_be_avx+0x2fa>
Mike Kleina3735cd2017-04-17 13:19:05 -04007132 DB 196,129,123,16,92,72,32 ; vmovsd 0x20(%r8,%r9,2),%xmm3
7133 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007134 DB 15,132,97,253,255,255 ; je 206d <_sk_load_tables_u16_be_avx+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04007135 DB 196,129,97,22,92,72,40 ; vmovhpd 0x28(%r8,%r9,2),%xmm3,%xmm3
7136 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007137 DB 15,130,80,253,255,255 ; jb 206d <_sk_load_tables_u16_be_avx+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04007138 DB 196,1,122,126,76,72,48 ; vmovq 0x30(%r8,%r9,2),%xmm9
Brian Osman74fc5932017-05-22 19:25:36 +00007139 DB 233,68,253,255,255 ; jmpq 206d <_sk_load_tables_u16_be_avx+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04007140 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
7141 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2
Brian Osman74fc5932017-05-22 19:25:36 +00007142 DB 233,55,253,255,255 ; jmpq 206d <_sk_load_tables_u16_be_avx+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04007143 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
Brian Osman74fc5932017-05-22 19:25:36 +00007144 DB 233,46,253,255,255 ; jmpq 206d <_sk_load_tables_u16_be_avx+0x31>
Mike Kleina3735cd2017-04-17 13:19:05 -04007145
7146PUBLIC _sk_load_tables_rgb_u16_be_avx
7147_sk_load_tables_rgb_u16_be_avx LABEL PROC
7148 DB 72,173 ; lods %ds:(%rsi),%rax
7149 DB 76,139,0 ; mov (%rax),%r8
7150 DB 76,141,12,127 ; lea (%rdi,%rdi,2),%r9
7151 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007152 DB 15,133,93,2,0,0 ; jne 25ae <_sk_load_tables_rgb_u16_be_avx+0x26f>
Mike Kleina3735cd2017-04-17 13:19:05 -04007153 DB 196,129,122,111,4,72 ; vmovdqu (%r8,%r9,2),%xmm0
7154 DB 196,129,122,111,84,72,12 ; vmovdqu 0xc(%r8,%r9,2),%xmm2
7155 DB 196,129,122,111,76,72,24 ; vmovdqu 0x18(%r8,%r9,2),%xmm1
7156 DB 196,129,122,111,92,72,32 ; vmovdqu 0x20(%r8,%r9,2),%xmm3
7157 DB 197,225,115,219,4 ; vpsrldq $0x4,%xmm3,%xmm3
7158 DB 197,185,115,216,6 ; vpsrldq $0x6,%xmm0,%xmm8
7159 DB 197,177,115,218,6 ; vpsrldq $0x6,%xmm2,%xmm9
7160 DB 197,161,115,217,6 ; vpsrldq $0x6,%xmm1,%xmm11
7161 DB 197,169,115,219,6 ; vpsrldq $0x6,%xmm3,%xmm10
7162 DB 85 ; push %rbp
7163 DB 65,87 ; push %r15
7164 DB 65,86 ; push %r14
7165 DB 65,85 ; push %r13
7166 DB 65,84 ; push %r12
7167 DB 83 ; push %rbx
7168 DB 197,249,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm0
7169 DB 196,193,57,97,209 ; vpunpcklwd %xmm9,%xmm8,%xmm2
7170 DB 197,241,97,203 ; vpunpcklwd %xmm3,%xmm1,%xmm1
7171 DB 196,193,33,97,218 ; vpunpcklwd %xmm10,%xmm11,%xmm3
Mike Klein0aa742f2017-04-27 13:36:57 -04007172 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8
7173 DB 197,249,105,194 ; vpunpckhwd %xmm2,%xmm0,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -04007174 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007175 DB 197,241,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm3
7176 DB 197,185,108,202 ; vpunpcklqdq %xmm2,%xmm8,%xmm1
7177 DB 197,185,109,210 ; vpunpckhqdq %xmm2,%xmm8,%xmm2
7178 DB 197,121,108,195 ; vpunpcklqdq %xmm3,%xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -04007179 DB 197,121,111,13,75,70,0,0 ; vmovdqa 0x464b(%rip),%xmm9 # 6a10 <_sk_callback_avx+0x5d9>
Mike Klein0aa742f2017-04-27 13:36:57 -04007180 DB 196,193,113,219,193 ; vpand %xmm9,%xmm1,%xmm0
7181 DB 196,65,41,239,210 ; vpxor %xmm10,%xmm10,%xmm10
7182 DB 196,193,121,105,202 ; vpunpckhwd %xmm10,%xmm0,%xmm1
7183 DB 196,195,249,22,200,1 ; vpextrq $0x1,%xmm1,%r8
7184 DB 69,137,193 ; mov %r8d,%r9d
7185 DB 77,137,194 ; mov %r8,%r10
Mike Kleina3735cd2017-04-17 13:19:05 -04007186 DB 73,193,234,32 ; shr $0x20,%r10
Mike Klein0aa742f2017-04-27 13:36:57 -04007187 DB 196,193,249,126,200 ; vmovq %xmm1,%r8
7188 DB 69,137,195 ; mov %r8d,%r11d
7189 DB 77,137,198 ; mov %r8,%r14
7190 DB 73,193,238,32 ; shr $0x20,%r14
7191 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
7192 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
7193 DB 65,137,223 ; mov %ebx,%r15d
7194 DB 72,193,235,30 ; shr $0x1e,%rbx
7195 DB 196,195,249,22,196,1 ; vpextrq $0x1,%xmm0,%r12
7196 DB 69,137,229 ; mov %r12d,%r13d
7197 DB 73,193,236,30 ; shr $0x1e,%r12
Mike Kleina3735cd2017-04-17 13:19:05 -04007198 DB 72,139,104,8 ; mov 0x8(%rax),%rbp
7199 DB 76,139,64,16 ; mov 0x10(%rax),%r8
Mike Klein0aa742f2017-04-27 13:36:57 -04007200 DB 196,161,122,16,68,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm0
7201 DB 196,163,121,33,68,181,0,16 ; vinsertps $0x10,0x0(%rbp,%r14,4),%xmm0,%xmm0
7202 DB 196,161,122,16,76,141,0 ; vmovss 0x0(%rbp,%r9,4),%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -04007203 DB 196,227,121,33,193,32 ; vinsertps $0x20,%xmm1,%xmm0,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -04007204 DB 196,161,122,16,76,149,0 ; vmovss 0x0(%rbp,%r10,4),%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -04007205 DB 196,227,121,33,193,48 ; vinsertps $0x30,%xmm1,%xmm0,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -04007206 DB 196,161,122,16,76,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm1
7207 DB 196,227,113,33,76,29,0,16 ; vinsertps $0x10,0x0(%rbp,%rbx,1),%xmm1,%xmm1
7208 DB 196,161,122,16,92,173,0 ; vmovss 0x0(%rbp,%r13,4),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007209 DB 196,227,113,33,203,32 ; vinsertps $0x20,%xmm3,%xmm1,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -04007210 DB 196,161,122,16,92,37,0 ; vmovss 0x0(%rbp,%r12,1),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007211 DB 196,227,113,33,203,48 ; vinsertps $0x30,%xmm3,%xmm1,%xmm1
7212 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0
Mike Klein0aa742f2017-04-27 13:36:57 -04007213 DB 196,193,105,219,201 ; vpand %xmm9,%xmm2,%xmm1
7214 DB 196,193,113,105,210 ; vpunpckhwd %xmm10,%xmm1,%xmm2
7215 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp
7216 DB 65,137,233 ; mov %ebp,%r9d
Mike Kleina3735cd2017-04-17 13:19:05 -04007217 DB 72,193,237,32 ; shr $0x20,%rbp
Mike Klein0aa742f2017-04-27 13:36:57 -04007218 DB 196,225,249,126,211 ; vmovq %xmm2,%rbx
7219 DB 65,137,218 ; mov %ebx,%r10d
7220 DB 72,193,235,32 ; shr $0x20,%rbx
7221 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1
7222 DB 196,193,249,126,203 ; vmovq %xmm1,%r11
7223 DB 69,137,222 ; mov %r11d,%r14d
7224 DB 73,193,235,30 ; shr $0x1e,%r11
7225 DB 196,195,249,22,207,1 ; vpextrq $0x1,%xmm1,%r15
7226 DB 69,137,252 ; mov %r15d,%r12d
7227 DB 73,193,239,30 ; shr $0x1e,%r15
7228 DB 196,129,122,16,12,144 ; vmovss (%r8,%r10,4),%xmm1
7229 DB 196,195,113,33,12,152,16 ; vinsertps $0x10,(%r8,%rbx,4),%xmm1,%xmm1
7230 DB 196,129,122,16,20,136 ; vmovss (%r8,%r9,4),%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -04007231 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -04007232 DB 196,193,122,16,20,168 ; vmovss (%r8,%rbp,4),%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -04007233 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -04007234 DB 196,129,122,16,20,176 ; vmovss (%r8,%r14,4),%xmm2
7235 DB 196,131,105,33,20,24,16 ; vinsertps $0x10,(%r8,%r11,1),%xmm2,%xmm2
7236 DB 196,129,122,16,28,160 ; vmovss (%r8,%r12,4),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007237 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007238 DB 196,129,122,16,28,56 ; vmovss (%r8,%r15,1),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007239 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
7240 DB 196,227,109,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm1
Mike Klein0aa742f2017-04-27 13:36:57 -04007241 DB 76,139,80,24 ; mov 0x18(%rax),%r10
7242 DB 196,193,57,219,209 ; vpand %xmm9,%xmm8,%xmm2
7243 DB 196,193,105,105,218 ; vpunpckhwd %xmm10,%xmm2,%xmm3
7244 DB 196,227,249,22,221,1 ; vpextrq $0x1,%xmm3,%rbp
7245 DB 65,137,232 ; mov %ebp,%r8d
Mike Kleina3735cd2017-04-17 13:19:05 -04007246 DB 72,193,237,32 ; shr $0x20,%rbp
Mike Klein0aa742f2017-04-27 13:36:57 -04007247 DB 196,225,249,126,219 ; vmovq %xmm3,%rbx
7248 DB 65,137,217 ; mov %ebx,%r9d
7249 DB 72,193,235,32 ; shr $0x20,%rbx
7250 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2
7251 DB 196,225,249,126,208 ; vmovq %xmm2,%rax
7252 DB 65,137,195 ; mov %eax,%r11d
7253 DB 72,193,232,30 ; shr $0x1e,%rax
7254 DB 196,195,249,22,214,1 ; vpextrq $0x1,%xmm2,%r14
7255 DB 69,137,247 ; mov %r14d,%r15d
7256 DB 73,193,238,30 ; shr $0x1e,%r14
7257 DB 196,129,122,16,20,138 ; vmovss (%r10,%r9,4),%xmm2
7258 DB 196,195,105,33,20,154,16 ; vinsertps $0x10,(%r10,%rbx,4),%xmm2,%xmm2
7259 DB 196,129,122,16,28,130 ; vmovss (%r10,%r8,4),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007260 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007261 DB 196,193,122,16,28,170 ; vmovss (%r10,%rbp,4),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007262 DB 196,99,105,33,195,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm8
Mike Klein0aa742f2017-04-27 13:36:57 -04007263 DB 196,129,122,16,28,154 ; vmovss (%r10,%r11,4),%xmm3
7264 DB 196,195,97,33,28,2,16 ; vinsertps $0x10,(%r10,%rax,1),%xmm3,%xmm3
7265 DB 196,129,122,16,20,186 ; vmovss (%r10,%r15,4),%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -04007266 DB 196,227,97,33,210,32 ; vinsertps $0x20,%xmm2,%xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04007267 DB 196,129,122,16,28,50 ; vmovss (%r10,%r14,1),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -04007268 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
7269 DB 196,195,109,24,208,1 ; vinsertf128 $0x1,%xmm8,%ymm2,%ymm2
Mike Kleina3735cd2017-04-17 13:19:05 -04007270 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04007271 DB 196,226,125,24,29,234,64,0,0 ; vbroadcastss 0x40ea(%rip),%ymm3 # 668c <_sk_callback_avx+0x255>
Mike Kleina3735cd2017-04-17 13:19:05 -04007272 DB 91 ; pop %rbx
7273 DB 65,92 ; pop %r12
7274 DB 65,93 ; pop %r13
7275 DB 65,94 ; pop %r14
7276 DB 65,95 ; pop %r15
7277 DB 93 ; pop %rbp
7278 DB 255,224 ; jmpq *%rax
7279 DB 196,129,121,110,4,72 ; vmovd (%r8,%r9,2),%xmm0
7280 DB 196,129,121,196,68,72,4,2 ; vpinsrw $0x2,0x4(%r8,%r9,2),%xmm0,%xmm0
7281 DB 72,131,249,1 ; cmp $0x1,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007282 DB 117,5 ; jne 25c7 <_sk_load_tables_rgb_u16_be_avx+0x288>
7283 DB 233,190,253,255,255 ; jmpq 2385 <_sk_load_tables_rgb_u16_be_avx+0x46>
Mike Kleina3735cd2017-04-17 13:19:05 -04007284 DB 196,129,121,110,76,72,6 ; vmovd 0x6(%r8,%r9,2),%xmm1
7285 DB 196,1,113,196,68,72,10,2 ; vpinsrw $0x2,0xa(%r8,%r9,2),%xmm1,%xmm8
7286 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007287 DB 114,26 ; jb 25f6 <_sk_load_tables_rgb_u16_be_avx+0x2b7>
Mike Kleina3735cd2017-04-17 13:19:05 -04007288 DB 196,129,121,110,76,72,12 ; vmovd 0xc(%r8,%r9,2),%xmm1
7289 DB 196,129,113,196,84,72,16,2 ; vpinsrw $0x2,0x10(%r8,%r9,2),%xmm1,%xmm2
7290 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007291 DB 117,10 ; jne 25fb <_sk_load_tables_rgb_u16_be_avx+0x2bc>
7292 DB 233,143,253,255,255 ; jmpq 2385 <_sk_load_tables_rgb_u16_be_avx+0x46>
7293 DB 233,138,253,255,255 ; jmpq 2385 <_sk_load_tables_rgb_u16_be_avx+0x46>
Mike Kleina3735cd2017-04-17 13:19:05 -04007294 DB 196,129,121,110,76,72,18 ; vmovd 0x12(%r8,%r9,2),%xmm1
7295 DB 196,1,113,196,76,72,22,2 ; vpinsrw $0x2,0x16(%r8,%r9,2),%xmm1,%xmm9
7296 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007297 DB 114,26 ; jb 262a <_sk_load_tables_rgb_u16_be_avx+0x2eb>
Mike Kleina3735cd2017-04-17 13:19:05 -04007298 DB 196,129,121,110,76,72,24 ; vmovd 0x18(%r8,%r9,2),%xmm1
7299 DB 196,129,113,196,76,72,28,2 ; vpinsrw $0x2,0x1c(%r8,%r9,2),%xmm1,%xmm1
7300 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007301 DB 117,10 ; jne 262f <_sk_load_tables_rgb_u16_be_avx+0x2f0>
7302 DB 233,91,253,255,255 ; jmpq 2385 <_sk_load_tables_rgb_u16_be_avx+0x46>
7303 DB 233,86,253,255,255 ; jmpq 2385 <_sk_load_tables_rgb_u16_be_avx+0x46>
Mike Kleina3735cd2017-04-17 13:19:05 -04007304 DB 196,129,121,110,92,72,30 ; vmovd 0x1e(%r8,%r9,2),%xmm3
7305 DB 196,1,97,196,92,72,34,2 ; vpinsrw $0x2,0x22(%r8,%r9,2),%xmm3,%xmm11
7306 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00007307 DB 114,20 ; jb 2658 <_sk_load_tables_rgb_u16_be_avx+0x319>
Mike Kleina3735cd2017-04-17 13:19:05 -04007308 DB 196,129,121,110,92,72,36 ; vmovd 0x24(%r8,%r9,2),%xmm3
7309 DB 196,129,97,196,92,72,40,2 ; vpinsrw $0x2,0x28(%r8,%r9,2),%xmm3,%xmm3
Brian Osman74fc5932017-05-22 19:25:36 +00007310 DB 233,45,253,255,255 ; jmpq 2385 <_sk_load_tables_rgb_u16_be_avx+0x46>
7311 DB 233,40,253,255,255 ; jmpq 2385 <_sk_load_tables_rgb_u16_be_avx+0x46>
Mike Kleina3735cd2017-04-17 13:19:05 -04007312
Mike Klein40de6da2017-04-07 13:09:29 -04007313PUBLIC _sk_byte_tables_avx
7314_sk_byte_tables_avx LABEL PROC
7315 DB 85 ; push %rbp
7316 DB 65,87 ; push %r15
7317 DB 65,86 ; push %r14
7318 DB 65,85 ; push %r13
7319 DB 65,84 ; push %r12
7320 DB 83 ; push %rbx
7321 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04007322 DB 196,98,125,24,5,30,64,0,0 ; vbroadcastss 0x401e(%rip),%ymm8 # 6690 <_sk_callback_avx+0x259>
Mike Kleinfe560a82017-05-01 12:56:35 -04007323 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Klein40de6da2017-04-07 13:09:29 -04007324 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0
7325 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8
7326 DB 68,137,197 ; mov %r8d,%ebp
7327 DB 77,137,194 ; mov %r8,%r10
7328 DB 73,193,234,32 ; shr $0x20,%r10
7329 DB 196,193,249,126,192 ; vmovq %xmm0,%r8
7330 DB 69,137,195 ; mov %r8d,%r11d
7331 DB 77,137,199 ; mov %r8,%r15
7332 DB 73,193,239,32 ; shr $0x20,%r15
7333 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0
7334 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8
7335 DB 69,137,198 ; mov %r8d,%r14d
7336 DB 77,137,196 ; mov %r8,%r12
7337 DB 73,193,236,32 ; shr $0x20,%r12
7338 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
7339 DB 65,137,221 ; mov %ebx,%r13d
7340 DB 72,193,235,32 ; shr $0x20,%rbx
7341 DB 76,139,8 ; mov (%rax),%r9
7342 DB 76,139,64,8 ; mov 0x8(%rax),%r8
7343 DB 196,131,121,32,4,25,0 ; vpinsrb $0x0,(%r9,%r11,1),%xmm0,%xmm0
7344 DB 196,131,121,32,4,57,1 ; vpinsrb $0x1,(%r9,%r15,1),%xmm0,%xmm0
7345 DB 65,15,182,44,41 ; movzbl (%r9,%rbp,1),%ebp
7346 DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0
7347 DB 67,15,182,44,17 ; movzbl (%r9,%r10,1),%ebp
7348 DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0
7349 DB 196,98,121,49,200 ; vpmovzxbd %xmm0,%xmm9
7350 DB 196,131,121,32,4,41,0 ; vpinsrb $0x0,(%r9,%r13,1),%xmm0,%xmm0
7351 DB 196,195,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%rbx,1),%xmm0,%xmm0
7352 DB 67,15,182,44,49 ; movzbl (%r9,%r14,1),%ebp
7353 DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0
7354 DB 67,15,182,44,33 ; movzbl (%r9,%r12,1),%ebp
7355 DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0
7356 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0
7357 DB 196,227,53,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04007358 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007359 DB 196,98,125,24,13,108,63,0,0 ; vbroadcastss 0x3f6c(%rip),%ymm9 # 6694 <_sk_callback_avx+0x25d>
Mike Kleinfe560a82017-05-01 12:56:35 -04007360 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0
7361 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
Mike Klein40de6da2017-04-07 13:09:29 -04007362 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1
7363 DB 196,227,249,22,205,1 ; vpextrq $0x1,%xmm1,%rbp
7364 DB 65,137,233 ; mov %ebp,%r9d
7365 DB 72,193,237,32 ; shr $0x20,%rbp
7366 DB 196,225,249,126,203 ; vmovq %xmm1,%rbx
7367 DB 65,137,218 ; mov %ebx,%r10d
7368 DB 72,193,235,32 ; shr $0x20,%rbx
7369 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1
7370 DB 196,195,249,22,203,1 ; vpextrq $0x1,%xmm1,%r11
7371 DB 69,137,222 ; mov %r11d,%r14d
7372 DB 73,193,235,32 ; shr $0x20,%r11
7373 DB 196,193,249,126,207 ; vmovq %xmm1,%r15
7374 DB 69,137,252 ; mov %r15d,%r12d
7375 DB 73,193,239,32 ; shr $0x20,%r15
7376 DB 196,131,121,32,12,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm1
7377 DB 196,195,113,32,12,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm1,%xmm1
7378 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx
7379 DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1
7380 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp
7381 DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1
7382 DB 196,98,121,49,209 ; vpmovzxbd %xmm1,%xmm10
7383 DB 196,131,121,32,12,32,0 ; vpinsrb $0x0,(%r8,%r12,1),%xmm0,%xmm1
7384 DB 196,131,113,32,12,56,1 ; vpinsrb $0x1,(%r8,%r15,1),%xmm1,%xmm1
7385 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp
7386 DB 196,227,113,32,205,2 ; vpinsrb $0x2,%ebp,%xmm1,%xmm1
7387 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp
7388 DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1
7389 DB 196,226,121,49,201 ; vpmovzxbd %xmm1,%xmm1
7390 DB 196,227,45,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm10,%ymm1
7391 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04007392 DB 196,193,116,89,201 ; vmulps %ymm9,%ymm1,%ymm1
Mike Klein40de6da2017-04-07 13:09:29 -04007393 DB 76,139,64,16 ; mov 0x10(%rax),%r8
Mike Kleinfe560a82017-05-01 12:56:35 -04007394 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Klein40de6da2017-04-07 13:09:29 -04007395 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2
7396 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp
7397 DB 65,137,233 ; mov %ebp,%r9d
7398 DB 72,193,237,32 ; shr $0x20,%rbp
7399 DB 196,225,249,126,211 ; vmovq %xmm2,%rbx
7400 DB 65,137,218 ; mov %ebx,%r10d
7401 DB 72,193,235,32 ; shr $0x20,%rbx
7402 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
7403 DB 196,195,249,22,211,1 ; vpextrq $0x1,%xmm2,%r11
7404 DB 69,137,222 ; mov %r11d,%r14d
7405 DB 73,193,235,32 ; shr $0x20,%r11
7406 DB 196,193,249,126,215 ; vmovq %xmm2,%r15
7407 DB 69,137,252 ; mov %r15d,%r12d
7408 DB 73,193,239,32 ; shr $0x20,%r15
7409 DB 196,131,121,32,20,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm2
7410 DB 196,195,105,32,20,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm2,%xmm2
7411 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx
7412 DB 196,227,105,32,211,2 ; vpinsrb $0x2,%ebx,%xmm2,%xmm2
7413 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp
7414 DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2
7415 DB 196,98,121,49,210 ; vpmovzxbd %xmm2,%xmm10
7416 DB 196,131,121,32,20,32,0 ; vpinsrb $0x0,(%r8,%r12,1),%xmm0,%xmm2
7417 DB 196,131,105,32,20,56,1 ; vpinsrb $0x1,(%r8,%r15,1),%xmm2,%xmm2
7418 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp
7419 DB 196,227,105,32,213,2 ; vpinsrb $0x2,%ebp,%xmm2,%xmm2
7420 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp
7421 DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2
7422 DB 196,226,121,49,210 ; vpmovzxbd %xmm2,%xmm2
7423 DB 196,227,45,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm10,%ymm2
7424 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04007425 DB 196,193,108,89,209 ; vmulps %ymm9,%ymm2,%ymm2
Mike Klein40de6da2017-04-07 13:09:29 -04007426 DB 72,139,64,24 ; mov 0x18(%rax),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04007427 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
Mike Klein40de6da2017-04-07 13:09:29 -04007428 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3
7429 DB 196,227,249,22,221,1 ; vpextrq $0x1,%xmm3,%rbp
7430 DB 65,137,232 ; mov %ebp,%r8d
7431 DB 72,193,237,32 ; shr $0x20,%rbp
7432 DB 196,225,249,126,219 ; vmovq %xmm3,%rbx
7433 DB 65,137,217 ; mov %ebx,%r9d
7434 DB 72,193,235,32 ; shr $0x20,%rbx
7435 DB 196,227,125,25,219,1 ; vextractf128 $0x1,%ymm3,%xmm3
7436 DB 196,195,249,22,218,1 ; vpextrq $0x1,%xmm3,%r10
7437 DB 69,137,211 ; mov %r10d,%r11d
7438 DB 73,193,234,32 ; shr $0x20,%r10
7439 DB 196,193,249,126,222 ; vmovq %xmm3,%r14
7440 DB 69,137,247 ; mov %r14d,%r15d
7441 DB 73,193,238,32 ; shr $0x20,%r14
7442 DB 196,163,121,32,28,8,0 ; vpinsrb $0x0,(%rax,%r9,1),%xmm0,%xmm3
7443 DB 196,227,97,32,28,24,1 ; vpinsrb $0x1,(%rax,%rbx,1),%xmm3,%xmm3
7444 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx
7445 DB 196,227,97,32,219,2 ; vpinsrb $0x2,%ebx,%xmm3,%xmm3
7446 DB 15,182,44,40 ; movzbl (%rax,%rbp,1),%ebp
7447 DB 196,227,97,32,221,3 ; vpinsrb $0x3,%ebp,%xmm3,%xmm3
7448 DB 196,98,121,49,195 ; vpmovzxbd %xmm3,%xmm8
7449 DB 196,163,121,32,28,56,0 ; vpinsrb $0x0,(%rax,%r15,1),%xmm0,%xmm3
7450 DB 196,163,97,32,28,48,1 ; vpinsrb $0x1,(%rax,%r14,1),%xmm3,%xmm3
7451 DB 66,15,182,44,24 ; movzbl (%rax,%r11,1),%ebp
7452 DB 196,227,97,32,221,2 ; vpinsrb $0x2,%ebp,%xmm3,%xmm3
7453 DB 66,15,182,4,16 ; movzbl (%rax,%r10,1),%eax
7454 DB 196,227,97,32,216,3 ; vpinsrb $0x3,%eax,%xmm3,%xmm3
7455 DB 196,226,121,49,219 ; vpmovzxbd %xmm3,%xmm3
7456 DB 196,227,61,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm3
7457 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04007458 DB 196,193,100,89,217 ; vmulps %ymm9,%ymm3,%ymm3
Mike Klein40de6da2017-04-07 13:09:29 -04007459 DB 72,173 ; lods %ds:(%rsi),%rax
7460 DB 91 ; pop %rbx
7461 DB 65,92 ; pop %r12
7462 DB 65,93 ; pop %r13
7463 DB 65,94 ; pop %r14
7464 DB 65,95 ; pop %r15
7465 DB 93 ; pop %rbp
7466 DB 255,224 ; jmpq *%rax
7467
7468PUBLIC _sk_byte_tables_rgb_avx
7469_sk_byte_tables_rgb_avx LABEL PROC
7470 DB 85 ; push %rbp
7471 DB 65,87 ; push %r15
7472 DB 65,86 ; push %r14
7473 DB 65,85 ; push %r13
7474 DB 65,84 ; push %r12
7475 DB 83 ; push %rbx
7476 DB 72,173 ; lods %ds:(%rsi),%rax
7477 DB 68,139,64,24 ; mov 0x18(%rax),%r8d
7478 DB 65,255,200 ; dec %r8d
7479 DB 196,65,121,110,192 ; vmovd %r8d,%xmm8
7480 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8
7481 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8
7482 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
7483 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
7484 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0
7485 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8
7486 DB 68,137,197 ; mov %r8d,%ebp
7487 DB 77,137,194 ; mov %r8,%r10
7488 DB 73,193,234,32 ; shr $0x20,%r10
7489 DB 196,193,249,126,192 ; vmovq %xmm0,%r8
7490 DB 69,137,195 ; mov %r8d,%r11d
7491 DB 77,137,199 ; mov %r8,%r15
7492 DB 73,193,239,32 ; shr $0x20,%r15
7493 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0
7494 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8
7495 DB 69,137,198 ; mov %r8d,%r14d
7496 DB 77,137,196 ; mov %r8,%r12
7497 DB 73,193,236,32 ; shr $0x20,%r12
7498 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
7499 DB 65,137,221 ; mov %ebx,%r13d
7500 DB 72,193,235,32 ; shr $0x20,%rbx
7501 DB 76,139,8 ; mov (%rax),%r9
7502 DB 76,139,64,8 ; mov 0x8(%rax),%r8
7503 DB 196,131,121,32,4,25,0 ; vpinsrb $0x0,(%r9,%r11,1),%xmm0,%xmm0
7504 DB 196,131,121,32,4,57,1 ; vpinsrb $0x1,(%r9,%r15,1),%xmm0,%xmm0
7505 DB 65,15,182,44,41 ; movzbl (%r9,%rbp,1),%ebp
7506 DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0
7507 DB 67,15,182,44,17 ; movzbl (%r9,%r10,1),%ebp
7508 DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0
7509 DB 196,98,121,49,200 ; vpmovzxbd %xmm0,%xmm9
7510 DB 196,131,121,32,4,41,0 ; vpinsrb $0x0,(%r9,%r13,1),%xmm0,%xmm0
7511 DB 196,195,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%rbx,1),%xmm0,%xmm0
7512 DB 67,15,182,44,49 ; movzbl (%r9,%r14,1),%ebp
7513 DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0
7514 DB 67,15,182,44,33 ; movzbl (%r9,%r12,1),%ebp
7515 DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0
7516 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0
7517 DB 196,227,53,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -04007518 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007519 DB 196,98,125,24,13,146,60,0,0 ; vbroadcastss 0x3c92(%rip),%ymm9 # 6698 <_sk_callback_avx+0x261>
Mike Kleinfe560a82017-05-01 12:56:35 -04007520 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0
Mike Klein40de6da2017-04-07 13:09:29 -04007521 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
7522 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1
7523 DB 196,227,249,22,205,1 ; vpextrq $0x1,%xmm1,%rbp
7524 DB 65,137,233 ; mov %ebp,%r9d
7525 DB 72,193,237,32 ; shr $0x20,%rbp
7526 DB 196,225,249,126,203 ; vmovq %xmm1,%rbx
7527 DB 65,137,218 ; mov %ebx,%r10d
7528 DB 72,193,235,32 ; shr $0x20,%rbx
7529 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1
7530 DB 196,195,249,22,203,1 ; vpextrq $0x1,%xmm1,%r11
7531 DB 69,137,222 ; mov %r11d,%r14d
7532 DB 73,193,235,32 ; shr $0x20,%r11
7533 DB 196,193,249,126,207 ; vmovq %xmm1,%r15
7534 DB 69,137,252 ; mov %r15d,%r12d
7535 DB 73,193,239,32 ; shr $0x20,%r15
7536 DB 196,131,121,32,12,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm1
7537 DB 196,195,113,32,12,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm1,%xmm1
7538 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx
7539 DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1
7540 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp
7541 DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1
7542 DB 196,98,121,49,209 ; vpmovzxbd %xmm1,%xmm10
7543 DB 196,131,121,32,12,32,0 ; vpinsrb $0x0,(%r8,%r12,1),%xmm0,%xmm1
7544 DB 196,131,113,32,12,56,1 ; vpinsrb $0x1,(%r8,%r15,1),%xmm1,%xmm1
7545 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp
7546 DB 196,227,113,32,205,2 ; vpinsrb $0x2,%ebp,%xmm1,%xmm1
7547 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp
7548 DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1
7549 DB 196,226,121,49,201 ; vpmovzxbd %xmm1,%xmm1
7550 DB 196,227,45,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm10,%ymm1
7551 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04007552 DB 196,193,116,89,201 ; vmulps %ymm9,%ymm1,%ymm1
Mike Klein40de6da2017-04-07 13:09:29 -04007553 DB 72,139,64,16 ; mov 0x10(%rax),%rax
7554 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
7555 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2
7556 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp
7557 DB 65,137,232 ; mov %ebp,%r8d
7558 DB 72,193,237,32 ; shr $0x20,%rbp
7559 DB 196,225,249,126,211 ; vmovq %xmm2,%rbx
7560 DB 65,137,217 ; mov %ebx,%r9d
7561 DB 72,193,235,32 ; shr $0x20,%rbx
7562 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
7563 DB 196,195,249,22,210,1 ; vpextrq $0x1,%xmm2,%r10
7564 DB 69,137,211 ; mov %r10d,%r11d
7565 DB 73,193,234,32 ; shr $0x20,%r10
7566 DB 196,193,249,126,214 ; vmovq %xmm2,%r14
7567 DB 69,137,247 ; mov %r14d,%r15d
7568 DB 73,193,238,32 ; shr $0x20,%r14
7569 DB 196,163,121,32,20,8,0 ; vpinsrb $0x0,(%rax,%r9,1),%xmm0,%xmm2
7570 DB 196,227,105,32,20,24,1 ; vpinsrb $0x1,(%rax,%rbx,1),%xmm2,%xmm2
7571 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx
7572 DB 196,227,105,32,211,2 ; vpinsrb $0x2,%ebx,%xmm2,%xmm2
7573 DB 15,182,44,40 ; movzbl (%rax,%rbp,1),%ebp
7574 DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2
7575 DB 196,98,121,49,194 ; vpmovzxbd %xmm2,%xmm8
7576 DB 196,163,121,32,20,56,0 ; vpinsrb $0x0,(%rax,%r15,1),%xmm0,%xmm2
7577 DB 196,163,105,32,20,48,1 ; vpinsrb $0x1,(%rax,%r14,1),%xmm2,%xmm2
7578 DB 66,15,182,44,24 ; movzbl (%rax,%r11,1),%ebp
7579 DB 196,227,105,32,213,2 ; vpinsrb $0x2,%ebp,%xmm2,%xmm2
7580 DB 66,15,182,4,16 ; movzbl (%rax,%r10,1),%eax
7581 DB 196,227,105,32,208,3 ; vpinsrb $0x3,%eax,%xmm2,%xmm2
7582 DB 196,226,121,49,210 ; vpmovzxbd %xmm2,%xmm2
7583 DB 196,227,61,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm8,%ymm2
7584 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04007585 DB 196,193,108,89,209 ; vmulps %ymm9,%ymm2,%ymm2
Mike Klein40de6da2017-04-07 13:09:29 -04007586 DB 72,173 ; lods %ds:(%rsi),%rax
7587 DB 91 ; pop %rbx
7588 DB 65,92 ; pop %r12
7589 DB 65,93 ; pop %r13
7590 DB 65,94 ; pop %r14
7591 DB 65,95 ; pop %r15
7592 DB 93 ; pop %rbp
7593 DB 255,224 ; jmpq *%rax
7594
Mike Kleinc7d9c0b2017-04-17 14:43:59 -04007595PUBLIC _sk_table_r_avx
7596_sk_table_r_avx LABEL PROC
7597 DB 65,87 ; push %r15
7598 DB 65,86 ; push %r14
7599 DB 65,84 ; push %r12
7600 DB 83 ; push %rbx
7601 DB 72,173 ; lods %ds:(%rsi),%rax
7602 DB 76,139,0 ; mov (%rax),%r8
7603 DB 139,64,8 ; mov 0x8(%rax),%eax
7604 DB 255,200 ; dec %eax
7605 DB 197,121,110,192 ; vmovd %eax,%xmm8
7606 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8
7607 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8
7608 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
7609 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
7610 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0
7611 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax
7612 DB 65,137,193 ; mov %eax,%r9d
7613 DB 72,193,232,32 ; shr $0x20,%rax
7614 DB 196,193,249,126,194 ; vmovq %xmm0,%r10
7615 DB 69,137,211 ; mov %r10d,%r11d
7616 DB 73,193,234,32 ; shr $0x20,%r10
7617 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0
7618 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx
7619 DB 65,137,222 ; mov %ebx,%r14d
7620 DB 72,193,235,32 ; shr $0x20,%rbx
7621 DB 196,193,249,126,199 ; vmovq %xmm0,%r15
7622 DB 69,137,252 ; mov %r15d,%r12d
7623 DB 73,193,239,32 ; shr $0x20,%r15
7624 DB 196,129,122,16,4,160 ; vmovss (%r8,%r12,4),%xmm0
7625 DB 196,3,121,33,4,184,16 ; vinsertps $0x10,(%r8,%r15,4),%xmm0,%xmm8
7626 DB 196,129,122,16,4,176 ; vmovss (%r8,%r14,4),%xmm0
7627 DB 196,99,57,33,192,32 ; vinsertps $0x20,%xmm0,%xmm8,%xmm8
7628 DB 196,193,122,16,4,152 ; vmovss (%r8,%rbx,4),%xmm0
7629 DB 196,99,57,33,192,48 ; vinsertps $0x30,%xmm0,%xmm8,%xmm8
7630 DB 196,129,122,16,4,152 ; vmovss (%r8,%r11,4),%xmm0
7631 DB 196,3,121,33,12,144,16 ; vinsertps $0x10,(%r8,%r10,4),%xmm0,%xmm9
7632 DB 196,129,122,16,4,136 ; vmovss (%r8,%r9,4),%xmm0
7633 DB 196,99,49,33,200,32 ; vinsertps $0x20,%xmm0,%xmm9,%xmm9
7634 DB 196,193,122,16,4,128 ; vmovss (%r8,%rax,4),%xmm0
7635 DB 196,227,49,33,192,48 ; vinsertps $0x30,%xmm0,%xmm9,%xmm0
7636 DB 196,195,125,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm0,%ymm0
7637 DB 72,173 ; lods %ds:(%rsi),%rax
7638 DB 91 ; pop %rbx
7639 DB 65,92 ; pop %r12
7640 DB 65,94 ; pop %r14
7641 DB 65,95 ; pop %r15
7642 DB 255,224 ; jmpq *%rax
7643
7644PUBLIC _sk_table_g_avx
7645_sk_table_g_avx LABEL PROC
7646 DB 65,87 ; push %r15
7647 DB 65,86 ; push %r14
7648 DB 65,84 ; push %r12
7649 DB 83 ; push %rbx
7650 DB 72,173 ; lods %ds:(%rsi),%rax
7651 DB 76,139,0 ; mov (%rax),%r8
7652 DB 139,64,8 ; mov 0x8(%rax),%eax
7653 DB 255,200 ; dec %eax
7654 DB 197,121,110,192 ; vmovd %eax,%xmm8
7655 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8
7656 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8
7657 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
7658 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
7659 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1
7660 DB 196,227,249,22,200,1 ; vpextrq $0x1,%xmm1,%rax
7661 DB 65,137,193 ; mov %eax,%r9d
7662 DB 72,193,232,32 ; shr $0x20,%rax
7663 DB 196,193,249,126,202 ; vmovq %xmm1,%r10
7664 DB 69,137,211 ; mov %r10d,%r11d
7665 DB 73,193,234,32 ; shr $0x20,%r10
7666 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1
7667 DB 196,227,249,22,203,1 ; vpextrq $0x1,%xmm1,%rbx
7668 DB 65,137,222 ; mov %ebx,%r14d
7669 DB 72,193,235,32 ; shr $0x20,%rbx
7670 DB 196,193,249,126,207 ; vmovq %xmm1,%r15
7671 DB 69,137,252 ; mov %r15d,%r12d
7672 DB 73,193,239,32 ; shr $0x20,%r15
7673 DB 196,129,122,16,12,160 ; vmovss (%r8,%r12,4),%xmm1
7674 DB 196,3,113,33,4,184,16 ; vinsertps $0x10,(%r8,%r15,4),%xmm1,%xmm8
7675 DB 196,129,122,16,12,176 ; vmovss (%r8,%r14,4),%xmm1
7676 DB 196,99,57,33,193,32 ; vinsertps $0x20,%xmm1,%xmm8,%xmm8
7677 DB 196,193,122,16,12,152 ; vmovss (%r8,%rbx,4),%xmm1
7678 DB 196,99,57,33,193,48 ; vinsertps $0x30,%xmm1,%xmm8,%xmm8
7679 DB 196,129,122,16,12,152 ; vmovss (%r8,%r11,4),%xmm1
7680 DB 196,3,113,33,12,144,16 ; vinsertps $0x10,(%r8,%r10,4),%xmm1,%xmm9
7681 DB 196,129,122,16,12,136 ; vmovss (%r8,%r9,4),%xmm1
7682 DB 196,99,49,33,201,32 ; vinsertps $0x20,%xmm1,%xmm9,%xmm9
7683 DB 196,193,122,16,12,128 ; vmovss (%r8,%rax,4),%xmm1
7684 DB 196,227,49,33,201,48 ; vinsertps $0x30,%xmm1,%xmm9,%xmm1
7685 DB 196,195,117,24,200,1 ; vinsertf128 $0x1,%xmm8,%ymm1,%ymm1
7686 DB 72,173 ; lods %ds:(%rsi),%rax
7687 DB 91 ; pop %rbx
7688 DB 65,92 ; pop %r12
7689 DB 65,94 ; pop %r14
7690 DB 65,95 ; pop %r15
7691 DB 255,224 ; jmpq *%rax
7692
7693PUBLIC _sk_table_b_avx
7694_sk_table_b_avx LABEL PROC
7695 DB 65,87 ; push %r15
7696 DB 65,86 ; push %r14
7697 DB 65,84 ; push %r12
7698 DB 83 ; push %rbx
7699 DB 72,173 ; lods %ds:(%rsi),%rax
7700 DB 76,139,0 ; mov (%rax),%r8
7701 DB 139,64,8 ; mov 0x8(%rax),%eax
7702 DB 255,200 ; dec %eax
7703 DB 197,121,110,192 ; vmovd %eax,%xmm8
7704 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8
7705 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8
7706 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
7707 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2
7708 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2
7709 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax
7710 DB 65,137,193 ; mov %eax,%r9d
7711 DB 72,193,232,32 ; shr $0x20,%rax
7712 DB 196,193,249,126,210 ; vmovq %xmm2,%r10
7713 DB 69,137,211 ; mov %r10d,%r11d
7714 DB 73,193,234,32 ; shr $0x20,%r10
7715 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
7716 DB 196,227,249,22,211,1 ; vpextrq $0x1,%xmm2,%rbx
7717 DB 65,137,222 ; mov %ebx,%r14d
7718 DB 72,193,235,32 ; shr $0x20,%rbx
7719 DB 196,193,249,126,215 ; vmovq %xmm2,%r15
7720 DB 69,137,252 ; mov %r15d,%r12d
7721 DB 73,193,239,32 ; shr $0x20,%r15
7722 DB 196,129,122,16,20,160 ; vmovss (%r8,%r12,4),%xmm2
7723 DB 196,3,105,33,4,184,16 ; vinsertps $0x10,(%r8,%r15,4),%xmm2,%xmm8
7724 DB 196,129,122,16,20,176 ; vmovss (%r8,%r14,4),%xmm2
7725 DB 196,99,57,33,194,32 ; vinsertps $0x20,%xmm2,%xmm8,%xmm8
7726 DB 196,193,122,16,20,152 ; vmovss (%r8,%rbx,4),%xmm2
7727 DB 196,99,57,33,194,48 ; vinsertps $0x30,%xmm2,%xmm8,%xmm8
7728 DB 196,129,122,16,20,152 ; vmovss (%r8,%r11,4),%xmm2
7729 DB 196,3,105,33,12,144,16 ; vinsertps $0x10,(%r8,%r10,4),%xmm2,%xmm9
7730 DB 196,129,122,16,20,136 ; vmovss (%r8,%r9,4),%xmm2
7731 DB 196,99,49,33,202,32 ; vinsertps $0x20,%xmm2,%xmm9,%xmm9
7732 DB 196,193,122,16,20,128 ; vmovss (%r8,%rax,4),%xmm2
7733 DB 196,227,49,33,210,48 ; vinsertps $0x30,%xmm2,%xmm9,%xmm2
7734 DB 196,195,109,24,208,1 ; vinsertf128 $0x1,%xmm8,%ymm2,%ymm2
7735 DB 72,173 ; lods %ds:(%rsi),%rax
7736 DB 91 ; pop %rbx
7737 DB 65,92 ; pop %r12
7738 DB 65,94 ; pop %r14
7739 DB 65,95 ; pop %r15
7740 DB 255,224 ; jmpq *%rax
7741
7742PUBLIC _sk_table_a_avx
7743_sk_table_a_avx LABEL PROC
7744 DB 65,87 ; push %r15
7745 DB 65,86 ; push %r14
7746 DB 65,84 ; push %r12
7747 DB 83 ; push %rbx
7748 DB 72,173 ; lods %ds:(%rsi),%rax
7749 DB 76,139,0 ; mov (%rax),%r8
7750 DB 139,64,8 ; mov 0x8(%rax),%eax
7751 DB 255,200 ; dec %eax
7752 DB 197,121,110,192 ; vmovd %eax,%xmm8
7753 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8
7754 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8
7755 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8
7756 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3
7757 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3
7758 DB 196,227,249,22,216,1 ; vpextrq $0x1,%xmm3,%rax
7759 DB 65,137,193 ; mov %eax,%r9d
7760 DB 72,193,232,32 ; shr $0x20,%rax
7761 DB 196,193,249,126,218 ; vmovq %xmm3,%r10
7762 DB 69,137,211 ; mov %r10d,%r11d
7763 DB 73,193,234,32 ; shr $0x20,%r10
7764 DB 196,227,125,25,219,1 ; vextractf128 $0x1,%ymm3,%xmm3
7765 DB 196,227,249,22,219,1 ; vpextrq $0x1,%xmm3,%rbx
7766 DB 65,137,222 ; mov %ebx,%r14d
7767 DB 72,193,235,32 ; shr $0x20,%rbx
7768 DB 196,193,249,126,223 ; vmovq %xmm3,%r15
7769 DB 69,137,252 ; mov %r15d,%r12d
7770 DB 73,193,239,32 ; shr $0x20,%r15
7771 DB 196,129,122,16,28,160 ; vmovss (%r8,%r12,4),%xmm3
7772 DB 196,3,97,33,4,184,16 ; vinsertps $0x10,(%r8,%r15,4),%xmm3,%xmm8
7773 DB 196,129,122,16,28,176 ; vmovss (%r8,%r14,4),%xmm3
7774 DB 196,99,57,33,195,32 ; vinsertps $0x20,%xmm3,%xmm8,%xmm8
7775 DB 196,193,122,16,28,152 ; vmovss (%r8,%rbx,4),%xmm3
7776 DB 196,99,57,33,195,48 ; vinsertps $0x30,%xmm3,%xmm8,%xmm8
7777 DB 196,129,122,16,28,152 ; vmovss (%r8,%r11,4),%xmm3
7778 DB 196,3,97,33,12,144,16 ; vinsertps $0x10,(%r8,%r10,4),%xmm3,%xmm9
7779 DB 196,129,122,16,28,136 ; vmovss (%r8,%r9,4),%xmm3
7780 DB 196,99,49,33,203,32 ; vinsertps $0x20,%xmm3,%xmm9,%xmm9
7781 DB 196,193,122,16,28,128 ; vmovss (%r8,%rax,4),%xmm3
7782 DB 196,227,49,33,219,48 ; vinsertps $0x30,%xmm3,%xmm9,%xmm3
7783 DB 196,195,101,24,216,1 ; vinsertf128 $0x1,%xmm8,%ymm3,%ymm3
7784 DB 72,173 ; lods %ds:(%rsi),%rax
7785 DB 91 ; pop %rbx
7786 DB 65,92 ; pop %r12
7787 DB 65,94 ; pop %r14
7788 DB 65,95 ; pop %r15
7789 DB 255,224 ; jmpq *%rax
7790
Mike Klein44375172017-04-17 19:32:05 -04007791PUBLIC _sk_parametric_r_avx
7792_sk_parametric_r_avx LABEL PROC
7793 DB 72,173 ; lods %ds:(%rsi),%rax
7794 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
7795 DB 196,65,124,194,192,2 ; vcmpleps %ymm8,%ymm0,%ymm8
7796 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
7797 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
7798 DB 197,52,89,200 ; vmulps %ymm0,%ymm9,%ymm9
7799 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
7800 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
7801 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
7802 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0
Mike Kleinb4bbc642017-04-27 08:59:55 -04007803 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0
7804 DB 196,98,125,24,16 ; vbroadcastss (%rax),%ymm10
7805 DB 197,124,91,216 ; vcvtdq2ps %ymm0,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007806 DB 196,98,125,24,37,240,55,0,0 ; vbroadcastss 0x37f0(%rip),%ymm12 # 669c <_sk_callback_avx+0x265>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007807 DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007808 DB 196,98,125,24,37,230,55,0,0 ; vbroadcastss 0x37e6(%rip),%ymm12 # 66a0 <_sk_callback_avx+0x269>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007809 DB 196,193,124,84,196 ; vandps %ymm12,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007810 DB 196,98,125,24,37,220,55,0,0 ; vbroadcastss 0x37dc(%rip),%ymm12 # 66a4 <_sk_callback_avx+0x26d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007811 DB 196,193,124,86,196 ; vorps %ymm12,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007812 DB 196,98,125,24,37,210,55,0,0 ; vbroadcastss 0x37d2(%rip),%ymm12 # 66a8 <_sk_callback_avx+0x271>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007813 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007814 DB 196,98,125,24,37,200,55,0,0 ; vbroadcastss 0x37c8(%rip),%ymm12 # 66ac <_sk_callback_avx+0x275>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007815 DB 196,65,124,89,228 ; vmulps %ymm12,%ymm0,%ymm12
7816 DB 196,65,36,92,220 ; vsubps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007817 DB 196,98,125,24,37,185,55,0,0 ; vbroadcastss 0x37b9(%rip),%ymm12 # 66b0 <_sk_callback_avx+0x279>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007818 DB 196,193,124,88,196 ; vaddps %ymm12,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007819 DB 196,98,125,24,37,175,55,0,0 ; vbroadcastss 0x37af(%rip),%ymm12 # 66b4 <_sk_callback_avx+0x27d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007820 DB 197,156,94,192 ; vdivps %ymm0,%ymm12,%ymm0
Mike Kleinda164342017-04-19 14:33:58 -04007821 DB 197,164,92,192 ; vsubps %ymm0,%ymm11,%ymm0
Mike Kleinb4bbc642017-04-27 08:59:55 -04007822 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0
7823 DB 196,99,125,8,208,1 ; vroundps $0x1,%ymm0,%ymm10
7824 DB 196,65,124,92,210 ; vsubps %ymm10,%ymm0,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04007825 DB 196,98,125,24,29,147,55,0,0 ; vbroadcastss 0x3793(%rip),%ymm11 # 66b8 <_sk_callback_avx+0x281>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007826 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007827 DB 196,98,125,24,29,137,55,0,0 ; vbroadcastss 0x3789(%rip),%ymm11 # 66bc <_sk_callback_avx+0x285>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007828 DB 196,65,44,89,219 ; vmulps %ymm11,%ymm10,%ymm11
7829 DB 196,193,124,92,195 ; vsubps %ymm11,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007830 DB 196,98,125,24,29,122,55,0,0 ; vbroadcastss 0x377a(%rip),%ymm11 # 66c0 <_sk_callback_avx+0x289>
Mike Klein44375172017-04-17 19:32:05 -04007831 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04007832 DB 196,98,125,24,29,112,55,0,0 ; vbroadcastss 0x3770(%rip),%ymm11 # 66c4 <_sk_callback_avx+0x28d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007833 DB 196,65,36,94,210 ; vdivps %ymm10,%ymm11,%ymm10
7834 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007835 DB 196,98,125,24,21,97,55,0,0 ; vbroadcastss 0x3761(%rip),%ymm10 # 66c8 <_sk_callback_avx+0x291>
Mike Klein44375172017-04-17 19:32:05 -04007836 DB 196,193,124,89,194 ; vmulps %ymm10,%ymm0,%ymm0
Mike Klein44375172017-04-17 19:32:05 -04007837 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0
7838 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
7839 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0
7840 DB 196,195,125,74,193,128 ; vblendvps %ymm8,%ymm9,%ymm0,%ymm0
7841 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04007842 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04007843 DB 196,98,125,24,5,56,55,0,0 ; vbroadcastss 0x3738(%rip),%ymm8 # 66cc <_sk_callback_avx+0x295>
Mike Kleinfe560a82017-05-01 12:56:35 -04007844 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0
Mike Klein44375172017-04-17 19:32:05 -04007845 DB 72,173 ; lods %ds:(%rsi),%rax
7846 DB 255,224 ; jmpq *%rax
7847
7848PUBLIC _sk_parametric_g_avx
7849_sk_parametric_g_avx LABEL PROC
7850 DB 72,173 ; lods %ds:(%rsi),%rax
7851 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
7852 DB 196,65,116,194,192,2 ; vcmpleps %ymm8,%ymm1,%ymm8
7853 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
7854 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
7855 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9
7856 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
7857 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
7858 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
7859 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04007860 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1
7861 DB 196,98,125,24,16 ; vbroadcastss (%rax),%ymm10
7862 DB 197,124,91,217 ; vcvtdq2ps %ymm1,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007863 DB 196,98,125,24,37,233,54,0,0 ; vbroadcastss 0x36e9(%rip),%ymm12 # 66d0 <_sk_callback_avx+0x299>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007864 DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007865 DB 196,98,125,24,37,223,54,0,0 ; vbroadcastss 0x36df(%rip),%ymm12 # 66d4 <_sk_callback_avx+0x29d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007866 DB 196,193,116,84,204 ; vandps %ymm12,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04007867 DB 196,98,125,24,37,213,54,0,0 ; vbroadcastss 0x36d5(%rip),%ymm12 # 66d8 <_sk_callback_avx+0x2a1>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007868 DB 196,193,116,86,204 ; vorps %ymm12,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04007869 DB 196,98,125,24,37,203,54,0,0 ; vbroadcastss 0x36cb(%rip),%ymm12 # 66dc <_sk_callback_avx+0x2a5>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007870 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007871 DB 196,98,125,24,37,193,54,0,0 ; vbroadcastss 0x36c1(%rip),%ymm12 # 66e0 <_sk_callback_avx+0x2a9>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007872 DB 196,65,116,89,228 ; vmulps %ymm12,%ymm1,%ymm12
7873 DB 196,65,36,92,220 ; vsubps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007874 DB 196,98,125,24,37,178,54,0,0 ; vbroadcastss 0x36b2(%rip),%ymm12 # 66e4 <_sk_callback_avx+0x2ad>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007875 DB 196,193,116,88,204 ; vaddps %ymm12,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04007876 DB 196,98,125,24,37,168,54,0,0 ; vbroadcastss 0x36a8(%rip),%ymm12 # 66e8 <_sk_callback_avx+0x2b1>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007877 DB 197,156,94,201 ; vdivps %ymm1,%ymm12,%ymm1
Mike Kleinda164342017-04-19 14:33:58 -04007878 DB 197,164,92,201 ; vsubps %ymm1,%ymm11,%ymm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04007879 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1
7880 DB 196,99,125,8,209,1 ; vroundps $0x1,%ymm1,%ymm10
7881 DB 196,65,116,92,210 ; vsubps %ymm10,%ymm1,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04007882 DB 196,98,125,24,29,140,54,0,0 ; vbroadcastss 0x368c(%rip),%ymm11 # 66ec <_sk_callback_avx+0x2b5>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007883 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04007884 DB 196,98,125,24,29,130,54,0,0 ; vbroadcastss 0x3682(%rip),%ymm11 # 66f0 <_sk_callback_avx+0x2b9>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007885 DB 196,65,44,89,219 ; vmulps %ymm11,%ymm10,%ymm11
7886 DB 196,193,116,92,203 ; vsubps %ymm11,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04007887 DB 196,98,125,24,29,115,54,0,0 ; vbroadcastss 0x3673(%rip),%ymm11 # 66f4 <_sk_callback_avx+0x2bd>
Mike Klein44375172017-04-17 19:32:05 -04007888 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04007889 DB 196,98,125,24,29,105,54,0,0 ; vbroadcastss 0x3669(%rip),%ymm11 # 66f8 <_sk_callback_avx+0x2c1>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007890 DB 196,65,36,94,210 ; vdivps %ymm10,%ymm11,%ymm10
7891 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04007892 DB 196,98,125,24,21,90,54,0,0 ; vbroadcastss 0x365a(%rip),%ymm10 # 66fc <_sk_callback_avx+0x2c5>
Mike Klein44375172017-04-17 19:32:05 -04007893 DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1
Mike Klein44375172017-04-17 19:32:05 -04007894 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1
7895 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
7896 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1
7897 DB 196,195,117,74,201,128 ; vblendvps %ymm8,%ymm9,%ymm1,%ymm1
7898 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04007899 DB 196,193,116,95,200 ; vmaxps %ymm8,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04007900 DB 196,98,125,24,5,49,54,0,0 ; vbroadcastss 0x3631(%rip),%ymm8 # 6700 <_sk_callback_avx+0x2c9>
Mike Kleinfe560a82017-05-01 12:56:35 -04007901 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1
Mike Klein44375172017-04-17 19:32:05 -04007902 DB 72,173 ; lods %ds:(%rsi),%rax
7903 DB 255,224 ; jmpq *%rax
7904
7905PUBLIC _sk_parametric_b_avx
7906_sk_parametric_b_avx LABEL PROC
7907 DB 72,173 ; lods %ds:(%rsi),%rax
7908 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
7909 DB 196,65,108,194,192,2 ; vcmpleps %ymm8,%ymm2,%ymm8
7910 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
7911 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
7912 DB 197,52,89,202 ; vmulps %ymm2,%ymm9,%ymm9
7913 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
7914 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
7915 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
7916 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04007917 DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2
7918 DB 196,98,125,24,16 ; vbroadcastss (%rax),%ymm10
7919 DB 197,124,91,218 ; vcvtdq2ps %ymm2,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007920 DB 196,98,125,24,37,226,53,0,0 ; vbroadcastss 0x35e2(%rip),%ymm12 # 6704 <_sk_callback_avx+0x2cd>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007921 DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007922 DB 196,98,125,24,37,216,53,0,0 ; vbroadcastss 0x35d8(%rip),%ymm12 # 6708 <_sk_callback_avx+0x2d1>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007923 DB 196,193,108,84,212 ; vandps %ymm12,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04007924 DB 196,98,125,24,37,206,53,0,0 ; vbroadcastss 0x35ce(%rip),%ymm12 # 670c <_sk_callback_avx+0x2d5>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007925 DB 196,193,108,86,212 ; vorps %ymm12,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04007926 DB 196,98,125,24,37,196,53,0,0 ; vbroadcastss 0x35c4(%rip),%ymm12 # 6710 <_sk_callback_avx+0x2d9>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007927 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007928 DB 196,98,125,24,37,186,53,0,0 ; vbroadcastss 0x35ba(%rip),%ymm12 # 6714 <_sk_callback_avx+0x2dd>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007929 DB 196,65,108,89,228 ; vmulps %ymm12,%ymm2,%ymm12
7930 DB 196,65,36,92,220 ; vsubps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007931 DB 196,98,125,24,37,171,53,0,0 ; vbroadcastss 0x35ab(%rip),%ymm12 # 6718 <_sk_callback_avx+0x2e1>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007932 DB 196,193,108,88,212 ; vaddps %ymm12,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04007933 DB 196,98,125,24,37,161,53,0,0 ; vbroadcastss 0x35a1(%rip),%ymm12 # 671c <_sk_callback_avx+0x2e5>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007934 DB 197,156,94,210 ; vdivps %ymm2,%ymm12,%ymm2
Mike Kleinda164342017-04-19 14:33:58 -04007935 DB 197,164,92,210 ; vsubps %ymm2,%ymm11,%ymm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04007936 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2
7937 DB 196,99,125,8,210,1 ; vroundps $0x1,%ymm2,%ymm10
7938 DB 196,65,108,92,210 ; vsubps %ymm10,%ymm2,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04007939 DB 196,98,125,24,29,133,53,0,0 ; vbroadcastss 0x3585(%rip),%ymm11 # 6720 <_sk_callback_avx+0x2e9>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007940 DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04007941 DB 196,98,125,24,29,123,53,0,0 ; vbroadcastss 0x357b(%rip),%ymm11 # 6724 <_sk_callback_avx+0x2ed>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007942 DB 196,65,44,89,219 ; vmulps %ymm11,%ymm10,%ymm11
7943 DB 196,193,108,92,211 ; vsubps %ymm11,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04007944 DB 196,98,125,24,29,108,53,0,0 ; vbroadcastss 0x356c(%rip),%ymm11 # 6728 <_sk_callback_avx+0x2f1>
Mike Klein44375172017-04-17 19:32:05 -04007945 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04007946 DB 196,98,125,24,29,98,53,0,0 ; vbroadcastss 0x3562(%rip),%ymm11 # 672c <_sk_callback_avx+0x2f5>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007947 DB 196,65,36,94,210 ; vdivps %ymm10,%ymm11,%ymm10
7948 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04007949 DB 196,98,125,24,21,83,53,0,0 ; vbroadcastss 0x3553(%rip),%ymm10 # 6730 <_sk_callback_avx+0x2f9>
Mike Klein44375172017-04-17 19:32:05 -04007950 DB 196,193,108,89,210 ; vmulps %ymm10,%ymm2,%ymm2
Mike Klein44375172017-04-17 19:32:05 -04007951 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2
7952 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
7953 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2
7954 DB 196,195,109,74,209,128 ; vblendvps %ymm8,%ymm9,%ymm2,%ymm2
7955 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04007956 DB 196,193,108,95,208 ; vmaxps %ymm8,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04007957 DB 196,98,125,24,5,42,53,0,0 ; vbroadcastss 0x352a(%rip),%ymm8 # 6734 <_sk_callback_avx+0x2fd>
Mike Kleinfe560a82017-05-01 12:56:35 -04007958 DB 196,193,108,93,208 ; vminps %ymm8,%ymm2,%ymm2
Mike Klein44375172017-04-17 19:32:05 -04007959 DB 72,173 ; lods %ds:(%rsi),%rax
7960 DB 255,224 ; jmpq *%rax
7961
7962PUBLIC _sk_parametric_a_avx
7963_sk_parametric_a_avx LABEL PROC
7964 DB 72,173 ; lods %ds:(%rsi),%rax
7965 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8
7966 DB 196,65,100,194,192,2 ; vcmpleps %ymm8,%ymm3,%ymm8
7967 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
7968 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
7969 DB 197,52,89,203 ; vmulps %ymm3,%ymm9,%ymm9
7970 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
7971 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10
7972 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11
7973 DB 197,172,89,219 ; vmulps %ymm3,%ymm10,%ymm3
Mike Kleinb4bbc642017-04-27 08:59:55 -04007974 DB 196,193,100,88,219 ; vaddps %ymm11,%ymm3,%ymm3
7975 DB 196,98,125,24,16 ; vbroadcastss (%rax),%ymm10
7976 DB 197,124,91,219 ; vcvtdq2ps %ymm3,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007977 DB 196,98,125,24,37,219,52,0,0 ; vbroadcastss 0x34db(%rip),%ymm12 # 6738 <_sk_callback_avx+0x301>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007978 DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007979 DB 196,98,125,24,37,209,52,0,0 ; vbroadcastss 0x34d1(%rip),%ymm12 # 673c <_sk_callback_avx+0x305>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007980 DB 196,193,100,84,220 ; vandps %ymm12,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04007981 DB 196,98,125,24,37,199,52,0,0 ; vbroadcastss 0x34c7(%rip),%ymm12 # 6740 <_sk_callback_avx+0x309>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007982 DB 196,193,100,86,220 ; vorps %ymm12,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04007983 DB 196,98,125,24,37,189,52,0,0 ; vbroadcastss 0x34bd(%rip),%ymm12 # 6744 <_sk_callback_avx+0x30d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007984 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007985 DB 196,98,125,24,37,179,52,0,0 ; vbroadcastss 0x34b3(%rip),%ymm12 # 6748 <_sk_callback_avx+0x311>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007986 DB 196,65,100,89,228 ; vmulps %ymm12,%ymm3,%ymm12
7987 DB 196,65,36,92,220 ; vsubps %ymm12,%ymm11,%ymm11
Mike Klein8ca33562017-05-23 08:07:43 -04007988 DB 196,98,125,24,37,164,52,0,0 ; vbroadcastss 0x34a4(%rip),%ymm12 # 674c <_sk_callback_avx+0x315>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007989 DB 196,193,100,88,220 ; vaddps %ymm12,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04007990 DB 196,98,125,24,37,154,52,0,0 ; vbroadcastss 0x349a(%rip),%ymm12 # 6750 <_sk_callback_avx+0x319>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007991 DB 197,156,94,219 ; vdivps %ymm3,%ymm12,%ymm3
Mike Kleinda164342017-04-19 14:33:58 -04007992 DB 197,164,92,219 ; vsubps %ymm3,%ymm11,%ymm3
Mike Kleinb4bbc642017-04-27 08:59:55 -04007993 DB 197,172,89,219 ; vmulps %ymm3,%ymm10,%ymm3
7994 DB 196,99,125,8,211,1 ; vroundps $0x1,%ymm3,%ymm10
7995 DB 196,65,100,92,210 ; vsubps %ymm10,%ymm3,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04007996 DB 196,98,125,24,29,126,52,0,0 ; vbroadcastss 0x347e(%rip),%ymm11 # 6754 <_sk_callback_avx+0x31d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007997 DB 196,193,100,88,219 ; vaddps %ymm11,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04007998 DB 196,98,125,24,29,116,52,0,0 ; vbroadcastss 0x3474(%rip),%ymm11 # 6758 <_sk_callback_avx+0x321>
Mike Kleinb4bbc642017-04-27 08:59:55 -04007999 DB 196,65,44,89,219 ; vmulps %ymm11,%ymm10,%ymm11
8000 DB 196,193,100,92,219 ; vsubps %ymm11,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04008001 DB 196,98,125,24,29,101,52,0,0 ; vbroadcastss 0x3465(%rip),%ymm11 # 675c <_sk_callback_avx+0x325>
Mike Klein44375172017-04-17 19:32:05 -04008002 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04008003 DB 196,98,125,24,29,91,52,0,0 ; vbroadcastss 0x345b(%rip),%ymm11 # 6760 <_sk_callback_avx+0x329>
Mike Kleinb4bbc642017-04-27 08:59:55 -04008004 DB 196,65,36,94,210 ; vdivps %ymm10,%ymm11,%ymm10
8005 DB 196,193,100,88,218 ; vaddps %ymm10,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04008006 DB 196,98,125,24,21,76,52,0,0 ; vbroadcastss 0x344c(%rip),%ymm10 # 6764 <_sk_callback_avx+0x32d>
Mike Klein44375172017-04-17 19:32:05 -04008007 DB 196,193,100,89,218 ; vmulps %ymm10,%ymm3,%ymm3
Mike Klein44375172017-04-17 19:32:05 -04008008 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3
8009 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
8010 DB 196,193,100,88,218 ; vaddps %ymm10,%ymm3,%ymm3
8011 DB 196,195,101,74,217,128 ; vblendvps %ymm8,%ymm9,%ymm3,%ymm3
8012 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -04008013 DB 196,193,100,95,216 ; vmaxps %ymm8,%ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04008014 DB 196,98,125,24,5,35,52,0,0 ; vbroadcastss 0x3423(%rip),%ymm8 # 6768 <_sk_callback_avx+0x331>
Mike Kleinfe560a82017-05-01 12:56:35 -04008015 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3
Mike Klein44375172017-04-17 19:32:05 -04008016 DB 72,173 ; lods %ds:(%rsi),%rax
8017 DB 255,224 ; jmpq *%rax
8018
Mike Klein4e3e9f82017-04-20 11:04:29 -04008019PUBLIC _sk_lab_to_xyz_avx
8020_sk_lab_to_xyz_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -04008021 DB 196,98,125,24,5,21,52,0,0 ; vbroadcastss 0x3415(%rip),%ymm8 # 676c <_sk_callback_avx+0x335>
Mike Kleinfe560a82017-05-01 12:56:35 -04008022 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008023 DB 196,98,125,24,5,11,52,0,0 ; vbroadcastss 0x340b(%rip),%ymm8 # 6770 <_sk_callback_avx+0x339>
Mike Kleinfe560a82017-05-01 12:56:35 -04008024 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008025 DB 196,98,125,24,13,1,52,0,0 ; vbroadcastss 0x3401(%rip),%ymm9 # 6774 <_sk_callback_avx+0x33d>
Mike Kleinfe560a82017-05-01 12:56:35 -04008026 DB 196,193,116,88,201 ; vaddps %ymm9,%ymm1,%ymm1
8027 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
8028 DB 196,193,108,88,209 ; vaddps %ymm9,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008029 DB 196,98,125,24,5,237,51,0,0 ; vbroadcastss 0x33ed(%rip),%ymm8 # 6778 <_sk_callback_avx+0x341>
Mike Kleinfe560a82017-05-01 12:56:35 -04008030 DB 196,193,124,88,192 ; vaddps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008031 DB 196,98,125,24,5,227,51,0,0 ; vbroadcastss 0x33e3(%rip),%ymm8 # 677c <_sk_callback_avx+0x345>
Mike Kleinfe560a82017-05-01 12:56:35 -04008032 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008033 DB 196,98,125,24,5,217,51,0,0 ; vbroadcastss 0x33d9(%rip),%ymm8 # 6780 <_sk_callback_avx+0x349>
Mike Kleinfe560a82017-05-01 12:56:35 -04008034 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
8035 DB 197,252,88,201 ; vaddps %ymm1,%ymm0,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008036 DB 196,98,125,24,5,203,51,0,0 ; vbroadcastss 0x33cb(%rip),%ymm8 # 6784 <_sk_callback_avx+0x34d>
Mike Kleinfe560a82017-05-01 12:56:35 -04008037 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
8038 DB 197,252,92,210 ; vsubps %ymm2,%ymm0,%ymm2
8039 DB 197,116,89,193 ; vmulps %ymm1,%ymm1,%ymm8
8040 DB 196,65,116,89,192 ; vmulps %ymm8,%ymm1,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -04008041 DB 196,98,125,24,13,180,51,0,0 ; vbroadcastss 0x33b4(%rip),%ymm9 # 6788 <_sk_callback_avx+0x351>
Mike Kleinfe560a82017-05-01 12:56:35 -04008042 DB 196,65,52,194,208,1 ; vcmpltps %ymm8,%ymm9,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -04008043 DB 196,98,125,24,29,169,51,0,0 ; vbroadcastss 0x33a9(%rip),%ymm11 # 678c <_sk_callback_avx+0x355>
Mike Kleinfe560a82017-05-01 12:56:35 -04008044 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008045 DB 196,98,125,24,37,159,51,0,0 ; vbroadcastss 0x339f(%rip),%ymm12 # 6790 <_sk_callback_avx+0x359>
Mike Kleinfe560a82017-05-01 12:56:35 -04008046 DB 196,193,116,89,204 ; vmulps %ymm12,%ymm1,%ymm1
8047 DB 196,67,117,74,192,160 ; vblendvps %ymm10,%ymm8,%ymm1,%ymm8
Mike Klein4e3e9f82017-04-20 11:04:29 -04008048 DB 197,252,89,200 ; vmulps %ymm0,%ymm0,%ymm1
8049 DB 197,252,89,201 ; vmulps %ymm1,%ymm0,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04008050 DB 197,52,194,209,1 ; vcmpltps %ymm1,%ymm9,%ymm10
8051 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0
8052 DB 196,193,124,89,196 ; vmulps %ymm12,%ymm0,%ymm0
8053 DB 196,227,125,74,201,160 ; vblendvps %ymm10,%ymm1,%ymm0,%ymm1
8054 DB 197,236,89,194 ; vmulps %ymm2,%ymm2,%ymm0
8055 DB 197,236,89,192 ; vmulps %ymm0,%ymm2,%ymm0
8056 DB 197,52,194,200,1 ; vcmpltps %ymm0,%ymm9,%ymm9
8057 DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2
8058 DB 196,193,108,89,212 ; vmulps %ymm12,%ymm2,%ymm2
8059 DB 196,227,109,74,208,144 ; vblendvps %ymm9,%ymm0,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008060 DB 196,226,125,24,5,85,51,0,0 ; vbroadcastss 0x3355(%rip),%ymm0 # 6794 <_sk_callback_avx+0x35d>
Mike Klein4e3e9f82017-04-20 11:04:29 -04008061 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008062 DB 196,98,125,24,5,76,51,0,0 ; vbroadcastss 0x334c(%rip),%ymm8 # 6798 <_sk_callback_avx+0x361>
Mike Kleinfe560a82017-05-01 12:56:35 -04008063 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Klein4e3e9f82017-04-20 11:04:29 -04008064 DB 72,173 ; lods %ds:(%rsi),%rax
8065 DB 255,224 ; jmpq *%rax
8066
Mike Kleind7e06ae2017-03-29 16:33:06 -04008067PUBLIC _sk_load_a8_avx
8068_sk_load_a8_avx LABEL PROC
8069 DB 73,137,200 ; mov %rcx,%r8
8070 DB 72,173 ; lods %ds:(%rsi),%rax
8071 DB 72,139,0 ; mov (%rax),%rax
8072 DB 72,1,248 ; add %rdi,%rax
8073 DB 77,133,192 ; test %r8,%r8
Brian Osman74fc5932017-05-22 19:25:36 +00008074 DB 117,62 ; jne 34a3 <_sk_load_a8_avx+0x4e>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008075 DB 197,250,126,0 ; vmovq (%rax),%xmm0
8076 DB 196,226,121,49,200 ; vpmovzxbd %xmm0,%xmm1
8077 DB 196,227,121,4,192,229 ; vpermilps $0xe5,%xmm0,%xmm0
8078 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0
8079 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0
8080 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008081 DB 196,226,125,24,13,16,51,0,0 ; vbroadcastss 0x3310(%rip),%ymm1 # 679c <_sk_callback_avx+0x365>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008082 DB 197,252,89,217 ; vmulps %ymm1,%ymm0,%ymm3
8083 DB 72,173 ; lods %ds:(%rsi),%rax
8084 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
8085 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
8086 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
8087 DB 76,137,193 ; mov %r8,%rcx
8088 DB 255,224 ; jmpq *%rax
8089 DB 49,201 ; xor %ecx,%ecx
8090 DB 77,137,194 ; mov %r8,%r10
8091 DB 69,49,201 ; xor %r9d,%r9d
8092 DB 68,15,182,24 ; movzbl (%rax),%r11d
8093 DB 72,255,192 ; inc %rax
8094 DB 73,211,227 ; shl %cl,%r11
8095 DB 77,9,217 ; or %r11,%r9
8096 DB 72,131,193,8 ; add $0x8,%rcx
8097 DB 73,255,202 ; dec %r10
Brian Osman74fc5932017-05-22 19:25:36 +00008098 DB 117,234 ; jne 34ab <_sk_load_a8_avx+0x56>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008099 DB 196,193,249,110,193 ; vmovq %r9,%xmm0
Brian Osman74fc5932017-05-22 19:25:36 +00008100 DB 235,161 ; jmp 3469 <_sk_load_a8_avx+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008101
Mike Klein21bd3e42017-04-06 16:32:29 -04008102PUBLIC _sk_gather_a8_avx
8103_sk_gather_a8_avx LABEL PROC
8104 DB 65,87 ; push %r15
8105 DB 65,86 ; push %r14
8106 DB 65,84 ; push %r12
8107 DB 83 ; push %rbx
8108 DB 72,173 ; lods %ds:(%rsi),%rax
8109 DB 76,139,0 ; mov (%rax),%r8
8110 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2
8111 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1
8112 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3
8113 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1
8114 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
8115 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2
8116 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
8117 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3
8118 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
8119 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax
8120 DB 65,137,193 ; mov %eax,%r9d
8121 DB 72,193,232,32 ; shr $0x20,%rax
8122 DB 196,193,249,126,210 ; vmovq %xmm2,%r10
8123 DB 69,137,211 ; mov %r10d,%r11d
8124 DB 73,193,234,32 ; shr $0x20,%r10
8125 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0
8126 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
8127 DB 65,137,222 ; mov %ebx,%r14d
8128 DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15
8129 DB 69,137,252 ; mov %r15d,%r12d
8130 DB 73,193,239,32 ; shr $0x20,%r15
8131 DB 72,193,235,32 ; shr $0x20,%rbx
8132 DB 196,131,121,32,4,48,0 ; vpinsrb $0x0,(%r8,%r14,1),%xmm0,%xmm0
8133 DB 196,195,121,32,4,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm0,%xmm0
8134 DB 67,15,182,28,32 ; movzbl (%r8,%r12,1),%ebx
8135 DB 196,227,121,32,195,2 ; vpinsrb $0x2,%ebx,%xmm0,%xmm0
8136 DB 67,15,182,28,56 ; movzbl (%r8,%r15,1),%ebx
8137 DB 196,227,121,32,195,3 ; vpinsrb $0x3,%ebx,%xmm0,%xmm0
8138 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0
8139 DB 196,131,121,32,12,24,0 ; vpinsrb $0x0,(%r8,%r11,1),%xmm0,%xmm1
8140 DB 196,131,113,32,12,16,1 ; vpinsrb $0x1,(%r8,%r10,1),%xmm1,%xmm1
8141 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx
8142 DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1
8143 DB 65,15,182,4,0 ; movzbl (%r8,%rax,1),%eax
8144 DB 196,227,113,32,200,3 ; vpinsrb $0x3,%eax,%xmm1,%xmm1
8145 DB 196,226,121,49,201 ; vpmovzxbd %xmm1,%xmm1
8146 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0
8147 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008148 DB 196,226,125,24,13,5,50,0,0 ; vbroadcastss 0x3205(%rip),%ymm1 # 67a0 <_sk_callback_avx+0x369>
Mike Klein21bd3e42017-04-06 16:32:29 -04008149 DB 197,252,89,217 ; vmulps %ymm1,%ymm0,%ymm3
8150 DB 72,173 ; lods %ds:(%rsi),%rax
8151 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
8152 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
8153 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
8154 DB 91 ; pop %rbx
8155 DB 65,92 ; pop %r12
8156 DB 65,94 ; pop %r14
8157 DB 65,95 ; pop %r15
8158 DB 255,224 ; jmpq *%rax
8159
Mike Kleind7e06ae2017-03-29 16:33:06 -04008160PUBLIC _sk_store_a8_avx
8161_sk_store_a8_avx LABEL PROC
8162 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04008163 DB 76,139,16 ; mov (%rax),%r10
Mike Klein8ca33562017-05-23 08:07:43 -04008164 DB 196,98,125,24,5,224,49,0,0 ; vbroadcastss 0x31e0(%rip),%ymm8 # 67a4 <_sk_callback_avx+0x36d>
Mike Kleinfe560a82017-05-01 12:56:35 -04008165 DB 196,65,100,89,192 ; vmulps %ymm8,%ymm3,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04008166 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
8167 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9
8168 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8
8169 DB 196,65,57,103,192 ; vpackuswb %xmm8,%xmm8,%xmm8
8170 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00008171 DB 117,10 ; jne 35ed <_sk_store_a8_avx+0x37>
Mike Kleinfe560a82017-05-01 12:56:35 -04008172 DB 196,65,123,17,4,58 ; vmovsd %xmm8,(%r10,%rdi,1)
Mike Kleind7e06ae2017-03-29 16:33:06 -04008173 DB 72,173 ; lods %ds:(%rsi),%rax
8174 DB 255,224 ; jmpq *%rax
8175 DB 65,137,200 ; mov %ecx,%r8d
8176 DB 65,128,224,7 ; and $0x7,%r8b
8177 DB 65,254,200 ; dec %r8b
8178 DB 65,128,248,6 ; cmp $0x6,%r8b
Brian Osman74fc5932017-05-22 19:25:36 +00008179 DB 119,236 ; ja 35e9 <_sk_store_a8_avx+0x33>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008180 DB 196,66,121,48,192 ; vpmovzxbw %xmm8,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -04008181 DB 69,15,182,192 ; movzbl %r8b,%r8d
Brian Osman74fc5932017-05-22 19:25:36 +00008182 DB 76,141,13,67,0,0,0 ; lea 0x43(%rip),%r9 # 3650 <_sk_store_a8_avx+0x9a>
Mike Kleinfe560a82017-05-01 12:56:35 -04008183 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
8184 DB 76,1,200 ; add %r9,%rax
Mike Kleind7e06ae2017-03-29 16:33:06 -04008185 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04008186 DB 196,67,121,20,68,58,6,12 ; vpextrb $0xc,%xmm8,0x6(%r10,%rdi,1)
8187 DB 196,67,121,20,68,58,5,10 ; vpextrb $0xa,%xmm8,0x5(%r10,%rdi,1)
8188 DB 196,67,121,20,68,58,4,8 ; vpextrb $0x8,%xmm8,0x4(%r10,%rdi,1)
8189 DB 196,67,121,20,68,58,3,6 ; vpextrb $0x6,%xmm8,0x3(%r10,%rdi,1)
8190 DB 196,67,121,20,68,58,2,4 ; vpextrb $0x4,%xmm8,0x2(%r10,%rdi,1)
8191 DB 196,67,121,20,68,58,1,2 ; vpextrb $0x2,%xmm8,0x1(%r10,%rdi,1)
8192 DB 196,67,121,20,4,58,0 ; vpextrb $0x0,%xmm8,(%r10,%rdi,1)
Brian Osman74fc5932017-05-22 19:25:36 +00008193 DB 235,154 ; jmp 35e9 <_sk_store_a8_avx+0x33>
8194 DB 144 ; nop
8195 DB 246,255 ; idiv %bh
8196 DB 255 ; (bad)
8197 DB 255 ; (bad)
8198 DB 238 ; out %al,(%dx)
8199 DB 255 ; (bad)
8200 DB 255 ; (bad)
8201 DB 255,230 ; jmpq *%rsi
Mike Kleind7e06ae2017-03-29 16:33:06 -04008202 DB 255 ; (bad)
8203 DB 255 ; (bad)
8204 DB 255 ; (bad)
Brian Osman74fc5932017-05-22 19:25:36 +00008205 DB 222,255 ; fdivrp %st,%st(7)
8206 DB 255 ; (bad)
8207 DB 255,214 ; callq *%rsi
Mike Kleind7e06ae2017-03-29 16:33:06 -04008208 DB 255 ; (bad)
8209 DB 255 ; (bad)
Brian Osman74fc5932017-05-22 19:25:36 +00008210 DB 255,206 ; dec %esi
Mike Kleind7e06ae2017-03-29 16:33:06 -04008211 DB 255 ; (bad)
8212 DB 255 ; (bad)
Brian Osman74fc5932017-05-22 19:25:36 +00008213 DB 255,198 ; inc %esi
Mike Kleind7e06ae2017-03-29 16:33:06 -04008214 DB 255 ; (bad)
8215 DB 255 ; (bad)
8216 DB 255 ; .byte 0xff
8217
Mike Kleinf809fef2017-03-31 13:52:45 -04008218PUBLIC _sk_load_g8_avx
8219_sk_load_g8_avx LABEL PROC
8220 DB 73,137,200 ; mov %rcx,%r8
8221 DB 72,173 ; lods %ds:(%rsi),%rax
8222 DB 72,139,0 ; mov (%rax),%rax
8223 DB 72,1,248 ; add %rdi,%rax
8224 DB 77,133,192 ; test %r8,%r8
Brian Osman74fc5932017-05-22 19:25:36 +00008225 DB 117,67 ; jne 36bf <_sk_load_g8_avx+0x53>
Mike Kleinf809fef2017-03-31 13:52:45 -04008226 DB 197,250,126,0 ; vmovq (%rax),%xmm0
8227 DB 196,226,121,49,200 ; vpmovzxbd %xmm0,%xmm1
8228 DB 196,227,121,4,192,229 ; vpermilps $0xe5,%xmm0,%xmm0
8229 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0
8230 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0
8231 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008232 DB 196,226,125,24,13,5,49,0,0 ; vbroadcastss 0x3105(%rip),%ymm1 # 67a8 <_sk_callback_avx+0x371>
Mike Kleinf809fef2017-03-31 13:52:45 -04008233 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Kleinf809fef2017-03-31 13:52:45 -04008234 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04008235 DB 196,226,125,24,29,250,48,0,0 ; vbroadcastss 0x30fa(%rip),%ymm3 # 67ac <_sk_callback_avx+0x375>
Mike Kleinf809fef2017-03-31 13:52:45 -04008236 DB 76,137,193 ; mov %r8,%rcx
8237 DB 197,252,40,200 ; vmovaps %ymm0,%ymm1
8238 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
8239 DB 255,224 ; jmpq *%rax
8240 DB 49,201 ; xor %ecx,%ecx
8241 DB 77,137,194 ; mov %r8,%r10
8242 DB 69,49,201 ; xor %r9d,%r9d
8243 DB 68,15,182,24 ; movzbl (%rax),%r11d
8244 DB 72,255,192 ; inc %rax
8245 DB 73,211,227 ; shl %cl,%r11
8246 DB 77,9,217 ; or %r11,%r9
8247 DB 72,131,193,8 ; add $0x8,%rcx
8248 DB 73,255,202 ; dec %r10
Brian Osman74fc5932017-05-22 19:25:36 +00008249 DB 117,234 ; jne 36c7 <_sk_load_g8_avx+0x5b>
Mike Kleinf809fef2017-03-31 13:52:45 -04008250 DB 196,193,249,110,193 ; vmovq %r9,%xmm0
Brian Osman74fc5932017-05-22 19:25:36 +00008251 DB 235,156 ; jmp 3680 <_sk_load_g8_avx+0x14>
Mike Klein21bd3e42017-04-06 16:32:29 -04008252
8253PUBLIC _sk_gather_g8_avx
8254_sk_gather_g8_avx LABEL PROC
8255 DB 65,87 ; push %r15
8256 DB 65,86 ; push %r14
8257 DB 65,84 ; push %r12
8258 DB 83 ; push %rbx
8259 DB 72,173 ; lods %ds:(%rsi),%rax
8260 DB 76,139,0 ; mov (%rax),%r8
8261 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2
8262 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1
8263 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3
8264 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1
8265 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
8266 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2
8267 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
8268 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3
8269 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
8270 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax
8271 DB 65,137,193 ; mov %eax,%r9d
8272 DB 72,193,232,32 ; shr $0x20,%rax
8273 DB 196,193,249,126,210 ; vmovq %xmm2,%r10
8274 DB 69,137,211 ; mov %r10d,%r11d
8275 DB 73,193,234,32 ; shr $0x20,%r10
8276 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0
8277 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
8278 DB 65,137,222 ; mov %ebx,%r14d
8279 DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15
8280 DB 69,137,252 ; mov %r15d,%r12d
8281 DB 73,193,239,32 ; shr $0x20,%r15
8282 DB 72,193,235,32 ; shr $0x20,%rbx
8283 DB 196,131,121,32,4,48,0 ; vpinsrb $0x0,(%r8,%r14,1),%xmm0,%xmm0
8284 DB 196,195,121,32,4,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm0,%xmm0
8285 DB 67,15,182,28,32 ; movzbl (%r8,%r12,1),%ebx
8286 DB 196,227,121,32,195,2 ; vpinsrb $0x2,%ebx,%xmm0,%xmm0
8287 DB 67,15,182,28,56 ; movzbl (%r8,%r15,1),%ebx
8288 DB 196,227,121,32,195,3 ; vpinsrb $0x3,%ebx,%xmm0,%xmm0
8289 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0
8290 DB 196,131,121,32,12,24,0 ; vpinsrb $0x0,(%r8,%r11,1),%xmm0,%xmm1
8291 DB 196,131,113,32,12,16,1 ; vpinsrb $0x1,(%r8,%r10,1),%xmm1,%xmm1
8292 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx
8293 DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1
8294 DB 65,15,182,4,0 ; movzbl (%r8,%rax,1),%eax
8295 DB 196,227,113,32,200,3 ; vpinsrb $0x3,%eax,%xmm1,%xmm1
8296 DB 196,226,121,49,201 ; vpmovzxbd %xmm1,%xmm1
8297 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0
8298 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008299 DB 196,226,125,24,13,249,47,0,0 ; vbroadcastss 0x2ff9(%rip),%ymm1 # 67b0 <_sk_callback_avx+0x379>
Mike Klein21bd3e42017-04-06 16:32:29 -04008300 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein21bd3e42017-04-06 16:32:29 -04008301 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04008302 DB 196,226,125,24,29,238,47,0,0 ; vbroadcastss 0x2fee(%rip),%ymm3 # 67b4 <_sk_callback_avx+0x37d>
Mike Klein21bd3e42017-04-06 16:32:29 -04008303 DB 197,252,40,200 ; vmovaps %ymm0,%ymm1
8304 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2
8305 DB 91 ; pop %rbx
8306 DB 65,92 ; pop %r12
8307 DB 65,94 ; pop %r14
8308 DB 65,95 ; pop %r15
8309 DB 255,224 ; jmpq *%rax
Mike Kleinf809fef2017-03-31 13:52:45 -04008310
Mike Klein7d3d8722017-04-06 17:53:18 -04008311PUBLIC _sk_gather_i8_avx
8312_sk_gather_i8_avx LABEL PROC
8313 DB 72,173 ; lods %ds:(%rsi),%rax
8314 DB 73,137,192 ; mov %rax,%r8
8315 DB 77,133,192 ; test %r8,%r8
Brian Osman74fc5932017-05-22 19:25:36 +00008316 DB 116,5 ; je 37e6 <_sk_gather_i8_avx+0xf>
Mike Klein7d3d8722017-04-06 17:53:18 -04008317 DB 76,137,192 ; mov %r8,%rax
Brian Osman74fc5932017-05-22 19:25:36 +00008318 DB 235,2 ; jmp 37e8 <_sk_gather_i8_avx+0x11>
Mike Klein7d3d8722017-04-06 17:53:18 -04008319 DB 72,173 ; lods %ds:(%rsi),%rax
8320 DB 65,87 ; push %r15
8321 DB 65,86 ; push %r14
8322 DB 65,85 ; push %r13
8323 DB 65,84 ; push %r12
8324 DB 83 ; push %rbx
8325 DB 76,139,8 ; mov (%rax),%r9
8326 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2
8327 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1
8328 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3
8329 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1
8330 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
8331 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2
8332 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
8333 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3
8334 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
8335 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax
8336 DB 65,137,194 ; mov %eax,%r10d
8337 DB 72,193,232,32 ; shr $0x20,%rax
8338 DB 196,193,249,126,211 ; vmovq %xmm2,%r11
8339 DB 69,137,222 ; mov %r11d,%r14d
8340 DB 73,193,235,32 ; shr $0x20,%r11
8341 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0
8342 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
8343 DB 65,137,223 ; mov %ebx,%r15d
8344 DB 196,195,249,22,196,1 ; vpextrq $0x1,%xmm0,%r12
8345 DB 69,137,229 ; mov %r12d,%r13d
8346 DB 73,193,236,32 ; shr $0x20,%r12
8347 DB 72,193,235,32 ; shr $0x20,%rbx
8348 DB 196,131,121,32,4,49,0 ; vpinsrb $0x0,(%r9,%r14,1),%xmm0,%xmm0
8349 DB 196,131,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%r11,1),%xmm0,%xmm0
8350 DB 196,131,121,32,4,17,2 ; vpinsrb $0x2,(%r9,%r10,1),%xmm0,%xmm0
8351 DB 196,195,121,32,4,1,3 ; vpinsrb $0x3,(%r9,%rax,1),%xmm0,%xmm0
8352 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0
8353 DB 196,195,249,22,194,1 ; vpextrq $0x1,%xmm0,%r10
8354 DB 196,193,249,126,195 ; vmovq %xmm0,%r11
8355 DB 196,131,121,32,4,57,0 ; vpinsrb $0x0,(%r9,%r15,1),%xmm0,%xmm0
8356 DB 196,195,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%rbx,1),%xmm0,%xmm0
8357 DB 196,131,121,32,4,41,2 ; vpinsrb $0x2,(%r9,%r13,1),%xmm0,%xmm0
8358 DB 196,131,121,32,4,33,3 ; vpinsrb $0x3,(%r9,%r12,1),%xmm0,%xmm0
8359 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0
8360 DB 73,139,88,8 ; mov 0x8(%r8),%rbx
8361 DB 196,193,249,126,193 ; vmovq %xmm0,%r9
8362 DB 69,137,200 ; mov %r9d,%r8d
8363 DB 73,193,233,30 ; shr $0x1e,%r9
8364 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax
8365 DB 65,137,198 ; mov %eax,%r14d
8366 DB 72,193,232,30 ; shr $0x1e,%rax
8367 DB 69,137,223 ; mov %r11d,%r15d
8368 DB 73,193,235,30 ; shr $0x1e,%r11
8369 DB 69,137,212 ; mov %r10d,%r12d
8370 DB 73,193,234,30 ; shr $0x1e,%r10
8371 DB 196,161,121,110,4,131 ; vmovd (%rbx,%r8,4),%xmm0
8372 DB 196,163,121,34,4,11,1 ; vpinsrd $0x1,(%rbx,%r9,1),%xmm0,%xmm0
8373 DB 196,163,121,34,4,179,2 ; vpinsrd $0x2,(%rbx,%r14,4),%xmm0,%xmm0
8374 DB 196,99,121,34,4,3,3 ; vpinsrd $0x3,(%rbx,%rax,1),%xmm0,%xmm8
8375 DB 196,161,121,110,4,187 ; vmovd (%rbx,%r15,4),%xmm0
8376 DB 196,163,121,34,4,27,1 ; vpinsrd $0x1,(%rbx,%r11,1),%xmm0,%xmm0
8377 DB 196,163,121,34,4,163,2 ; vpinsrd $0x2,(%rbx,%r12,4),%xmm0,%xmm0
8378 DB 196,163,121,34,28,19,3 ; vpinsrd $0x3,(%rbx,%r10,1),%xmm0,%xmm3
8379 DB 196,227,61,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008380 DB 197,124,40,21,142,48,0,0 ; vmovaps 0x308e(%rip),%ymm10 # 69a0 <_sk_callback_avx+0x569>
Mike Klein0aa742f2017-04-27 13:36:57 -04008381 DB 196,193,124,84,194 ; vandps %ymm10,%ymm0,%ymm0
Mike Klein7d3d8722017-04-06 17:53:18 -04008382 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008383 DB 196,98,125,24,13,148,46,0,0 ; vbroadcastss 0x2e94(%rip),%ymm9 # 67b8 <_sk_callback_avx+0x381>
Mike Klein7d3d8722017-04-06 17:53:18 -04008384 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0
Mike Klein0aa742f2017-04-27 13:36:57 -04008385 DB 196,193,113,114,208,8 ; vpsrld $0x8,%xmm8,%xmm1
8386 DB 197,233,114,211,8 ; vpsrld $0x8,%xmm3,%xmm2
8387 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
8388 DB 196,193,116,84,202 ; vandps %ymm10,%ymm1,%ymm1
Mike Klein7d3d8722017-04-06 17:53:18 -04008389 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
8390 DB 196,193,116,89,201 ; vmulps %ymm9,%ymm1,%ymm1
Mike Klein0aa742f2017-04-27 13:36:57 -04008391 DB 196,193,33,114,208,16 ; vpsrld $0x10,%xmm8,%xmm11
Mike Klein7d3d8722017-04-06 17:53:18 -04008392 DB 197,233,114,211,16 ; vpsrld $0x10,%xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04008393 DB 196,227,37,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm11,%ymm2
8394 DB 196,193,108,84,210 ; vandps %ymm10,%ymm2,%ymm2
Mike Klein7d3d8722017-04-06 17:53:18 -04008395 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
8396 DB 196,193,108,89,209 ; vmulps %ymm9,%ymm2,%ymm2
8397 DB 196,193,57,114,208,24 ; vpsrld $0x18,%xmm8,%xmm8
8398 DB 197,225,114,211,24 ; vpsrld $0x18,%xmm3,%xmm3
8399 DB 196,227,61,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm3
8400 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
8401 DB 196,193,100,89,217 ; vmulps %ymm9,%ymm3,%ymm3
8402 DB 72,173 ; lods %ds:(%rsi),%rax
8403 DB 91 ; pop %rbx
8404 DB 65,92 ; pop %r12
8405 DB 65,93 ; pop %r13
8406 DB 65,94 ; pop %r14
8407 DB 65,95 ; pop %r15
8408 DB 255,224 ; jmpq *%rax
8409
Mike Kleind7e06ae2017-03-29 16:33:06 -04008410PUBLIC _sk_load_565_avx
8411_sk_load_565_avx LABEL PROC
8412 DB 72,173 ; lods %ds:(%rsi),%rax
8413 DB 76,139,16 ; mov (%rax),%r10
8414 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00008415 DB 15,133,128,0,0,0 ; jne 3a1c <_sk_load_565_avx+0x8e>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008416 DB 196,193,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm0
8417 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1
8418 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1
8419 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
8420 DB 196,227,125,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008421 DB 196,226,125,24,5,254,45,0,0 ; vbroadcastss 0x2dfe(%rip),%ymm0 # 67bc <_sk_callback_avx+0x385>
Mike Klein308e6242017-04-27 13:56:33 -04008422 DB 197,236,84,192 ; vandps %ymm0,%ymm2,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04008423 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008424 DB 196,226,125,24,13,241,45,0,0 ; vbroadcastss 0x2df1(%rip),%ymm1 # 67c0 <_sk_callback_avx+0x389>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008425 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008426 DB 196,226,125,24,13,232,45,0,0 ; vbroadcastss 0x2de8(%rip),%ymm1 # 67c4 <_sk_callback_avx+0x38d>
Mike Klein308e6242017-04-27 13:56:33 -04008427 DB 197,236,84,201 ; vandps %ymm1,%ymm2,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04008428 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008429 DB 196,226,125,24,29,219,45,0,0 ; vbroadcastss 0x2ddb(%rip),%ymm3 # 67c8 <_sk_callback_avx+0x391>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008430 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008431 DB 196,226,125,24,29,210,45,0,0 ; vbroadcastss 0x2dd2(%rip),%ymm3 # 67cc <_sk_callback_avx+0x395>
Mike Klein308e6242017-04-27 13:56:33 -04008432 DB 197,236,84,211 ; vandps %ymm3,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04008433 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008434 DB 196,226,125,24,29,197,45,0,0 ; vbroadcastss 0x2dc5(%rip),%ymm3 # 67d0 <_sk_callback_avx+0x399>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008435 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04008436 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04008437 DB 196,226,125,24,29,186,45,0,0 ; vbroadcastss 0x2dba(%rip),%ymm3 # 67d4 <_sk_callback_avx+0x39d>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008438 DB 255,224 ; jmpq *%rax
8439 DB 65,137,200 ; mov %ecx,%r8d
8440 DB 65,128,224,7 ; and $0x7,%r8b
8441 DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0
8442 DB 65,254,200 ; dec %r8b
8443 DB 65,128,248,6 ; cmp $0x6,%r8b
Brian Osman74fc5932017-05-22 19:25:36 +00008444 DB 15,135,110,255,255,255 ; ja 39a2 <_sk_load_565_avx+0x14>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008445 DB 69,15,182,192 ; movzbl %r8b,%r8d
Brian Osman74fc5932017-05-22 19:25:36 +00008446 DB 76,141,13,73,0,0,0 ; lea 0x49(%rip),%r9 # 3a88 <_sk_load_565_avx+0xfa>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008447 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
8448 DB 76,1,200 ; add %r9,%rax
8449 DB 255,224 ; jmpq *%rax
8450 DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0
8451 DB 196,193,121,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
8452 DB 196,193,121,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
8453 DB 196,193,121,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
8454 DB 196,193,121,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
8455 DB 196,193,121,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
8456 DB 196,193,121,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
8457 DB 196,193,121,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm0,%xmm0
Brian Osman74fc5932017-05-22 19:25:36 +00008458 DB 233,26,255,255,255 ; jmpq 39a2 <_sk_load_565_avx+0x14>
Mike Klein308e6242017-04-27 13:56:33 -04008459 DB 244 ; hlt
Mike Kleind7e06ae2017-03-29 16:33:06 -04008460 DB 255 ; (bad)
8461 DB 255 ; (bad)
8462 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04008463 DB 236 ; in (%dx),%al
8464 DB 255 ; (bad)
8465 DB 255 ; (bad)
8466 DB 255,228 ; jmpq *%rsp
Mike Kleind7e06ae2017-03-29 16:33:06 -04008467 DB 255 ; (bad)
8468 DB 255 ; (bad)
8469 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04008470 DB 220,255 ; fdivr %st,%st(7)
Mike Klein0aa742f2017-04-27 13:36:57 -04008471 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04008472 DB 255,212 ; callq *%rsp
Mike Klein0aa742f2017-04-27 13:36:57 -04008473 DB 255 ; (bad)
8474 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04008475 DB 255,204 ; dec %esp
Mike Klein0aa742f2017-04-27 13:36:57 -04008476 DB 255 ; (bad)
8477 DB 255 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -04008478 DB 255,192 ; inc %eax
Mike Kleind7e06ae2017-03-29 16:33:06 -04008479 DB 255 ; (bad)
8480 DB 255 ; (bad)
8481 DB 255 ; .byte 0xff
8482
Mike Klein21bd3e42017-04-06 16:32:29 -04008483PUBLIC _sk_gather_565_avx
8484_sk_gather_565_avx LABEL PROC
8485 DB 85 ; push %rbp
8486 DB 65,87 ; push %r15
8487 DB 65,86 ; push %r14
8488 DB 65,84 ; push %r12
8489 DB 83 ; push %rbx
8490 DB 72,173 ; lods %ds:(%rsi),%rax
8491 DB 76,139,0 ; mov (%rax),%r8
8492 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2
8493 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1
8494 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3
8495 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1
8496 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
8497 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2
8498 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
8499 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3
8500 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
8501 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax
8502 DB 65,137,193 ; mov %eax,%r9d
8503 DB 72,193,232,32 ; shr $0x20,%rax
8504 DB 196,193,249,126,210 ; vmovq %xmm2,%r10
8505 DB 69,137,211 ; mov %r10d,%r11d
8506 DB 73,193,234,32 ; shr $0x20,%r10
8507 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0
8508 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
8509 DB 65,137,222 ; mov %ebx,%r14d
8510 DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15
8511 DB 69,137,252 ; mov %r15d,%r12d
8512 DB 73,193,239,32 ; shr $0x20,%r15
8513 DB 72,193,235,32 ; shr $0x20,%rbx
8514 DB 65,15,183,28,88 ; movzwl (%r8,%rbx,2),%ebx
8515 DB 67,15,183,44,112 ; movzwl (%r8,%r14,2),%ebp
8516 DB 197,249,110,197 ; vmovd %ebp,%xmm0
8517 DB 197,249,196,195,1 ; vpinsrw $0x1,%ebx,%xmm0,%xmm0
8518 DB 67,15,183,28,96 ; movzwl (%r8,%r12,2),%ebx
8519 DB 197,249,196,195,2 ; vpinsrw $0x2,%ebx,%xmm0,%xmm0
8520 DB 67,15,183,28,120 ; movzwl (%r8,%r15,2),%ebx
8521 DB 197,249,196,195,3 ; vpinsrw $0x3,%ebx,%xmm0,%xmm0
8522 DB 67,15,183,44,88 ; movzwl (%r8,%r11,2),%ebp
8523 DB 197,249,196,197,4 ; vpinsrw $0x4,%ebp,%xmm0,%xmm0
8524 DB 67,15,183,44,80 ; movzwl (%r8,%r10,2),%ebp
8525 DB 197,249,196,197,5 ; vpinsrw $0x5,%ebp,%xmm0,%xmm0
8526 DB 67,15,183,44,72 ; movzwl (%r8,%r9,2),%ebp
8527 DB 197,249,196,197,6 ; vpinsrw $0x6,%ebp,%xmm0,%xmm0
8528 DB 65,15,183,4,64 ; movzwl (%r8,%rax,2),%eax
8529 DB 197,249,196,192,7 ; vpinsrw $0x7,%eax,%xmm0,%xmm0
8530 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1
8531 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1
8532 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
8533 DB 196,227,125,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008534 DB 196,226,125,24,5,90,44,0,0 ; vbroadcastss 0x2c5a(%rip),%ymm0 # 67d8 <_sk_callback_avx+0x3a1>
Mike Klein308e6242017-04-27 13:56:33 -04008535 DB 197,236,84,192 ; vandps %ymm0,%ymm2,%ymm0
Mike Klein21bd3e42017-04-06 16:32:29 -04008536 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008537 DB 196,226,125,24,13,77,44,0,0 ; vbroadcastss 0x2c4d(%rip),%ymm1 # 67dc <_sk_callback_avx+0x3a5>
Mike Klein21bd3e42017-04-06 16:32:29 -04008538 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008539 DB 196,226,125,24,13,68,44,0,0 ; vbroadcastss 0x2c44(%rip),%ymm1 # 67e0 <_sk_callback_avx+0x3a9>
Mike Klein308e6242017-04-27 13:56:33 -04008540 DB 197,236,84,201 ; vandps %ymm1,%ymm2,%ymm1
Mike Klein21bd3e42017-04-06 16:32:29 -04008541 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008542 DB 196,226,125,24,29,55,44,0,0 ; vbroadcastss 0x2c37(%rip),%ymm3 # 67e4 <_sk_callback_avx+0x3ad>
Mike Klein21bd3e42017-04-06 16:32:29 -04008543 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008544 DB 196,226,125,24,29,46,44,0,0 ; vbroadcastss 0x2c2e(%rip),%ymm3 # 67e8 <_sk_callback_avx+0x3b1>
Mike Klein308e6242017-04-27 13:56:33 -04008545 DB 197,236,84,211 ; vandps %ymm3,%ymm2,%ymm2
Mike Klein21bd3e42017-04-06 16:32:29 -04008546 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008547 DB 196,226,125,24,29,33,44,0,0 ; vbroadcastss 0x2c21(%rip),%ymm3 # 67ec <_sk_callback_avx+0x3b5>
Mike Klein21bd3e42017-04-06 16:32:29 -04008548 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2
Mike Klein21bd3e42017-04-06 16:32:29 -04008549 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04008550 DB 196,226,125,24,29,22,44,0,0 ; vbroadcastss 0x2c16(%rip),%ymm3 # 67f0 <_sk_callback_avx+0x3b9>
Mike Klein21bd3e42017-04-06 16:32:29 -04008551 DB 91 ; pop %rbx
8552 DB 65,92 ; pop %r12
8553 DB 65,94 ; pop %r14
8554 DB 65,95 ; pop %r15
8555 DB 93 ; pop %rbp
8556 DB 255,224 ; jmpq *%rax
8557
Mike Kleind7e06ae2017-03-29 16:33:06 -04008558PUBLIC _sk_store_565_avx
8559_sk_store_565_avx LABEL PROC
8560 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04008561 DB 76,139,16 ; mov (%rax),%r10
Mike Klein8ca33562017-05-23 08:07:43 -04008562 DB 196,98,125,24,5,2,44,0,0 ; vbroadcastss 0x2c02(%rip),%ymm8 # 67f4 <_sk_callback_avx+0x3bd>
Mike Kleinfe560a82017-05-01 12:56:35 -04008563 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04008564 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9
8565 DB 196,193,41,114,241,11 ; vpslld $0xb,%xmm9,%xmm10
8566 DB 196,67,125,25,201,1 ; vextractf128 $0x1,%ymm9,%xmm9
8567 DB 196,193,49,114,241,11 ; vpslld $0xb,%xmm9,%xmm9
8568 DB 196,67,45,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm10,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04008569 DB 196,98,125,24,21,219,43,0,0 ; vbroadcastss 0x2bdb(%rip),%ymm10 # 67f8 <_sk_callback_avx+0x3c1>
Mike Kleinfe560a82017-05-01 12:56:35 -04008570 DB 196,65,116,89,210 ; vmulps %ymm10,%ymm1,%ymm10
Mike Kleind7e06ae2017-03-29 16:33:06 -04008571 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
8572 DB 196,193,33,114,242,5 ; vpslld $0x5,%xmm10,%xmm11
8573 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10
8574 DB 196,193,41,114,242,5 ; vpslld $0x5,%xmm10,%xmm10
8575 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10
8576 DB 196,65,45,86,201 ; vorpd %ymm9,%ymm10,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04008577 DB 196,65,108,89,192 ; vmulps %ymm8,%ymm2,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04008578 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
8579 DB 196,65,53,86,192 ; vorpd %ymm8,%ymm9,%ymm8
8580 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9
8581 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8
8582 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00008583 DB 117,10 ; jne 3c6d <_sk_store_565_avx+0x89>
Mike Kleinfe560a82017-05-01 12:56:35 -04008584 DB 196,65,122,127,4,122 ; vmovdqu %xmm8,(%r10,%rdi,2)
Mike Kleind7e06ae2017-03-29 16:33:06 -04008585 DB 72,173 ; lods %ds:(%rsi),%rax
8586 DB 255,224 ; jmpq *%rax
8587 DB 65,137,200 ; mov %ecx,%r8d
8588 DB 65,128,224,7 ; and $0x7,%r8b
8589 DB 65,254,200 ; dec %r8b
8590 DB 65,128,248,6 ; cmp $0x6,%r8b
Brian Osman74fc5932017-05-22 19:25:36 +00008591 DB 119,236 ; ja 3c69 <_sk_store_565_avx+0x85>
Mike Kleinfe560a82017-05-01 12:56:35 -04008592 DB 69,15,182,192 ; movzbl %r8b,%r8d
Brian Osman74fc5932017-05-22 19:25:36 +00008593 DB 76,141,13,68,0,0,0 ; lea 0x44(%rip),%r9 # 3ccc <_sk_store_565_avx+0xe8>
Mike Kleinfe560a82017-05-01 12:56:35 -04008594 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
8595 DB 76,1,200 ; add %r9,%rax
Mike Kleind7e06ae2017-03-29 16:33:06 -04008596 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04008597 DB 196,67,121,21,68,122,12,6 ; vpextrw $0x6,%xmm8,0xc(%r10,%rdi,2)
8598 DB 196,67,121,21,68,122,10,5 ; vpextrw $0x5,%xmm8,0xa(%r10,%rdi,2)
8599 DB 196,67,121,21,68,122,8,4 ; vpextrw $0x4,%xmm8,0x8(%r10,%rdi,2)
8600 DB 196,67,121,21,68,122,6,3 ; vpextrw $0x3,%xmm8,0x6(%r10,%rdi,2)
8601 DB 196,67,121,21,68,122,4,2 ; vpextrw $0x2,%xmm8,0x4(%r10,%rdi,2)
8602 DB 196,67,121,21,68,122,2,1 ; vpextrw $0x1,%xmm8,0x2(%r10,%rdi,2)
8603 DB 196,67,121,21,4,122,0 ; vpextrw $0x0,%xmm8,(%r10,%rdi,2)
Brian Osman74fc5932017-05-22 19:25:36 +00008604 DB 235,159 ; jmp 3c69 <_sk_store_565_avx+0x85>
Mike Kleinfe560a82017-05-01 12:56:35 -04008605 DB 102,144 ; xchg %ax,%ax
8606 DB 245 ; cmc
Mike Kleind7e06ae2017-03-29 16:33:06 -04008607 DB 255 ; (bad)
8608 DB 255 ; (bad)
8609 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008610 DB 237 ; in (%dx),%eax
Mike Kleind7e06ae2017-03-29 16:33:06 -04008611 DB 255 ; (bad)
8612 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008613 DB 255,229 ; jmpq *%rbp
Mike Kleind7e06ae2017-03-29 16:33:06 -04008614 DB 255 ; (bad)
8615 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008616 DB 255 ; (bad)
8617 DB 221,255 ; (bad)
8618 DB 255 ; (bad)
8619 DB 255,213 ; callq *%rbp
8620 DB 255 ; (bad)
8621 DB 255 ; (bad)
8622 DB 255,205 ; dec %ebp
8623 DB 255 ; (bad)
8624 DB 255 ; (bad)
8625 DB 255,197 ; inc %ebp
Mike Kleind7e06ae2017-03-29 16:33:06 -04008626 DB 255 ; (bad)
8627 DB 255 ; (bad)
8628 DB 255 ; .byte 0xff
8629
Mike Kleinf809fef2017-03-31 13:52:45 -04008630PUBLIC _sk_load_4444_avx
8631_sk_load_4444_avx LABEL PROC
8632 DB 72,173 ; lods %ds:(%rsi),%rax
8633 DB 76,139,16 ; mov (%rax),%r10
8634 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00008635 DB 15,133,152,0,0,0 ; jne 3d8e <_sk_load_4444_avx+0xa6>
Mike Kleinf809fef2017-03-31 13:52:45 -04008636 DB 196,193,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm0
8637 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1
8638 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1
8639 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
Mike Klein308e6242017-04-27 13:56:33 -04008640 DB 196,227,125,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04008641 DB 196,226,125,24,5,228,42,0,0 ; vbroadcastss 0x2ae4(%rip),%ymm0 # 67fc <_sk_callback_avx+0x3c5>
Mike Klein308e6242017-04-27 13:56:33 -04008642 DB 197,228,84,192 ; vandps %ymm0,%ymm3,%ymm0
Mike Kleinf809fef2017-03-31 13:52:45 -04008643 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008644 DB 196,226,125,24,13,215,42,0,0 ; vbroadcastss 0x2ad7(%rip),%ymm1 # 6800 <_sk_callback_avx+0x3c9>
Mike Kleinf809fef2017-03-31 13:52:45 -04008645 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008646 DB 196,226,125,24,13,206,42,0,0 ; vbroadcastss 0x2ace(%rip),%ymm1 # 6804 <_sk_callback_avx+0x3cd>
Mike Klein308e6242017-04-27 13:56:33 -04008647 DB 197,228,84,201 ; vandps %ymm1,%ymm3,%ymm1
Mike Kleinf809fef2017-03-31 13:52:45 -04008648 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008649 DB 196,226,125,24,21,193,42,0,0 ; vbroadcastss 0x2ac1(%rip),%ymm2 # 6808 <_sk_callback_avx+0x3d1>
Mike Kleinf809fef2017-03-31 13:52:45 -04008650 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008651 DB 196,226,125,24,21,184,42,0,0 ; vbroadcastss 0x2ab8(%rip),%ymm2 # 680c <_sk_callback_avx+0x3d5>
Mike Klein308e6242017-04-27 13:56:33 -04008652 DB 197,228,84,210 ; vandps %ymm2,%ymm3,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04008653 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008654 DB 196,98,125,24,5,171,42,0,0 ; vbroadcastss 0x2aab(%rip),%ymm8 # 6810 <_sk_callback_avx+0x3d9>
Mike Kleinfe560a82017-05-01 12:56:35 -04008655 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008656 DB 196,98,125,24,5,161,42,0,0 ; vbroadcastss 0x2aa1(%rip),%ymm8 # 6814 <_sk_callback_avx+0x3dd>
Mike Klein308e6242017-04-27 13:56:33 -04008657 DB 196,193,100,84,216 ; vandps %ymm8,%ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04008658 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04008659 DB 196,98,125,24,5,147,42,0,0 ; vbroadcastss 0x2a93(%rip),%ymm8 # 6818 <_sk_callback_avx+0x3e1>
Mike Kleinfe560a82017-05-01 12:56:35 -04008660 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
Mike Kleinf809fef2017-03-31 13:52:45 -04008661 DB 72,173 ; lods %ds:(%rsi),%rax
8662 DB 255,224 ; jmpq *%rax
8663 DB 65,137,200 ; mov %ecx,%r8d
8664 DB 65,128,224,7 ; and $0x7,%r8b
8665 DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0
8666 DB 65,254,200 ; dec %r8b
8667 DB 65,128,248,6 ; cmp $0x6,%r8b
Brian Osman74fc5932017-05-22 19:25:36 +00008668 DB 15,135,86,255,255,255 ; ja 3cfc <_sk_load_4444_avx+0x14>
Mike Kleinf809fef2017-03-31 13:52:45 -04008669 DB 69,15,182,192 ; movzbl %r8b,%r8d
Brian Osman74fc5932017-05-22 19:25:36 +00008670 DB 76,141,13,75,0,0,0 ; lea 0x4b(%rip),%r9 # 3dfc <_sk_load_4444_avx+0x114>
Mike Kleinf809fef2017-03-31 13:52:45 -04008671 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
8672 DB 76,1,200 ; add %r9,%rax
8673 DB 255,224 ; jmpq *%rax
8674 DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0
8675 DB 196,193,121,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0
8676 DB 196,193,121,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0
8677 DB 196,193,121,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0
8678 DB 196,193,121,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0
8679 DB 196,193,121,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0
8680 DB 196,193,121,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0
8681 DB 196,193,121,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm0,%xmm0
Brian Osman74fc5932017-05-22 19:25:36 +00008682 DB 233,2,255,255,255 ; jmpq 3cfc <_sk_load_4444_avx+0x14>
Mike Kleinfe560a82017-05-01 12:56:35 -04008683 DB 102,144 ; xchg %ax,%ax
8684 DB 242,255 ; repnz (bad)
8685 DB 255 ; (bad)
8686 DB 255 ; (bad)
8687 DB 234 ; (bad)
8688 DB 255 ; (bad)
8689 DB 255 ; (bad)
8690 DB 255,226 ; jmpq *%rdx
Mike Kleinf809fef2017-03-31 13:52:45 -04008691 DB 255 ; (bad)
8692 DB 255 ; (bad)
8693 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008694 DB 218,255 ; (bad)
8695 DB 255 ; (bad)
8696 DB 255,210 ; callq *%rdx
Mike Kleinf809fef2017-03-31 13:52:45 -04008697 DB 255 ; (bad)
8698 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008699 DB 255,202 ; dec %edx
Mike Kleinf809fef2017-03-31 13:52:45 -04008700 DB 255 ; (bad)
8701 DB 255 ; (bad)
8702 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008703 DB 190 ; .byte 0xbe
Mike Kleinf809fef2017-03-31 13:52:45 -04008704 DB 255 ; (bad)
8705 DB 255 ; (bad)
8706 DB 255 ; .byte 0xff
8707
Mike Klein21bd3e42017-04-06 16:32:29 -04008708PUBLIC _sk_gather_4444_avx
8709_sk_gather_4444_avx LABEL PROC
8710 DB 85 ; push %rbp
8711 DB 65,87 ; push %r15
8712 DB 65,86 ; push %r14
8713 DB 65,84 ; push %r12
8714 DB 83 ; push %rbx
8715 DB 72,173 ; lods %ds:(%rsi),%rax
8716 DB 76,139,0 ; mov (%rax),%r8
8717 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2
8718 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1
8719 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3
8720 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1
8721 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
8722 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2
8723 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
8724 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3
8725 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
8726 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax
8727 DB 65,137,193 ; mov %eax,%r9d
8728 DB 72,193,232,32 ; shr $0x20,%rax
8729 DB 196,193,249,126,210 ; vmovq %xmm2,%r10
8730 DB 69,137,211 ; mov %r10d,%r11d
8731 DB 73,193,234,32 ; shr $0x20,%r10
8732 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0
8733 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
8734 DB 65,137,222 ; mov %ebx,%r14d
8735 DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15
8736 DB 69,137,252 ; mov %r15d,%r12d
8737 DB 73,193,239,32 ; shr $0x20,%r15
8738 DB 72,193,235,32 ; shr $0x20,%rbx
8739 DB 65,15,183,28,88 ; movzwl (%r8,%rbx,2),%ebx
8740 DB 67,15,183,44,112 ; movzwl (%r8,%r14,2),%ebp
8741 DB 197,249,110,197 ; vmovd %ebp,%xmm0
8742 DB 197,249,196,195,1 ; vpinsrw $0x1,%ebx,%xmm0,%xmm0
8743 DB 67,15,183,28,96 ; movzwl (%r8,%r12,2),%ebx
8744 DB 197,249,196,195,2 ; vpinsrw $0x2,%ebx,%xmm0,%xmm0
8745 DB 67,15,183,28,120 ; movzwl (%r8,%r15,2),%ebx
8746 DB 197,249,196,195,3 ; vpinsrw $0x3,%ebx,%xmm0,%xmm0
8747 DB 67,15,183,44,88 ; movzwl (%r8,%r11,2),%ebp
8748 DB 197,249,196,197,4 ; vpinsrw $0x4,%ebp,%xmm0,%xmm0
8749 DB 67,15,183,44,80 ; movzwl (%r8,%r10,2),%ebp
8750 DB 197,249,196,197,5 ; vpinsrw $0x5,%ebp,%xmm0,%xmm0
8751 DB 67,15,183,44,72 ; movzwl (%r8,%r9,2),%ebp
8752 DB 197,249,196,197,6 ; vpinsrw $0x6,%ebp,%xmm0,%xmm0
8753 DB 65,15,183,4,64 ; movzwl (%r8,%rax,2),%eax
8754 DB 197,249,196,192,7 ; vpinsrw $0x7,%eax,%xmm0,%xmm0
8755 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1
8756 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1
8757 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
Mike Klein308e6242017-04-27 13:56:33 -04008758 DB 196,227,125,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04008759 DB 196,226,125,24,5,42,41,0,0 ; vbroadcastss 0x292a(%rip),%ymm0 # 681c <_sk_callback_avx+0x3e5>
Mike Klein308e6242017-04-27 13:56:33 -04008760 DB 197,228,84,192 ; vandps %ymm0,%ymm3,%ymm0
Mike Klein21bd3e42017-04-06 16:32:29 -04008761 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008762 DB 196,226,125,24,13,29,41,0,0 ; vbroadcastss 0x291d(%rip),%ymm1 # 6820 <_sk_callback_avx+0x3e9>
Mike Klein21bd3e42017-04-06 16:32:29 -04008763 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008764 DB 196,226,125,24,13,20,41,0,0 ; vbroadcastss 0x2914(%rip),%ymm1 # 6824 <_sk_callback_avx+0x3ed>
Mike Klein308e6242017-04-27 13:56:33 -04008765 DB 197,228,84,201 ; vandps %ymm1,%ymm3,%ymm1
Mike Klein21bd3e42017-04-06 16:32:29 -04008766 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008767 DB 196,226,125,24,21,7,41,0,0 ; vbroadcastss 0x2907(%rip),%ymm2 # 6828 <_sk_callback_avx+0x3f1>
Mike Klein21bd3e42017-04-06 16:32:29 -04008768 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -04008769 DB 196,226,125,24,21,254,40,0,0 ; vbroadcastss 0x28fe(%rip),%ymm2 # 682c <_sk_callback_avx+0x3f5>
Mike Klein308e6242017-04-27 13:56:33 -04008770 DB 197,228,84,210 ; vandps %ymm2,%ymm3,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04008771 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008772 DB 196,98,125,24,5,241,40,0,0 ; vbroadcastss 0x28f1(%rip),%ymm8 # 6830 <_sk_callback_avx+0x3f9>
Mike Kleinfe560a82017-05-01 12:56:35 -04008773 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Mike Klein8ca33562017-05-23 08:07:43 -04008774 DB 196,98,125,24,5,231,40,0,0 ; vbroadcastss 0x28e7(%rip),%ymm8 # 6834 <_sk_callback_avx+0x3fd>
Mike Klein308e6242017-04-27 13:56:33 -04008775 DB 196,193,100,84,216 ; vandps %ymm8,%ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04008776 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Klein8ca33562017-05-23 08:07:43 -04008777 DB 196,98,125,24,5,217,40,0,0 ; vbroadcastss 0x28d9(%rip),%ymm8 # 6838 <_sk_callback_avx+0x401>
Mike Kleinfe560a82017-05-01 12:56:35 -04008778 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
Mike Klein21bd3e42017-04-06 16:32:29 -04008779 DB 72,173 ; lods %ds:(%rsi),%rax
8780 DB 91 ; pop %rbx
8781 DB 65,92 ; pop %r12
8782 DB 65,94 ; pop %r14
8783 DB 65,95 ; pop %r15
8784 DB 93 ; pop %rbp
8785 DB 255,224 ; jmpq *%rax
8786
Mike Kleinf809fef2017-03-31 13:52:45 -04008787PUBLIC _sk_store_4444_avx
8788_sk_store_4444_avx LABEL PROC
8789 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04008790 DB 76,139,16 ; mov (%rax),%r10
Mike Klein8ca33562017-05-23 08:07:43 -04008791 DB 196,98,125,24,5,190,40,0,0 ; vbroadcastss 0x28be(%rip),%ymm8 # 683c <_sk_callback_avx+0x405>
Mike Kleinfe560a82017-05-01 12:56:35 -04008792 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Kleinf809fef2017-03-31 13:52:45 -04008793 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9
8794 DB 196,193,41,114,241,12 ; vpslld $0xc,%xmm9,%xmm10
8795 DB 196,67,125,25,201,1 ; vextractf128 $0x1,%ymm9,%xmm9
8796 DB 196,193,49,114,241,12 ; vpslld $0xc,%xmm9,%xmm9
8797 DB 196,67,45,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm10,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04008798 DB 196,65,116,89,208 ; vmulps %ymm8,%ymm1,%ymm10
Mike Kleinf809fef2017-03-31 13:52:45 -04008799 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
8800 DB 196,193,33,114,242,8 ; vpslld $0x8,%xmm10,%xmm11
8801 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10
8802 DB 196,193,41,114,242,8 ; vpslld $0x8,%xmm10,%xmm10
8803 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10
8804 DB 196,65,45,86,201 ; vorpd %ymm9,%ymm10,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04008805 DB 196,65,108,89,208 ; vmulps %ymm8,%ymm2,%ymm10
Mike Kleinf809fef2017-03-31 13:52:45 -04008806 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
8807 DB 196,193,33,114,242,4 ; vpslld $0x4,%xmm10,%xmm11
8808 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10
8809 DB 196,193,41,114,242,4 ; vpslld $0x4,%xmm10,%xmm10
8810 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -04008811 DB 196,65,100,89,192 ; vmulps %ymm8,%ymm3,%ymm8
Mike Kleinf809fef2017-03-31 13:52:45 -04008812 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
8813 DB 196,65,45,86,192 ; vorpd %ymm8,%ymm10,%ymm8
8814 DB 196,65,53,86,192 ; vorpd %ymm8,%ymm9,%ymm8
8815 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9
8816 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8
8817 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00008818 DB 117,10 ; jne 4017 <_sk_store_4444_avx+0xa7>
Mike Kleinfe560a82017-05-01 12:56:35 -04008819 DB 196,65,122,127,4,122 ; vmovdqu %xmm8,(%r10,%rdi,2)
Mike Kleinf809fef2017-03-31 13:52:45 -04008820 DB 72,173 ; lods %ds:(%rsi),%rax
8821 DB 255,224 ; jmpq *%rax
8822 DB 65,137,200 ; mov %ecx,%r8d
8823 DB 65,128,224,7 ; and $0x7,%r8b
8824 DB 65,254,200 ; dec %r8b
8825 DB 65,128,248,6 ; cmp $0x6,%r8b
Brian Osman74fc5932017-05-22 19:25:36 +00008826 DB 119,236 ; ja 4013 <_sk_store_4444_avx+0xa3>
Mike Kleinfe560a82017-05-01 12:56:35 -04008827 DB 69,15,182,192 ; movzbl %r8b,%r8d
Brian Osman74fc5932017-05-22 19:25:36 +00008828 DB 76,141,13,66,0,0,0 ; lea 0x42(%rip),%r9 # 4074 <_sk_store_4444_avx+0x104>
Mike Kleinfe560a82017-05-01 12:56:35 -04008829 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
8830 DB 76,1,200 ; add %r9,%rax
Mike Kleinf809fef2017-03-31 13:52:45 -04008831 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04008832 DB 196,67,121,21,68,122,12,6 ; vpextrw $0x6,%xmm8,0xc(%r10,%rdi,2)
8833 DB 196,67,121,21,68,122,10,5 ; vpextrw $0x5,%xmm8,0xa(%r10,%rdi,2)
8834 DB 196,67,121,21,68,122,8,4 ; vpextrw $0x4,%xmm8,0x8(%r10,%rdi,2)
8835 DB 196,67,121,21,68,122,6,3 ; vpextrw $0x3,%xmm8,0x6(%r10,%rdi,2)
8836 DB 196,67,121,21,68,122,4,2 ; vpextrw $0x2,%xmm8,0x4(%r10,%rdi,2)
8837 DB 196,67,121,21,68,122,2,1 ; vpextrw $0x1,%xmm8,0x2(%r10,%rdi,2)
8838 DB 196,67,121,21,4,122,0 ; vpextrw $0x0,%xmm8,(%r10,%rdi,2)
Brian Osman74fc5932017-05-22 19:25:36 +00008839 DB 235,159 ; jmp 4013 <_sk_store_4444_avx+0xa3>
Mike Kleinfe560a82017-05-01 12:56:35 -04008840 DB 247,255 ; idiv %edi
8841 DB 255 ; (bad)
8842 DB 255 ; (bad)
8843 DB 239 ; out %eax,(%dx)
8844 DB 255 ; (bad)
8845 DB 255 ; (bad)
8846 DB 255,231 ; jmpq *%rdi
Mike Kleinf809fef2017-03-31 13:52:45 -04008847 DB 255 ; (bad)
8848 DB 255 ; (bad)
8849 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008850 DB 223,255 ; (bad)
8851 DB 255 ; (bad)
8852 DB 255,215 ; callq *%rdi
Mike Kleinf809fef2017-03-31 13:52:45 -04008853 DB 255 ; (bad)
8854 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008855 DB 255,207 ; dec %edi
Mike Kleinf809fef2017-03-31 13:52:45 -04008856 DB 255 ; (bad)
8857 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04008858 DB 255,199 ; inc %edi
Mike Kleinf809fef2017-03-31 13:52:45 -04008859 DB 255 ; (bad)
8860 DB 255 ; (bad)
8861 DB 255 ; .byte 0xff
8862
Mike Kleind7e06ae2017-03-29 16:33:06 -04008863PUBLIC _sk_load_8888_avx
8864_sk_load_8888_avx LABEL PROC
8865 DB 72,173 ; lods %ds:(%rsi),%rax
Brian Osman74fc5932017-05-22 19:25:36 +00008866 DB 76,139,16 ; mov (%rax),%r10
8867 DB 72,133,201 ; test %rcx,%rcx
8868 DB 15,133,135,0,0,0 ; jne 4125 <_sk_load_8888_avx+0x95>
8869 DB 196,65,124,16,12,186 ; vmovups (%r10,%rdi,4),%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04008870 DB 197,124,40,21,20,41,0,0 ; vmovaps 0x2914(%rip),%ymm10 # 69c0 <_sk_callback_avx+0x589>
Brian Osman74fc5932017-05-22 19:25:36 +00008871 DB 196,193,52,84,194 ; vandps %ymm10,%ymm9,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04008872 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008873 DB 196,98,125,24,5,130,39,0,0 ; vbroadcastss 0x2782(%rip),%ymm8 # 6840 <_sk_callback_avx+0x409>
Mike Kleind7e06ae2017-03-29 16:33:06 -04008874 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0
Brian Osman74fc5932017-05-22 19:25:36 +00008875 DB 196,193,113,114,209,8 ; vpsrld $0x8,%xmm9,%xmm1
8876 DB 196,99,125,25,203,1 ; vextractf128 $0x1,%ymm9,%xmm3
8877 DB 197,233,114,211,8 ; vpsrld $0x8,%xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04008878 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
8879 DB 196,193,116,84,202 ; vandps %ymm10,%ymm1,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04008880 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
8881 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1
Brian Osman74fc5932017-05-22 19:25:36 +00008882 DB 196,193,33,114,209,16 ; vpsrld $0x10,%xmm9,%xmm11
8883 DB 197,233,114,211,16 ; vpsrld $0x10,%xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04008884 DB 196,227,37,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm11,%ymm2
8885 DB 196,193,108,84,210 ; vandps %ymm10,%ymm2,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04008886 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
8887 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2
Brian Osman74fc5932017-05-22 19:25:36 +00008888 DB 196,193,49,114,209,24 ; vpsrld $0x18,%xmm9,%xmm9
8889 DB 197,225,114,211,24 ; vpsrld $0x18,%xmm3,%xmm3
8890 DB 196,227,53,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm9,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04008891 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
8892 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3
8893 DB 72,173 ; lods %ds:(%rsi),%rax
8894 DB 255,224 ; jmpq *%rax
Brian Osman74fc5932017-05-22 19:25:36 +00008895 DB 65,137,200 ; mov %ecx,%r8d
8896 DB 65,128,224,7 ; and $0x7,%r8b
8897 DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9
8898 DB 65,254,200 ; dec %r8b
8899 DB 65,128,248,6 ; cmp $0x6,%r8b
8900 DB 15,135,102,255,255,255 ; ja 40a4 <_sk_load_8888_avx+0x14>
8901 DB 69,15,182,192 ; movzbl %r8b,%r8d
8902 DB 76,141,13,139,0,0,0 ; lea 0x8b(%rip),%r9 # 41d4 <_sk_load_8888_avx+0x144>
8903 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
8904 DB 76,1,200 ; add %r9,%rax
8905 DB 255,224 ; jmpq *%rax
8906 DB 196,193,121,110,68,186,24 ; vmovd 0x18(%r10,%rdi,4),%xmm0
8907 DB 197,249,112,192,68 ; vpshufd $0x44,%xmm0,%xmm0
8908 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0
8909 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
8910 DB 196,99,117,12,200,64 ; vblendps $0x40,%ymm0,%ymm1,%ymm9
8911 DB 196,99,125,25,200,1 ; vextractf128 $0x1,%ymm9,%xmm0
8912 DB 196,195,121,34,68,186,20,1 ; vpinsrd $0x1,0x14(%r10,%rdi,4),%xmm0,%xmm0
8913 DB 196,99,53,24,200,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm9
8914 DB 196,99,125,25,200,1 ; vextractf128 $0x1,%ymm9,%xmm0
8915 DB 196,195,121,34,68,186,16,0 ; vpinsrd $0x0,0x10(%r10,%rdi,4),%xmm0,%xmm0
8916 DB 196,99,53,24,200,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm9
8917 DB 196,195,49,34,68,186,12,3 ; vpinsrd $0x3,0xc(%r10,%rdi,4),%xmm9,%xmm0
8918 DB 196,99,53,12,200,15 ; vblendps $0xf,%ymm0,%ymm9,%ymm9
8919 DB 196,195,49,34,68,186,8,2 ; vpinsrd $0x2,0x8(%r10,%rdi,4),%xmm9,%xmm0
8920 DB 196,99,53,12,200,15 ; vblendps $0xf,%ymm0,%ymm9,%ymm9
8921 DB 196,195,49,34,68,186,4,1 ; vpinsrd $0x1,0x4(%r10,%rdi,4),%xmm9,%xmm0
8922 DB 196,99,53,12,200,15 ; vblendps $0xf,%ymm0,%ymm9,%ymm9
8923 DB 196,195,49,34,4,186,0 ; vpinsrd $0x0,(%r10,%rdi,4),%xmm9,%xmm0
8924 DB 196,99,53,12,200,15 ; vblendps $0xf,%ymm0,%ymm9,%ymm9
8925 DB 233,210,254,255,255 ; jmpq 40a4 <_sk_load_8888_avx+0x14>
8926 DB 102,144 ; xchg %ax,%ax
8927 DB 236 ; in (%dx),%al
8928 DB 255 ; (bad)
8929 DB 255 ; (bad)
8930 DB 255 ; (bad)
8931 DB 222,255 ; fdivrp %st,%st(7)
8932 DB 255 ; (bad)
8933 DB 255,208 ; callq *%rax
8934 DB 255 ; (bad)
8935 DB 255 ; (bad)
8936 DB 255,194 ; inc %edx
8937 DB 255 ; (bad)
8938 DB 255 ; (bad)
8939 DB 255,174,255,255,255,154 ; ljmp *-0x65000001(%rsi)
8940 DB 255 ; (bad)
8941 DB 255 ; (bad)
8942 DB 255 ; (bad)
8943 DB 126,255 ; jle 41ed <_sk_load_8888_avx+0x15d>
8944 DB 255 ; (bad)
8945 DB 255 ; .byte 0xff
Mike Kleind7e06ae2017-03-29 16:33:06 -04008946
Mike Kleindec4ea82017-04-06 15:04:05 -04008947PUBLIC _sk_gather_8888_avx
8948_sk_gather_8888_avx LABEL PROC
8949 DB 65,87 ; push %r15
8950 DB 65,86 ; push %r14
8951 DB 65,84 ; push %r12
8952 DB 83 ; push %rbx
8953 DB 72,173 ; lods %ds:(%rsi),%rax
8954 DB 76,139,0 ; mov (%rax),%r8
8955 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
8956 DB 197,249,110,80,16 ; vmovd 0x10(%rax),%xmm2
8957 DB 197,249,112,210,0 ; vpshufd $0x0,%xmm2,%xmm2
8958 DB 196,226,105,64,217 ; vpmulld %xmm1,%xmm2,%xmm3
8959 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1
8960 DB 196,226,105,64,201 ; vpmulld %xmm1,%xmm2,%xmm1
8961 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
8962 DB 196,227,125,25,194,1 ; vextractf128 $0x1,%ymm0,%xmm2
8963 DB 197,241,254,202 ; vpaddd %xmm2,%xmm1,%xmm1
8964 DB 196,225,249,126,200 ; vmovq %xmm1,%rax
8965 DB 65,137,193 ; mov %eax,%r9d
8966 DB 72,193,232,32 ; shr $0x20,%rax
8967 DB 196,195,249,22,202,1 ; vpextrq $0x1,%xmm1,%r10
8968 DB 69,137,211 ; mov %r10d,%r11d
8969 DB 73,193,234,32 ; shr $0x20,%r10
8970 DB 197,225,254,192 ; vpaddd %xmm0,%xmm3,%xmm0
8971 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
8972 DB 65,137,222 ; mov %ebx,%r14d
8973 DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15
8974 DB 69,137,252 ; mov %r15d,%r12d
8975 DB 72,193,235,32 ; shr $0x20,%rbx
8976 DB 73,193,239,32 ; shr $0x20,%r15
8977 DB 196,129,121,110,4,176 ; vmovd (%r8,%r14,4),%xmm0
8978 DB 196,195,121,34,4,152,1 ; vpinsrd $0x1,(%r8,%rbx,4),%xmm0,%xmm0
8979 DB 196,131,121,34,4,160,2 ; vpinsrd $0x2,(%r8,%r12,4),%xmm0,%xmm0
8980 DB 196,3,121,34,4,184,3 ; vpinsrd $0x3,(%r8,%r15,4),%xmm0,%xmm8
8981 DB 196,129,121,110,4,136 ; vmovd (%r8,%r9,4),%xmm0
8982 DB 196,195,121,34,4,128,1 ; vpinsrd $0x1,(%r8,%rax,4),%xmm0,%xmm0
8983 DB 196,131,121,34,4,152,2 ; vpinsrd $0x2,(%r8,%r11,4),%xmm0,%xmm0
8984 DB 196,131,121,34,28,144,3 ; vpinsrd $0x3,(%r8,%r10,4),%xmm0,%xmm3
8985 DB 196,227,61,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008986 DB 197,124,40,21,62,39,0,0 ; vmovaps 0x273e(%rip),%ymm10 # 69e0 <_sk_callback_avx+0x5a9>
Mike Klein0aa742f2017-04-27 13:36:57 -04008987 DB 196,193,124,84,194 ; vandps %ymm10,%ymm0,%ymm0
Mike Kleindec4ea82017-04-06 15:04:05 -04008988 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04008989 DB 196,98,125,24,13,144,37,0,0 ; vbroadcastss 0x2590(%rip),%ymm9 # 6844 <_sk_callback_avx+0x40d>
Mike Kleindec4ea82017-04-06 15:04:05 -04008990 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0
Mike Klein0aa742f2017-04-27 13:36:57 -04008991 DB 196,193,113,114,208,8 ; vpsrld $0x8,%xmm8,%xmm1
8992 DB 197,233,114,211,8 ; vpsrld $0x8,%xmm3,%xmm2
8993 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
8994 DB 196,193,116,84,202 ; vandps %ymm10,%ymm1,%ymm1
Mike Kleindec4ea82017-04-06 15:04:05 -04008995 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
8996 DB 196,193,116,89,201 ; vmulps %ymm9,%ymm1,%ymm1
Mike Klein0aa742f2017-04-27 13:36:57 -04008997 DB 196,193,33,114,208,16 ; vpsrld $0x10,%xmm8,%xmm11
Mike Kleindec4ea82017-04-06 15:04:05 -04008998 DB 197,233,114,211,16 ; vpsrld $0x10,%xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -04008999 DB 196,227,37,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm11,%ymm2
9000 DB 196,193,108,84,210 ; vandps %ymm10,%ymm2,%ymm2
Mike Kleindec4ea82017-04-06 15:04:05 -04009001 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
9002 DB 196,193,108,89,209 ; vmulps %ymm9,%ymm2,%ymm2
9003 DB 196,193,57,114,208,24 ; vpsrld $0x18,%xmm8,%xmm8
9004 DB 197,225,114,211,24 ; vpsrld $0x18,%xmm3,%xmm3
9005 DB 196,227,61,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm3
9006 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
9007 DB 196,193,100,89,217 ; vmulps %ymm9,%ymm3,%ymm3
9008 DB 72,173 ; lods %ds:(%rsi),%rax
9009 DB 91 ; pop %rbx
9010 DB 65,92 ; pop %r12
9011 DB 65,94 ; pop %r14
9012 DB 65,95 ; pop %r15
9013 DB 255,224 ; jmpq *%rax
9014
Mike Kleind7e06ae2017-03-29 16:33:06 -04009015PUBLIC _sk_store_8888_avx
9016_sk_store_8888_avx LABEL PROC
9017 DB 72,173 ; lods %ds:(%rsi),%rax
Brian Osman74fc5932017-05-22 19:25:36 +00009018 DB 76,139,16 ; mov (%rax),%r10
Mike Klein8ca33562017-05-23 08:07:43 -04009019 DB 196,98,125,24,5,30,37,0,0 ; vbroadcastss 0x251e(%rip),%ymm8 # 6848 <_sk_callback_avx+0x411>
Mike Kleinfe560a82017-05-01 12:56:35 -04009020 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -04009021 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04009022 DB 196,65,116,89,208 ; vmulps %ymm8,%ymm1,%ymm10
Mike Kleind7e06ae2017-03-29 16:33:06 -04009023 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
9024 DB 196,193,33,114,242,8 ; vpslld $0x8,%xmm10,%xmm11
9025 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10
9026 DB 196,193,41,114,242,8 ; vpslld $0x8,%xmm10,%xmm10
9027 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10
9028 DB 196,65,45,86,201 ; vorpd %ymm9,%ymm10,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -04009029 DB 196,65,108,89,208 ; vmulps %ymm8,%ymm2,%ymm10
Mike Kleind7e06ae2017-03-29 16:33:06 -04009030 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
9031 DB 196,193,33,114,242,16 ; vpslld $0x10,%xmm10,%xmm11
9032 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10
9033 DB 196,193,41,114,242,16 ; vpslld $0x10,%xmm10,%xmm10
9034 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10
Mike Kleinfe560a82017-05-01 12:56:35 -04009035 DB 196,65,100,89,192 ; vmulps %ymm8,%ymm3,%ymm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04009036 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
9037 DB 196,193,33,114,240,24 ; vpslld $0x18,%xmm8,%xmm11
9038 DB 196,67,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm8
9039 DB 196,193,57,114,240,24 ; vpslld $0x18,%xmm8,%xmm8
9040 DB 196,67,37,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm11,%ymm8
9041 DB 196,65,45,86,192 ; vorpd %ymm8,%ymm10,%ymm8
9042 DB 196,65,53,86,192 ; vorpd %ymm8,%ymm9,%ymm8
Brian Osman74fc5932017-05-22 19:25:36 +00009043 DB 72,133,201 ; test %rcx,%rcx
9044 DB 117,10 ; jne 43b8 <_sk_store_8888_avx+0x9c>
9045 DB 196,65,124,17,4,186 ; vmovups %ymm8,(%r10,%rdi,4)
Mike Kleind7e06ae2017-03-29 16:33:06 -04009046 DB 72,173 ; lods %ds:(%rsi),%rax
9047 DB 255,224 ; jmpq *%rax
Brian Osman74fc5932017-05-22 19:25:36 +00009048 DB 65,137,200 ; mov %ecx,%r8d
9049 DB 65,128,224,7 ; and $0x7,%r8b
9050 DB 65,254,200 ; dec %r8b
9051 DB 65,128,248,6 ; cmp $0x6,%r8b
9052 DB 119,236 ; ja 43b4 <_sk_store_8888_avx+0x98>
9053 DB 69,15,182,192 ; movzbl %r8b,%r8d
9054 DB 76,141,13,85,0,0,0 ; lea 0x55(%rip),%r9 # 4428 <_sk_store_8888_avx+0x10c>
9055 DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax
9056 DB 76,1,200 ; add %r9,%rax
9057 DB 255,224 ; jmpq *%rax
9058 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9
9059 DB 196,67,121,22,76,186,24,2 ; vpextrd $0x2,%xmm9,0x18(%r10,%rdi,4)
9060 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9
9061 DB 196,67,121,22,76,186,20,1 ; vpextrd $0x1,%xmm9,0x14(%r10,%rdi,4)
9062 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9
9063 DB 196,65,122,17,76,186,16 ; vmovss %xmm9,0x10(%r10,%rdi,4)
9064 DB 196,67,121,22,68,186,12,3 ; vpextrd $0x3,%xmm8,0xc(%r10,%rdi,4)
9065 DB 196,67,121,22,68,186,8,2 ; vpextrd $0x2,%xmm8,0x8(%r10,%rdi,4)
9066 DB 196,67,121,22,68,186,4,1 ; vpextrd $0x1,%xmm8,0x4(%r10,%rdi,4)
9067 DB 196,65,121,126,4,186 ; vmovd %xmm8,(%r10,%rdi,4)
9068 DB 235,143 ; jmp 43b4 <_sk_store_8888_avx+0x98>
9069 DB 15,31,0 ; nopl (%rax)
9070 DB 245 ; cmc
9071 DB 255 ; (bad)
9072 DB 255 ; (bad)
9073 DB 255 ; (bad)
9074 DB 237 ; in (%dx),%eax
9075 DB 255 ; (bad)
9076 DB 255 ; (bad)
9077 DB 255,229 ; jmpq *%rbp
9078 DB 255 ; (bad)
9079 DB 255 ; (bad)
9080 DB 255 ; (bad)
9081 DB 221,255 ; (bad)
9082 DB 255 ; (bad)
9083 DB 255,208 ; callq *%rax
9084 DB 255 ; (bad)
9085 DB 255 ; (bad)
9086 DB 255,194 ; inc %edx
9087 DB 255 ; (bad)
9088 DB 255 ; (bad)
9089 DB 255 ; .byte 0xff
9090 DB 180,255 ; mov $0xff,%ah
9091 DB 255 ; (bad)
9092 DB 255 ; .byte 0xff
Mike Kleind7e06ae2017-03-29 16:33:06 -04009093
9094PUBLIC _sk_load_f16_avx
9095_sk_load_f16_avx LABEL PROC
Mike Kleinb4bbc642017-04-27 08:59:55 -04009096 DB 72,129,236,152,0,0,0 ; sub $0x98,%rsp
Mike Kleind7e06ae2017-03-29 16:33:06 -04009097 DB 72,173 ; lods %ds:(%rsi),%rax
9098 DB 72,139,0 ; mov (%rax),%rax
9099 DB 72,133,201 ; test %rcx,%rcx
Mike Kleinb4bbc642017-04-27 08:59:55 -04009100 DB 197,252,17,124,36,96 ; vmovups %ymm7,0x60(%rsp)
9101 DB 197,252,17,116,36,64 ; vmovups %ymm6,0x40(%rsp)
9102 DB 197,252,17,108,36,32 ; vmovups %ymm5,0x20(%rsp)
9103 DB 197,254,127,36,36 ; vmovdqu %ymm4,(%rsp)
Brian Osman74fc5932017-05-22 19:25:36 +00009104 DB 15,133,143,2,0,0 ; jne 46ff <_sk_load_f16_avx+0x2bb>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009105 DB 197,121,16,4,248 ; vmovupd (%rax,%rdi,8),%xmm8
9106 DB 197,249,16,84,248,16 ; vmovupd 0x10(%rax,%rdi,8),%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009107 DB 197,249,16,76,248,32 ; vmovupd 0x20(%rax,%rdi,8),%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04009108 DB 197,122,111,76,248,48 ; vmovdqu 0x30(%rax,%rdi,8),%xmm9
9109 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0
9110 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009111 DB 196,193,113,97,217 ; vpunpcklwd %xmm9,%xmm1,%xmm3
9112 DB 196,193,113,105,201 ; vpunpckhwd %xmm9,%xmm1,%xmm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04009113 DB 197,121,97,250 ; vpunpcklwd %xmm2,%xmm0,%xmm15
Mike Klein114e6b32017-04-03 22:21:15 -04009114 DB 197,121,105,194 ; vpunpckhwd %xmm2,%xmm0,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -04009115 DB 197,225,97,209 ; vpunpcklwd %xmm1,%xmm3,%xmm2
9116 DB 197,97,105,201 ; vpunpckhwd %xmm1,%xmm3,%xmm9
9117 DB 197,129,108,194 ; vpunpcklqdq %xmm2,%xmm15,%xmm0
9118 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1
9119 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1
Mike Kleind0ce1482017-04-19 17:19:30 -04009120 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
9121 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04009122 DB 196,98,125,24,37,131,35,0,0 ; vbroadcastss 0x2383(%rip),%ymm12 # 684c <_sk_callback_avx+0x415>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009123 DB 196,193,124,84,204 ; vandps %ymm12,%ymm0,%ymm1
Mike Kleind0ce1482017-04-19 17:19:30 -04009124 DB 197,252,87,193 ; vxorps %ymm1,%ymm0,%ymm0
Mike Kleinb4bbc642017-04-27 08:59:55 -04009125 DB 196,195,125,25,198,1 ; vextractf128 $0x1,%ymm0,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -04009126 DB 196,98,121,24,29,111,35,0,0 ; vbroadcastss 0x236f(%rip),%xmm11 # 6850 <_sk_callback_avx+0x419>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009127 DB 196,193,8,87,219 ; vxorps %xmm11,%xmm14,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -04009128 DB 196,98,121,24,45,101,35,0,0 ; vbroadcastss 0x2365(%rip),%xmm13 # 6854 <_sk_callback_avx+0x41d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009129 DB 197,145,102,219 ; vpcmpgtd %xmm3,%xmm13,%xmm3
9130 DB 196,65,120,87,211 ; vxorps %xmm11,%xmm0,%xmm10
9131 DB 196,65,17,102,210 ; vpcmpgtd %xmm10,%xmm13,%xmm10
9132 DB 196,99,45,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm10,%ymm10
9133 DB 197,225,114,241,16 ; vpslld $0x10,%xmm1,%xmm3
9134 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1
Mike Kleind0ce1482017-04-19 17:19:30 -04009135 DB 197,241,114,241,16 ; vpslld $0x10,%xmm1,%xmm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04009136 DB 196,227,101,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm3,%ymm1
Mike Kleind0ce1482017-04-19 17:19:30 -04009137 DB 197,249,114,240,13 ; vpslld $0xd,%xmm0,%xmm0
Mike Kleinb4bbc642017-04-27 08:59:55 -04009138 DB 196,193,97,114,246,13 ; vpslld $0xd,%xmm14,%xmm3
9139 DB 196,227,125,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm0,%ymm0
9140 DB 197,252,86,193 ; vorps %ymm1,%ymm0,%ymm0
9141 DB 196,227,125,25,193,1 ; vextractf128 $0x1,%ymm0,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -04009142 DB 196,226,121,24,29,27,35,0,0 ; vbroadcastss 0x231b(%rip),%xmm3 # 6858 <_sk_callback_avx+0x421>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009143 DB 197,241,254,203 ; vpaddd %xmm3,%xmm1,%xmm1
9144 DB 197,249,254,195 ; vpaddd %xmm3,%xmm0,%xmm0
9145 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0
9146 DB 196,65,12,87,246 ; vxorps %ymm14,%ymm14,%ymm14
9147 DB 196,195,125,74,198,160 ; vblendvps %ymm10,%ymm14,%ymm0,%ymm0
9148 DB 197,129,109,202 ; vpunpckhqdq %xmm2,%xmm15,%xmm1
9149 DB 197,217,239,228 ; vpxor %xmm4,%xmm4,%xmm4
9150 DB 197,241,105,212 ; vpunpckhwd %xmm4,%xmm1,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009151 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1
9152 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04009153 DB 196,193,116,84,212 ; vandps %ymm12,%ymm1,%ymm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009154 DB 197,244,87,202 ; vxorps %ymm2,%ymm1,%ymm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04009155 DB 196,195,125,25,202,1 ; vextractf128 $0x1,%ymm1,%xmm10
9156 DB 196,193,40,87,251 ; vxorps %xmm11,%xmm10,%xmm7
9157 DB 197,145,102,255 ; vpcmpgtd %xmm7,%xmm13,%xmm7
9158 DB 196,193,112,87,243 ; vxorps %xmm11,%xmm1,%xmm6
9159 DB 197,145,102,246 ; vpcmpgtd %xmm6,%xmm13,%xmm6
9160 DB 196,227,77,24,247,1 ; vinsertf128 $0x1,%xmm7,%ymm6,%ymm6
9161 DB 197,193,114,242,16 ; vpslld $0x10,%xmm2,%xmm7
9162 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009163 DB 197,233,114,242,16 ; vpslld $0x10,%xmm2,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009164 DB 196,227,69,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm7,%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -04009165 DB 197,241,114,241,13 ; vpslld $0xd,%xmm1,%xmm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04009166 DB 196,193,65,114,242,13 ; vpslld $0xd,%xmm10,%xmm7
9167 DB 196,227,117,24,207,1 ; vinsertf128 $0x1,%xmm7,%ymm1,%ymm1
9168 DB 197,244,86,202 ; vorps %ymm2,%ymm1,%ymm1
9169 DB 196,227,125,25,202,1 ; vextractf128 $0x1,%ymm1,%xmm2
9170 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
9171 DB 197,241,254,203 ; vpaddd %xmm3,%xmm1,%xmm1
9172 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
9173 DB 196,195,117,74,206,96 ; vblendvps %ymm6,%ymm14,%ymm1,%ymm1
9174 DB 196,193,57,108,209 ; vpunpcklqdq %xmm9,%xmm8,%xmm2
9175 DB 197,233,105,244 ; vpunpckhwd %xmm4,%xmm2,%xmm6
9176 DB 196,65,41,239,210 ; vpxor %xmm10,%xmm10,%xmm10
Mike Kleind0ce1482017-04-19 17:19:30 -04009177 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2
9178 DB 196,227,109,24,214,1 ; vinsertf128 $0x1,%xmm6,%ymm2,%ymm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009179 DB 196,193,108,84,244 ; vandps %ymm12,%ymm2,%ymm6
Mike Klein097d0932017-04-20 09:11:53 -04009180 DB 197,236,87,214 ; vxorps %ymm6,%ymm2,%ymm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009181 DB 196,227,125,25,215,1 ; vextractf128 $0x1,%ymm2,%xmm7
9182 DB 196,193,64,87,235 ; vxorps %xmm11,%xmm7,%xmm5
9183 DB 197,145,102,237 ; vpcmpgtd %xmm5,%xmm13,%xmm5
9184 DB 196,193,104,87,227 ; vxorps %xmm11,%xmm2,%xmm4
9185 DB 197,145,102,228 ; vpcmpgtd %xmm4,%xmm13,%xmm4
9186 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4
9187 DB 197,209,114,246,16 ; vpslld $0x10,%xmm6,%xmm5
9188 DB 196,227,125,25,246,1 ; vextractf128 $0x1,%ymm6,%xmm6
Mike Klein097d0932017-04-20 09:11:53 -04009189 DB 197,201,114,246,16 ; vpslld $0x10,%xmm6,%xmm6
Mike Kleinb4bbc642017-04-27 08:59:55 -04009190 DB 196,227,85,24,238,1 ; vinsertf128 $0x1,%xmm6,%ymm5,%ymm5
Mike Klein097d0932017-04-20 09:11:53 -04009191 DB 197,233,114,242,13 ; vpslld $0xd,%xmm2,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009192 DB 197,201,114,247,13 ; vpslld $0xd,%xmm7,%xmm6
9193 DB 196,227,109,24,214,1 ; vinsertf128 $0x1,%xmm6,%ymm2,%ymm2
9194 DB 197,236,86,213 ; vorps %ymm5,%ymm2,%ymm2
9195 DB 196,227,125,25,213,1 ; vextractf128 $0x1,%ymm2,%xmm5
9196 DB 197,209,254,235 ; vpaddd %xmm3,%xmm5,%xmm5
9197 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
9198 DB 196,227,109,24,213,1 ; vinsertf128 $0x1,%xmm5,%ymm2,%ymm2
9199 DB 196,195,109,74,214,64 ; vblendvps %ymm4,%ymm14,%ymm2,%ymm2
9200 DB 196,193,57,109,225 ; vpunpckhqdq %xmm9,%xmm8,%xmm4
9201 DB 196,193,89,105,234 ; vpunpckhwd %xmm10,%xmm4,%xmm5
9202 DB 196,226,121,51,228 ; vpmovzxwd %xmm4,%xmm4
9203 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4
9204 DB 196,193,92,84,236 ; vandps %ymm12,%ymm4,%ymm5
9205 DB 197,220,87,229 ; vxorps %ymm5,%ymm4,%ymm4
9206 DB 196,227,125,25,230,1 ; vextractf128 $0x1,%ymm4,%xmm6
9207 DB 196,193,72,87,251 ; vxorps %xmm11,%xmm6,%xmm7
9208 DB 197,17,102,199 ; vpcmpgtd %xmm7,%xmm13,%xmm8
9209 DB 196,193,88,87,251 ; vxorps %xmm11,%xmm4,%xmm7
9210 DB 197,145,102,255 ; vpcmpgtd %xmm7,%xmm13,%xmm7
9211 DB 196,195,69,24,248,1 ; vinsertf128 $0x1,%xmm8,%ymm7,%ymm7
9212 DB 197,185,114,245,16 ; vpslld $0x10,%xmm5,%xmm8
9213 DB 196,227,125,25,237,1 ; vextractf128 $0x1,%ymm5,%xmm5
9214 DB 197,209,114,245,16 ; vpslld $0x10,%xmm5,%xmm5
9215 DB 196,227,61,24,237,1 ; vinsertf128 $0x1,%xmm5,%ymm8,%ymm5
9216 DB 197,217,114,244,13 ; vpslld $0xd,%xmm4,%xmm4
9217 DB 197,201,114,246,13 ; vpslld $0xd,%xmm6,%xmm6
9218 DB 196,227,93,24,230,1 ; vinsertf128 $0x1,%xmm6,%ymm4,%ymm4
9219 DB 197,220,86,229 ; vorps %ymm5,%ymm4,%ymm4
9220 DB 196,227,125,25,229,1 ; vextractf128 $0x1,%ymm4,%xmm5
9221 DB 197,209,254,235 ; vpaddd %xmm3,%xmm5,%xmm5
9222 DB 197,217,254,219 ; vpaddd %xmm3,%xmm4,%xmm3
9223 DB 196,227,101,24,221,1 ; vinsertf128 $0x1,%xmm5,%ymm3,%ymm3
9224 DB 196,195,101,74,222,112 ; vblendvps %ymm7,%ymm14,%ymm3,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -04009225 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinb4bbc642017-04-27 08:59:55 -04009226 DB 197,252,16,36,36 ; vmovups (%rsp),%ymm4
9227 DB 197,252,16,108,36,32 ; vmovups 0x20(%rsp),%ymm5
9228 DB 197,252,16,116,36,64 ; vmovups 0x40(%rsp),%ymm6
9229 DB 197,252,16,124,36,96 ; vmovups 0x60(%rsp),%ymm7
9230 DB 72,129,196,152,0,0,0 ; add $0x98,%rsp
Mike Kleind7e06ae2017-03-29 16:33:06 -04009231 DB 255,224 ; jmpq *%rax
9232 DB 197,123,16,4,248 ; vmovsd (%rax,%rdi,8),%xmm8
9233 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9
9234 DB 72,131,249,1 ; cmp $0x1,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009235 DB 116,79 ; je 475e <_sk_load_f16_avx+0x31a>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009236 DB 197,57,22,68,248,8 ; vmovhpd 0x8(%rax,%rdi,8),%xmm8,%xmm8
9237 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009238 DB 114,67 ; jb 475e <_sk_load_f16_avx+0x31a>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009239 DB 197,251,16,84,248,16 ; vmovsd 0x10(%rax,%rdi,8),%xmm2
9240 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009241 DB 116,68 ; je 476b <_sk_load_f16_avx+0x327>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009242 DB 197,233,22,84,248,24 ; vmovhpd 0x18(%rax,%rdi,8),%xmm2,%xmm2
9243 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009244 DB 114,56 ; jb 476b <_sk_load_f16_avx+0x327>
Mike Kleind0ce1482017-04-19 17:19:30 -04009245 DB 197,251,16,76,248,32 ; vmovsd 0x20(%rax,%rdi,8),%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04009246 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009247 DB 15,132,68,253,255,255 ; je 4487 <_sk_load_f16_avx+0x43>
Mike Kleind0ce1482017-04-19 17:19:30 -04009248 DB 197,241,22,76,248,40 ; vmovhpd 0x28(%rax,%rdi,8),%xmm1,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04009249 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009250 DB 15,130,52,253,255,255 ; jb 4487 <_sk_load_f16_avx+0x43>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009251 DB 197,122,126,76,248,48 ; vmovq 0x30(%rax,%rdi,8),%xmm9
Brian Osman74fc5932017-05-22 19:25:36 +00009252 DB 233,41,253,255,255 ; jmpq 4487 <_sk_load_f16_avx+0x43>
Mike Kleind0ce1482017-04-19 17:19:30 -04009253 DB 197,241,87,201 ; vxorpd %xmm1,%xmm1,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04009254 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2
Brian Osman74fc5932017-05-22 19:25:36 +00009255 DB 233,28,253,255,255 ; jmpq 4487 <_sk_load_f16_avx+0x43>
Mike Kleind0ce1482017-04-19 17:19:30 -04009256 DB 197,241,87,201 ; vxorpd %xmm1,%xmm1,%xmm1
Brian Osman74fc5932017-05-22 19:25:36 +00009257 DB 233,19,253,255,255 ; jmpq 4487 <_sk_load_f16_avx+0x43>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009258
Mike Klein5f055f02017-04-06 20:02:11 -04009259PUBLIC _sk_gather_f16_avx
9260_sk_gather_f16_avx LABEL PROC
9261 DB 65,87 ; push %r15
9262 DB 65,86 ; push %r14
9263 DB 65,84 ; push %r12
9264 DB 83 ; push %rbx
Mike Kleind0ce1482017-04-19 17:19:30 -04009265 DB 72,129,236,152,0,0,0 ; sub $0x98,%rsp
9266 DB 197,252,17,124,36,96 ; vmovups %ymm7,0x60(%rsp)
9267 DB 197,252,17,116,36,64 ; vmovups %ymm6,0x40(%rsp)
9268 DB 197,252,17,108,36,32 ; vmovups %ymm5,0x20(%rsp)
Mike Kleinb4bbc642017-04-27 08:59:55 -04009269 DB 197,254,127,36,36 ; vmovdqu %ymm4,(%rsp)
Mike Klein5f055f02017-04-06 20:02:11 -04009270 DB 72,173 ; lods %ds:(%rsi),%rax
9271 DB 76,139,0 ; mov (%rax),%r8
9272 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2
9273 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1
9274 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3
9275 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1
9276 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
9277 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2
9278 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0
9279 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3
9280 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
9281 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax
9282 DB 65,137,193 ; mov %eax,%r9d
9283 DB 72,193,232,32 ; shr $0x20,%rax
9284 DB 196,193,249,126,210 ; vmovq %xmm2,%r10
9285 DB 69,137,211 ; mov %r10d,%r11d
9286 DB 73,193,234,32 ; shr $0x20,%r10
9287 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0
9288 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx
9289 DB 65,137,222 ; mov %ebx,%r14d
9290 DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15
9291 DB 69,137,252 ; mov %r15d,%r12d
9292 DB 73,193,239,32 ; shr $0x20,%r15
9293 DB 72,193,235,32 ; shr $0x20,%rbx
9294 DB 196,193,122,126,4,216 ; vmovq (%r8,%rbx,8),%xmm0
9295 DB 196,129,122,126,12,240 ; vmovq (%r8,%r14,8),%xmm1
9296 DB 197,113,108,200 ; vpunpcklqdq %xmm0,%xmm1,%xmm9
9297 DB 196,129,122,126,12,248 ; vmovq (%r8,%r15,8),%xmm1
9298 DB 196,129,122,126,20,224 ; vmovq (%r8,%r12,8),%xmm2
9299 DB 197,233,108,201 ; vpunpcklqdq %xmm1,%xmm2,%xmm1
9300 DB 196,129,122,126,20,208 ; vmovq (%r8,%r10,8),%xmm2
9301 DB 196,129,122,126,28,216 ; vmovq (%r8,%r11,8),%xmm3
9302 DB 197,97,108,210 ; vpunpcklqdq %xmm2,%xmm3,%xmm10
9303 DB 196,65,122,126,4,192 ; vmovq (%r8,%rax,8),%xmm8
9304 DB 196,129,122,126,28,200 ; vmovq (%r8,%r9,8),%xmm3
9305 DB 196,193,97,108,216 ; vpunpcklqdq %xmm8,%xmm3,%xmm3
9306 DB 197,177,97,193 ; vpunpcklwd %xmm1,%xmm9,%xmm0
9307 DB 197,177,105,201 ; vpunpckhwd %xmm1,%xmm9,%xmm1
9308 DB 197,169,97,211 ; vpunpcklwd %xmm3,%xmm10,%xmm2
9309 DB 197,169,105,219 ; vpunpckhwd %xmm3,%xmm10,%xmm3
Mike Kleinb4bbc642017-04-27 08:59:55 -04009310 DB 197,121,97,249 ; vpunpcklwd %xmm1,%xmm0,%xmm15
Mike Klein5f055f02017-04-06 20:02:11 -04009311 DB 197,121,105,193 ; vpunpckhwd %xmm1,%xmm0,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -04009312 DB 197,233,97,203 ; vpunpcklwd %xmm3,%xmm2,%xmm1
9313 DB 197,105,105,203 ; vpunpckhwd %xmm3,%xmm2,%xmm9
9314 DB 197,129,108,193 ; vpunpcklqdq %xmm1,%xmm15,%xmm0
9315 DB 197,233,239,210 ; vpxor %xmm2,%xmm2,%xmm2
9316 DB 197,249,105,210 ; vpunpckhwd %xmm2,%xmm0,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009317 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
9318 DB 196,227,125,24,194,1 ; vinsertf128 $0x1,%xmm2,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04009319 DB 196,98,125,24,37,219,31,0,0 ; vbroadcastss 0x1fdb(%rip),%ymm12 # 685c <_sk_callback_avx+0x425>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009320 DB 196,193,124,84,212 ; vandps %ymm12,%ymm0,%ymm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009321 DB 197,252,87,194 ; vxorps %ymm2,%ymm0,%ymm0
Mike Kleinb4bbc642017-04-27 08:59:55 -04009322 DB 196,195,125,25,198,1 ; vextractf128 $0x1,%ymm0,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -04009323 DB 196,98,121,24,29,199,31,0,0 ; vbroadcastss 0x1fc7(%rip),%xmm11 # 6860 <_sk_callback_avx+0x429>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009324 DB 196,193,8,87,219 ; vxorps %xmm11,%xmm14,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -04009325 DB 196,98,121,24,45,189,31,0,0 ; vbroadcastss 0x1fbd(%rip),%xmm13 # 6864 <_sk_callback_avx+0x42d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009326 DB 197,145,102,219 ; vpcmpgtd %xmm3,%xmm13,%xmm3
9327 DB 196,65,120,87,211 ; vxorps %xmm11,%xmm0,%xmm10
9328 DB 196,65,17,102,210 ; vpcmpgtd %xmm10,%xmm13,%xmm10
9329 DB 196,99,45,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm10,%ymm10
9330 DB 197,225,114,242,16 ; vpslld $0x10,%xmm2,%xmm3
9331 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009332 DB 197,233,114,242,16 ; vpslld $0x10,%xmm2,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009333 DB 196,227,101,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm3,%ymm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009334 DB 197,249,114,240,13 ; vpslld $0xd,%xmm0,%xmm0
Mike Kleinb4bbc642017-04-27 08:59:55 -04009335 DB 196,193,97,114,246,13 ; vpslld $0xd,%xmm14,%xmm3
9336 DB 196,227,125,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm0,%ymm0
9337 DB 197,252,86,194 ; vorps %ymm2,%ymm0,%ymm0
9338 DB 196,227,125,25,194,1 ; vextractf128 $0x1,%ymm0,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -04009339 DB 196,226,121,24,29,115,31,0,0 ; vbroadcastss 0x1f73(%rip),%xmm3 # 6868 <_sk_callback_avx+0x431>
Mike Kleind0ce1482017-04-19 17:19:30 -04009340 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009341 DB 197,249,254,195 ; vpaddd %xmm3,%xmm0,%xmm0
9342 DB 196,227,125,24,194,1 ; vinsertf128 $0x1,%xmm2,%ymm0,%ymm0
9343 DB 196,65,12,87,246 ; vxorps %ymm14,%ymm14,%ymm14
9344 DB 196,195,125,74,198,160 ; vblendvps %ymm10,%ymm14,%ymm0,%ymm0
9345 DB 197,129,109,201 ; vpunpckhqdq %xmm1,%xmm15,%xmm1
9346 DB 197,217,239,228 ; vpxor %xmm4,%xmm4,%xmm4
9347 DB 197,241,105,212 ; vpunpckhwd %xmm4,%xmm1,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009348 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1
9349 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04009350 DB 196,193,116,84,212 ; vandps %ymm12,%ymm1,%ymm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009351 DB 197,244,87,202 ; vxorps %ymm2,%ymm1,%ymm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04009352 DB 196,195,125,25,202,1 ; vextractf128 $0x1,%ymm1,%xmm10
9353 DB 196,193,40,87,251 ; vxorps %xmm11,%xmm10,%xmm7
9354 DB 197,145,102,255 ; vpcmpgtd %xmm7,%xmm13,%xmm7
9355 DB 196,193,112,87,243 ; vxorps %xmm11,%xmm1,%xmm6
9356 DB 197,145,102,246 ; vpcmpgtd %xmm6,%xmm13,%xmm6
9357 DB 196,227,77,24,247,1 ; vinsertf128 $0x1,%xmm7,%ymm6,%ymm6
9358 DB 197,193,114,242,16 ; vpslld $0x10,%xmm2,%xmm7
9359 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009360 DB 197,233,114,242,16 ; vpslld $0x10,%xmm2,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009361 DB 196,227,69,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm7,%ymm2
Mike Klein5f055f02017-04-06 20:02:11 -04009362 DB 197,241,114,241,13 ; vpslld $0xd,%xmm1,%xmm1
Mike Kleinb4bbc642017-04-27 08:59:55 -04009363 DB 196,193,65,114,242,13 ; vpslld $0xd,%xmm10,%xmm7
9364 DB 196,227,117,24,207,1 ; vinsertf128 $0x1,%xmm7,%ymm1,%ymm1
9365 DB 197,244,86,202 ; vorps %ymm2,%ymm1,%ymm1
9366 DB 196,227,125,25,202,1 ; vextractf128 $0x1,%ymm1,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009367 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009368 DB 197,241,254,203 ; vpaddd %xmm3,%xmm1,%xmm1
9369 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
9370 DB 196,195,117,74,206,96 ; vblendvps %ymm6,%ymm14,%ymm1,%ymm1
9371 DB 196,193,57,108,209 ; vpunpcklqdq %xmm9,%xmm8,%xmm2
9372 DB 197,233,105,244 ; vpunpckhwd %xmm4,%xmm2,%xmm6
9373 DB 196,65,41,239,210 ; vpxor %xmm10,%xmm10,%xmm10
Mike Kleind0ce1482017-04-19 17:19:30 -04009374 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009375 DB 196,227,109,24,214,1 ; vinsertf128 $0x1,%xmm6,%ymm2,%ymm2
9376 DB 196,193,108,84,244 ; vandps %ymm12,%ymm2,%ymm6
9377 DB 197,236,87,214 ; vxorps %ymm6,%ymm2,%ymm2
9378 DB 196,227,125,25,215,1 ; vextractf128 $0x1,%ymm2,%xmm7
9379 DB 196,193,64,87,235 ; vxorps %xmm11,%xmm7,%xmm5
9380 DB 197,145,102,237 ; vpcmpgtd %xmm5,%xmm13,%xmm5
9381 DB 196,193,104,87,227 ; vxorps %xmm11,%xmm2,%xmm4
9382 DB 197,145,102,228 ; vpcmpgtd %xmm4,%xmm13,%xmm4
9383 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4
9384 DB 197,209,114,246,16 ; vpslld $0x10,%xmm6,%xmm5
9385 DB 196,227,125,25,246,1 ; vextractf128 $0x1,%ymm6,%xmm6
9386 DB 197,201,114,246,16 ; vpslld $0x10,%xmm6,%xmm6
9387 DB 196,227,85,24,238,1 ; vinsertf128 $0x1,%xmm6,%ymm5,%ymm5
Mike Klein5f055f02017-04-06 20:02:11 -04009388 DB 197,233,114,242,13 ; vpslld $0xd,%xmm2,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009389 DB 197,201,114,247,13 ; vpslld $0xd,%xmm7,%xmm6
9390 DB 196,227,109,24,214,1 ; vinsertf128 $0x1,%xmm6,%ymm2,%ymm2
9391 DB 197,236,86,213 ; vorps %ymm5,%ymm2,%ymm2
9392 DB 196,227,125,25,213,1 ; vextractf128 $0x1,%ymm2,%xmm5
9393 DB 197,209,254,235 ; vpaddd %xmm3,%xmm5,%xmm5
9394 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -04009395 DB 196,227,109,24,213,1 ; vinsertf128 $0x1,%xmm5,%ymm2,%ymm2
Mike Kleinb4bbc642017-04-27 08:59:55 -04009396 DB 196,195,109,74,214,64 ; vblendvps %ymm4,%ymm14,%ymm2,%ymm2
9397 DB 196,193,57,109,225 ; vpunpckhqdq %xmm9,%xmm8,%xmm4
9398 DB 196,193,89,105,234 ; vpunpckhwd %xmm10,%xmm4,%xmm5
Mike Kleind0ce1482017-04-19 17:19:30 -04009399 DB 196,226,121,51,228 ; vpmovzxwd %xmm4,%xmm4
9400 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4
Mike Kleinb4bbc642017-04-27 08:59:55 -04009401 DB 196,193,92,84,236 ; vandps %ymm12,%ymm4,%ymm5
Mike Klein097d0932017-04-20 09:11:53 -04009402 DB 197,220,87,229 ; vxorps %ymm5,%ymm4,%ymm4
Mike Kleind0ce1482017-04-19 17:19:30 -04009403 DB 196,227,125,25,230,1 ; vextractf128 $0x1,%ymm4,%xmm6
Mike Kleinb4bbc642017-04-27 08:59:55 -04009404 DB 196,193,72,87,251 ; vxorps %xmm11,%xmm6,%xmm7
9405 DB 197,17,102,199 ; vpcmpgtd %xmm7,%xmm13,%xmm8
9406 DB 196,193,88,87,251 ; vxorps %xmm11,%xmm4,%xmm7
9407 DB 197,145,102,255 ; vpcmpgtd %xmm7,%xmm13,%xmm7
9408 DB 196,195,69,24,248,1 ; vinsertf128 $0x1,%xmm8,%ymm7,%ymm7
9409 DB 197,185,114,245,16 ; vpslld $0x10,%xmm5,%xmm8
9410 DB 196,227,125,25,237,1 ; vextractf128 $0x1,%ymm5,%xmm5
Mike Klein097d0932017-04-20 09:11:53 -04009411 DB 197,209,114,245,16 ; vpslld $0x10,%xmm5,%xmm5
Mike Kleinb4bbc642017-04-27 08:59:55 -04009412 DB 196,227,61,24,237,1 ; vinsertf128 $0x1,%xmm5,%ymm8,%ymm5
Mike Kleind0ce1482017-04-19 17:19:30 -04009413 DB 197,217,114,244,13 ; vpslld $0xd,%xmm4,%xmm4
Mike Kleinb4bbc642017-04-27 08:59:55 -04009414 DB 197,201,114,246,13 ; vpslld $0xd,%xmm6,%xmm6
9415 DB 196,227,93,24,230,1 ; vinsertf128 $0x1,%xmm6,%ymm4,%ymm4
9416 DB 197,220,86,229 ; vorps %ymm5,%ymm4,%ymm4
9417 DB 196,227,125,25,229,1 ; vextractf128 $0x1,%ymm4,%xmm5
9418 DB 197,209,254,235 ; vpaddd %xmm3,%xmm5,%xmm5
9419 DB 197,217,254,219 ; vpaddd %xmm3,%xmm4,%xmm3
9420 DB 196,227,101,24,221,1 ; vinsertf128 $0x1,%xmm5,%ymm3,%ymm3
9421 DB 196,195,101,74,222,112 ; vblendvps %ymm7,%ymm14,%ymm3,%ymm3
Mike Klein5f055f02017-04-06 20:02:11 -04009422 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleind0ce1482017-04-19 17:19:30 -04009423 DB 197,252,16,36,36 ; vmovups (%rsp),%ymm4
9424 DB 197,252,16,108,36,32 ; vmovups 0x20(%rsp),%ymm5
9425 DB 197,252,16,116,36,64 ; vmovups 0x40(%rsp),%ymm6
9426 DB 197,252,16,124,36,96 ; vmovups 0x60(%rsp),%ymm7
9427 DB 72,129,196,152,0,0,0 ; add $0x98,%rsp
Mike Klein5f055f02017-04-06 20:02:11 -04009428 DB 91 ; pop %rbx
9429 DB 65,92 ; pop %r12
9430 DB 65,94 ; pop %r14
9431 DB 65,95 ; pop %r15
9432 DB 255,224 ; jmpq *%rax
9433
Mike Kleind7e06ae2017-03-29 16:33:06 -04009434PUBLIC _sk_store_f16_avx
9435_sk_store_f16_avx LABEL PROC
Mike Kleind0ce1482017-04-19 17:19:30 -04009436 DB 72,129,236,216,0,0,0 ; sub $0xd8,%rsp
9437 DB 197,252,17,188,36,160,0,0,0 ; vmovups %ymm7,0xa0(%rsp)
9438 DB 197,252,17,180,36,128,0,0,0 ; vmovups %ymm6,0x80(%rsp)
9439 DB 197,252,17,108,36,96 ; vmovups %ymm5,0x60(%rsp)
9440 DB 197,252,17,100,36,64 ; vmovups %ymm4,0x40(%rsp)
Mike Klein8ca33562017-05-23 08:07:43 -04009441 DB 196,98,125,24,13,128,29,0,0 ; vbroadcastss 0x1d80(%rip),%ymm9 # 686c <_sk_callback_avx+0x435>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009442 DB 196,65,124,84,209 ; vandps %ymm9,%ymm0,%ymm10
9443 DB 197,252,17,4,36 ; vmovups %ymm0,(%rsp)
Mike Kleind0ce1482017-04-19 17:19:30 -04009444 DB 196,65,124,87,218 ; vxorps %ymm10,%ymm0,%ymm11
Mike Klein097d0932017-04-20 09:11:53 -04009445 DB 196,67,125,25,220,1 ; vextractf128 $0x1,%ymm11,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -04009446 DB 196,98,121,24,5,102,29,0,0 ; vbroadcastss 0x1d66(%rip),%xmm8 # 6870 <_sk_callback_avx+0x439>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009447 DB 196,65,57,102,236 ; vpcmpgtd %xmm12,%xmm8,%xmm13
9448 DB 196,65,57,102,243 ; vpcmpgtd %xmm11,%xmm8,%xmm14
Mike Klein097d0932017-04-20 09:11:53 -04009449 DB 196,67,13,24,237,1 ; vinsertf128 $0x1,%xmm13,%ymm14,%ymm13
Mike Kleinb4bbc642017-04-27 08:59:55 -04009450 DB 196,193,9,114,210,16 ; vpsrld $0x10,%xmm10,%xmm14
9451 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10
9452 DB 196,193,41,114,210,16 ; vpsrld $0x10,%xmm10,%xmm10
9453 DB 196,67,13,24,242,1 ; vinsertf128 $0x1,%xmm10,%ymm14,%ymm14
Mike Klein097d0932017-04-20 09:11:53 -04009454 DB 196,193,33,114,211,13 ; vpsrld $0xd,%xmm11,%xmm11
9455 DB 196,193,25,114,212,13 ; vpsrld $0xd,%xmm12,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -04009456 DB 196,98,125,24,21,45,29,0,0 ; vbroadcastss 0x1d2d(%rip),%ymm10 # 6874 <_sk_callback_avx+0x43d>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009457 DB 196,65,12,86,242 ; vorps %ymm10,%ymm14,%ymm14
Mike Klein097d0932017-04-20 09:11:53 -04009458 DB 196,67,125,25,247,1 ; vextractf128 $0x1,%ymm14,%xmm15
Mike Kleinb4bbc642017-04-27 08:59:55 -04009459 DB 196,65,1,254,228 ; vpaddd %xmm12,%xmm15,%xmm12
9460 DB 196,65,9,254,219 ; vpaddd %xmm11,%xmm14,%xmm11
9461 DB 196,67,37,24,228,1 ; vinsertf128 $0x1,%xmm12,%ymm11,%ymm12
9462 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
9463 DB 196,99,29,74,224,208 ; vblendvps %ymm13,%ymm0,%ymm12,%ymm12
9464 DB 196,65,116,84,233 ; vandps %ymm9,%ymm1,%ymm13
9465 DB 197,252,17,76,36,32 ; vmovups %ymm1,0x20(%rsp)
9466 DB 196,65,116,87,245 ; vxorps %ymm13,%ymm1,%ymm14
9467 DB 196,67,125,25,247,1 ; vextractf128 $0x1,%ymm14,%xmm15
9468 DB 196,193,57,102,255 ; vpcmpgtd %xmm15,%xmm8,%xmm7
9469 DB 196,65,57,102,222 ; vpcmpgtd %xmm14,%xmm8,%xmm11
9470 DB 196,227,37,24,255,1 ; vinsertf128 $0x1,%xmm7,%ymm11,%ymm7
9471 DB 196,193,33,114,213,16 ; vpsrld $0x10,%xmm13,%xmm11
Mike Klein097d0932017-04-20 09:11:53 -04009472 DB 196,99,125,25,238,1 ; vextractf128 $0x1,%ymm13,%xmm6
Mike Kleind0ce1482017-04-19 17:19:30 -04009473 DB 197,201,114,214,16 ; vpsrld $0x10,%xmm6,%xmm6
Mike Kleinb4bbc642017-04-27 08:59:55 -04009474 DB 196,227,37,24,246,1 ; vinsertf128 $0x1,%xmm6,%ymm11,%ymm6
9475 DB 196,193,33,114,215,13 ; vpsrld $0xd,%xmm15,%xmm11
9476 DB 196,193,76,86,242 ; vorps %ymm10,%ymm6,%ymm6
Mike Klein097d0932017-04-20 09:11:53 -04009477 DB 196,227,125,25,245,1 ; vextractf128 $0x1,%ymm6,%xmm5
Mike Kleinb4bbc642017-04-27 08:59:55 -04009478 DB 196,193,81,254,235 ; vpaddd %xmm11,%xmm5,%xmm5
9479 DB 196,193,89,114,214,13 ; vpsrld $0xd,%xmm14,%xmm4
9480 DB 197,201,254,228 ; vpaddd %xmm4,%xmm6,%xmm4
9481 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4
9482 DB 196,99,93,74,232,112 ; vblendvps %ymm7,%ymm0,%ymm4,%ymm13
9483 DB 196,193,108,84,225 ; vandps %ymm9,%ymm2,%ymm4
9484 DB 197,236,87,236 ; vxorps %ymm4,%ymm2,%ymm5
9485 DB 196,227,125,25,238,1 ; vextractf128 $0x1,%ymm5,%xmm6
9486 DB 197,185,102,254 ; vpcmpgtd %xmm6,%xmm8,%xmm7
9487 DB 197,57,102,221 ; vpcmpgtd %xmm5,%xmm8,%xmm11
9488 DB 196,227,37,24,255,1 ; vinsertf128 $0x1,%xmm7,%ymm11,%ymm7
9489 DB 197,161,114,212,16 ; vpsrld $0x10,%xmm4,%xmm11
9490 DB 196,227,125,25,228,1 ; vextractf128 $0x1,%ymm4,%xmm4
9491 DB 197,217,114,212,16 ; vpsrld $0x10,%xmm4,%xmm4
9492 DB 196,227,37,24,228,1 ; vinsertf128 $0x1,%xmm4,%ymm11,%ymm4
Mike Klein097d0932017-04-20 09:11:53 -04009493 DB 197,201,114,214,13 ; vpsrld $0xd,%xmm6,%xmm6
Mike Kleinb4bbc642017-04-27 08:59:55 -04009494 DB 196,193,92,86,226 ; vorps %ymm10,%ymm4,%ymm4
9495 DB 196,227,125,25,225,1 ; vextractf128 $0x1,%ymm4,%xmm1
9496 DB 197,241,254,206 ; vpaddd %xmm6,%xmm1,%xmm1
9497 DB 197,209,114,213,13 ; vpsrld $0xd,%xmm5,%xmm5
9498 DB 197,217,254,229 ; vpaddd %xmm5,%xmm4,%xmm4
9499 DB 196,227,93,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm4,%ymm1
9500 DB 196,99,117,74,216,112 ; vblendvps %ymm7,%ymm0,%ymm1,%ymm11
9501 DB 196,193,100,84,225 ; vandps %ymm9,%ymm3,%ymm4
9502 DB 197,228,87,236 ; vxorps %ymm4,%ymm3,%ymm5
9503 DB 196,227,125,25,238,1 ; vextractf128 $0x1,%ymm5,%xmm6
9504 DB 197,185,102,254 ; vpcmpgtd %xmm6,%xmm8,%xmm7
9505 DB 197,57,102,197 ; vpcmpgtd %xmm5,%xmm8,%xmm8
9506 DB 196,227,61,24,255,1 ; vinsertf128 $0x1,%xmm7,%ymm8,%ymm7
9507 DB 197,185,114,212,16 ; vpsrld $0x10,%xmm4,%xmm8
9508 DB 196,227,125,25,228,1 ; vextractf128 $0x1,%ymm4,%xmm4
9509 DB 197,217,114,212,16 ; vpsrld $0x10,%xmm4,%xmm4
9510 DB 196,227,61,24,228,1 ; vinsertf128 $0x1,%xmm4,%ymm8,%ymm4
9511 DB 196,193,92,86,226 ; vorps %ymm10,%ymm4,%ymm4
9512 DB 197,201,114,214,13 ; vpsrld $0xd,%xmm6,%xmm6
9513 DB 196,227,125,25,225,1 ; vextractf128 $0x1,%ymm4,%xmm1
9514 DB 197,241,254,206 ; vpaddd %xmm6,%xmm1,%xmm1
9515 DB 197,209,114,213,13 ; vpsrld $0xd,%xmm5,%xmm5
9516 DB 197,217,254,229 ; vpaddd %xmm5,%xmm4,%xmm4
9517 DB 196,227,93,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm4,%ymm1
9518 DB 196,227,117,74,200,112 ; vblendvps %ymm7,%ymm0,%ymm1,%ymm1
9519 DB 196,99,125,25,224,1 ; vextractf128 $0x1,%ymm12,%xmm0
9520 DB 196,226,25,43,192 ; vpackusdw %xmm0,%xmm12,%xmm0
Mike Klein097d0932017-04-20 09:11:53 -04009521 DB 196,99,125,25,236,1 ; vextractf128 $0x1,%ymm13,%xmm4
9522 DB 196,226,17,43,228 ; vpackusdw %xmm4,%xmm13,%xmm4
9523 DB 196,99,125,25,221,1 ; vextractf128 $0x1,%ymm11,%xmm5
Mike Kleinb4bbc642017-04-27 08:59:55 -04009524 DB 196,226,33,43,245 ; vpackusdw %xmm5,%xmm11,%xmm6
9525 DB 196,227,125,25,205,1 ; vextractf128 $0x1,%ymm1,%xmm5
9526 DB 196,226,113,43,205 ; vpackusdw %xmm5,%xmm1,%xmm1
9527 DB 197,249,97,236 ; vpunpcklwd %xmm4,%xmm0,%xmm5
9528 DB 197,249,105,196 ; vpunpckhwd %xmm4,%xmm0,%xmm0
9529 DB 197,201,97,225 ; vpunpcklwd %xmm1,%xmm6,%xmm4
9530 DB 197,201,105,201 ; vpunpckhwd %xmm1,%xmm6,%xmm1
9531 DB 197,81,98,220 ; vpunpckldq %xmm4,%xmm5,%xmm11
9532 DB 197,81,106,212 ; vpunpckhdq %xmm4,%xmm5,%xmm10
9533 DB 197,121,98,201 ; vpunpckldq %xmm1,%xmm0,%xmm9
9534 DB 197,121,106,193 ; vpunpckhdq %xmm1,%xmm0,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -04009535 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinb4bbc642017-04-27 08:59:55 -04009536 DB 72,139,0 ; mov (%rax),%rax
9537 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009538 DB 117,75 ; jne 4d2e <_sk_store_f16_avx+0x270>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009539 DB 197,120,17,28,248 ; vmovups %xmm11,(%rax,%rdi,8)
9540 DB 197,120,17,84,248,16 ; vmovups %xmm10,0x10(%rax,%rdi,8)
9541 DB 197,120,17,76,248,32 ; vmovups %xmm9,0x20(%rax,%rdi,8)
9542 DB 197,122,127,68,248,48 ; vmovdqu %xmm8,0x30(%rax,%rdi,8)
9543 DB 72,173 ; lods %ds:(%rsi),%rax
9544 DB 197,252,16,4,36 ; vmovups (%rsp),%ymm0
9545 DB 197,252,16,76,36,32 ; vmovups 0x20(%rsp),%ymm1
Mike Kleind0ce1482017-04-19 17:19:30 -04009546 DB 197,252,16,100,36,64 ; vmovups 0x40(%rsp),%ymm4
9547 DB 197,252,16,108,36,96 ; vmovups 0x60(%rsp),%ymm5
9548 DB 197,252,16,180,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm6
9549 DB 197,252,16,188,36,160,0,0,0 ; vmovups 0xa0(%rsp),%ymm7
9550 DB 72,129,196,216,0,0,0 ; add $0xd8,%rsp
Mike Kleind7e06ae2017-03-29 16:33:06 -04009551 DB 255,224 ; jmpq *%rax
Mike Kleinb4bbc642017-04-27 08:59:55 -04009552 DB 197,121,214,28,248 ; vmovq %xmm11,(%rax,%rdi,8)
Mike Kleind7e06ae2017-03-29 16:33:06 -04009553 DB 72,131,249,1 ; cmp $0x1,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009554 DB 116,193 ; je 4cfa <_sk_store_f16_avx+0x23c>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009555 DB 197,121,23,92,248,8 ; vmovhpd %xmm11,0x8(%rax,%rdi,8)
Mike Kleind7e06ae2017-03-29 16:33:06 -04009556 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009557 DB 114,181 ; jb 4cfa <_sk_store_f16_avx+0x23c>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009558 DB 197,121,214,84,248,16 ; vmovq %xmm10,0x10(%rax,%rdi,8)
Brian Osman74fc5932017-05-22 19:25:36 +00009559 DB 116,173 ; je 4cfa <_sk_store_f16_avx+0x23c>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009560 DB 197,121,23,84,248,24 ; vmovhpd %xmm10,0x18(%rax,%rdi,8)
Mike Kleind7e06ae2017-03-29 16:33:06 -04009561 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009562 DB 114,161 ; jb 4cfa <_sk_store_f16_avx+0x23c>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009563 DB 197,121,214,76,248,32 ; vmovq %xmm9,0x20(%rax,%rdi,8)
Brian Osman74fc5932017-05-22 19:25:36 +00009564 DB 116,153 ; je 4cfa <_sk_store_f16_avx+0x23c>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009565 DB 197,121,23,76,248,40 ; vmovhpd %xmm9,0x28(%rax,%rdi,8)
Mike Kleind7e06ae2017-03-29 16:33:06 -04009566 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009567 DB 114,141 ; jb 4cfa <_sk_store_f16_avx+0x23c>
Mike Kleinb4bbc642017-04-27 08:59:55 -04009568 DB 197,121,214,68,248,48 ; vmovq %xmm8,0x30(%rax,%rdi,8)
Brian Osman74fc5932017-05-22 19:25:36 +00009569 DB 235,133 ; jmp 4cfa <_sk_store_f16_avx+0x23c>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009570
Mike Klein3146bb92017-04-05 14:45:02 -04009571PUBLIC _sk_load_u16_be_avx
9572_sk_load_u16_be_avx LABEL PROC
9573 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinb3821732017-04-17 10:58:05 -04009574 DB 76,139,0 ; mov (%rax),%r8
9575 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax
Mike Klein3146bb92017-04-05 14:45:02 -04009576 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009577 DB 15,133,253,0,0,0 ; jne 4e88 <_sk_load_u16_be_avx+0x113>
Mike Kleinb3821732017-04-17 10:58:05 -04009578 DB 196,65,121,16,4,64 ; vmovupd (%r8,%rax,2),%xmm8
9579 DB 196,193,121,16,84,64,16 ; vmovupd 0x10(%r8,%rax,2),%xmm2
9580 DB 196,193,121,16,92,64,32 ; vmovupd 0x20(%r8,%rax,2),%xmm3
9581 DB 196,65,122,111,76,64,48 ; vmovdqu 0x30(%r8,%rax,2),%xmm9
Mike Klein3146bb92017-04-05 14:45:02 -04009582 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0
9583 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2
9584 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1
9585 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -04009586 DB 197,121,97,202 ; vpunpcklwd %xmm2,%xmm0,%xmm9
Mike Klein3146bb92017-04-05 14:45:02 -04009587 DB 197,121,105,194 ; vpunpckhwd %xmm2,%xmm0,%xmm8
9588 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -04009589 DB 197,113,105,227 ; vpunpckhwd %xmm3,%xmm1,%xmm12
9590 DB 197,177,108,194 ; vpunpcklqdq %xmm2,%xmm9,%xmm0
Mike Klein3146bb92017-04-05 14:45:02 -04009591 DB 197,241,113,240,8 ; vpsllw $0x8,%xmm0,%xmm1
9592 DB 197,249,113,208,8 ; vpsrlw $0x8,%xmm0,%xmm0
9593 DB 197,241,235,192 ; vpor %xmm0,%xmm1,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -04009594 DB 196,65,41,239,210 ; vpxor %xmm10,%xmm10,%xmm10
9595 DB 196,193,121,105,202 ; vpunpckhwd %xmm10,%xmm0,%xmm1
Mike Klein3146bb92017-04-05 14:45:02 -04009596 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
9597 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0
9598 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04009599 DB 196,98,125,24,29,124,26,0,0 ; vbroadcastss 0x1a7c(%rip),%ymm11 # 6878 <_sk_callback_avx+0x441>
Mike Kleinfe560a82017-05-01 12:56:35 -04009600 DB 196,193,124,89,195 ; vmulps %ymm11,%ymm0,%ymm0
9601 DB 197,177,109,202 ; vpunpckhqdq %xmm2,%xmm9,%xmm1
Mike Klein3146bb92017-04-05 14:45:02 -04009602 DB 197,233,113,241,8 ; vpsllw $0x8,%xmm1,%xmm2
9603 DB 197,241,113,209,8 ; vpsrlw $0x8,%xmm1,%xmm1
9604 DB 197,233,235,201 ; vpor %xmm1,%xmm2,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -04009605 DB 196,193,113,105,210 ; vpunpckhwd %xmm10,%xmm1,%xmm2
Mike Klein3146bb92017-04-05 14:45:02 -04009606 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1
9607 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
9608 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04009609 DB 196,193,116,89,203 ; vmulps %ymm11,%ymm1,%ymm1
9610 DB 196,193,57,108,212 ; vpunpcklqdq %xmm12,%xmm8,%xmm2
9611 DB 197,225,113,242,8 ; vpsllw $0x8,%xmm2,%xmm3
Mike Klein3146bb92017-04-05 14:45:02 -04009612 DB 197,233,113,210,8 ; vpsrlw $0x8,%xmm2,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -04009613 DB 197,225,235,210 ; vpor %xmm2,%xmm3,%xmm2
9614 DB 196,193,105,105,218 ; vpunpckhwd %xmm10,%xmm2,%xmm3
Mike Klein3146bb92017-04-05 14:45:02 -04009615 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -04009616 DB 196,227,109,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm2,%ymm2
Mike Klein3146bb92017-04-05 14:45:02 -04009617 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04009618 DB 196,193,108,89,211 ; vmulps %ymm11,%ymm2,%ymm2
9619 DB 196,193,57,109,220 ; vpunpckhqdq %xmm12,%xmm8,%xmm3
Mike Klein3146bb92017-04-05 14:45:02 -04009620 DB 197,185,113,243,8 ; vpsllw $0x8,%xmm3,%xmm8
9621 DB 197,225,113,211,8 ; vpsrlw $0x8,%xmm3,%xmm3
9622 DB 197,185,235,219 ; vpor %xmm3,%xmm8,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -04009623 DB 196,65,97,105,194 ; vpunpckhwd %xmm10,%xmm3,%xmm8
Mike Klein3146bb92017-04-05 14:45:02 -04009624 DB 196,226,121,51,219 ; vpmovzxwd %xmm3,%xmm3
9625 DB 196,195,101,24,216,1 ; vinsertf128 $0x1,%xmm8,%ymm3,%ymm3
9626 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3
Mike Kleinfe560a82017-05-01 12:56:35 -04009627 DB 196,193,100,89,219 ; vmulps %ymm11,%ymm3,%ymm3
Mike Klein3146bb92017-04-05 14:45:02 -04009628 DB 72,173 ; lods %ds:(%rsi),%rax
9629 DB 255,224 ; jmpq *%rax
Mike Kleinb3821732017-04-17 10:58:05 -04009630 DB 196,65,123,16,4,64 ; vmovsd (%r8,%rax,2),%xmm8
Mike Klein3146bb92017-04-05 14:45:02 -04009631 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9
9632 DB 72,131,249,1 ; cmp $0x1,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009633 DB 116,85 ; je 4eee <_sk_load_u16_be_avx+0x179>
Mike Kleinb3821732017-04-17 10:58:05 -04009634 DB 196,65,57,22,68,64,8 ; vmovhpd 0x8(%r8,%rax,2),%xmm8,%xmm8
Mike Klein3146bb92017-04-05 14:45:02 -04009635 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009636 DB 114,72 ; jb 4eee <_sk_load_u16_be_avx+0x179>
Mike Kleinb3821732017-04-17 10:58:05 -04009637 DB 196,193,123,16,84,64,16 ; vmovsd 0x10(%r8,%rax,2),%xmm2
Mike Klein3146bb92017-04-05 14:45:02 -04009638 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009639 DB 116,72 ; je 4efb <_sk_load_u16_be_avx+0x186>
Mike Kleinb3821732017-04-17 10:58:05 -04009640 DB 196,193,105,22,84,64,24 ; vmovhpd 0x18(%r8,%rax,2),%xmm2,%xmm2
Mike Klein3146bb92017-04-05 14:45:02 -04009641 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009642 DB 114,59 ; jb 4efb <_sk_load_u16_be_avx+0x186>
Mike Kleinb3821732017-04-17 10:58:05 -04009643 DB 196,193,123,16,92,64,32 ; vmovsd 0x20(%r8,%rax,2),%xmm3
Mike Klein3146bb92017-04-05 14:45:02 -04009644 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009645 DB 15,132,213,254,255,255 ; je 4da6 <_sk_load_u16_be_avx+0x31>
Mike Kleinb3821732017-04-17 10:58:05 -04009646 DB 196,193,97,22,92,64,40 ; vmovhpd 0x28(%r8,%rax,2),%xmm3,%xmm3
Mike Klein3146bb92017-04-05 14:45:02 -04009647 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009648 DB 15,130,196,254,255,255 ; jb 4da6 <_sk_load_u16_be_avx+0x31>
Mike Kleinb3821732017-04-17 10:58:05 -04009649 DB 196,65,122,126,76,64,48 ; vmovq 0x30(%r8,%rax,2),%xmm9
Brian Osman74fc5932017-05-22 19:25:36 +00009650 DB 233,184,254,255,255 ; jmpq 4da6 <_sk_load_u16_be_avx+0x31>
Mike Klein3146bb92017-04-05 14:45:02 -04009651 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
9652 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2
Brian Osman74fc5932017-05-22 19:25:36 +00009653 DB 233,171,254,255,255 ; jmpq 4da6 <_sk_load_u16_be_avx+0x31>
Mike Klein3146bb92017-04-05 14:45:02 -04009654 DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3
Brian Osman74fc5932017-05-22 19:25:36 +00009655 DB 233,162,254,255,255 ; jmpq 4da6 <_sk_load_u16_be_avx+0x31>
Mike Kleinb3821732017-04-17 10:58:05 -04009656
9657PUBLIC _sk_load_rgb_u16_be_avx
9658_sk_load_rgb_u16_be_avx LABEL PROC
9659 DB 72,173 ; lods %ds:(%rsi),%rax
9660 DB 76,139,0 ; mov (%rax),%r8
9661 DB 72,141,4,127 ; lea (%rdi,%rdi,2),%rax
9662 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009663 DB 15,133,243,0,0,0 ; jne 5009 <_sk_load_rgb_u16_be_avx+0x105>
Mike Kleinb3821732017-04-17 10:58:05 -04009664 DB 196,193,122,111,4,64 ; vmovdqu (%r8,%rax,2),%xmm0
9665 DB 196,193,122,111,84,64,12 ; vmovdqu 0xc(%r8,%rax,2),%xmm2
9666 DB 196,193,122,111,76,64,24 ; vmovdqu 0x18(%r8,%rax,2),%xmm1
9667 DB 196,193,122,111,92,64,32 ; vmovdqu 0x20(%r8,%rax,2),%xmm3
9668 DB 197,225,115,219,4 ; vpsrldq $0x4,%xmm3,%xmm3
9669 DB 197,185,115,216,6 ; vpsrldq $0x6,%xmm0,%xmm8
9670 DB 197,177,115,218,6 ; vpsrldq $0x6,%xmm2,%xmm9
9671 DB 197,161,115,217,6 ; vpsrldq $0x6,%xmm1,%xmm11
9672 DB 197,169,115,219,6 ; vpsrldq $0x6,%xmm3,%xmm10
9673 DB 197,249,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm0
9674 DB 196,193,57,97,209 ; vpunpcklwd %xmm9,%xmm8,%xmm2
9675 DB 197,241,97,203 ; vpunpcklwd %xmm3,%xmm1,%xmm1
9676 DB 196,193,33,97,218 ; vpunpcklwd %xmm10,%xmm11,%xmm3
9677 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8
9678 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9
9679 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -04009680 DB 197,113,105,211 ; vpunpckhwd %xmm3,%xmm1,%xmm10
Mike Kleinb3821732017-04-17 10:58:05 -04009681 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0
9682 DB 197,241,113,240,8 ; vpsllw $0x8,%xmm0,%xmm1
9683 DB 197,249,113,208,8 ; vpsrlw $0x8,%xmm0,%xmm0
9684 DB 197,241,235,192 ; vpor %xmm0,%xmm1,%xmm0
9685 DB 196,65,25,239,228 ; vpxor %xmm12,%xmm12,%xmm12
9686 DB 196,193,121,105,204 ; vpunpckhwd %xmm12,%xmm0,%xmm1
9687 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0
9688 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0
9689 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04009690 DB 196,98,125,24,29,220,24,0,0 ; vbroadcastss 0x18dc(%rip),%ymm11 # 687c <_sk_callback_avx+0x445>
Mike Kleinfe560a82017-05-01 12:56:35 -04009691 DB 196,193,124,89,195 ; vmulps %ymm11,%ymm0,%ymm0
Mike Kleinb3821732017-04-17 10:58:05 -04009692 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1
9693 DB 197,233,113,241,8 ; vpsllw $0x8,%xmm1,%xmm2
9694 DB 197,241,113,209,8 ; vpsrlw $0x8,%xmm1,%xmm1
9695 DB 197,233,235,201 ; vpor %xmm1,%xmm2,%xmm1
9696 DB 196,193,113,105,212 ; vpunpckhwd %xmm12,%xmm1,%xmm2
9697 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1
9698 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
9699 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -04009700 DB 196,193,116,89,203 ; vmulps %ymm11,%ymm1,%ymm1
9701 DB 196,193,49,108,210 ; vpunpcklqdq %xmm10,%xmm9,%xmm2
Mike Kleinb3821732017-04-17 10:58:05 -04009702 DB 197,225,113,242,8 ; vpsllw $0x8,%xmm2,%xmm3
9703 DB 197,233,113,210,8 ; vpsrlw $0x8,%xmm2,%xmm2
9704 DB 197,225,235,210 ; vpor %xmm2,%xmm3,%xmm2
9705 DB 196,193,105,105,220 ; vpunpckhwd %xmm12,%xmm2,%xmm3
9706 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2
9707 DB 196,227,109,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm2,%ymm2
9708 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2
Mike Kleinfe560a82017-05-01 12:56:35 -04009709 DB 196,193,108,89,211 ; vmulps %ymm11,%ymm2,%ymm2
Mike Kleinb3821732017-04-17 10:58:05 -04009710 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04009711 DB 196,226,125,24,29,121,24,0,0 ; vbroadcastss 0x1879(%rip),%ymm3 # 6880 <_sk_callback_avx+0x449>
Mike Kleinb3821732017-04-17 10:58:05 -04009712 DB 255,224 ; jmpq *%rax
9713 DB 196,193,121,110,4,64 ; vmovd (%r8,%rax,2),%xmm0
9714 DB 196,193,121,196,68,64,4,2 ; vpinsrw $0x2,0x4(%r8,%rax,2),%xmm0,%xmm0
9715 DB 72,131,249,1 ; cmp $0x1,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009716 DB 117,5 ; jne 5022 <_sk_load_rgb_u16_be_avx+0x11e>
9717 DB 233,40,255,255,255 ; jmpq 4f4a <_sk_load_rgb_u16_be_avx+0x46>
Mike Kleinb3821732017-04-17 10:58:05 -04009718 DB 196,193,121,110,76,64,6 ; vmovd 0x6(%r8,%rax,2),%xmm1
9719 DB 196,65,113,196,68,64,10,2 ; vpinsrw $0x2,0xa(%r8,%rax,2),%xmm1,%xmm8
9720 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009721 DB 114,26 ; jb 5051 <_sk_load_rgb_u16_be_avx+0x14d>
Mike Kleinb3821732017-04-17 10:58:05 -04009722 DB 196,193,121,110,76,64,12 ; vmovd 0xc(%r8,%rax,2),%xmm1
9723 DB 196,193,113,196,84,64,16,2 ; vpinsrw $0x2,0x10(%r8,%rax,2),%xmm1,%xmm2
9724 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009725 DB 117,10 ; jne 5056 <_sk_load_rgb_u16_be_avx+0x152>
9726 DB 233,249,254,255,255 ; jmpq 4f4a <_sk_load_rgb_u16_be_avx+0x46>
9727 DB 233,244,254,255,255 ; jmpq 4f4a <_sk_load_rgb_u16_be_avx+0x46>
Mike Kleinb3821732017-04-17 10:58:05 -04009728 DB 196,193,121,110,76,64,18 ; vmovd 0x12(%r8,%rax,2),%xmm1
9729 DB 196,65,113,196,76,64,22,2 ; vpinsrw $0x2,0x16(%r8,%rax,2),%xmm1,%xmm9
9730 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009731 DB 114,26 ; jb 5085 <_sk_load_rgb_u16_be_avx+0x181>
Mike Kleinb3821732017-04-17 10:58:05 -04009732 DB 196,193,121,110,76,64,24 ; vmovd 0x18(%r8,%rax,2),%xmm1
9733 DB 196,193,113,196,76,64,28,2 ; vpinsrw $0x2,0x1c(%r8,%rax,2),%xmm1,%xmm1
9734 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009735 DB 117,10 ; jne 508a <_sk_load_rgb_u16_be_avx+0x186>
9736 DB 233,197,254,255,255 ; jmpq 4f4a <_sk_load_rgb_u16_be_avx+0x46>
9737 DB 233,192,254,255,255 ; jmpq 4f4a <_sk_load_rgb_u16_be_avx+0x46>
Mike Kleinb3821732017-04-17 10:58:05 -04009738 DB 196,193,121,110,92,64,30 ; vmovd 0x1e(%r8,%rax,2),%xmm3
9739 DB 196,65,97,196,92,64,34,2 ; vpinsrw $0x2,0x22(%r8,%rax,2),%xmm3,%xmm11
9740 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009741 DB 114,20 ; jb 50b3 <_sk_load_rgb_u16_be_avx+0x1af>
Mike Kleinb3821732017-04-17 10:58:05 -04009742 DB 196,193,121,110,92,64,36 ; vmovd 0x24(%r8,%rax,2),%xmm3
9743 DB 196,193,97,196,92,64,40,2 ; vpinsrw $0x2,0x28(%r8,%rax,2),%xmm3,%xmm3
Brian Osman74fc5932017-05-22 19:25:36 +00009744 DB 233,151,254,255,255 ; jmpq 4f4a <_sk_load_rgb_u16_be_avx+0x46>
9745 DB 233,146,254,255,255 ; jmpq 4f4a <_sk_load_rgb_u16_be_avx+0x46>
Mike Klein3146bb92017-04-05 14:45:02 -04009746
9747PUBLIC _sk_store_u16_be_avx
9748_sk_store_u16_be_avx LABEL PROC
9749 DB 72,173 ; lods %ds:(%rsi),%rax
9750 DB 76,139,0 ; mov (%rax),%r8
Mike Kleinfe560a82017-05-01 12:56:35 -04009751 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax
Mike Klein8ca33562017-05-23 08:07:43 -04009752 DB 196,98,125,24,5,182,23,0,0 ; vbroadcastss 0x17b6(%rip),%ymm8 # 6884 <_sk_callback_avx+0x44d>
Mike Kleinfe560a82017-05-01 12:56:35 -04009753 DB 196,65,124,89,200 ; vmulps %ymm8,%ymm0,%ymm9
Mike Klein3146bb92017-04-05 14:45:02 -04009754 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9
9755 DB 196,67,125,25,202,1 ; vextractf128 $0x1,%ymm9,%xmm10
9756 DB 196,66,49,43,202 ; vpackusdw %xmm10,%xmm9,%xmm9
9757 DB 196,193,41,113,241,8 ; vpsllw $0x8,%xmm9,%xmm10
9758 DB 196,193,49,113,209,8 ; vpsrlw $0x8,%xmm9,%xmm9
9759 DB 196,65,41,235,201 ; vpor %xmm9,%xmm10,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -04009760 DB 196,65,116,89,208 ; vmulps %ymm8,%ymm1,%ymm10
Mike Klein3146bb92017-04-05 14:45:02 -04009761 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10
9762 DB 196,67,125,25,211,1 ; vextractf128 $0x1,%ymm10,%xmm11
9763 DB 196,66,41,43,211 ; vpackusdw %xmm11,%xmm10,%xmm10
9764 DB 196,193,33,113,242,8 ; vpsllw $0x8,%xmm10,%xmm11
9765 DB 196,193,41,113,210,8 ; vpsrlw $0x8,%xmm10,%xmm10
9766 DB 196,65,33,235,210 ; vpor %xmm10,%xmm11,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -04009767 DB 196,65,108,89,216 ; vmulps %ymm8,%ymm2,%ymm11
Mike Klein3146bb92017-04-05 14:45:02 -04009768 DB 196,65,125,91,219 ; vcvtps2dq %ymm11,%ymm11
9769 DB 196,67,125,25,220,1 ; vextractf128 $0x1,%ymm11,%xmm12
9770 DB 196,66,33,43,220 ; vpackusdw %xmm12,%xmm11,%xmm11
9771 DB 196,193,25,113,243,8 ; vpsllw $0x8,%xmm11,%xmm12
9772 DB 196,193,33,113,211,8 ; vpsrlw $0x8,%xmm11,%xmm11
9773 DB 196,65,25,235,219 ; vpor %xmm11,%xmm12,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -04009774 DB 196,65,100,89,192 ; vmulps %ymm8,%ymm3,%ymm8
Mike Klein3146bb92017-04-05 14:45:02 -04009775 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8
9776 DB 196,67,125,25,196,1 ; vextractf128 $0x1,%ymm8,%xmm12
9777 DB 196,66,57,43,196 ; vpackusdw %xmm12,%xmm8,%xmm8
9778 DB 196,193,25,113,240,8 ; vpsllw $0x8,%xmm8,%xmm12
9779 DB 196,193,57,113,208,8 ; vpsrlw $0x8,%xmm8,%xmm8
9780 DB 196,65,25,235,192 ; vpor %xmm8,%xmm12,%xmm8
9781 DB 196,65,49,97,226 ; vpunpcklwd %xmm10,%xmm9,%xmm12
9782 DB 196,65,49,105,234 ; vpunpckhwd %xmm10,%xmm9,%xmm13
9783 DB 196,65,33,97,200 ; vpunpcklwd %xmm8,%xmm11,%xmm9
9784 DB 196,65,33,105,192 ; vpunpckhwd %xmm8,%xmm11,%xmm8
9785 DB 196,65,25,98,217 ; vpunpckldq %xmm9,%xmm12,%xmm11
9786 DB 196,65,25,106,209 ; vpunpckhdq %xmm9,%xmm12,%xmm10
9787 DB 196,65,17,98,200 ; vpunpckldq %xmm8,%xmm13,%xmm9
9788 DB 196,65,17,106,192 ; vpunpckhdq %xmm8,%xmm13,%xmm8
9789 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009790 DB 117,31 ; jne 51b2 <_sk_store_u16_be_avx+0xfa>
Mike Kleinfe560a82017-05-01 12:56:35 -04009791 DB 196,65,120,17,28,64 ; vmovups %xmm11,(%r8,%rax,2)
9792 DB 196,65,120,17,84,64,16 ; vmovups %xmm10,0x10(%r8,%rax,2)
9793 DB 196,65,120,17,76,64,32 ; vmovups %xmm9,0x20(%r8,%rax,2)
9794 DB 196,65,122,127,68,64,48 ; vmovdqu %xmm8,0x30(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04009795 DB 72,173 ; lods %ds:(%rsi),%rax
9796 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04009797 DB 196,65,121,214,28,64 ; vmovq %xmm11,(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04009798 DB 72,131,249,1 ; cmp $0x1,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009799 DB 116,240 ; je 51ae <_sk_store_u16_be_avx+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04009800 DB 196,65,121,23,92,64,8 ; vmovhpd %xmm11,0x8(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04009801 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009802 DB 114,227 ; jb 51ae <_sk_store_u16_be_avx+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04009803 DB 196,65,121,214,84,64,16 ; vmovq %xmm10,0x10(%r8,%rax,2)
Brian Osman74fc5932017-05-22 19:25:36 +00009804 DB 116,218 ; je 51ae <_sk_store_u16_be_avx+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04009805 DB 196,65,121,23,84,64,24 ; vmovhpd %xmm10,0x18(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04009806 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009807 DB 114,205 ; jb 51ae <_sk_store_u16_be_avx+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04009808 DB 196,65,121,214,76,64,32 ; vmovq %xmm9,0x20(%r8,%rax,2)
Brian Osman74fc5932017-05-22 19:25:36 +00009809 DB 116,196 ; je 51ae <_sk_store_u16_be_avx+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04009810 DB 196,65,121,23,76,64,40 ; vmovhpd %xmm9,0x28(%r8,%rax,2)
Mike Klein3146bb92017-04-05 14:45:02 -04009811 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009812 DB 114,183 ; jb 51ae <_sk_store_u16_be_avx+0xf6>
Mike Kleinfe560a82017-05-01 12:56:35 -04009813 DB 196,65,121,214,68,64,48 ; vmovq %xmm8,0x30(%r8,%rax,2)
Brian Osman74fc5932017-05-22 19:25:36 +00009814 DB 235,174 ; jmp 51ae <_sk_store_u16_be_avx+0xf6>
Mike Klein3146bb92017-04-05 14:45:02 -04009815
Mike Klein14987eb2017-04-06 10:22:26 -04009816PUBLIC _sk_load_f32_avx
9817_sk_load_f32_avx LABEL PROC
9818 DB 72,173 ; lods %ds:(%rsi),%rax
9819 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009820 DB 119,110 ; ja 5276 <_sk_load_f32_avx+0x76>
Mike Klein14987eb2017-04-06 10:22:26 -04009821 DB 76,139,0 ; mov (%rax),%r8
9822 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9
Brian Osman74fc5932017-05-22 19:25:36 +00009823 DB 76,141,21,134,0,0,0 ; lea 0x86(%rip),%r10 # 52a0 <_sk_load_f32_avx+0xa0>
Mike Klein14987eb2017-04-06 10:22:26 -04009824 DB 73,99,4,138 ; movslq (%r10,%rcx,4),%rax
9825 DB 76,1,208 ; add %r10,%rax
9826 DB 255,224 ; jmpq *%rax
9827 DB 196,3,125,24,68,136,112,1 ; vinsertf128 $0x1,0x70(%r8,%r9,4),%ymm0,%ymm8
9828 DB 196,131,125,24,92,136,96,1 ; vinsertf128 $0x1,0x60(%r8,%r9,4),%ymm0,%ymm3
9829 DB 196,131,125,24,76,136,80,1 ; vinsertf128 $0x1,0x50(%r8,%r9,4),%ymm0,%ymm1
9830 DB 196,131,125,24,84,136,64,1 ; vinsertf128 $0x1,0x40(%r8,%r9,4),%ymm0,%ymm2
9831 DB 196,129,121,16,68,136,48 ; vmovupd 0x30(%r8,%r9,4),%xmm0
9832 DB 196,195,125,13,192,12 ; vblendpd $0xc,%ymm8,%ymm0,%ymm0
9833 DB 196,1,121,16,68,136,32 ; vmovupd 0x20(%r8,%r9,4),%xmm8
9834 DB 196,99,61,13,203,12 ; vblendpd $0xc,%ymm3,%ymm8,%ymm9
9835 DB 196,129,121,16,92,136,16 ; vmovupd 0x10(%r8,%r9,4),%xmm3
9836 DB 196,99,101,13,209,12 ; vblendpd $0xc,%ymm1,%ymm3,%ymm10
9837 DB 196,129,121,16,12,136 ; vmovupd (%r8,%r9,4),%xmm1
9838 DB 196,227,117,13,202,12 ; vblendpd $0xc,%ymm2,%ymm1,%ymm1
9839 DB 196,193,116,20,210 ; vunpcklps %ymm10,%ymm1,%ymm2
9840 DB 196,193,116,21,218 ; vunpckhps %ymm10,%ymm1,%ymm3
9841 DB 197,180,20,200 ; vunpcklps %ymm0,%ymm9,%ymm1
9842 DB 197,52,21,192 ; vunpckhps %ymm0,%ymm9,%ymm8
9843 DB 197,237,20,193 ; vunpcklpd %ymm1,%ymm2,%ymm0
9844 DB 197,237,21,201 ; vunpckhpd %ymm1,%ymm2,%ymm1
9845 DB 196,193,101,20,208 ; vunpcklpd %ymm8,%ymm3,%ymm2
9846 DB 196,193,101,21,216 ; vunpckhpd %ymm8,%ymm3,%ymm3
9847 DB 72,173 ; lods %ds:(%rsi),%rax
9848 DB 255,224 ; jmpq *%rax
Mike Kleinfe560a82017-05-01 12:56:35 -04009849 DB 102,144 ; xchg %ax,%ax
9850 DB 131,255,255 ; cmp $0xffffffff,%edi
9851 DB 255,202 ; dec %edx
Mike Klein14987eb2017-04-06 10:22:26 -04009852 DB 255 ; (bad)
9853 DB 255 ; (bad)
9854 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04009855 DB 189,255,255,255,176 ; mov $0xb0ffffff,%ebp
Mike Klein14987eb2017-04-06 10:22:26 -04009856 DB 255 ; (bad)
9857 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04009858 DB 255,163,255,255,255,155 ; jmpq *-0x64000001(%rbx)
Mike Klein14987eb2017-04-06 10:22:26 -04009859 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -04009860 DB 255 ; (bad)
9861 DB 255,147,255,255,255,139 ; callq *-0x74000001(%rbx)
9862 DB 255 ; (bad)
Mike Klein14987eb2017-04-06 10:22:26 -04009863 DB 255 ; (bad)
9864 DB 255 ; .byte 0xff
9865
Mike Kleind7e06ae2017-03-29 16:33:06 -04009866PUBLIC _sk_store_f32_avx
9867_sk_store_f32_avx LABEL PROC
9868 DB 72,173 ; lods %ds:(%rsi),%rax
9869 DB 76,139,0 ; mov (%rax),%r8
9870 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax
9871 DB 197,124,20,193 ; vunpcklps %ymm1,%ymm0,%ymm8
9872 DB 197,124,21,217 ; vunpckhps %ymm1,%ymm0,%ymm11
9873 DB 197,108,20,203 ; vunpcklps %ymm3,%ymm2,%ymm9
9874 DB 197,108,21,227 ; vunpckhps %ymm3,%ymm2,%ymm12
9875 DB 196,65,61,20,209 ; vunpcklpd %ymm9,%ymm8,%ymm10
9876 DB 196,65,61,21,201 ; vunpckhpd %ymm9,%ymm8,%ymm9
9877 DB 196,65,37,20,196 ; vunpcklpd %ymm12,%ymm11,%ymm8
9878 DB 196,65,37,21,220 ; vunpckhpd %ymm12,%ymm11,%ymm11
9879 DB 72,133,201 ; test %rcx,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009880 DB 117,55 ; jne 532d <_sk_store_f32_avx+0x6d>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009881 DB 196,67,45,24,225,1 ; vinsertf128 $0x1,%xmm9,%ymm10,%ymm12
9882 DB 196,67,61,24,235,1 ; vinsertf128 $0x1,%xmm11,%ymm8,%ymm13
9883 DB 196,67,45,6,201,49 ; vperm2f128 $0x31,%ymm9,%ymm10,%ymm9
9884 DB 196,67,61,6,195,49 ; vperm2f128 $0x31,%ymm11,%ymm8,%ymm8
9885 DB 196,65,125,17,36,128 ; vmovupd %ymm12,(%r8,%rax,4)
9886 DB 196,65,125,17,108,128,32 ; vmovupd %ymm13,0x20(%r8,%rax,4)
9887 DB 196,65,125,17,76,128,64 ; vmovupd %ymm9,0x40(%r8,%rax,4)
9888 DB 196,65,125,17,68,128,96 ; vmovupd %ymm8,0x60(%r8,%rax,4)
9889 DB 72,173 ; lods %ds:(%rsi),%rax
9890 DB 255,224 ; jmpq *%rax
9891 DB 196,65,121,17,20,128 ; vmovupd %xmm10,(%r8,%rax,4)
9892 DB 72,131,249,1 ; cmp $0x1,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009893 DB 116,240 ; je 5329 <_sk_store_f32_avx+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009894 DB 196,65,121,17,76,128,16 ; vmovupd %xmm9,0x10(%r8,%rax,4)
9895 DB 72,131,249,3 ; cmp $0x3,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009896 DB 114,227 ; jb 5329 <_sk_store_f32_avx+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009897 DB 196,65,121,17,68,128,32 ; vmovupd %xmm8,0x20(%r8,%rax,4)
Brian Osman74fc5932017-05-22 19:25:36 +00009898 DB 116,218 ; je 5329 <_sk_store_f32_avx+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009899 DB 196,65,121,17,92,128,48 ; vmovupd %xmm11,0x30(%r8,%rax,4)
9900 DB 72,131,249,5 ; cmp $0x5,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009901 DB 114,205 ; jb 5329 <_sk_store_f32_avx+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009902 DB 196,67,125,25,84,128,64,1 ; vextractf128 $0x1,%ymm10,0x40(%r8,%rax,4)
Brian Osman74fc5932017-05-22 19:25:36 +00009903 DB 116,195 ; je 5329 <_sk_store_f32_avx+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009904 DB 196,67,125,25,76,128,80,1 ; vextractf128 $0x1,%ymm9,0x50(%r8,%rax,4)
9905 DB 72,131,249,7 ; cmp $0x7,%rcx
Brian Osman74fc5932017-05-22 19:25:36 +00009906 DB 114,181 ; jb 5329 <_sk_store_f32_avx+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009907 DB 196,67,125,25,68,128,96,1 ; vextractf128 $0x1,%ymm8,0x60(%r8,%rax,4)
Brian Osman74fc5932017-05-22 19:25:36 +00009908 DB 235,171 ; jmp 5329 <_sk_store_f32_avx+0x69>
Mike Kleind7e06ae2017-03-29 16:33:06 -04009909
9910PUBLIC _sk_clamp_x_avx
9911_sk_clamp_x_avx LABEL PROC
9912 DB 72,173 ; lods %ds:(%rsi),%rax
9913 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfc84dc52017-05-11 15:29:31 -04009914 DB 197,188,95,192 ; vmaxps %ymm0,%ymm8,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04009915 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
Mike Kleinfc84dc52017-05-11 15:29:31 -04009916 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04009917 DB 72,173 ; lods %ds:(%rsi),%rax
9918 DB 255,224 ; jmpq *%rax
9919
9920PUBLIC _sk_clamp_y_avx
9921_sk_clamp_y_avx LABEL PROC
9922 DB 72,173 ; lods %ds:(%rsi),%rax
9923 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
Mike Kleinfc84dc52017-05-11 15:29:31 -04009924 DB 197,188,95,201 ; vmaxps %ymm1,%ymm8,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04009925 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
Mike Kleinfc84dc52017-05-11 15:29:31 -04009926 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04009927 DB 72,173 ; lods %ds:(%rsi),%rax
9928 DB 255,224 ; jmpq *%rax
9929
9930PUBLIC _sk_repeat_x_avx
9931_sk_repeat_x_avx LABEL PROC
9932 DB 72,173 ; lods %ds:(%rsi),%rax
9933 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
9934 DB 196,65,124,94,200 ; vdivps %ymm8,%ymm0,%ymm9
9935 DB 196,67,125,8,201,1 ; vroundps $0x1,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04009936 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
9937 DB 196,193,124,92,192 ; vsubps %ymm8,%ymm0,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04009938 DB 72,173 ; lods %ds:(%rsi),%rax
9939 DB 255,224 ; jmpq *%rax
9940
9941PUBLIC _sk_repeat_y_avx
9942_sk_repeat_y_avx LABEL PROC
9943 DB 72,173 ; lods %ds:(%rsi),%rax
9944 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
9945 DB 196,65,116,94,200 ; vdivps %ymm8,%ymm1,%ymm9
9946 DB 196,67,125,8,201,1 ; vroundps $0x1,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -04009947 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
9948 DB 196,193,116,92,200 ; vsubps %ymm8,%ymm1,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04009949 DB 72,173 ; lods %ds:(%rsi),%rax
9950 DB 255,224 ; jmpq *%rax
9951
9952PUBLIC _sk_mirror_x_avx
9953_sk_mirror_x_avx LABEL PROC
9954 DB 72,173 ; lods %ds:(%rsi),%rax
9955 DB 197,121,110,0 ; vmovd (%rax),%xmm8
9956 DB 196,65,121,112,200,0 ; vpshufd $0x0,%xmm8,%xmm9
9957 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9
9958 DB 196,65,124,92,209 ; vsubps %ymm9,%ymm0,%ymm10
9959 DB 196,193,58,88,192 ; vaddss %xmm8,%xmm8,%xmm0
9960 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0
9961 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0
9962 DB 197,44,94,192 ; vdivps %ymm0,%ymm10,%ymm8
9963 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8
9964 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0
9965 DB 197,172,92,192 ; vsubps %ymm0,%ymm10,%ymm0
9966 DB 196,193,124,92,193 ; vsubps %ymm9,%ymm0,%ymm0
9967 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
9968 DB 197,60,92,192 ; vsubps %ymm0,%ymm8,%ymm8
Mike Kleinfc84dc52017-05-11 15:29:31 -04009969 DB 197,188,84,192 ; vandps %ymm0,%ymm8,%ymm0
Mike Kleind7e06ae2017-03-29 16:33:06 -04009970 DB 72,173 ; lods %ds:(%rsi),%rax
9971 DB 255,224 ; jmpq *%rax
9972
9973PUBLIC _sk_mirror_y_avx
9974_sk_mirror_y_avx LABEL PROC
9975 DB 72,173 ; lods %ds:(%rsi),%rax
9976 DB 197,121,110,0 ; vmovd (%rax),%xmm8
9977 DB 196,65,121,112,200,0 ; vpshufd $0x0,%xmm8,%xmm9
9978 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9
9979 DB 196,65,116,92,209 ; vsubps %ymm9,%ymm1,%ymm10
9980 DB 196,193,58,88,200 ; vaddss %xmm8,%xmm8,%xmm1
9981 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1
9982 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1
9983 DB 197,44,94,193 ; vdivps %ymm1,%ymm10,%ymm8
9984 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8
9985 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1
9986 DB 197,172,92,201 ; vsubps %ymm1,%ymm10,%ymm1
9987 DB 196,193,116,92,201 ; vsubps %ymm9,%ymm1,%ymm1
9988 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
9989 DB 197,60,92,193 ; vsubps %ymm1,%ymm8,%ymm8
Mike Kleinfc84dc52017-05-11 15:29:31 -04009990 DB 197,188,84,201 ; vandps %ymm1,%ymm8,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -04009991 DB 72,173 ; lods %ds:(%rsi),%rax
9992 DB 255,224 ; jmpq *%rax
9993
Mike Klein9f85d682017-05-23 07:52:01 -04009994PUBLIC _sk_clamp_x_1_avx
9995_sk_clamp_x_1_avx LABEL PROC
9996 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
9997 DB 197,188,95,192 ; vmaxps %ymm0,%ymm8,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -04009998 DB 196,98,125,24,5,230,19,0,0 ; vbroadcastss 0x13e6(%rip),%ymm8 # 6888 <_sk_callback_avx+0x451>
Mike Klein9f85d682017-05-23 07:52:01 -04009999 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0
10000 DB 72,173 ; lods %ds:(%rsi),%rax
10001 DB 255,224 ; jmpq *%rax
10002
10003PUBLIC _sk_repeat_x_1_avx
10004_sk_repeat_x_1_avx LABEL PROC
10005 DB 196,99,125,8,192,1 ; vroundps $0x1,%ymm0,%ymm8
10006 DB 196,193,124,92,192 ; vsubps %ymm8,%ymm0,%ymm0
10007 DB 72,173 ; lods %ds:(%rsi),%rax
10008 DB 255,224 ; jmpq *%rax
10009
10010PUBLIC _sk_mirror_x_1_avx
10011_sk_mirror_x_1_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040010012 DB 196,98,125,24,5,201,19,0,0 ; vbroadcastss 0x13c9(%rip),%ymm8 # 688c <_sk_callback_avx+0x455>
Mike Klein9f85d682017-05-23 07:52:01 -040010013 DB 196,193,124,88,192 ; vaddps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -040010014 DB 196,98,125,24,13,191,19,0,0 ; vbroadcastss 0x13bf(%rip),%ymm9 # 6890 <_sk_callback_avx+0x459>
Mike Klein9f85d682017-05-23 07:52:01 -040010015 DB 196,65,124,89,201 ; vmulps %ymm9,%ymm0,%ymm9
10016 DB 196,67,125,8,201,1 ; vroundps $0x1,%ymm9,%ymm9
10017 DB 196,65,52,88,201 ; vaddps %ymm9,%ymm9,%ymm9
10018 DB 196,193,124,92,193 ; vsubps %ymm9,%ymm0,%ymm0
10019 DB 196,193,124,88,192 ; vaddps %ymm8,%ymm0,%ymm0
10020 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
10021 DB 197,60,92,192 ; vsubps %ymm0,%ymm8,%ymm8
10022 DB 197,188,84,192 ; vandps %ymm0,%ymm8,%ymm0
10023 DB 72,173 ; lods %ds:(%rsi),%rax
10024 DB 255,224 ; jmpq *%rax
10025
Mike Kleind7e06ae2017-03-29 16:33:06 -040010026PUBLIC _sk_luminance_to_alpha_avx
10027_sk_luminance_to_alpha_avx LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040010028 DB 196,226,125,24,29,143,19,0,0 ; vbroadcastss 0x138f(%rip),%ymm3 # 6894 <_sk_callback_avx+0x45d>
Mike Kleinfe560a82017-05-01 12:56:35 -040010029 DB 197,252,89,195 ; vmulps %ymm3,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -040010030 DB 196,226,125,24,29,134,19,0,0 ; vbroadcastss 0x1386(%rip),%ymm3 # 6898 <_sk_callback_avx+0x461>
Mike Kleinfe560a82017-05-01 12:56:35 -040010031 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040010032 DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -040010033 DB 196,226,125,24,13,121,19,0,0 ; vbroadcastss 0x1379(%rip),%ymm1 # 689c <_sk_callback_avx+0x465>
Mike Kleinfe560a82017-05-01 12:56:35 -040010034 DB 197,236,89,201 ; vmulps %ymm1,%ymm2,%ymm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040010035 DB 197,252,88,217 ; vaddps %ymm1,%ymm0,%ymm3
10036 DB 72,173 ; lods %ds:(%rsi),%rax
10037 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0
10038 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
10039 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2
10040 DB 255,224 ; jmpq *%rax
10041
10042PUBLIC _sk_matrix_2x3_avx
10043_sk_matrix_2x3_avx LABEL PROC
10044 DB 72,173 ; lods %ds:(%rsi),%rax
10045 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
10046 DB 196,98,125,24,72,8 ; vbroadcastss 0x8(%rax),%ymm9
10047 DB 196,98,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm10
10048 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9
10049 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10050 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8
10051 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
10052 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9
10053 DB 196,98,125,24,80,12 ; vbroadcastss 0xc(%rax),%ymm10
10054 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11
10055 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1
10056 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1
10057 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0
10058 DB 197,252,88,201 ; vaddps %ymm1,%ymm0,%ymm1
10059 DB 72,173 ; lods %ds:(%rsi),%rax
10060 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
10061 DB 255,224 ; jmpq *%rax
10062
10063PUBLIC _sk_matrix_3x4_avx
10064_sk_matrix_3x4_avx LABEL PROC
10065 DB 72,173 ; lods %ds:(%rsi),%rax
10066 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
10067 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
10068 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
10069 DB 196,98,125,24,88,36 ; vbroadcastss 0x24(%rax),%ymm11
10070 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10
10071 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
10072 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9
10073 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10074 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8
10075 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
10076 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9
10077 DB 196,98,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm10
10078 DB 196,98,125,24,88,28 ; vbroadcastss 0x1c(%rax),%ymm11
10079 DB 196,98,125,24,96,40 ; vbroadcastss 0x28(%rax),%ymm12
10080 DB 197,36,89,218 ; vmulps %ymm2,%ymm11,%ymm11
10081 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
10082 DB 197,44,89,209 ; vmulps %ymm1,%ymm10,%ymm10
10083 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
10084 DB 197,52,89,200 ; vmulps %ymm0,%ymm9,%ymm9
10085 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10086 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10
10087 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11
10088 DB 196,98,125,24,96,32 ; vbroadcastss 0x20(%rax),%ymm12
10089 DB 196,98,125,24,104,44 ; vbroadcastss 0x2c(%rax),%ymm13
10090 DB 197,156,89,210 ; vmulps %ymm2,%ymm12,%ymm2
10091 DB 196,193,108,88,213 ; vaddps %ymm13,%ymm2,%ymm2
10092 DB 197,164,89,201 ; vmulps %ymm1,%ymm11,%ymm1
10093 DB 197,244,88,202 ; vaddps %ymm2,%ymm1,%ymm1
10094 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0
10095 DB 197,252,88,209 ; vaddps %ymm1,%ymm0,%ymm2
10096 DB 72,173 ; lods %ds:(%rsi),%rax
10097 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
10098 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1
10099 DB 255,224 ; jmpq *%rax
10100
10101PUBLIC _sk_matrix_4x5_avx
10102_sk_matrix_4x5_avx LABEL PROC
10103 DB 72,173 ; lods %ds:(%rsi),%rax
10104 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
10105 DB 196,98,125,24,72,16 ; vbroadcastss 0x10(%rax),%ymm9
10106 DB 196,98,125,24,80,32 ; vbroadcastss 0x20(%rax),%ymm10
10107 DB 196,98,125,24,88,48 ; vbroadcastss 0x30(%rax),%ymm11
10108 DB 196,98,125,24,96,64 ; vbroadcastss 0x40(%rax),%ymm12
10109 DB 197,36,89,219 ; vmulps %ymm3,%ymm11,%ymm11
10110 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
10111 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10
10112 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
10113 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9
10114 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10115 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8
10116 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
10117 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9
10118 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10
10119 DB 196,98,125,24,88,36 ; vbroadcastss 0x24(%rax),%ymm11
10120 DB 196,98,125,24,96,52 ; vbroadcastss 0x34(%rax),%ymm12
10121 DB 196,98,125,24,104,68 ; vbroadcastss 0x44(%rax),%ymm13
10122 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12
10123 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12
10124 DB 197,36,89,218 ; vmulps %ymm2,%ymm11,%ymm11
10125 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
10126 DB 197,44,89,209 ; vmulps %ymm1,%ymm10,%ymm10
10127 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
10128 DB 197,52,89,200 ; vmulps %ymm0,%ymm9,%ymm9
10129 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10130 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10
10131 DB 196,98,125,24,88,24 ; vbroadcastss 0x18(%rax),%ymm11
10132 DB 196,98,125,24,96,40 ; vbroadcastss 0x28(%rax),%ymm12
10133 DB 196,98,125,24,104,56 ; vbroadcastss 0x38(%rax),%ymm13
10134 DB 196,98,125,24,112,72 ; vbroadcastss 0x48(%rax),%ymm14
10135 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13
10136 DB 196,65,20,88,238 ; vaddps %ymm14,%ymm13,%ymm13
10137 DB 197,28,89,226 ; vmulps %ymm2,%ymm12,%ymm12
10138 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12
10139 DB 197,36,89,217 ; vmulps %ymm1,%ymm11,%ymm11
10140 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11
10141 DB 197,44,89,208 ; vmulps %ymm0,%ymm10,%ymm10
10142 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
10143 DB 196,98,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm11
10144 DB 196,98,125,24,96,28 ; vbroadcastss 0x1c(%rax),%ymm12
10145 DB 196,98,125,24,104,44 ; vbroadcastss 0x2c(%rax),%ymm13
10146 DB 196,98,125,24,112,60 ; vbroadcastss 0x3c(%rax),%ymm14
10147 DB 196,98,125,24,120,76 ; vbroadcastss 0x4c(%rax),%ymm15
10148 DB 197,140,89,219 ; vmulps %ymm3,%ymm14,%ymm3
10149 DB 196,193,100,88,223 ; vaddps %ymm15,%ymm3,%ymm3
10150 DB 197,148,89,210 ; vmulps %ymm2,%ymm13,%ymm2
10151 DB 197,236,88,211 ; vaddps %ymm3,%ymm2,%ymm2
10152 DB 197,156,89,201 ; vmulps %ymm1,%ymm12,%ymm1
10153 DB 197,244,88,202 ; vaddps %ymm2,%ymm1,%ymm1
10154 DB 197,164,89,192 ; vmulps %ymm0,%ymm11,%ymm0
10155 DB 197,252,88,217 ; vaddps %ymm1,%ymm0,%ymm3
10156 DB 72,173 ; lods %ds:(%rsi),%rax
10157 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
10158 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1
10159 DB 197,124,41,210 ; vmovaps %ymm10,%ymm2
10160 DB 255,224 ; jmpq *%rax
10161
Mike Reed02640952017-05-19 15:32:13 -040010162PUBLIC _sk_matrix_4x3_avx
10163_sk_matrix_4x3_avx LABEL PROC
10164 DB 72,173 ; lods %ds:(%rsi),%rax
10165 DB 196,226,125,24,16 ; vbroadcastss (%rax),%ymm2
10166 DB 196,226,125,24,88,16 ; vbroadcastss 0x10(%rax),%ymm3
10167 DB 196,98,125,24,64,32 ; vbroadcastss 0x20(%rax),%ymm8
10168 DB 197,228,89,217 ; vmulps %ymm1,%ymm3,%ymm3
10169 DB 196,193,100,88,216 ; vaddps %ymm8,%ymm3,%ymm3
10170 DB 197,236,89,208 ; vmulps %ymm0,%ymm2,%ymm2
10171 DB 197,108,88,195 ; vaddps %ymm3,%ymm2,%ymm8
10172 DB 196,226,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm2
10173 DB 196,226,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm3
10174 DB 196,98,125,24,72,36 ; vbroadcastss 0x24(%rax),%ymm9
10175 DB 197,228,89,217 ; vmulps %ymm1,%ymm3,%ymm3
10176 DB 196,193,100,88,217 ; vaddps %ymm9,%ymm3,%ymm3
10177 DB 197,236,89,208 ; vmulps %ymm0,%ymm2,%ymm2
10178 DB 197,108,88,203 ; vaddps %ymm3,%ymm2,%ymm9
10179 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2
10180 DB 196,226,125,24,88,24 ; vbroadcastss 0x18(%rax),%ymm3
10181 DB 196,98,125,24,80,40 ; vbroadcastss 0x28(%rax),%ymm10
10182 DB 197,228,89,217 ; vmulps %ymm1,%ymm3,%ymm3
10183 DB 196,193,100,88,218 ; vaddps %ymm10,%ymm3,%ymm3
10184 DB 197,236,89,208 ; vmulps %ymm0,%ymm2,%ymm2
10185 DB 197,236,88,211 ; vaddps %ymm3,%ymm2,%ymm2
10186 DB 196,226,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm3
10187 DB 196,98,125,24,80,28 ; vbroadcastss 0x1c(%rax),%ymm10
10188 DB 196,98,125,24,88,44 ; vbroadcastss 0x2c(%rax),%ymm11
10189 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1
10190 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1
10191 DB 197,228,89,192 ; vmulps %ymm0,%ymm3,%ymm0
10192 DB 197,252,88,217 ; vaddps %ymm1,%ymm0,%ymm3
10193 DB 72,173 ; lods %ds:(%rsi),%rax
10194 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
10195 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1
10196 DB 255,224 ; jmpq *%rax
10197
Mike Kleind7e06ae2017-03-29 16:33:06 -040010198PUBLIC _sk_matrix_perspective_avx
10199_sk_matrix_perspective_avx LABEL PROC
10200 DB 72,173 ; lods %ds:(%rsi),%rax
10201 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8
10202 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9
10203 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10
10204 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9
10205 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10206 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8
10207 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
10208 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9
10209 DB 196,98,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm10
10210 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11
10211 DB 197,44,89,209 ; vmulps %ymm1,%ymm10,%ymm10
10212 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
10213 DB 197,52,89,200 ; vmulps %ymm0,%ymm9,%ymm9
10214 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10215 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10
10216 DB 196,98,125,24,88,28 ; vbroadcastss 0x1c(%rax),%ymm11
10217 DB 196,98,125,24,96,32 ; vbroadcastss 0x20(%rax),%ymm12
10218 DB 197,164,89,201 ; vmulps %ymm1,%ymm11,%ymm1
10219 DB 196,193,116,88,204 ; vaddps %ymm12,%ymm1,%ymm1
10220 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0
10221 DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0
10222 DB 197,252,83,200 ; vrcpps %ymm0,%ymm1
10223 DB 197,188,89,193 ; vmulps %ymm1,%ymm8,%ymm0
10224 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1
10225 DB 72,173 ; lods %ds:(%rsi),%rax
10226 DB 255,224 ; jmpq *%rax
10227
Herb Derby4de13042017-05-15 10:49:39 -040010228PUBLIC _sk_evenly_spaced_gradient_avx
10229_sk_evenly_spaced_gradient_avx LABEL PROC
10230 DB 85 ; push %rbp
10231 DB 65,87 ; push %r15
10232 DB 65,86 ; push %r14
10233 DB 65,85 ; push %r13
10234 DB 65,84 ; push %r12
10235 DB 83 ; push %rbx
Herb Derby7b4202d2017-04-10 10:52:34 -040010236 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby4de13042017-05-15 10:49:39 -040010237 DB 72,139,24 ; mov (%rax),%rbx
10238 DB 72,139,104,8 ; mov 0x8(%rax),%rbp
10239 DB 72,255,203 ; dec %rbx
Mike Klein8ca33562017-05-23 08:07:43 -040010240 DB 120,7 ; js 5879 <_sk_evenly_spaced_gradient_avx+0x1f>
Herb Derby4de13042017-05-15 10:49:39 -040010241 DB 196,225,242,42,203 ; vcvtsi2ss %rbx,%xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040010242 DB 235,21 ; jmp 588e <_sk_evenly_spaced_gradient_avx+0x34>
Herb Derby4de13042017-05-15 10:49:39 -040010243 DB 73,137,216 ; mov %rbx,%r8
10244 DB 73,209,232 ; shr %r8
10245 DB 131,227,1 ; and $0x1,%ebx
10246 DB 76,9,195 ; or %r8,%rbx
10247 DB 196,225,242,42,203 ; vcvtsi2ss %rbx,%xmm1,%xmm1
10248 DB 197,242,88,201 ; vaddss %xmm1,%xmm1,%xmm1
10249 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1
10250 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1
10251 DB 197,244,89,200 ; vmulps %ymm0,%ymm1,%ymm1
10252 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1
10253 DB 196,195,249,22,200,1 ; vpextrq $0x1,%xmm1,%r8
10254 DB 69,137,193 ; mov %r8d,%r9d
10255 DB 73,193,232,32 ; shr $0x20,%r8
10256 DB 196,193,249,126,202 ; vmovq %xmm1,%r10
10257 DB 69,137,211 ; mov %r10d,%r11d
10258 DB 73,193,234,32 ; shr $0x20,%r10
10259 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1
10260 DB 196,195,249,22,207,1 ; vpextrq $0x1,%xmm1,%r15
10261 DB 69,137,254 ; mov %r15d,%r14d
10262 DB 73,193,239,32 ; shr $0x20,%r15
10263 DB 196,193,249,126,205 ; vmovq %xmm1,%r13
10264 DB 69,137,236 ; mov %r13d,%r12d
10265 DB 73,193,237,32 ; shr $0x20,%r13
10266 DB 196,161,122,16,76,165,0 ; vmovss 0x0(%rbp,%r12,4),%xmm1
10267 DB 196,163,113,33,76,173,0,16 ; vinsertps $0x10,0x0(%rbp,%r13,4),%xmm1,%xmm1
10268 DB 196,161,122,16,84,181,0 ; vmovss 0x0(%rbp,%r14,4),%xmm2
10269 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10270 DB 196,161,122,16,84,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm2
10271 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10272 DB 196,161,122,16,84,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm2
10273 DB 196,163,105,33,84,149,0,16 ; vinsertps $0x10,0x0(%rbp,%r10,4),%xmm2,%xmm2
10274 DB 196,161,122,16,92,141,0 ; vmovss 0x0(%rbp,%r9,4),%xmm3
10275 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10276 DB 196,161,122,16,92,133,0 ; vmovss 0x0(%rbp,%r8,4),%xmm3
10277 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10278 DB 196,99,109,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm8
10279 DB 72,139,88,40 ; mov 0x28(%rax),%rbx
10280 DB 196,161,122,16,20,163 ; vmovss (%rbx,%r12,4),%xmm2
10281 DB 196,163,105,33,20,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm2,%xmm2
10282 DB 196,161,122,16,28,179 ; vmovss (%rbx,%r14,4),%xmm3
10283 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10284 DB 196,161,122,16,28,187 ; vmovss (%rbx,%r15,4),%xmm3
10285 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10286 DB 196,161,122,16,28,155 ; vmovss (%rbx,%r11,4),%xmm3
10287 DB 196,163,97,33,28,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm3,%xmm3
10288 DB 196,161,122,16,12,139 ; vmovss (%rbx,%r9,4),%xmm1
10289 DB 196,227,97,33,201,32 ; vinsertps $0x20,%xmm1,%xmm3,%xmm1
10290 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10291 DB 196,227,113,33,203,48 ; vinsertps $0x30,%xmm3,%xmm1,%xmm1
10292 DB 196,99,117,24,226,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm12
10293 DB 72,139,88,16 ; mov 0x10(%rax),%rbx
10294 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10295 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10296 DB 196,161,122,16,28,179 ; vmovss (%rbx,%r14,4),%xmm3
10297 DB 196,227,113,33,203,32 ; vinsertps $0x20,%xmm3,%xmm1,%xmm1
10298 DB 196,161,122,16,28,187 ; vmovss (%rbx,%r15,4),%xmm3
10299 DB 196,227,113,33,203,48 ; vinsertps $0x30,%xmm3,%xmm1,%xmm1
10300 DB 196,161,122,16,28,155 ; vmovss (%rbx,%r11,4),%xmm3
10301 DB 196,163,97,33,28,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm3,%xmm3
10302 DB 196,161,122,16,20,139 ; vmovss (%rbx,%r9,4),%xmm2
10303 DB 196,227,97,33,210,32 ; vinsertps $0x20,%xmm2,%xmm3,%xmm2
10304 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10305 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10306 DB 196,99,109,24,233,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm13
10307 DB 72,139,88,48 ; mov 0x30(%rax),%rbx
10308 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10309 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10310 DB 196,161,122,16,20,179 ; vmovss (%rbx,%r14,4),%xmm2
10311 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10312 DB 196,161,122,16,20,187 ; vmovss (%rbx,%r15,4),%xmm2
10313 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10314 DB 196,161,122,16,20,155 ; vmovss (%rbx,%r11,4),%xmm2
10315 DB 196,163,105,33,20,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm2,%xmm2
10316 DB 196,161,122,16,28,139 ; vmovss (%rbx,%r9,4),%xmm3
10317 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10318 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10319 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10320 DB 196,99,109,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm9
10321 DB 72,139,88,24 ; mov 0x18(%rax),%rbx
10322 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10323 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10324 DB 196,161,122,16,20,179 ; vmovss (%rbx,%r14,4),%xmm2
10325 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10326 DB 196,161,122,16,20,187 ; vmovss (%rbx,%r15,4),%xmm2
10327 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10328 DB 196,161,122,16,20,155 ; vmovss (%rbx,%r11,4),%xmm2
10329 DB 196,163,105,33,20,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm2,%xmm2
10330 DB 196,161,122,16,28,139 ; vmovss (%rbx,%r9,4),%xmm3
10331 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10332 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10333 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10334 DB 196,99,109,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm10
10335 DB 72,139,88,56 ; mov 0x38(%rax),%rbx
10336 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10337 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10338 DB 196,161,122,16,20,179 ; vmovss (%rbx,%r14,4),%xmm2
10339 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10340 DB 196,161,122,16,20,187 ; vmovss (%rbx,%r15,4),%xmm2
10341 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10342 DB 196,161,122,16,20,155 ; vmovss (%rbx,%r11,4),%xmm2
10343 DB 196,163,105,33,20,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm2,%xmm2
10344 DB 196,161,122,16,28,139 ; vmovss (%rbx,%r9,4),%xmm3
10345 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10346 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10347 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10348 DB 196,99,109,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm11
10349 DB 72,139,88,32 ; mov 0x20(%rax),%rbx
10350 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10351 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10352 DB 196,161,122,16,20,179 ; vmovss (%rbx,%r14,4),%xmm2
10353 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10354 DB 196,161,122,16,20,187 ; vmovss (%rbx,%r15,4),%xmm2
10355 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10356 DB 196,161,122,16,20,155 ; vmovss (%rbx,%r11,4),%xmm2
10357 DB 196,163,105,33,20,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm2,%xmm2
10358 DB 196,161,122,16,28,139 ; vmovss (%rbx,%r9,4),%xmm3
10359 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10360 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10361 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10362 DB 196,99,109,24,241,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm14
10363 DB 72,139,64,64 ; mov 0x40(%rax),%rax
10364 DB 196,161,122,16,12,160 ; vmovss (%rax,%r12,4),%xmm1
10365 DB 196,163,113,33,12,168,16 ; vinsertps $0x10,(%rax,%r13,4),%xmm1,%xmm1
10366 DB 196,161,122,16,20,176 ; vmovss (%rax,%r14,4),%xmm2
10367 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10368 DB 196,161,122,16,20,184 ; vmovss (%rax,%r15,4),%xmm2
10369 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10370 DB 196,161,122,16,20,152 ; vmovss (%rax,%r11,4),%xmm2
10371 DB 196,163,105,33,20,144,16 ; vinsertps $0x10,(%rax,%r10,4),%xmm2,%xmm2
10372 DB 196,161,122,16,28,136 ; vmovss (%rax,%r9,4),%xmm3
10373 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10374 DB 196,161,122,16,28,128 ; vmovss (%rax,%r8,4),%xmm3
10375 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10376 DB 196,227,109,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm3
10377 DB 197,188,89,200 ; vmulps %ymm0,%ymm8,%ymm1
10378 DB 196,65,116,88,196 ; vaddps %ymm12,%ymm1,%ymm8
10379 DB 197,148,89,200 ; vmulps %ymm0,%ymm13,%ymm1
10380 DB 196,193,116,88,201 ; vaddps %ymm9,%ymm1,%ymm1
10381 DB 197,172,89,208 ; vmulps %ymm0,%ymm10,%ymm2
10382 DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2
10383 DB 197,140,89,192 ; vmulps %ymm0,%ymm14,%ymm0
Herb Derby7b4202d2017-04-10 10:52:34 -040010384 DB 197,252,88,219 ; vaddps %ymm3,%ymm0,%ymm3
10385 DB 72,173 ; lods %ds:(%rsi),%rax
10386 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
Herb Derby4de13042017-05-15 10:49:39 -040010387 DB 91 ; pop %rbx
10388 DB 65,92 ; pop %r12
10389 DB 65,93 ; pop %r13
10390 DB 65,94 ; pop %r14
10391 DB 65,95 ; pop %r15
10392 DB 93 ; pop %rbp
10393 DB 255,224 ; jmpq *%rax
10394
10395PUBLIC _sk_gradient_avx
10396_sk_gradient_avx LABEL PROC
10397 DB 85 ; push %rbp
10398 DB 65,87 ; push %r15
10399 DB 65,86 ; push %r14
10400 DB 65,85 ; push %r13
10401 DB 65,84 ; push %r12
10402 DB 83 ; push %rbx
10403 DB 72,173 ; lods %ds:(%rsi),%rax
10404 DB 76,139,0 ; mov (%rax),%r8
10405 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
10406 DB 73,131,248,2 ; cmp $0x2,%r8
Mike Klein8ca33562017-05-23 08:07:43 -040010407 DB 114,80 ; jb 5c1c <_sk_gradient_avx+0x69>
Herb Derby4de13042017-05-15 10:49:39 -040010408 DB 72,139,88,72 ; mov 0x48(%rax),%rbx
10409 DB 73,255,200 ; dec %r8
10410 DB 72,131,195,4 ; add $0x4,%rbx
10411 DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010412 DB 196,98,125,24,21,187,12,0,0 ; vbroadcastss 0xcbb(%rip),%ymm10 # 68a0 <_sk_callback_avx+0x469>
Herb Derby4de13042017-05-15 10:49:39 -040010413 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1
10414 DB 196,98,125,24,3 ; vbroadcastss (%rbx),%ymm8
10415 DB 197,60,194,192,2 ; vcmpleps %ymm0,%ymm8,%ymm8
10416 DB 196,67,53,74,194,128 ; vblendvps %ymm8,%ymm10,%ymm9,%ymm8
10417 DB 196,99,125,25,194,1 ; vextractf128 $0x1,%ymm8,%xmm2
10418 DB 196,227,125,25,203,1 ; vextractf128 $0x1,%ymm1,%xmm3
10419 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2
10420 DB 197,185,254,201 ; vpaddd %xmm1,%xmm8,%xmm1
10421 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1
10422 DB 72,131,195,4 ; add $0x4,%rbx
10423 DB 73,255,200 ; dec %r8
Mike Klein8ca33562017-05-23 08:07:43 -040010424 DB 117,205 ; jne 5be9 <_sk_gradient_avx+0x36>
Herb Derby4de13042017-05-15 10:49:39 -040010425 DB 196,195,249,22,200,1 ; vpextrq $0x1,%xmm1,%r8
10426 DB 69,137,193 ; mov %r8d,%r9d
10427 DB 73,193,232,32 ; shr $0x20,%r8
10428 DB 196,193,249,126,202 ; vmovq %xmm1,%r10
10429 DB 69,137,211 ; mov %r10d,%r11d
10430 DB 73,193,234,32 ; shr $0x20,%r10
10431 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1
10432 DB 196,195,249,22,207,1 ; vpextrq $0x1,%xmm1,%r15
10433 DB 69,137,254 ; mov %r15d,%r14d
10434 DB 73,193,239,32 ; shr $0x20,%r15
10435 DB 196,193,249,126,205 ; vmovq %xmm1,%r13
10436 DB 69,137,236 ; mov %r13d,%r12d
10437 DB 73,193,237,32 ; shr $0x20,%r13
10438 DB 72,139,104,8 ; mov 0x8(%rax),%rbp
10439 DB 72,139,88,16 ; mov 0x10(%rax),%rbx
10440 DB 196,161,122,16,76,165,0 ; vmovss 0x0(%rbp,%r12,4),%xmm1
10441 DB 196,163,113,33,76,173,0,16 ; vinsertps $0x10,0x0(%rbp,%r13,4),%xmm1,%xmm1
10442 DB 196,161,122,16,84,181,0 ; vmovss 0x0(%rbp,%r14,4),%xmm2
10443 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10444 DB 196,161,122,16,84,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm2
10445 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10446 DB 196,161,122,16,84,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm2
10447 DB 196,163,105,33,84,149,0,16 ; vinsertps $0x10,0x0(%rbp,%r10,4),%xmm2,%xmm2
10448 DB 196,161,122,16,92,141,0 ; vmovss 0x0(%rbp,%r9,4),%xmm3
10449 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10450 DB 196,161,122,16,92,133,0 ; vmovss 0x0(%rbp,%r8,4),%xmm3
10451 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10452 DB 196,99,109,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm8
10453 DB 72,139,104,40 ; mov 0x28(%rax),%rbp
10454 DB 196,161,122,16,84,165,0 ; vmovss 0x0(%rbp,%r12,4),%xmm2
10455 DB 196,163,105,33,84,173,0,16 ; vinsertps $0x10,0x0(%rbp,%r13,4),%xmm2,%xmm2
10456 DB 196,161,122,16,92,181,0 ; vmovss 0x0(%rbp,%r14,4),%xmm3
10457 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10458 DB 196,161,122,16,92,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm3
10459 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10460 DB 196,161,122,16,92,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm3
10461 DB 196,163,97,33,92,149,0,16 ; vinsertps $0x10,0x0(%rbp,%r10,4),%xmm3,%xmm3
10462 DB 196,161,122,16,76,141,0 ; vmovss 0x0(%rbp,%r9,4),%xmm1
10463 DB 196,227,97,33,201,32 ; vinsertps $0x20,%xmm1,%xmm3,%xmm1
10464 DB 196,161,122,16,92,133,0 ; vmovss 0x0(%rbp,%r8,4),%xmm3
10465 DB 196,227,113,33,203,48 ; vinsertps $0x30,%xmm3,%xmm1,%xmm1
10466 DB 196,99,117,24,226,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm12
10467 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10468 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10469 DB 196,161,122,16,28,179 ; vmovss (%rbx,%r14,4),%xmm3
10470 DB 196,227,113,33,203,32 ; vinsertps $0x20,%xmm3,%xmm1,%xmm1
10471 DB 196,161,122,16,28,187 ; vmovss (%rbx,%r15,4),%xmm3
10472 DB 196,227,113,33,203,48 ; vinsertps $0x30,%xmm3,%xmm1,%xmm1
10473 DB 196,161,122,16,28,155 ; vmovss (%rbx,%r11,4),%xmm3
10474 DB 196,163,97,33,28,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm3,%xmm3
10475 DB 196,161,122,16,20,139 ; vmovss (%rbx,%r9,4),%xmm2
10476 DB 196,227,97,33,210,32 ; vinsertps $0x20,%xmm2,%xmm3,%xmm2
10477 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10478 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10479 DB 196,99,109,24,233,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm13
10480 DB 72,139,88,48 ; mov 0x30(%rax),%rbx
10481 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10482 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10483 DB 196,161,122,16,20,179 ; vmovss (%rbx,%r14,4),%xmm2
10484 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10485 DB 196,161,122,16,20,187 ; vmovss (%rbx,%r15,4),%xmm2
10486 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10487 DB 196,161,122,16,20,155 ; vmovss (%rbx,%r11,4),%xmm2
10488 DB 196,163,105,33,20,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm2,%xmm2
10489 DB 196,161,122,16,28,139 ; vmovss (%rbx,%r9,4),%xmm3
10490 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10491 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10492 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10493 DB 196,99,109,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm9
10494 DB 72,139,88,24 ; mov 0x18(%rax),%rbx
10495 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10496 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10497 DB 196,161,122,16,20,179 ; vmovss (%rbx,%r14,4),%xmm2
10498 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10499 DB 196,161,122,16,20,187 ; vmovss (%rbx,%r15,4),%xmm2
10500 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10501 DB 196,161,122,16,20,155 ; vmovss (%rbx,%r11,4),%xmm2
10502 DB 196,163,105,33,20,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm2,%xmm2
10503 DB 196,161,122,16,28,139 ; vmovss (%rbx,%r9,4),%xmm3
10504 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10505 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10506 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10507 DB 196,99,109,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm10
10508 DB 72,139,88,56 ; mov 0x38(%rax),%rbx
10509 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10510 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10511 DB 196,161,122,16,20,179 ; vmovss (%rbx,%r14,4),%xmm2
10512 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10513 DB 196,161,122,16,20,187 ; vmovss (%rbx,%r15,4),%xmm2
10514 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10515 DB 196,161,122,16,20,155 ; vmovss (%rbx,%r11,4),%xmm2
10516 DB 196,163,105,33,20,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm2,%xmm2
10517 DB 196,161,122,16,28,139 ; vmovss (%rbx,%r9,4),%xmm3
10518 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10519 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10520 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10521 DB 196,99,109,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm11
10522 DB 72,139,88,32 ; mov 0x20(%rax),%rbx
10523 DB 196,161,122,16,12,163 ; vmovss (%rbx,%r12,4),%xmm1
10524 DB 196,163,113,33,12,171,16 ; vinsertps $0x10,(%rbx,%r13,4),%xmm1,%xmm1
10525 DB 196,161,122,16,20,179 ; vmovss (%rbx,%r14,4),%xmm2
10526 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10527 DB 196,161,122,16,20,187 ; vmovss (%rbx,%r15,4),%xmm2
10528 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10529 DB 196,161,122,16,20,155 ; vmovss (%rbx,%r11,4),%xmm2
10530 DB 196,163,105,33,20,147,16 ; vinsertps $0x10,(%rbx,%r10,4),%xmm2,%xmm2
10531 DB 196,161,122,16,28,139 ; vmovss (%rbx,%r9,4),%xmm3
10532 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10533 DB 196,161,122,16,28,131 ; vmovss (%rbx,%r8,4),%xmm3
10534 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10535 DB 196,99,109,24,241,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm14
10536 DB 72,139,64,64 ; mov 0x40(%rax),%rax
10537 DB 196,161,122,16,12,160 ; vmovss (%rax,%r12,4),%xmm1
10538 DB 196,163,113,33,12,168,16 ; vinsertps $0x10,(%rax,%r13,4),%xmm1,%xmm1
10539 DB 196,161,122,16,20,176 ; vmovss (%rax,%r14,4),%xmm2
10540 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1
10541 DB 196,161,122,16,20,184 ; vmovss (%rax,%r15,4),%xmm2
10542 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1
10543 DB 196,161,122,16,20,152 ; vmovss (%rax,%r11,4),%xmm2
10544 DB 196,163,105,33,20,144,16 ; vinsertps $0x10,(%rax,%r10,4),%xmm2,%xmm2
10545 DB 196,161,122,16,28,136 ; vmovss (%rax,%r9,4),%xmm3
10546 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2
10547 DB 196,161,122,16,28,128 ; vmovss (%rax,%r8,4),%xmm3
10548 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2
10549 DB 196,227,109,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm3
10550 DB 197,188,89,200 ; vmulps %ymm0,%ymm8,%ymm1
10551 DB 196,65,116,88,196 ; vaddps %ymm12,%ymm1,%ymm8
10552 DB 197,148,89,200 ; vmulps %ymm0,%ymm13,%ymm1
10553 DB 196,193,116,88,201 ; vaddps %ymm9,%ymm1,%ymm1
10554 DB 197,172,89,208 ; vmulps %ymm0,%ymm10,%ymm2
10555 DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2
10556 DB 197,140,89,192 ; vmulps %ymm0,%ymm14,%ymm0
10557 DB 197,252,88,219 ; vaddps %ymm3,%ymm0,%ymm3
10558 DB 72,173 ; lods %ds:(%rsi),%rax
10559 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
10560 DB 91 ; pop %rbx
10561 DB 65,92 ; pop %r12
10562 DB 65,93 ; pop %r13
10563 DB 65,94 ; pop %r14
10564 DB 65,95 ; pop %r15
10565 DB 93 ; pop %rbp
Herb Derby7b4202d2017-04-10 10:52:34 -040010566 DB 255,224 ; jmpq *%rax
10567
Mike Klein5c7960b2017-05-11 10:59:22 -040010568PUBLIC _sk_evenly_spaced_2_stop_gradient_avx
10569_sk_evenly_spaced_2_stop_gradient_avx LABEL PROC
Mike Kleind7e06ae2017-03-29 16:33:06 -040010570 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby7b4202d2017-04-10 10:52:34 -040010571 DB 196,226,125,24,8 ; vbroadcastss (%rax),%ymm1
10572 DB 196,226,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040010573 DB 197,244,89,200 ; vmulps %ymm0,%ymm1,%ymm1
Mike Klein8a823fa2017-04-05 17:29:26 -040010574 DB 197,116,88,194 ; vaddps %ymm2,%ymm1,%ymm8
Herb Derby7b4202d2017-04-10 10:52:34 -040010575 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1
10576 DB 196,226,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040010577 DB 197,244,89,200 ; vmulps %ymm0,%ymm1,%ymm1
Mike Klein8a823fa2017-04-05 17:29:26 -040010578 DB 197,244,88,202 ; vaddps %ymm2,%ymm1,%ymm1
Herb Derby7b4202d2017-04-10 10:52:34 -040010579 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2
10580 DB 196,226,125,24,88,24 ; vbroadcastss 0x18(%rax),%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040010581 DB 197,236,89,208 ; vmulps %ymm0,%ymm2,%ymm2
Mike Klein8a823fa2017-04-05 17:29:26 -040010582 DB 197,236,88,211 ; vaddps %ymm3,%ymm2,%ymm2
Herb Derby7b4202d2017-04-10 10:52:34 -040010583 DB 196,226,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm3
10584 DB 196,98,125,24,72,28 ; vbroadcastss 0x1c(%rax),%ymm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040010585 DB 197,228,89,192 ; vmulps %ymm0,%ymm3,%ymm0
Mike Klein8a823fa2017-04-05 17:29:26 -040010586 DB 196,193,124,88,217 ; vaddps %ymm9,%ymm0,%ymm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040010587 DB 72,173 ; lods %ds:(%rsi),%rax
10588 DB 197,124,41,192 ; vmovaps %ymm8,%ymm0
10589 DB 255,224 ; jmpq *%rax
10590
Mike Klein5c7960b2017-05-11 10:59:22 -040010591PUBLIC _sk_xy_to_unit_angle_avx
10592_sk_xy_to_unit_angle_avx LABEL PROC
Herb Derby7eb86982017-05-02 19:04:39 -040010593 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8
10594 DB 197,60,92,200 ; vsubps %ymm0,%ymm8,%ymm9
10595 DB 197,52,84,200 ; vandps %ymm0,%ymm9,%ymm9
10596 DB 197,60,92,209 ; vsubps %ymm1,%ymm8,%ymm10
10597 DB 197,44,84,209 ; vandps %ymm1,%ymm10,%ymm10
10598 DB 196,65,52,93,218 ; vminps %ymm10,%ymm9,%ymm11
10599 DB 196,65,52,95,226 ; vmaxps %ymm10,%ymm9,%ymm12
10600 DB 196,65,36,94,220 ; vdivps %ymm12,%ymm11,%ymm11
10601 DB 196,65,36,89,227 ; vmulps %ymm11,%ymm11,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -040010602 DB 196,98,125,24,45,223,8,0,0 ; vbroadcastss 0x8df(%rip),%ymm13 # 68a4 <_sk_callback_avx+0x46d>
Herb Derby7eb86982017-05-02 19:04:39 -040010603 DB 196,65,28,89,237 ; vmulps %ymm13,%ymm12,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -040010604 DB 196,98,125,24,53,213,8,0,0 ; vbroadcastss 0x8d5(%rip),%ymm14 # 68a8 <_sk_callback_avx+0x471>
Herb Derby7eb86982017-05-02 19:04:39 -040010605 DB 196,65,20,88,238 ; vaddps %ymm14,%ymm13,%ymm13
10606 DB 196,65,28,89,237 ; vmulps %ymm13,%ymm12,%ymm13
Mike Klein8ca33562017-05-23 08:07:43 -040010607 DB 196,98,125,24,53,198,8,0,0 ; vbroadcastss 0x8c6(%rip),%ymm14 # 68ac <_sk_callback_avx+0x475>
Herb Derby7eb86982017-05-02 19:04:39 -040010608 DB 196,65,20,88,238 ; vaddps %ymm14,%ymm13,%ymm13
10609 DB 196,65,28,89,229 ; vmulps %ymm13,%ymm12,%ymm12
Mike Klein8ca33562017-05-23 08:07:43 -040010610 DB 196,98,125,24,45,183,8,0,0 ; vbroadcastss 0x8b7(%rip),%ymm13 # 68b0 <_sk_callback_avx+0x479>
Herb Derby7eb86982017-05-02 19:04:39 -040010611 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12
10612 DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11
10613 DB 196,65,52,194,202,1 ; vcmpltps %ymm10,%ymm9,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010614 DB 196,98,125,24,21,162,8,0,0 ; vbroadcastss 0x8a2(%rip),%ymm10 # 68b4 <_sk_callback_avx+0x47d>
Herb Derby7eb86982017-05-02 19:04:39 -040010615 DB 196,65,44,92,211 ; vsubps %ymm11,%ymm10,%ymm10
10616 DB 196,67,37,74,202,144 ; vblendvps %ymm9,%ymm10,%ymm11,%ymm9
10617 DB 196,193,124,194,192,1 ; vcmpltps %ymm8,%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -040010618 DB 196,98,125,24,21,140,8,0,0 ; vbroadcastss 0x88c(%rip),%ymm10 # 68b8 <_sk_callback_avx+0x481>
Herb Derby7eb86982017-05-02 19:04:39 -040010619 DB 196,65,44,92,209 ; vsubps %ymm9,%ymm10,%ymm10
10620 DB 196,195,53,74,194,0 ; vblendvps %ymm0,%ymm10,%ymm9,%ymm0
10621 DB 196,65,116,194,200,1 ; vcmpltps %ymm8,%ymm1,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010622 DB 196,98,125,24,21,118,8,0,0 ; vbroadcastss 0x876(%rip),%ymm10 # 68bc <_sk_callback_avx+0x485>
Herb Derby7eb86982017-05-02 19:04:39 -040010623 DB 197,44,92,208 ; vsubps %ymm0,%ymm10,%ymm10
10624 DB 196,195,125,74,194,144 ; vblendvps %ymm9,%ymm10,%ymm0,%ymm0
10625 DB 196,65,124,194,200,3 ; vcmpunordps %ymm8,%ymm0,%ymm9
10626 DB 196,195,125,74,192,144 ; vblendvps %ymm9,%ymm8,%ymm0,%ymm0
10627 DB 72,173 ; lods %ds:(%rsi),%rax
10628 DB 255,224 ; jmpq *%rax
10629
Herb Derby090fbf82017-05-08 15:10:36 -040010630PUBLIC _sk_xy_to_radius_avx
10631_sk_xy_to_radius_avx LABEL PROC
10632 DB 197,252,89,192 ; vmulps %ymm0,%ymm0,%ymm0
10633 DB 197,116,89,193 ; vmulps %ymm1,%ymm1,%ymm8
10634 DB 196,193,124,88,192 ; vaddps %ymm8,%ymm0,%ymm0
Mike Kleinfd35c742017-05-15 15:55:54 -040010635 DB 197,252,81,192 ; vsqrtps %ymm0,%ymm0
Herb Derby090fbf82017-05-08 15:10:36 -040010636 DB 72,173 ; lods %ds:(%rsi),%rax
10637 DB 255,224 ; jmpq *%rax
10638
Mike Klein0a904492017-04-12 12:52:48 -040010639PUBLIC _sk_save_xy_avx
10640_sk_save_xy_avx LABEL PROC
10641 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010642 DB 196,98,125,24,5,64,8,0,0 ; vbroadcastss 0x840(%rip),%ymm8 # 68c0 <_sk_callback_avx+0x489>
Mike Kleinfe560a82017-05-01 12:56:35 -040010643 DB 196,65,124,88,200 ; vaddps %ymm8,%ymm0,%ymm9
Mike Klein0a904492017-04-12 12:52:48 -040010644 DB 196,67,125,8,209,1 ; vroundps $0x1,%ymm9,%ymm10
10645 DB 196,65,52,92,202 ; vsubps %ymm10,%ymm9,%ymm9
Mike Kleinfe560a82017-05-01 12:56:35 -040010646 DB 196,65,116,88,192 ; vaddps %ymm8,%ymm1,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010647 DB 196,67,125,8,208,1 ; vroundps $0x1,%ymm8,%ymm10
10648 DB 196,65,60,92,194 ; vsubps %ymm10,%ymm8,%ymm8
10649 DB 197,252,17,0 ; vmovups %ymm0,(%rax)
10650 DB 197,252,17,72,32 ; vmovups %ymm1,0x20(%rax)
10651 DB 197,124,17,72,64 ; vmovups %ymm9,0x40(%rax)
10652 DB 197,124,17,64,96 ; vmovups %ymm8,0x60(%rax)
10653 DB 72,173 ; lods %ds:(%rsi),%rax
10654 DB 255,224 ; jmpq *%rax
10655
10656PUBLIC _sk_accumulate_avx
10657_sk_accumulate_avx LABEL PROC
10658 DB 72,173 ; lods %ds:(%rsi),%rax
10659 DB 197,124,16,128,128,0,0,0 ; vmovups 0x80(%rax),%ymm8
10660 DB 197,60,89,128,160,0,0,0 ; vmulps 0xa0(%rax),%ymm8,%ymm8
10661 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9
10662 DB 197,180,88,228 ; vaddps %ymm4,%ymm9,%ymm4
10663 DB 197,60,89,201 ; vmulps %ymm1,%ymm8,%ymm9
10664 DB 197,180,88,237 ; vaddps %ymm5,%ymm9,%ymm5
10665 DB 197,60,89,202 ; vmulps %ymm2,%ymm8,%ymm9
10666 DB 197,180,88,246 ; vaddps %ymm6,%ymm9,%ymm6
10667 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8
10668 DB 197,188,88,255 ; vaddps %ymm7,%ymm8,%ymm7
10669 DB 72,173 ; lods %ds:(%rsi),%rax
10670 DB 255,224 ; jmpq *%rax
10671
10672PUBLIC _sk_bilinear_nx_avx
10673_sk_bilinear_nx_avx LABEL PROC
10674 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010675 DB 196,226,125,24,5,204,7,0,0 ; vbroadcastss 0x7cc(%rip),%ymm0 # 68c4 <_sk_callback_avx+0x48d>
Mike Klein0a904492017-04-12 12:52:48 -040010676 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -040010677 DB 196,98,125,24,5,195,7,0,0 ; vbroadcastss 0x7c3(%rip),%ymm8 # 68c8 <_sk_callback_avx+0x491>
Mike Klein0a904492017-04-12 12:52:48 -040010678 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8
10679 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
10680 DB 72,173 ; lods %ds:(%rsi),%rax
10681 DB 255,224 ; jmpq *%rax
10682
10683PUBLIC _sk_bilinear_px_avx
10684_sk_bilinear_px_avx LABEL PROC
10685 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010686 DB 196,226,125,24,5,171,7,0,0 ; vbroadcastss 0x7ab(%rip),%ymm0 # 68cc <_sk_callback_avx+0x495>
Mike Klein0a904492017-04-12 12:52:48 -040010687 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
Mike Kleinfe560a82017-05-01 12:56:35 -040010688 DB 197,124,16,64,64 ; vmovups 0x40(%rax),%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010689 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
10690 DB 72,173 ; lods %ds:(%rsi),%rax
10691 DB 255,224 ; jmpq *%rax
10692
10693PUBLIC _sk_bilinear_ny_avx
10694_sk_bilinear_ny_avx LABEL PROC
10695 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010696 DB 196,226,125,24,13,143,7,0,0 ; vbroadcastss 0x78f(%rip),%ymm1 # 68d0 <_sk_callback_avx+0x499>
Mike Klein0a904492017-04-12 12:52:48 -040010697 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -040010698 DB 196,98,125,24,5,133,7,0,0 ; vbroadcastss 0x785(%rip),%ymm8 # 68d4 <_sk_callback_avx+0x49d>
Mike Klein0a904492017-04-12 12:52:48 -040010699 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8
10700 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
10701 DB 72,173 ; lods %ds:(%rsi),%rax
10702 DB 255,224 ; jmpq *%rax
10703
10704PUBLIC _sk_bilinear_py_avx
10705_sk_bilinear_py_avx LABEL PROC
10706 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010707 DB 196,226,125,24,13,109,7,0,0 ; vbroadcastss 0x76d(%rip),%ymm1 # 68d8 <_sk_callback_avx+0x4a1>
Mike Klein0a904492017-04-12 12:52:48 -040010708 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
Mike Kleinfe560a82017-05-01 12:56:35 -040010709 DB 197,124,16,64,96 ; vmovups 0x60(%rax),%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010710 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
10711 DB 72,173 ; lods %ds:(%rsi),%rax
10712 DB 255,224 ; jmpq *%rax
10713
10714PUBLIC _sk_bicubic_n3x_avx
10715_sk_bicubic_n3x_avx LABEL PROC
10716 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010717 DB 196,226,125,24,5,80,7,0,0 ; vbroadcastss 0x750(%rip),%ymm0 # 68dc <_sk_callback_avx+0x4a5>
Mike Klein0a904492017-04-12 12:52:48 -040010718 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -040010719 DB 196,98,125,24,5,71,7,0,0 ; vbroadcastss 0x747(%rip),%ymm8 # 68e0 <_sk_callback_avx+0x4a9>
Mike Klein0a904492017-04-12 12:52:48 -040010720 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8
10721 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010722 DB 196,98,125,24,21,56,7,0,0 ; vbroadcastss 0x738(%rip),%ymm10 # 68e4 <_sk_callback_avx+0x4ad>
Mike Kleinfe560a82017-05-01 12:56:35 -040010723 DB 196,65,60,89,194 ; vmulps %ymm10,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010724 DB 196,98,125,24,21,46,7,0,0 ; vbroadcastss 0x72e(%rip),%ymm10 # 68e8 <_sk_callback_avx+0x4b1>
Mike Kleinfe560a82017-05-01 12:56:35 -040010725 DB 196,65,60,88,194 ; vaddps %ymm10,%ymm8,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010726 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
10727 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
10728 DB 72,173 ; lods %ds:(%rsi),%rax
10729 DB 255,224 ; jmpq *%rax
10730
10731PUBLIC _sk_bicubic_n1x_avx
10732_sk_bicubic_n1x_avx LABEL PROC
10733 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010734 DB 196,226,125,24,5,17,7,0,0 ; vbroadcastss 0x711(%rip),%ymm0 # 68ec <_sk_callback_avx+0x4b5>
Mike Klein0a904492017-04-12 12:52:48 -040010735 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
Mike Klein8ca33562017-05-23 08:07:43 -040010736 DB 196,98,125,24,5,8,7,0,0 ; vbroadcastss 0x708(%rip),%ymm8 # 68f0 <_sk_callback_avx+0x4b9>
Mike Klein0a904492017-04-12 12:52:48 -040010737 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010738 DB 196,98,125,24,13,254,6,0,0 ; vbroadcastss 0x6fe(%rip),%ymm9 # 68f4 <_sk_callback_avx+0x4bd>
Mike Klein0a904492017-04-12 12:52:48 -040010739 DB 196,65,60,89,201 ; vmulps %ymm9,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010740 DB 196,98,125,24,21,244,6,0,0 ; vbroadcastss 0x6f4(%rip),%ymm10 # 68f8 <_sk_callback_avx+0x4c1>
Mike Kleinfe560a82017-05-01 12:56:35 -040010741 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10742 DB 196,65,60,89,201 ; vmulps %ymm9,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010743 DB 196,98,125,24,21,229,6,0,0 ; vbroadcastss 0x6e5(%rip),%ymm10 # 68fc <_sk_callback_avx+0x4c5>
Mike Kleinfe560a82017-05-01 12:56:35 -040010744 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
Mike Klein0a904492017-04-12 12:52:48 -040010745 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010746 DB 196,98,125,24,13,214,6,0,0 ; vbroadcastss 0x6d6(%rip),%ymm9 # 6900 <_sk_callback_avx+0x4c9>
Mike Kleinfe560a82017-05-01 12:56:35 -040010747 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010748 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
10749 DB 72,173 ; lods %ds:(%rsi),%rax
10750 DB 255,224 ; jmpq *%rax
10751
10752PUBLIC _sk_bicubic_p1x_avx
10753_sk_bicubic_p1x_avx LABEL PROC
10754 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010755 DB 196,98,125,24,5,190,6,0,0 ; vbroadcastss 0x6be(%rip),%ymm8 # 6904 <_sk_callback_avx+0x4cd>
Mike Klein0a904492017-04-12 12:52:48 -040010756 DB 197,188,88,0 ; vaddps (%rax),%ymm8,%ymm0
10757 DB 197,124,16,72,64 ; vmovups 0x40(%rax),%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010758 DB 196,98,125,24,21,176,6,0,0 ; vbroadcastss 0x6b0(%rip),%ymm10 # 6908 <_sk_callback_avx+0x4d1>
Mike Klein0a904492017-04-12 12:52:48 -040010759 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -040010760 DB 196,98,125,24,29,166,6,0,0 ; vbroadcastss 0x6a6(%rip),%ymm11 # 690c <_sk_callback_avx+0x4d5>
Mike Klein0a904492017-04-12 12:52:48 -040010761 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
10762 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10
Mike Klein0a904492017-04-12 12:52:48 -040010763 DB 196,65,44,88,192 ; vaddps %ymm8,%ymm10,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -040010764 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010765 DB 196,98,125,24,13,141,6,0,0 ; vbroadcastss 0x68d(%rip),%ymm9 # 6910 <_sk_callback_avx+0x4d9>
Mike Kleinfe560a82017-05-01 12:56:35 -040010766 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010767 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
10768 DB 72,173 ; lods %ds:(%rsi),%rax
10769 DB 255,224 ; jmpq *%rax
10770
10771PUBLIC _sk_bicubic_p3x_avx
10772_sk_bicubic_p3x_avx LABEL PROC
10773 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010774 DB 196,226,125,24,5,117,6,0,0 ; vbroadcastss 0x675(%rip),%ymm0 # 6914 <_sk_callback_avx+0x4dd>
Mike Klein0a904492017-04-12 12:52:48 -040010775 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0
10776 DB 197,124,16,64,64 ; vmovups 0x40(%rax),%ymm8
10777 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010778 DB 196,98,125,24,21,98,6,0,0 ; vbroadcastss 0x662(%rip),%ymm10 # 6918 <_sk_callback_avx+0x4e1>
Mike Klein0a904492017-04-12 12:52:48 -040010779 DB 196,65,60,89,194 ; vmulps %ymm10,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010780 DB 196,98,125,24,21,88,6,0,0 ; vbroadcastss 0x658(%rip),%ymm10 # 691c <_sk_callback_avx+0x4e5>
Mike Kleinfe560a82017-05-01 12:56:35 -040010781 DB 196,65,60,88,194 ; vaddps %ymm10,%ymm8,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010782 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
10783 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax)
10784 DB 72,173 ; lods %ds:(%rsi),%rax
10785 DB 255,224 ; jmpq *%rax
10786
10787PUBLIC _sk_bicubic_n3y_avx
10788_sk_bicubic_n3y_avx LABEL PROC
10789 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010790 DB 196,226,125,24,13,59,6,0,0 ; vbroadcastss 0x63b(%rip),%ymm1 # 6920 <_sk_callback_avx+0x4e9>
Mike Klein0a904492017-04-12 12:52:48 -040010791 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -040010792 DB 196,98,125,24,5,49,6,0,0 ; vbroadcastss 0x631(%rip),%ymm8 # 6924 <_sk_callback_avx+0x4ed>
Mike Klein0a904492017-04-12 12:52:48 -040010793 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8
10794 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010795 DB 196,98,125,24,21,34,6,0,0 ; vbroadcastss 0x622(%rip),%ymm10 # 6928 <_sk_callback_avx+0x4f1>
Mike Kleinfe560a82017-05-01 12:56:35 -040010796 DB 196,65,60,89,194 ; vmulps %ymm10,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010797 DB 196,98,125,24,21,24,6,0,0 ; vbroadcastss 0x618(%rip),%ymm10 # 692c <_sk_callback_avx+0x4f5>
Mike Kleinfe560a82017-05-01 12:56:35 -040010798 DB 196,65,60,88,194 ; vaddps %ymm10,%ymm8,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010799 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
10800 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
10801 DB 72,173 ; lods %ds:(%rsi),%rax
10802 DB 255,224 ; jmpq *%rax
10803
10804PUBLIC _sk_bicubic_n1y_avx
10805_sk_bicubic_n1y_avx LABEL PROC
10806 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010807 DB 196,226,125,24,13,251,5,0,0 ; vbroadcastss 0x5fb(%rip),%ymm1 # 6930 <_sk_callback_avx+0x4f9>
Mike Klein0a904492017-04-12 12:52:48 -040010808 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
Mike Klein8ca33562017-05-23 08:07:43 -040010809 DB 196,98,125,24,5,241,5,0,0 ; vbroadcastss 0x5f1(%rip),%ymm8 # 6934 <_sk_callback_avx+0x4fd>
Mike Klein0a904492017-04-12 12:52:48 -040010810 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010811 DB 196,98,125,24,13,231,5,0,0 ; vbroadcastss 0x5e7(%rip),%ymm9 # 6938 <_sk_callback_avx+0x501>
Mike Klein0a904492017-04-12 12:52:48 -040010812 DB 196,65,60,89,201 ; vmulps %ymm9,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010813 DB 196,98,125,24,21,221,5,0,0 ; vbroadcastss 0x5dd(%rip),%ymm10 # 693c <_sk_callback_avx+0x505>
Mike Kleinfe560a82017-05-01 12:56:35 -040010814 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
10815 DB 196,65,60,89,201 ; vmulps %ymm9,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010816 DB 196,98,125,24,21,206,5,0,0 ; vbroadcastss 0x5ce(%rip),%ymm10 # 6940 <_sk_callback_avx+0x509>
Mike Kleinfe560a82017-05-01 12:56:35 -040010817 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9
Mike Klein0a904492017-04-12 12:52:48 -040010818 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010819 DB 196,98,125,24,13,191,5,0,0 ; vbroadcastss 0x5bf(%rip),%ymm9 # 6944 <_sk_callback_avx+0x50d>
Mike Kleinfe560a82017-05-01 12:56:35 -040010820 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010821 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
10822 DB 72,173 ; lods %ds:(%rsi),%rax
10823 DB 255,224 ; jmpq *%rax
10824
10825PUBLIC _sk_bicubic_p1y_avx
10826_sk_bicubic_p1y_avx LABEL PROC
10827 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010828 DB 196,98,125,24,5,167,5,0,0 ; vbroadcastss 0x5a7(%rip),%ymm8 # 6948 <_sk_callback_avx+0x511>
Mike Klein0a904492017-04-12 12:52:48 -040010829 DB 197,188,88,72,32 ; vaddps 0x20(%rax),%ymm8,%ymm1
10830 DB 197,124,16,72,96 ; vmovups 0x60(%rax),%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010831 DB 196,98,125,24,21,152,5,0,0 ; vbroadcastss 0x598(%rip),%ymm10 # 694c <_sk_callback_avx+0x515>
Mike Klein0a904492017-04-12 12:52:48 -040010832 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10
Mike Klein8ca33562017-05-23 08:07:43 -040010833 DB 196,98,125,24,29,142,5,0,0 ; vbroadcastss 0x58e(%rip),%ymm11 # 6950 <_sk_callback_avx+0x519>
Mike Klein0a904492017-04-12 12:52:48 -040010834 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10
10835 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10
Mike Klein0a904492017-04-12 12:52:48 -040010836 DB 196,65,44,88,192 ; vaddps %ymm8,%ymm10,%ymm8
Mike Kleinfe560a82017-05-01 12:56:35 -040010837 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010838 DB 196,98,125,24,13,117,5,0,0 ; vbroadcastss 0x575(%rip),%ymm9 # 6954 <_sk_callback_avx+0x51d>
Mike Kleinfe560a82017-05-01 12:56:35 -040010839 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010840 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
10841 DB 72,173 ; lods %ds:(%rsi),%rax
10842 DB 255,224 ; jmpq *%rax
10843
10844PUBLIC _sk_bicubic_p3y_avx
10845_sk_bicubic_p3y_avx LABEL PROC
10846 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040010847 DB 196,226,125,24,13,93,5,0,0 ; vbroadcastss 0x55d(%rip),%ymm1 # 6958 <_sk_callback_avx+0x521>
Mike Klein0a904492017-04-12 12:52:48 -040010848 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1
10849 DB 197,124,16,64,96 ; vmovups 0x60(%rax),%ymm8
10850 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9
Mike Klein8ca33562017-05-23 08:07:43 -040010851 DB 196,98,125,24,21,73,5,0,0 ; vbroadcastss 0x549(%rip),%ymm10 # 695c <_sk_callback_avx+0x525>
Mike Klein0a904492017-04-12 12:52:48 -040010852 DB 196,65,60,89,194 ; vmulps %ymm10,%ymm8,%ymm8
Mike Klein8ca33562017-05-23 08:07:43 -040010853 DB 196,98,125,24,21,63,5,0,0 ; vbroadcastss 0x53f(%rip),%ymm10 # 6960 <_sk_callback_avx+0x529>
Mike Kleinfe560a82017-05-01 12:56:35 -040010854 DB 196,65,60,88,194 ; vaddps %ymm10,%ymm8,%ymm8
Mike Klein0a904492017-04-12 12:52:48 -040010855 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8
10856 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax)
10857 DB 72,173 ; lods %ds:(%rsi),%rax
10858 DB 255,224 ; jmpq *%rax
10859
Mike Klein7fee90c2017-04-07 16:55:09 -040010860PUBLIC _sk_callback_avx
10861_sk_callback_avx LABEL PROC
Mike Kleinc17dc242017-04-20 16:21:57 -040010862 DB 65,87 ; push %r15
Mike Klein7fee90c2017-04-07 16:55:09 -040010863 DB 65,86 ; push %r14
10864 DB 83 ; push %rbx
Mike Kleinc17dc242017-04-20 16:21:57 -040010865 DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp
10866 DB 197,252,17,188,36,128,0,0,0 ; vmovups %ymm7,0x80(%rsp)
10867 DB 197,252,17,116,36,96 ; vmovups %ymm6,0x60(%rsp)
10868 DB 197,252,17,108,36,64 ; vmovups %ymm5,0x40(%rsp)
10869 DB 197,252,17,100,36,32 ; vmovups %ymm4,0x20(%rsp)
10870 DB 73,137,207 ; mov %rcx,%r15
Mike Klein7fee90c2017-04-07 16:55:09 -040010871 DB 73,137,214 ; mov %rdx,%r14
10872 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinc17dc242017-04-20 16:21:57 -040010873 DB 72,137,195 ; mov %rax,%rbx
10874 DB 197,252,20,225 ; vunpcklps %ymm1,%ymm0,%ymm4
10875 DB 197,252,21,193 ; vunpckhps %ymm1,%ymm0,%ymm0
10876 DB 197,236,20,203 ; vunpcklps %ymm3,%ymm2,%ymm1
10877 DB 197,236,21,211 ; vunpckhps %ymm3,%ymm2,%ymm2
10878 DB 197,221,20,217 ; vunpcklpd %ymm1,%ymm4,%ymm3
10879 DB 197,221,21,201 ; vunpckhpd %ymm1,%ymm4,%ymm1
10880 DB 197,253,20,226 ; vunpcklpd %ymm2,%ymm0,%ymm4
10881 DB 197,253,21,194 ; vunpckhpd %ymm2,%ymm0,%ymm0
10882 DB 196,227,101,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm3,%ymm2
10883 DB 196,227,93,24,232,1 ; vinsertf128 $0x1,%xmm0,%ymm4,%ymm5
10884 DB 196,227,101,6,201,49 ; vperm2f128 $0x31,%ymm1,%ymm3,%ymm1
10885 DB 196,227,93,6,192,49 ; vperm2f128 $0x31,%ymm0,%ymm4,%ymm0
10886 DB 197,253,17,83,8 ; vmovupd %ymm2,0x8(%rbx)
10887 DB 197,253,17,107,40 ; vmovupd %ymm5,0x28(%rbx)
10888 DB 197,253,17,75,72 ; vmovupd %ymm1,0x48(%rbx)
10889 DB 197,253,17,67,104 ; vmovupd %ymm0,0x68(%rbx)
10890 DB 77,133,255 ; test %r15,%r15
Mike Klein7fee90c2017-04-07 16:55:09 -040010891 DB 186,8,0,0,0 ; mov $0x8,%edx
Mike Kleinc17dc242017-04-20 16:21:57 -040010892 DB 65,15,69,215 ; cmovne %r15d,%edx
10893 DB 72,137,217 ; mov %rbx,%rcx
Mike Klein7fee90c2017-04-07 16:55:09 -040010894 DB 197,248,119 ; vzeroupper
Mike Kleinc17dc242017-04-20 16:21:57 -040010895 DB 255,19 ; callq *(%rbx)
10896 DB 72,139,131,136,0,0,0 ; mov 0x88(%rbx),%rax
10897 DB 197,248,16,0 ; vmovups (%rax),%xmm0
10898 DB 197,248,16,72,16 ; vmovups 0x10(%rax),%xmm1
10899 DB 197,248,16,80,32 ; vmovups 0x20(%rax),%xmm2
10900 DB 197,248,16,88,48 ; vmovups 0x30(%rax),%xmm3
10901 DB 196,227,101,24,88,112,1 ; vinsertf128 $0x1,0x70(%rax),%ymm3,%ymm3
10902 DB 196,227,109,24,80,96,1 ; vinsertf128 $0x1,0x60(%rax),%ymm2,%ymm2
10903 DB 196,227,117,24,72,80,1 ; vinsertf128 $0x1,0x50(%rax),%ymm1,%ymm1
10904 DB 196,227,125,24,64,64,1 ; vinsertf128 $0x1,0x40(%rax),%ymm0,%ymm0
10905 DB 197,252,20,225 ; vunpcklps %ymm1,%ymm0,%ymm4
10906 DB 197,252,21,233 ; vunpckhps %ymm1,%ymm0,%ymm5
10907 DB 197,236,20,203 ; vunpcklps %ymm3,%ymm2,%ymm1
10908 DB 197,236,21,219 ; vunpckhps %ymm3,%ymm2,%ymm3
10909 DB 197,221,20,193 ; vunpcklpd %ymm1,%ymm4,%ymm0
10910 DB 197,221,21,201 ; vunpckhpd %ymm1,%ymm4,%ymm1
10911 DB 197,213,20,211 ; vunpcklpd %ymm3,%ymm5,%ymm2
10912 DB 197,213,21,219 ; vunpckhpd %ymm3,%ymm5,%ymm3
Mike Klein7fee90c2017-04-07 16:55:09 -040010913 DB 72,173 ; lods %ds:(%rsi),%rax
10914 DB 76,137,242 ; mov %r14,%rdx
Mike Kleinc17dc242017-04-20 16:21:57 -040010915 DB 76,137,249 ; mov %r15,%rcx
10916 DB 197,252,16,100,36,32 ; vmovups 0x20(%rsp),%ymm4
10917 DB 197,252,16,108,36,64 ; vmovups 0x40(%rsp),%ymm5
10918 DB 197,252,16,116,36,96 ; vmovups 0x60(%rsp),%ymm6
10919 DB 197,252,16,188,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm7
10920 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp
Mike Klein7fee90c2017-04-07 16:55:09 -040010921 DB 91 ; pop %rbx
10922 DB 65,94 ; pop %r14
Mike Kleinc17dc242017-04-20 16:21:57 -040010923 DB 65,95 ; pop %r15
Mike Klein7fee90c2017-04-07 16:55:09 -040010924 DB 255,224 ; jmpq *%rax
10925
Mike Klein2229b572017-04-21 10:30:29 -040010926ALIGN 4
10927 DB 0,0 ; add %al,(%rax)
10928 DB 0,63 ; add %bh,(%rdi)
10929 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040010930 DB 128,63,1 ; cmpb $0x1,(%rdi)
10931 DB 0,0 ; add %al,(%rax)
10932 DB 0,4,0 ; add %al,(%rax,%rax,1)
10933 DB 0,0 ; add %al,(%rax)
10934 DB 2,0 ; add (%rax),%al
10935 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040010936 DB 0,0 ; add %al,(%rax)
Mike Kleindb711c92017-05-03 17:57:48 -040010937 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
10938 DB 252 ; cld
10939 DB 190,0,0,128,63 ; mov $0x3f800000,%esi
Mike Klein308e6242017-04-27 13:56:33 -040010940 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040010941 DB 128,63,0 ; cmpb $0x0,(%rdi)
10942 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
10943 DB 63 ; (bad)
Mike Klein308e6242017-04-27 13:56:33 -040010944 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040010945 DB 128,63,0 ; cmpb $0x0,(%rdi)
10946 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
10947 DB 63 ; (bad)
10948 DB 0,0 ; add %al,(%rax)
10949 DB 128,63,0 ; cmpb $0x0,(%rdi)
10950 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
10951 DB 63 ; (bad)
10952 DB 0,0 ; add %al,(%rax)
10953 DB 128,63,0 ; cmpb $0x0,(%rdi)
10954 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
10955 DB 63 ; (bad)
10956 DB 0,0 ; add %al,(%rax)
10957 DB 128,63,0 ; cmpb $0x0,(%rdi)
10958 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
10959 DB 63 ; (bad)
10960 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040010961 DB 128,63,0 ; cmpb $0x0,(%rdi)
10962 DB 0,128,191,0,0,224 ; add %al,-0x1fffff41(%rax)
Mike Klein08aa88d2017-05-12 12:59:24 -040010963 DB 64,154 ; rex (bad)
Mike Kleinbb338332017-05-04 12:42:52 -040010964 DB 153 ; cltd
10965 DB 153 ; cltd
10966 DB 62,61,10,23,63,174 ; ds cmp $0xae3f170a,%eax
Mike Klein8ca33562017-05-23 08:07:43 -040010967 DB 71,225,61 ; rex.RXB loope 6601 <.literal4+0xb1>
Mike Kleinbb338332017-05-04 12:42:52 -040010968 DB 0,0 ; add %al,(%rax)
10969 DB 128,63,154 ; cmpb $0x9a,(%rdi)
10970 DB 153 ; cltd
10971 DB 153 ; cltd
10972 DB 62,61,10,23,63,174 ; ds cmp $0xae3f170a,%eax
Mike Klein8ca33562017-05-23 08:07:43 -040010973 DB 71,225,61 ; rex.RXB loope 6611 <.literal4+0xc1>
Mike Kleinbb338332017-05-04 12:42:52 -040010974 DB 0,0 ; add %al,(%rax)
10975 DB 128,63,154 ; cmpb $0x9a,(%rdi)
10976 DB 153 ; cltd
10977 DB 153 ; cltd
10978 DB 62,61,10,23,63,174 ; ds cmp $0xae3f170a,%eax
Mike Klein8ca33562017-05-23 08:07:43 -040010979 DB 71,225,61 ; rex.RXB loope 6621 <.literal4+0xd1>
Mike Kleinbb338332017-05-04 12:42:52 -040010980 DB 0,0 ; add %al,(%rax)
10981 DB 128,63,154 ; cmpb $0x9a,(%rdi)
10982 DB 153 ; cltd
10983 DB 153 ; cltd
10984 DB 62,61,10,23,63,174 ; ds cmp $0xae3f170a,%eax
Mike Klein8ca33562017-05-23 08:07:43 -040010985 DB 71,225,61 ; rex.RXB loope 6631 <.literal4+0xe1>
Mike Kleinbb338332017-05-04 12:42:52 -040010986 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040010987 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -040010988 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
10989 DB 63 ; (bad)
Mike Klein08aa88d2017-05-12 12:59:24 -040010990 DB 0,0 ; add %al,(%rax)
10991 DB 128,63,145 ; cmpb $0x91,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -040010992 DB 131,158,61,154,153,153,62 ; sbbl $0x3e,-0x666665c3(%rsi)
10993 DB 92 ; pop %rsp
10994 DB 143 ; (bad)
10995 DB 50,63 ; xor (%rdi),%bh
10996 DB 10,215 ; or %bh,%dl
10997 DB 35,59 ; and (%rbx),%edi
10998 DB 174 ; scas %es:(%rdi),%al
10999 DB 71,97 ; rex.RXB (bad)
Mike Kleinf45e3d72017-05-15 17:36:59 -040011000 DB 61,82,184,78,65 ; cmp $0x414eb852,%eax
11001 DB 57,215 ; cmp %edx,%edi
11002 DB 32,187,186,159,98,60 ; and %bh,0x3c629fba(%rbx)
11003 DB 13,20,145,63,141 ; or $0x8d3f9114,%eax
11004 DB 158 ; sahf
11005 DB 20,62 ; adc $0x3e,%al
11006 DB 168,177 ; test $0xb1,%al
11007 DB 152 ; cwtl
Mike Kleinfe560a82017-05-01 12:56:35 -040011008 DB 59,0 ; cmp (%rax),%eax
11009 DB 0,128,63,0,0,192 ; add %al,-0x3fffffc1(%rax)
11010 DB 64,0,0 ; add %al,(%rax)
11011 DB 0,64,0 ; add %al,0x0(%rax)
11012 DB 0,128,64,171,170,42 ; add %al,0x2aaaab40(%rax)
11013 DB 62,0,0 ; add %al,%ds:(%rax)
11014 DB 0,63 ; add %bh,(%rdi)
Mike Klein5664e652017-05-01 16:01:38 -040011015 DB 0,0 ; add %al,(%rax)
11016 DB 0,63 ; add %bh,(%rdi)
Mike Klein879a08a2017-05-01 15:34:01 -040011017 DB 171 ; stos %eax,%es:(%rdi)
Mike Kleinfb11acd2017-05-01 14:22:10 -040011018 DB 170 ; stos %al,%es:(%rdi)
11019 DB 170 ; stos %al,%es:(%rdi)
Mike Klein5664e652017-05-01 16:01:38 -040011020 DB 62,171 ; ds stos %eax,%es:(%rdi)
11021 DB 170 ; stos %al,%es:(%rdi)
11022 DB 42,63 ; sub (%rdi),%bh
11023 DB 0,0 ; add %al,(%rax)
Mike Klein879a08a2017-05-01 15:34:01 -040011024 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
11025 DB 128,64,171,170 ; addb $0xaa,-0x55(%rax)
Mike Klein5664e652017-05-01 16:01:38 -040011026 DB 42,62 ; sub (%rsi),%bh
11027 DB 171 ; stos %eax,%es:(%rdi)
11028 DB 170 ; stos %al,%es:(%rdi)
Mike Kleinfb11acd2017-05-01 14:22:10 -040011029 DB 170 ; stos %al,%es:(%rdi)
11030 DB 190,129,128,128,59 ; mov $0x3b808081,%esi
11031 DB 129,128,128,59,0,248,0,0,8,33 ; addl $0x21080000,-0x7ffc480(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011032 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040011033 DB 224,7 ; loopne 667d <.literal4+0x12d>
Mike Kleinfe560a82017-05-01 12:56:35 -040011034 DB 0,0 ; add %al,(%rax)
11035 DB 33,8 ; and %ecx,(%rax)
11036 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040011037 DB 31 ; (bad)
11038 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011039 DB 0,8 ; add %cl,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040011040 DB 33,4,61,129,128,128,59 ; and %eax,0x3b808081(,%rdi,1)
11041 DB 128,0,128 ; addb $0x80,(%rax)
11042 DB 55 ; (bad)
11043 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011044 DB 128,63,0 ; cmpb $0x0,(%rdi)
11045 DB 0,127,67 ; add %bh,0x43(%rdi)
11046 DB 129,128,128,59,129,128,128,59,0,0 ; addl $0x3b80,-0x7f7ec480(%rax)
11047 DB 0,52,255 ; add %dh,(%rdi,%rdi,8)
Mike Kleinb4bbc642017-04-27 08:59:55 -040011048 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040011049 DB 127,0 ; jg 66a4 <.literal4+0x154>
Mike Kleinb4bbc642017-04-27 08:59:55 -040011050 DB 0,0 ; add %al,(%rax)
11051 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040011052 DB 119,115 ; ja 671d <.literal4+0x1cd>
Mike Kleinb4bbc642017-04-27 08:59:55 -040011053 DB 248 ; clc
11054 DB 194,117,191 ; retq $0xbf75
11055 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi
11056 DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9
11057 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp
11058 DB 154 ; (bad)
11059 DB 64,254 ; rex (bad)
11060 DB 210,221 ; rcr %cl,%ch
11061 DB 65,0,0 ; add %al,(%r8)
11062 DB 0,75,0 ; add %cl,0x0(%rbx)
Mike Kleinfe560a82017-05-01 12:56:35 -040011063 DB 0,128,63,0,0,0 ; add %al,0x3f(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040011064 DB 52,255 ; xor $0xff,%al
11065 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040011066 DB 127,0 ; jg 66d8 <.literal4+0x188>
Mike Kleinb4bbc642017-04-27 08:59:55 -040011067 DB 0,0 ; add %al,(%rax)
11068 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040011069 DB 119,115 ; ja 6751 <.literal4+0x201>
Mike Kleinb4bbc642017-04-27 08:59:55 -040011070 DB 248 ; clc
11071 DB 194,117,191 ; retq $0xbf75
11072 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi
11073 DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9
11074 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp
11075 DB 154 ; (bad)
11076 DB 64,254 ; rex (bad)
11077 DB 210,221 ; rcr %cl,%ch
11078 DB 65,0,0 ; add %al,(%r8)
11079 DB 0,75,0 ; add %cl,0x0(%rbx)
Mike Kleinfe560a82017-05-01 12:56:35 -040011080 DB 0,128,63,0,0,0 ; add %al,0x3f(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040011081 DB 52,255 ; xor $0xff,%al
11082 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040011083 DB 127,0 ; jg 670c <.literal4+0x1bc>
Mike Kleinb4bbc642017-04-27 08:59:55 -040011084 DB 0,0 ; add %al,(%rax)
11085 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040011086 DB 119,115 ; ja 6785 <.literal4+0x235>
Mike Kleinb4bbc642017-04-27 08:59:55 -040011087 DB 248 ; clc
11088 DB 194,117,191 ; retq $0xbf75
11089 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi
11090 DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9
11091 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp
11092 DB 154 ; (bad)
11093 DB 64,254 ; rex (bad)
11094 DB 210,221 ; rcr %cl,%ch
11095 DB 65,0,0 ; add %al,(%r8)
11096 DB 0,75,0 ; add %cl,0x0(%rbx)
Mike Kleinfe560a82017-05-01 12:56:35 -040011097 DB 0,128,63,0,0,0 ; add %al,0x3f(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040011098 DB 52,255 ; xor $0xff,%al
11099 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040011100 DB 127,0 ; jg 6740 <.literal4+0x1f0>
Mike Kleinb4bbc642017-04-27 08:59:55 -040011101 DB 0,0 ; add %al,(%rax)
11102 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040011103 DB 119,115 ; ja 67b9 <.literal4+0x269>
Mike Kleinb4bbc642017-04-27 08:59:55 -040011104 DB 248 ; clc
11105 DB 194,117,191 ; retq $0xbf75
11106 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi
11107 DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9
11108 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp
11109 DB 154 ; (bad)
11110 DB 64,254 ; rex (bad)
11111 DB 210,221 ; rcr %cl,%ch
11112 DB 65,0,0 ; add %al,(%r8)
11113 DB 0,75,0 ; add %cl,0x0(%rbx)
Mike Kleinfe560a82017-05-01 12:56:35 -040011114 DB 0,128,63,0,0,200 ; add %al,-0x37ffffc1(%rax)
11115 DB 66,0,0 ; rex.X add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040011116 DB 127,67 ; jg 67b7 <.literal4+0x267>
Mike Kleinfe560a82017-05-01 12:56:35 -040011117 DB 0,0 ; add %al,(%rax)
11118 DB 0,195 ; add %al,%bl
11119 DB 0,0 ; add %al,(%rax)
11120 DB 128,65,203,61 ; addb $0x3d,-0x35(%rcx)
11121 DB 13,60,111,18,3 ; or $0x3126f3c,%eax
11122 DB 59,10 ; cmp (%rdx),%ecx
11123 DB 215 ; xlat %ds:(%rbx)
11124 DB 163,59,194,24,17,60,203,61,13 ; movabs %eax,0xd3dcb3c1118c23b
11125 DB 190,80,128,3,62 ; mov $0x3e038050,%esi
11126 DB 31 ; (bad)
11127 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040011128 DB 118,63 ; jbe 67d7 <.literal4+0x287>
Mike Kleinfe560a82017-05-01 12:56:35 -040011129 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
11130 DB 129,128,128,59,129,128,128,59,0,0 ; addl $0x3b80,-0x7f7ec480(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040011131 DB 127,67 ; jg 67eb <.literal4+0x29b>
Mike Kleinfe560a82017-05-01 12:56:35 -040011132 DB 129,128,128,59,0,0,128,63,129,128 ; addl $0x80813f80,0x3b80(%rax)
11133 DB 128,59,0 ; cmpb $0x0,(%rbx)
11134 DB 0,128,63,129,128,128 ; add %al,-0x7f7f7ec1(%rax)
11135 DB 59,0 ; cmp (%rax),%eax
Mike Klein308e6242017-04-27 13:56:33 -040011136 DB 248 ; clc
11137 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011138 DB 8,33 ; or %ah,(%rcx)
11139 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040011140 DB 224,7 ; loopne 67cd <.literal4+0x27d>
Mike Klein308e6242017-04-27 13:56:33 -040011141 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011142 DB 33,8 ; and %ecx,(%rax)
11143 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040011144 DB 31 ; (bad)
11145 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011146 DB 0,8 ; add %cl,(%rax)
11147 DB 33,4,61,0,0,128,63 ; and %eax,0x3f800000(,%rdi,1)
11148 DB 0,248 ; add %bh,%al
Mike Klein308e6242017-04-27 13:56:33 -040011149 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011150 DB 8,33 ; or %ah,(%rcx)
11151 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040011152 DB 224,7 ; loopne 67e9 <.literal4+0x299>
Mike Klein308e6242017-04-27 13:56:33 -040011153 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011154 DB 33,8 ; and %ecx,(%rax)
11155 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040011156 DB 31 ; (bad)
11157 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011158 DB 0,8 ; add %cl,(%rax)
11159 DB 33,4,61,0,0,128,63 ; and %eax,0x3f800000(,%rdi,1)
Mike Klein308e6242017-04-27 13:56:33 -040011160 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011161 DB 248 ; clc
11162 DB 65,0,0 ; add %al,(%r8)
Mike Klein8ca33562017-05-23 08:07:43 -040011163 DB 124,66 ; jl 683e <.literal4+0x2ee>
Mike Kleinfe560a82017-05-01 12:56:35 -040011164 DB 0,240 ; add %dh,%al
Mike Klein308e6242017-04-27 13:56:33 -040011165 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011166 DB 137,136,136,55,0,15 ; mov %ecx,0xf003788(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040011167 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011168 DB 137,136,136,57,240,0 ; mov %ecx,0xf03988(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040011169 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011170 DB 137,136,136,59,15,0 ; mov %ecx,0xf3b88(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040011171 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011172 DB 137,136,136,61,0,240 ; mov %ecx,-0xfffc278(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040011173 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011174 DB 137,136,136,55,0,15 ; mov %ecx,0xf003788(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040011175 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011176 DB 137,136,136,57,240,0 ; mov %ecx,0xf03988(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040011177 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011178 DB 137,136,136,59,15,0 ; mov %ecx,0xf3b88(%rax)
11179 DB 0,0 ; add %al,(%rax)
11180 DB 137,136,136,61,0,0 ; mov %ecx,0x3d88(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040011181 DB 112,65 ; jo 6881 <.literal4+0x331>
Mike Kleinfe560a82017-05-01 12:56:35 -040011182 DB 129,128,128,59,129,128,128,59,0,0 ; addl $0x3b80,-0x7f7ec480(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040011183 DB 127,67 ; jg 688f <.literal4+0x33f>
Mike Kleinfe560a82017-05-01 12:56:35 -040011184 DB 0,128,0,0,0,0 ; add %al,0x0(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040011185 DB 0,128,0,4,0,128 ; add %al,-0x7ffffc00(%rax)
11186 DB 0,0 ; add %al,(%rax)
11187 DB 0,56 ; add %bh,(%rax)
11188 DB 0,128,0,0,0,0 ; add %al,0x0(%rax)
11189 DB 0,128,0,4,0,128 ; add %al,-0x7ffffc00(%rax)
11190 DB 0,0 ; add %al,(%rax)
11191 DB 0,56 ; add %bh,(%rax)
11192 DB 0,0 ; add %al,(%rax)
11193 DB 0,128,0,0,128,56 ; add %al,0x38800000(%rax)
11194 DB 0,64,254 ; add %al,-0x2(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011195 DB 255,128,0,128,55,128 ; incl -0x7fc88000(%rax)
11196 DB 0,128,55,0,0,128 ; add %al,-0x7fffffc9(%rax)
11197 DB 63 ; (bad)
11198 DB 0,255 ; add %bh,%bh
Mike Klein8ca33562017-05-23 08:07:43 -040011199 DB 127,71 ; jg 68cf <.literal4+0x37f>
Mike Klein9f85d682017-05-23 07:52:01 -040011200 DB 0,0 ; add %al,(%rax)
11201 DB 128,63,0 ; cmpb $0x0,(%rdi)
11202 DB 0,128,191,0,0,0 ; add %al,0xbf(%rax)
11203 DB 63 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -040011204 DB 208 ; (bad)
11205 DB 179,89 ; mov $0x59,%bl
11206 DB 62,89 ; ds pop %rcx
11207 DB 23 ; (bad)
11208 DB 55 ; (bad)
11209 DB 63 ; (bad)
11210 DB 152 ; cwtl
Herb Derby4de13042017-05-15 10:49:39 -040011211 DB 221,147,61,1,0,0 ; fstl 0x13d(%rbx)
11212 DB 0,111,43 ; add %ch,0x2b(%rdi)
11213 DB 231,187 ; out %eax,$0xbb
11214 DB 159 ; lahf
11215 DB 215 ; xlat %ds:(%rbx)
11216 DB 202,60,212 ; lret $0xd43c
Herb Derby7eb86982017-05-02 19:04:39 -040011217 DB 100,84 ; fs push %rsp
11218 DB 189,169,240,34,62 ; mov $0x3e22f0a9,%ebp
11219 DB 0,0 ; add %al,(%rax)
11220 DB 128,62,0 ; cmpb $0x0,(%rsi)
11221 DB 0,0 ; add %al,(%rax)
11222 DB 63 ; (bad)
11223 DB 0,0 ; add %al,(%rax)
11224 DB 128,63,0 ; cmpb $0x0,(%rdi)
11225 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040011226 DB 63 ; (bad)
11227 DB 0,0 ; add %al,(%rax)
11228 DB 0,191,0,0,128,63 ; add %bh,0x3f800000(%rdi)
11229 DB 0,0 ; add %al,(%rax)
11230 DB 0,63 ; add %bh,(%rdi)
11231 DB 0,0 ; add %al,(%rax)
11232 DB 0,191,0,0,128,63 ; add %bh,0x3f800000(%rdi)
11233 DB 0,0 ; add %al,(%rax)
11234 DB 0,63 ; add %bh,(%rdi)
11235 DB 0,0 ; add %al,(%rax)
11236 DB 192,191,0,0,128,63,114 ; sarb $0x72,0x3f800000(%rdi)
11237 DB 28,199 ; sbb $0xc7,%al
11238 DB 62,171 ; ds stos %eax,%es:(%rdi)
11239 DB 170 ; stos %al,%es:(%rdi)
11240 DB 170 ; stos %al,%es:(%rdi)
11241 DB 190,0,0,0,191 ; mov $0xbf000000,%esi
11242 DB 0,0 ; add %al,(%rax)
11243 DB 128,63,85 ; cmpb $0x55,(%rdi)
11244 DB 85 ; push %rbp
11245 DB 149 ; xchg %eax,%ebp
11246 DB 191,0,0,192,63 ; mov $0x3fc00000,%edi
11247 DB 0,0 ; add %al,(%rax)
11248 DB 0,63 ; add %bh,(%rdi)
11249 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
11250 DB 0,63 ; add %bh,(%rdi)
11251 DB 85 ; push %rbp
11252 DB 85 ; push %rbp
11253 DB 149 ; xchg %eax,%ebp
11254 DB 191,0,0,192,63 ; mov $0x3fc00000,%edi
11255 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
11256 DB 192,63,114 ; sarb $0x72,(%rdi)
11257 DB 28,199 ; sbb $0xc7,%al
11258 DB 62,171 ; ds stos %eax,%es:(%rdi)
11259 DB 170 ; stos %al,%es:(%rdi)
11260 DB 170 ; stos %al,%es:(%rdi)
11261 DB 190,0,0,192,191 ; mov $0xbfc00000,%esi
11262 DB 0,0 ; add %al,(%rax)
11263 DB 128,63,114 ; cmpb $0x72,(%rdi)
11264 DB 28,199 ; sbb $0xc7,%al
11265 DB 62,171 ; ds stos %eax,%es:(%rdi)
11266 DB 170 ; stos %al,%es:(%rdi)
11267 DB 170 ; stos %al,%es:(%rdi)
11268 DB 190,0,0,0,191 ; mov $0xbf000000,%esi
11269 DB 0,0 ; add %al,(%rax)
11270 DB 128,63,85 ; cmpb $0x55,(%rdi)
11271 DB 85 ; push %rbp
11272 DB 149 ; xchg %eax,%ebp
11273 DB 191,0,0,192,63 ; mov $0x3fc00000,%edi
11274 DB 0,0 ; add %al,(%rax)
11275 DB 0,63 ; add %bh,(%rdi)
11276 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
11277 DB 0,63 ; add %bh,(%rdi)
11278 DB 85 ; push %rbp
11279 DB 85 ; push %rbp
11280 DB 149 ; xchg %eax,%ebp
11281 DB 191,0,0,192,63 ; mov $0x3fc00000,%edi
11282 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
11283 DB 192,63,114 ; sarb $0x72,(%rdi)
11284 DB 28,199 ; sbb $0xc7,%al
11285 DB 62,171 ; ds stos %eax,%es:(%rdi)
11286 DB 170 ; stos %al,%es:(%rdi)
11287 DB 170 ; stos %al,%es:(%rdi)
11288 DB 190 ; .byte 0xbe
Mike Klein0aa742f2017-04-27 13:36:57 -040011289
11290ALIGN 32
11291 DB 255,0 ; incl (%rax)
11292 DB 0,0 ; add %al,(%rax)
11293 DB 255,0 ; incl (%rax)
11294 DB 0,0 ; add %al,(%rax)
11295 DB 255,0 ; incl (%rax)
11296 DB 0,0 ; add %al,(%rax)
11297 DB 255,0 ; incl (%rax)
11298 DB 0,0 ; add %al,(%rax)
11299 DB 255,0 ; incl (%rax)
11300 DB 0,0 ; add %al,(%rax)
11301 DB 255,0 ; incl (%rax)
11302 DB 0,0 ; add %al,(%rax)
11303 DB 255,0 ; incl (%rax)
11304 DB 0,0 ; add %al,(%rax)
11305 DB 255,0 ; incl (%rax)
11306 DB 0,0 ; add %al,(%rax)
11307 DB 255,0 ; incl (%rax)
11308 DB 0,0 ; add %al,(%rax)
11309 DB 255,0 ; incl (%rax)
11310 DB 0,0 ; add %al,(%rax)
11311 DB 255,0 ; incl (%rax)
11312 DB 0,0 ; add %al,(%rax)
11313 DB 255,0 ; incl (%rax)
11314 DB 0,0 ; add %al,(%rax)
11315 DB 255,0 ; incl (%rax)
11316 DB 0,0 ; add %al,(%rax)
11317 DB 255,0 ; incl (%rax)
11318 DB 0,0 ; add %al,(%rax)
11319 DB 255,0 ; incl (%rax)
11320 DB 0,0 ; add %al,(%rax)
11321 DB 255,0 ; incl (%rax)
11322 DB 0,0 ; add %al,(%rax)
11323 DB 255,0 ; incl (%rax)
11324 DB 0,0 ; add %al,(%rax)
11325 DB 255,0 ; incl (%rax)
11326 DB 0,0 ; add %al,(%rax)
11327 DB 255,0 ; incl (%rax)
11328 DB 0,0 ; add %al,(%rax)
11329 DB 255,0 ; incl (%rax)
11330 DB 0,0 ; add %al,(%rax)
11331 DB 255,0 ; incl (%rax)
11332 DB 0,0 ; add %al,(%rax)
11333 DB 255,0 ; incl (%rax)
11334 DB 0,0 ; add %al,(%rax)
11335 DB 255,0 ; incl (%rax)
11336 DB 0,0 ; add %al,(%rax)
11337 DB 255,0 ; incl (%rax)
11338 DB 0,0 ; add %al,(%rax)
11339 DB 255,0 ; incl (%rax)
11340 DB 0,0 ; add %al,(%rax)
11341 DB 255,0 ; incl (%rax)
11342 DB 0,0 ; add %al,(%rax)
11343 DB 255,0 ; incl (%rax)
11344 DB 0,0 ; add %al,(%rax)
11345 DB 255,0 ; incl (%rax)
11346 DB 0,0 ; add %al,(%rax)
11347 DB 255,0 ; incl (%rax)
11348 DB 0,0 ; add %al,(%rax)
11349 DB 255,0 ; incl (%rax)
11350 DB 0,0 ; add %al,(%rax)
11351 DB 255,0 ; incl (%rax)
11352 DB 0,0 ; add %al,(%rax)
11353 DB 255,0 ; incl (%rax)
11354 DB 0,0 ; add %al,(%rax)
Brian Osman74fc5932017-05-22 19:25:36 +000011355
11356ALIGN 16
11357 DB 255,0 ; incl (%rax)
11358 DB 255,0 ; incl (%rax)
11359 DB 255,0 ; incl (%rax)
11360 DB 255,0 ; incl (%rax)
11361 DB 255,0 ; incl (%rax)
11362 DB 255,0 ; incl (%rax)
11363 DB 255,0 ; incl (%rax)
11364 DB 255,0 ; incl (%rax)
11365 DB 255,0 ; incl (%rax)
11366 DB 255,0 ; incl (%rax)
11367 DB 255,0 ; incl (%rax)
11368 DB 255,0 ; incl (%rax)
11369 DB 255,0 ; incl (%rax)
11370 DB 255,0 ; incl (%rax)
11371 DB 255,0 ; incl (%rax)
11372 DB 255,0 ; incl (%rax)
Mike Klein67e61712017-04-26 09:52:09 -040011373ALIGN 32
Mike Klein2229b572017-04-21 10:30:29 -040011374
Mike Kleind7e06ae2017-03-29 16:33:06 -040011375PUBLIC _sk_start_pipeline_sse41
11376_sk_start_pipeline_sse41 LABEL PROC
11377 DB 65,87 ; push %r15
11378 DB 65,86 ; push %r14
11379 DB 65,85 ; push %r13
11380 DB 65,84 ; push %r12
11381 DB 86 ; push %rsi
11382 DB 87 ; push %rdi
11383 DB 83 ; push %rbx
11384 DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp
11385 DB 68,15,41,188,36,144,0,0,0 ; movaps %xmm15,0x90(%rsp)
11386 DB 68,15,41,180,36,128,0,0,0 ; movaps %xmm14,0x80(%rsp)
11387 DB 68,15,41,108,36,112 ; movaps %xmm13,0x70(%rsp)
11388 DB 68,15,41,100,36,96 ; movaps %xmm12,0x60(%rsp)
11389 DB 68,15,41,92,36,80 ; movaps %xmm11,0x50(%rsp)
11390 DB 68,15,41,84,36,64 ; movaps %xmm10,0x40(%rsp)
11391 DB 68,15,41,76,36,48 ; movaps %xmm9,0x30(%rsp)
11392 DB 68,15,41,68,36,32 ; movaps %xmm8,0x20(%rsp)
11393 DB 15,41,124,36,16 ; movaps %xmm7,0x10(%rsp)
11394 DB 15,41,52,36 ; movaps %xmm6,(%rsp)
11395 DB 77,137,207 ; mov %r9,%r15
11396 DB 77,137,198 ; mov %r8,%r14
11397 DB 72,137,203 ; mov %rcx,%rbx
11398 DB 72,137,214 ; mov %rdx,%rsi
11399 DB 72,173 ; lods %ds:(%rsi),%rax
11400 DB 73,137,196 ; mov %rax,%r12
11401 DB 73,137,245 ; mov %rsi,%r13
11402 DB 72,141,67,4 ; lea 0x4(%rbx),%rax
11403 DB 76,57,248 ; cmp %r15,%rax
11404 DB 118,5 ; jbe 73 <_sk_start_pipeline_sse41+0x73>
11405 DB 72,137,216 ; mov %rbx,%rax
11406 DB 235,52 ; jmp a7 <_sk_start_pipeline_sse41+0xa7>
11407 DB 15,87,192 ; xorps %xmm0,%xmm0
11408 DB 15,87,201 ; xorps %xmm1,%xmm1
11409 DB 15,87,210 ; xorps %xmm2,%xmm2
11410 DB 15,87,219 ; xorps %xmm3,%xmm3
11411 DB 15,87,228 ; xorps %xmm4,%xmm4
11412 DB 15,87,237 ; xorps %xmm5,%xmm5
11413 DB 15,87,246 ; xorps %xmm6,%xmm6
11414 DB 15,87,255 ; xorps %xmm7,%xmm7
11415 DB 72,137,223 ; mov %rbx,%rdi
11416 DB 76,137,238 ; mov %r13,%rsi
11417 DB 76,137,242 ; mov %r14,%rdx
11418 DB 65,255,212 ; callq *%r12
11419 DB 72,141,67,4 ; lea 0x4(%rbx),%rax
11420 DB 72,131,195,8 ; add $0x8,%rbx
11421 DB 76,57,251 ; cmp %r15,%rbx
11422 DB 72,137,195 ; mov %rax,%rbx
11423 DB 118,204 ; jbe 73 <_sk_start_pipeline_sse41+0x73>
11424 DB 15,40,52,36 ; movaps (%rsp),%xmm6
11425 DB 15,40,124,36,16 ; movaps 0x10(%rsp),%xmm7
11426 DB 68,15,40,68,36,32 ; movaps 0x20(%rsp),%xmm8
11427 DB 68,15,40,76,36,48 ; movaps 0x30(%rsp),%xmm9
11428 DB 68,15,40,84,36,64 ; movaps 0x40(%rsp),%xmm10
11429 DB 68,15,40,92,36,80 ; movaps 0x50(%rsp),%xmm11
11430 DB 68,15,40,100,36,96 ; movaps 0x60(%rsp),%xmm12
11431 DB 68,15,40,108,36,112 ; movaps 0x70(%rsp),%xmm13
11432 DB 68,15,40,180,36,128,0,0,0 ; movaps 0x80(%rsp),%xmm14
11433 DB 68,15,40,188,36,144,0,0,0 ; movaps 0x90(%rsp),%xmm15
11434 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp
11435 DB 91 ; pop %rbx
11436 DB 95 ; pop %rdi
11437 DB 94 ; pop %rsi
11438 DB 65,92 ; pop %r12
11439 DB 65,93 ; pop %r13
11440 DB 65,94 ; pop %r14
11441 DB 65,95 ; pop %r15
11442 DB 195 ; retq
11443
11444PUBLIC _sk_just_return_sse41
11445_sk_just_return_sse41 LABEL PROC
11446 DB 195 ; retq
11447
11448PUBLIC _sk_seed_shader_sse41
11449_sk_seed_shader_sse41 LABEL PROC
11450 DB 72,173 ; lods %ds:(%rsi),%rax
11451 DB 102,15,110,199 ; movd %edi,%xmm0
11452 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0
11453 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040011454 DB 15,40,21,161,71,0,0 ; movaps 0x47a1(%rip),%xmm2 # 48b0 <_sk_callback_sse41+0xab>
Mike Kleind7e06ae2017-03-29 16:33:06 -040011455 DB 15,88,202 ; addps %xmm2,%xmm1
11456 DB 15,16,2 ; movups (%rdx),%xmm0
11457 DB 15,88,193 ; addps %xmm1,%xmm0
11458 DB 102,15,110,8 ; movd (%rax),%xmm1
11459 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1
11460 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
11461 DB 15,88,202 ; addps %xmm2,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040011462 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040011463 DB 15,40,21,144,71,0,0 ; movaps 0x4790(%rip),%xmm2 # 48c0 <_sk_callback_sse41+0xbb>
Mike Kleind7e06ae2017-03-29 16:33:06 -040011464 DB 15,87,219 ; xorps %xmm3,%xmm3
11465 DB 15,87,228 ; xorps %xmm4,%xmm4
11466 DB 15,87,237 ; xorps %xmm5,%xmm5
11467 DB 15,87,246 ; xorps %xmm6,%xmm6
11468 DB 15,87,255 ; xorps %xmm7,%xmm7
11469 DB 255,224 ; jmpq *%rax
11470
Mike Klein581e6982017-05-03 13:05:13 -040011471PUBLIC _sk_dither_sse41
11472_sk_dither_sse41 LABEL PROC
11473 DB 72,173 ; lods %ds:(%rsi),%rax
11474 DB 102,68,15,110,199 ; movd %edi,%xmm8
11475 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
Mike Klein5d7f2b52017-05-20 13:21:59 -040011476 DB 243,68,15,111,74,32 ; movdqu 0x20(%rdx),%xmm9
11477 DB 102,69,15,254,200 ; paddd %xmm8,%xmm9
Mike Klein581e6982017-05-03 13:05:13 -040011478 DB 72,139,8 ; mov (%rax),%rcx
11479 DB 102,68,15,110,1 ; movd (%rcx),%xmm8
11480 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
11481 DB 102,69,15,239,193 ; pxor %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040011482 DB 102,68,15,111,21,91,71,0,0 ; movdqa 0x475b(%rip),%xmm10 # 48d0 <_sk_callback_sse41+0xcb>
Mike Klein581e6982017-05-03 13:05:13 -040011483 DB 102,69,15,111,216 ; movdqa %xmm8,%xmm11
11484 DB 102,69,15,219,218 ; pand %xmm10,%xmm11
11485 DB 102,65,15,114,243,5 ; pslld $0x5,%xmm11
11486 DB 102,69,15,219,209 ; pand %xmm9,%xmm10
11487 DB 102,65,15,114,242,4 ; pslld $0x4,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040011488 DB 102,68,15,111,37,71,71,0,0 ; movdqa 0x4747(%rip),%xmm12 # 48e0 <_sk_callback_sse41+0xdb>
11489 DB 102,68,15,111,45,78,71,0,0 ; movdqa 0x474e(%rip),%xmm13 # 48f0 <_sk_callback_sse41+0xeb>
Mike Klein581e6982017-05-03 13:05:13 -040011490 DB 102,69,15,111,240 ; movdqa %xmm8,%xmm14
11491 DB 102,69,15,219,245 ; pand %xmm13,%xmm14
11492 DB 102,65,15,114,246,2 ; pslld $0x2,%xmm14
11493 DB 102,69,15,219,233 ; pand %xmm9,%xmm13
11494 DB 102,69,15,254,237 ; paddd %xmm13,%xmm13
11495 DB 102,69,15,219,196 ; pand %xmm12,%xmm8
11496 DB 102,65,15,114,208,1 ; psrld $0x1,%xmm8
11497 DB 102,69,15,219,204 ; pand %xmm12,%xmm9
11498 DB 102,65,15,114,209,2 ; psrld $0x2,%xmm9
11499 DB 102,69,15,235,234 ; por %xmm10,%xmm13
11500 DB 102,69,15,235,233 ; por %xmm9,%xmm13
Mike Klein5d7f2b52017-05-20 13:21:59 -040011501 DB 102,69,15,235,235 ; por %xmm11,%xmm13
11502 DB 102,69,15,235,198 ; por %xmm14,%xmm8
11503 DB 102,69,15,235,197 ; por %xmm13,%xmm8
11504 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040011505 DB 68,15,89,5,9,71,0,0 ; mulps 0x4709(%rip),%xmm8 # 4900 <_sk_callback_sse41+0xfb>
11506 DB 68,15,88,5,17,71,0,0 ; addps 0x4711(%rip),%xmm8 # 4910 <_sk_callback_sse41+0x10b>
Mike Klein7e68bc92017-05-16 12:03:15 -040011507 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
11508 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
11509 DB 69,15,89,208 ; mulps %xmm8,%xmm10
11510 DB 65,15,88,194 ; addps %xmm10,%xmm0
11511 DB 65,15,88,202 ; addps %xmm10,%xmm1
11512 DB 68,15,88,210 ; addps %xmm2,%xmm10
11513 DB 15,93,195 ; minps %xmm3,%xmm0
11514 DB 15,87,210 ; xorps %xmm2,%xmm2
11515 DB 69,15,87,192 ; xorps %xmm8,%xmm8
11516 DB 68,15,95,192 ; maxps %xmm0,%xmm8
11517 DB 15,93,203 ; minps %xmm3,%xmm1
11518 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9
11519 DB 68,15,95,201 ; maxps %xmm1,%xmm9
11520 DB 68,15,93,211 ; minps %xmm3,%xmm10
11521 DB 65,15,95,210 ; maxps %xmm10,%xmm2
Mike Klein581e6982017-05-03 13:05:13 -040011522 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein7e68bc92017-05-16 12:03:15 -040011523 DB 65,15,40,192 ; movaps %xmm8,%xmm0
11524 DB 65,15,40,201 ; movaps %xmm9,%xmm1
Mike Klein581e6982017-05-03 13:05:13 -040011525 DB 255,224 ; jmpq *%rax
11526
Mike Kleind7e06ae2017-03-29 16:33:06 -040011527PUBLIC _sk_constant_color_sse41
11528_sk_constant_color_sse41 LABEL PROC
11529 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8a823fa2017-04-05 17:29:26 -040011530 DB 243,15,16,0 ; movss (%rax),%xmm0
11531 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040011532 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
Mike Klein8a823fa2017-04-05 17:29:26 -040011533 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
11534 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
11535 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
11536 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3
11537 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040011538 DB 72,173 ; lods %ds:(%rsi),%rax
11539 DB 255,224 ; jmpq *%rax
11540
Mike Reed9959f722017-05-15 09:34:22 -040011541PUBLIC _sk_load_rgba_sse41
11542_sk_load_rgba_sse41 LABEL PROC
11543 DB 72,173 ; lods %ds:(%rsi),%rax
11544 DB 15,16,0 ; movups (%rax),%xmm0
11545 DB 15,16,72,16 ; movups 0x10(%rax),%xmm1
11546 DB 15,16,80,32 ; movups 0x20(%rax),%xmm2
11547 DB 15,16,88,48 ; movups 0x30(%rax),%xmm3
11548 DB 72,173 ; lods %ds:(%rsi),%rax
11549 DB 255,224 ; jmpq *%rax
11550
11551PUBLIC _sk_store_rgba_sse41
11552_sk_store_rgba_sse41 LABEL PROC
11553 DB 72,173 ; lods %ds:(%rsi),%rax
11554 DB 15,17,0 ; movups %xmm0,(%rax)
11555 DB 15,17,72,16 ; movups %xmm1,0x10(%rax)
11556 DB 15,17,80,32 ; movups %xmm2,0x20(%rax)
11557 DB 15,17,88,48 ; movups %xmm3,0x30(%rax)
11558 DB 72,173 ; lods %ds:(%rsi),%rax
11559 DB 255,224 ; jmpq *%rax
11560
Mike Kleind7e06ae2017-03-29 16:33:06 -040011561PUBLIC _sk_clear_sse41
11562_sk_clear_sse41 LABEL PROC
11563 DB 72,173 ; lods %ds:(%rsi),%rax
11564 DB 15,87,192 ; xorps %xmm0,%xmm0
11565 DB 15,87,201 ; xorps %xmm1,%xmm1
11566 DB 15,87,210 ; xorps %xmm2,%xmm2
11567 DB 15,87,219 ; xorps %xmm3,%xmm3
11568 DB 255,224 ; jmpq *%rax
11569
Mike Kleinaaca1e42017-03-31 09:29:01 -040011570PUBLIC _sk_srcatop_sse41
11571_sk_srcatop_sse41 LABEL PROC
11572 DB 15,89,199 ; mulps %xmm7,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040011573 DB 68,15,40,5,106,70,0,0 ; movaps 0x466a(%rip),%xmm8 # 4920 <_sk_callback_sse41+0x11b>
Mike Kleinaaca1e42017-03-31 09:29:01 -040011574 DB 68,15,92,195 ; subps %xmm3,%xmm8
11575 DB 69,15,40,200 ; movaps %xmm8,%xmm9
11576 DB 68,15,89,204 ; mulps %xmm4,%xmm9
11577 DB 65,15,88,193 ; addps %xmm9,%xmm0
11578 DB 15,89,207 ; mulps %xmm7,%xmm1
11579 DB 69,15,40,200 ; movaps %xmm8,%xmm9
11580 DB 68,15,89,205 ; mulps %xmm5,%xmm9
11581 DB 65,15,88,201 ; addps %xmm9,%xmm1
11582 DB 15,89,215 ; mulps %xmm7,%xmm2
11583 DB 69,15,40,200 ; movaps %xmm8,%xmm9
11584 DB 68,15,89,206 ; mulps %xmm6,%xmm9
11585 DB 65,15,88,209 ; addps %xmm9,%xmm2
11586 DB 15,89,223 ; mulps %xmm7,%xmm3
11587 DB 68,15,89,199 ; mulps %xmm7,%xmm8
11588 DB 65,15,88,216 ; addps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040011589 DB 72,173 ; lods %ds:(%rsi),%rax
11590 DB 255,224 ; jmpq *%rax
11591
Mike Kleinaaca1e42017-03-31 09:29:01 -040011592PUBLIC _sk_dstatop_sse41
11593_sk_dstatop_sse41 LABEL PROC
11594 DB 68,15,40,195 ; movaps %xmm3,%xmm8
11595 DB 68,15,89,196 ; mulps %xmm4,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040011596 DB 68,15,40,13,45,70,0,0 ; movaps 0x462d(%rip),%xmm9 # 4930 <_sk_callback_sse41+0x12b>
Mike Kleinaaca1e42017-03-31 09:29:01 -040011597 DB 68,15,92,207 ; subps %xmm7,%xmm9
11598 DB 65,15,89,193 ; mulps %xmm9,%xmm0
11599 DB 65,15,88,192 ; addps %xmm8,%xmm0
11600 DB 68,15,40,195 ; movaps %xmm3,%xmm8
11601 DB 68,15,89,197 ; mulps %xmm5,%xmm8
11602 DB 65,15,89,201 ; mulps %xmm9,%xmm1
11603 DB 65,15,88,200 ; addps %xmm8,%xmm1
11604 DB 68,15,40,195 ; movaps %xmm3,%xmm8
11605 DB 68,15,89,198 ; mulps %xmm6,%xmm8
11606 DB 65,15,89,209 ; mulps %xmm9,%xmm2
11607 DB 65,15,88,208 ; addps %xmm8,%xmm2
11608 DB 68,15,89,203 ; mulps %xmm3,%xmm9
11609 DB 15,89,223 ; mulps %xmm7,%xmm3
11610 DB 65,15,88,217 ; addps %xmm9,%xmm3
11611 DB 72,173 ; lods %ds:(%rsi),%rax
11612 DB 255,224 ; jmpq *%rax
11613
11614PUBLIC _sk_srcin_sse41
11615_sk_srcin_sse41 LABEL PROC
11616 DB 15,89,199 ; mulps %xmm7,%xmm0
11617 DB 15,89,207 ; mulps %xmm7,%xmm1
11618 DB 15,89,215 ; mulps %xmm7,%xmm2
11619 DB 15,89,223 ; mulps %xmm7,%xmm3
11620 DB 72,173 ; lods %ds:(%rsi),%rax
11621 DB 255,224 ; jmpq *%rax
11622
11623PUBLIC _sk_dstin_sse41
11624_sk_dstin_sse41 LABEL PROC
11625 DB 15,40,195 ; movaps %xmm3,%xmm0
11626 DB 15,89,196 ; mulps %xmm4,%xmm0
11627 DB 15,40,203 ; movaps %xmm3,%xmm1
11628 DB 15,89,205 ; mulps %xmm5,%xmm1
11629 DB 15,40,211 ; movaps %xmm3,%xmm2
11630 DB 15,89,214 ; mulps %xmm6,%xmm2
11631 DB 15,89,223 ; mulps %xmm7,%xmm3
11632 DB 72,173 ; lods %ds:(%rsi),%rax
11633 DB 255,224 ; jmpq *%rax
11634
11635PUBLIC _sk_srcout_sse41
11636_sk_srcout_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040011637 DB 68,15,40,5,209,69,0,0 ; movaps 0x45d1(%rip),%xmm8 # 4940 <_sk_callback_sse41+0x13b>
Mike Kleinaaca1e42017-03-31 09:29:01 -040011638 DB 68,15,92,199 ; subps %xmm7,%xmm8
11639 DB 65,15,89,192 ; mulps %xmm8,%xmm0
11640 DB 65,15,89,200 ; mulps %xmm8,%xmm1
11641 DB 65,15,89,208 ; mulps %xmm8,%xmm2
11642 DB 65,15,89,216 ; mulps %xmm8,%xmm3
11643 DB 72,173 ; lods %ds:(%rsi),%rax
11644 DB 255,224 ; jmpq *%rax
11645
11646PUBLIC _sk_dstout_sse41
11647_sk_dstout_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040011648 DB 68,15,40,5,193,69,0,0 ; movaps 0x45c1(%rip),%xmm8 # 4950 <_sk_callback_sse41+0x14b>
Mike Kleinaaca1e42017-03-31 09:29:01 -040011649 DB 68,15,92,195 ; subps %xmm3,%xmm8
11650 DB 65,15,40,192 ; movaps %xmm8,%xmm0
11651 DB 15,89,196 ; mulps %xmm4,%xmm0
11652 DB 65,15,40,200 ; movaps %xmm8,%xmm1
11653 DB 15,89,205 ; mulps %xmm5,%xmm1
11654 DB 65,15,40,208 ; movaps %xmm8,%xmm2
11655 DB 15,89,214 ; mulps %xmm6,%xmm2
11656 DB 68,15,89,199 ; mulps %xmm7,%xmm8
11657 DB 72,173 ; lods %ds:(%rsi),%rax
11658 DB 65,15,40,216 ; movaps %xmm8,%xmm3
11659 DB 255,224 ; jmpq *%rax
11660
Mike Kleind7e06ae2017-03-29 16:33:06 -040011661PUBLIC _sk_srcover_sse41
11662_sk_srcover_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040011663 DB 68,15,40,5,164,69,0,0 ; movaps 0x45a4(%rip),%xmm8 # 4960 <_sk_callback_sse41+0x15b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040011664 DB 68,15,92,195 ; subps %xmm3,%xmm8
11665 DB 69,15,40,200 ; movaps %xmm8,%xmm9
11666 DB 68,15,89,204 ; mulps %xmm4,%xmm9
11667 DB 65,15,88,193 ; addps %xmm9,%xmm0
11668 DB 69,15,40,200 ; movaps %xmm8,%xmm9
11669 DB 68,15,89,205 ; mulps %xmm5,%xmm9
11670 DB 65,15,88,201 ; addps %xmm9,%xmm1
11671 DB 69,15,40,200 ; movaps %xmm8,%xmm9
11672 DB 68,15,89,206 ; mulps %xmm6,%xmm9
11673 DB 65,15,88,209 ; addps %xmm9,%xmm2
11674 DB 68,15,89,199 ; mulps %xmm7,%xmm8
11675 DB 65,15,88,216 ; addps %xmm8,%xmm3
11676 DB 72,173 ; lods %ds:(%rsi),%rax
11677 DB 255,224 ; jmpq *%rax
11678
11679PUBLIC _sk_dstover_sse41
11680_sk_dstover_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040011681 DB 68,15,40,5,120,69,0,0 ; movaps 0x4578(%rip),%xmm8 # 4970 <_sk_callback_sse41+0x16b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040011682 DB 68,15,92,199 ; subps %xmm7,%xmm8
11683 DB 65,15,89,192 ; mulps %xmm8,%xmm0
11684 DB 15,88,196 ; addps %xmm4,%xmm0
11685 DB 65,15,89,200 ; mulps %xmm8,%xmm1
11686 DB 15,88,205 ; addps %xmm5,%xmm1
11687 DB 65,15,89,208 ; mulps %xmm8,%xmm2
11688 DB 15,88,214 ; addps %xmm6,%xmm2
11689 DB 65,15,89,216 ; mulps %xmm8,%xmm3
11690 DB 15,88,223 ; addps %xmm7,%xmm3
11691 DB 72,173 ; lods %ds:(%rsi),%rax
11692 DB 255,224 ; jmpq *%rax
11693
Mike Kleinaaca1e42017-03-31 09:29:01 -040011694PUBLIC _sk_modulate_sse41
11695_sk_modulate_sse41 LABEL PROC
11696 DB 15,89,196 ; mulps %xmm4,%xmm0
11697 DB 15,89,205 ; mulps %xmm5,%xmm1
11698 DB 15,89,214 ; mulps %xmm6,%xmm2
11699 DB 15,89,223 ; mulps %xmm7,%xmm3
11700 DB 72,173 ; lods %ds:(%rsi),%rax
11701 DB 255,224 ; jmpq *%rax
11702
11703PUBLIC _sk_multiply_sse41
11704_sk_multiply_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040011705 DB 68,15,40,5,76,69,0,0 ; movaps 0x454c(%rip),%xmm8 # 4980 <_sk_callback_sse41+0x17b>
Mike Kleinaaca1e42017-03-31 09:29:01 -040011706 DB 69,15,40,200 ; movaps %xmm8,%xmm9
11707 DB 68,15,92,207 ; subps %xmm7,%xmm9
11708 DB 69,15,40,209 ; movaps %xmm9,%xmm10
11709 DB 68,15,89,208 ; mulps %xmm0,%xmm10
11710 DB 68,15,92,195 ; subps %xmm3,%xmm8
11711 DB 69,15,40,216 ; movaps %xmm8,%xmm11
11712 DB 68,15,89,220 ; mulps %xmm4,%xmm11
11713 DB 69,15,88,218 ; addps %xmm10,%xmm11
11714 DB 15,89,196 ; mulps %xmm4,%xmm0
11715 DB 65,15,88,195 ; addps %xmm11,%xmm0
11716 DB 69,15,40,209 ; movaps %xmm9,%xmm10
11717 DB 68,15,89,209 ; mulps %xmm1,%xmm10
11718 DB 69,15,40,216 ; movaps %xmm8,%xmm11
11719 DB 68,15,89,221 ; mulps %xmm5,%xmm11
11720 DB 69,15,88,218 ; addps %xmm10,%xmm11
11721 DB 15,89,205 ; mulps %xmm5,%xmm1
11722 DB 65,15,88,203 ; addps %xmm11,%xmm1
11723 DB 69,15,40,209 ; movaps %xmm9,%xmm10
11724 DB 68,15,89,210 ; mulps %xmm2,%xmm10
11725 DB 69,15,40,216 ; movaps %xmm8,%xmm11
11726 DB 68,15,89,222 ; mulps %xmm6,%xmm11
11727 DB 69,15,88,218 ; addps %xmm10,%xmm11
11728 DB 15,89,214 ; mulps %xmm6,%xmm2
11729 DB 65,15,88,211 ; addps %xmm11,%xmm2
11730 DB 68,15,89,203 ; mulps %xmm3,%xmm9
11731 DB 68,15,89,199 ; mulps %xmm7,%xmm8
11732 DB 69,15,88,193 ; addps %xmm9,%xmm8
11733 DB 15,89,223 ; mulps %xmm7,%xmm3
11734 DB 65,15,88,216 ; addps %xmm8,%xmm3
11735 DB 72,173 ; lods %ds:(%rsi),%rax
11736 DB 255,224 ; jmpq *%rax
11737
11738PUBLIC _sk_plus__sse41
11739_sk_plus__sse41 LABEL PROC
11740 DB 15,88,196 ; addps %xmm4,%xmm0
11741 DB 15,88,205 ; addps %xmm5,%xmm1
11742 DB 15,88,214 ; addps %xmm6,%xmm2
11743 DB 15,88,223 ; addps %xmm7,%xmm3
11744 DB 72,173 ; lods %ds:(%rsi),%rax
11745 DB 255,224 ; jmpq *%rax
11746
11747PUBLIC _sk_screen_sse41
11748_sk_screen_sse41 LABEL PROC
11749 DB 68,15,40,192 ; movaps %xmm0,%xmm8
11750 DB 68,15,88,196 ; addps %xmm4,%xmm8
11751 DB 15,89,196 ; mulps %xmm4,%xmm0
11752 DB 68,15,92,192 ; subps %xmm0,%xmm8
11753 DB 68,15,40,201 ; movaps %xmm1,%xmm9
11754 DB 68,15,88,205 ; addps %xmm5,%xmm9
11755 DB 15,89,205 ; mulps %xmm5,%xmm1
11756 DB 68,15,92,201 ; subps %xmm1,%xmm9
11757 DB 68,15,40,210 ; movaps %xmm2,%xmm10
11758 DB 68,15,88,214 ; addps %xmm6,%xmm10
11759 DB 15,89,214 ; mulps %xmm6,%xmm2
11760 DB 68,15,92,210 ; subps %xmm2,%xmm10
11761 DB 68,15,40,219 ; movaps %xmm3,%xmm11
11762 DB 68,15,88,223 ; addps %xmm7,%xmm11
11763 DB 15,89,223 ; mulps %xmm7,%xmm3
11764 DB 68,15,92,219 ; subps %xmm3,%xmm11
11765 DB 72,173 ; lods %ds:(%rsi),%rax
11766 DB 65,15,40,192 ; movaps %xmm8,%xmm0
11767 DB 65,15,40,201 ; movaps %xmm9,%xmm1
11768 DB 65,15,40,210 ; movaps %xmm10,%xmm2
11769 DB 65,15,40,219 ; movaps %xmm11,%xmm3
11770 DB 255,224 ; jmpq *%rax
11771
11772PUBLIC _sk_xor__sse41
11773_sk_xor__sse41 LABEL PROC
11774 DB 68,15,40,195 ; movaps %xmm3,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040011775 DB 15,40,29,125,68,0,0 ; movaps 0x447d(%rip),%xmm3 # 4990 <_sk_callback_sse41+0x18b>
Mike Kleinaaca1e42017-03-31 09:29:01 -040011776 DB 68,15,40,203 ; movaps %xmm3,%xmm9
11777 DB 68,15,92,207 ; subps %xmm7,%xmm9
11778 DB 65,15,89,193 ; mulps %xmm9,%xmm0
11779 DB 65,15,92,216 ; subps %xmm8,%xmm3
11780 DB 68,15,40,211 ; movaps %xmm3,%xmm10
11781 DB 68,15,89,212 ; mulps %xmm4,%xmm10
11782 DB 65,15,88,194 ; addps %xmm10,%xmm0
11783 DB 65,15,89,201 ; mulps %xmm9,%xmm1
11784 DB 68,15,40,211 ; movaps %xmm3,%xmm10
11785 DB 68,15,89,213 ; mulps %xmm5,%xmm10
11786 DB 65,15,88,202 ; addps %xmm10,%xmm1
11787 DB 65,15,89,209 ; mulps %xmm9,%xmm2
11788 DB 68,15,40,211 ; movaps %xmm3,%xmm10
11789 DB 68,15,89,214 ; mulps %xmm6,%xmm10
11790 DB 65,15,88,210 ; addps %xmm10,%xmm2
11791 DB 69,15,89,200 ; mulps %xmm8,%xmm9
11792 DB 15,89,223 ; mulps %xmm7,%xmm3
11793 DB 65,15,88,217 ; addps %xmm9,%xmm3
11794 DB 72,173 ; lods %ds:(%rsi),%rax
11795 DB 255,224 ; jmpq *%rax
11796
Mike Klein66b09ab2017-03-31 10:29:40 -040011797PUBLIC _sk_darken_sse41
11798_sk_darken_sse41 LABEL PROC
11799 DB 68,15,40,193 ; movaps %xmm1,%xmm8
11800 DB 68,15,40,200 ; movaps %xmm0,%xmm9
11801 DB 15,88,196 ; addps %xmm4,%xmm0
11802 DB 68,15,89,207 ; mulps %xmm7,%xmm9
11803 DB 15,40,203 ; movaps %xmm3,%xmm1
11804 DB 15,89,204 ; mulps %xmm4,%xmm1
11805 DB 68,15,95,201 ; maxps %xmm1,%xmm9
11806 DB 65,15,92,193 ; subps %xmm9,%xmm0
11807 DB 65,15,40,200 ; movaps %xmm8,%xmm1
11808 DB 15,88,205 ; addps %xmm5,%xmm1
11809 DB 68,15,89,199 ; mulps %xmm7,%xmm8
11810 DB 68,15,40,203 ; movaps %xmm3,%xmm9
11811 DB 68,15,89,205 ; mulps %xmm5,%xmm9
11812 DB 69,15,95,193 ; maxps %xmm9,%xmm8
11813 DB 65,15,92,200 ; subps %xmm8,%xmm1
11814 DB 68,15,40,194 ; movaps %xmm2,%xmm8
11815 DB 68,15,88,198 ; addps %xmm6,%xmm8
11816 DB 15,89,215 ; mulps %xmm7,%xmm2
11817 DB 68,15,40,203 ; movaps %xmm3,%xmm9
11818 DB 68,15,89,206 ; mulps %xmm6,%xmm9
11819 DB 65,15,95,209 ; maxps %xmm9,%xmm2
11820 DB 68,15,92,194 ; subps %xmm2,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040011821 DB 15,40,21,232,67,0,0 ; movaps 0x43e8(%rip),%xmm2 # 49a0 <_sk_callback_sse41+0x19b>
Mike Klein66b09ab2017-03-31 10:29:40 -040011822 DB 15,92,211 ; subps %xmm3,%xmm2
11823 DB 15,89,215 ; mulps %xmm7,%xmm2
11824 DB 15,88,218 ; addps %xmm2,%xmm3
11825 DB 72,173 ; lods %ds:(%rsi),%rax
11826 DB 65,15,40,208 ; movaps %xmm8,%xmm2
11827 DB 255,224 ; jmpq *%rax
11828
11829PUBLIC _sk_lighten_sse41
11830_sk_lighten_sse41 LABEL PROC
11831 DB 68,15,40,193 ; movaps %xmm1,%xmm8
11832 DB 68,15,40,200 ; movaps %xmm0,%xmm9
11833 DB 15,88,196 ; addps %xmm4,%xmm0
11834 DB 68,15,89,207 ; mulps %xmm7,%xmm9
11835 DB 15,40,203 ; movaps %xmm3,%xmm1
11836 DB 15,89,204 ; mulps %xmm4,%xmm1
11837 DB 68,15,93,201 ; minps %xmm1,%xmm9
11838 DB 65,15,92,193 ; subps %xmm9,%xmm0
11839 DB 65,15,40,200 ; movaps %xmm8,%xmm1
11840 DB 15,88,205 ; addps %xmm5,%xmm1
11841 DB 68,15,89,199 ; mulps %xmm7,%xmm8
11842 DB 68,15,40,203 ; movaps %xmm3,%xmm9
11843 DB 68,15,89,205 ; mulps %xmm5,%xmm9
11844 DB 69,15,93,193 ; minps %xmm9,%xmm8
11845 DB 65,15,92,200 ; subps %xmm8,%xmm1
11846 DB 68,15,40,194 ; movaps %xmm2,%xmm8
11847 DB 68,15,88,198 ; addps %xmm6,%xmm8
11848 DB 15,89,215 ; mulps %xmm7,%xmm2
11849 DB 68,15,40,203 ; movaps %xmm3,%xmm9
11850 DB 68,15,89,206 ; mulps %xmm6,%xmm9
11851 DB 65,15,93,209 ; minps %xmm9,%xmm2
11852 DB 68,15,92,194 ; subps %xmm2,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040011853 DB 15,40,21,141,67,0,0 ; movaps 0x438d(%rip),%xmm2 # 49b0 <_sk_callback_sse41+0x1ab>
Mike Klein66b09ab2017-03-31 10:29:40 -040011854 DB 15,92,211 ; subps %xmm3,%xmm2
11855 DB 15,89,215 ; mulps %xmm7,%xmm2
11856 DB 15,88,218 ; addps %xmm2,%xmm3
11857 DB 72,173 ; lods %ds:(%rsi),%rax
11858 DB 65,15,40,208 ; movaps %xmm8,%xmm2
11859 DB 255,224 ; jmpq *%rax
11860
11861PUBLIC _sk_difference_sse41
11862_sk_difference_sse41 LABEL PROC
11863 DB 68,15,40,193 ; movaps %xmm1,%xmm8
11864 DB 68,15,40,200 ; movaps %xmm0,%xmm9
11865 DB 15,88,196 ; addps %xmm4,%xmm0
11866 DB 68,15,89,207 ; mulps %xmm7,%xmm9
11867 DB 15,40,203 ; movaps %xmm3,%xmm1
11868 DB 15,89,204 ; mulps %xmm4,%xmm1
11869 DB 68,15,93,201 ; minps %xmm1,%xmm9
11870 DB 69,15,88,201 ; addps %xmm9,%xmm9
11871 DB 65,15,92,193 ; subps %xmm9,%xmm0
11872 DB 65,15,40,200 ; movaps %xmm8,%xmm1
11873 DB 15,88,205 ; addps %xmm5,%xmm1
11874 DB 68,15,89,199 ; mulps %xmm7,%xmm8
11875 DB 68,15,40,203 ; movaps %xmm3,%xmm9
11876 DB 68,15,89,205 ; mulps %xmm5,%xmm9
11877 DB 69,15,93,193 ; minps %xmm9,%xmm8
11878 DB 69,15,88,192 ; addps %xmm8,%xmm8
11879 DB 65,15,92,200 ; subps %xmm8,%xmm1
11880 DB 68,15,40,194 ; movaps %xmm2,%xmm8
11881 DB 68,15,88,198 ; addps %xmm6,%xmm8
11882 DB 15,89,215 ; mulps %xmm7,%xmm2
11883 DB 68,15,40,203 ; movaps %xmm3,%xmm9
11884 DB 68,15,89,206 ; mulps %xmm6,%xmm9
11885 DB 65,15,93,209 ; minps %xmm9,%xmm2
11886 DB 15,88,210 ; addps %xmm2,%xmm2
11887 DB 68,15,92,194 ; subps %xmm2,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040011888 DB 15,40,21,39,67,0,0 ; movaps 0x4327(%rip),%xmm2 # 49c0 <_sk_callback_sse41+0x1bb>
Mike Klein66b09ab2017-03-31 10:29:40 -040011889 DB 15,92,211 ; subps %xmm3,%xmm2
11890 DB 15,89,215 ; mulps %xmm7,%xmm2
11891 DB 15,88,218 ; addps %xmm2,%xmm3
11892 DB 72,173 ; lods %ds:(%rsi),%rax
11893 DB 65,15,40,208 ; movaps %xmm8,%xmm2
11894 DB 255,224 ; jmpq *%rax
11895
11896PUBLIC _sk_exclusion_sse41
11897_sk_exclusion_sse41 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040011898 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Klein66b09ab2017-03-31 10:29:40 -040011899 DB 15,88,196 ; addps %xmm4,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040011900 DB 68,15,89,196 ; mulps %xmm4,%xmm8
Mike Klein66b09ab2017-03-31 10:29:40 -040011901 DB 69,15,88,192 ; addps %xmm8,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040011902 DB 65,15,92,192 ; subps %xmm8,%xmm0
11903 DB 68,15,40,193 ; movaps %xmm1,%xmm8
11904 DB 68,15,88,197 ; addps %xmm5,%xmm8
11905 DB 15,89,205 ; mulps %xmm5,%xmm1
11906 DB 15,88,201 ; addps %xmm1,%xmm1
11907 DB 68,15,92,193 ; subps %xmm1,%xmm8
11908 DB 68,15,40,202 ; movaps %xmm2,%xmm9
11909 DB 68,15,88,206 ; addps %xmm6,%xmm9
Mike Klein66b09ab2017-03-31 10:29:40 -040011910 DB 15,89,214 ; mulps %xmm6,%xmm2
11911 DB 15,88,210 ; addps %xmm2,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040011912 DB 68,15,92,202 ; subps %xmm2,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040011913 DB 15,40,13,232,66,0,0 ; movaps 0x42e8(%rip),%xmm1 # 49d0 <_sk_callback_sse41+0x1cb>
Mike Kleinfe560a82017-05-01 12:56:35 -040011914 DB 15,92,203 ; subps %xmm3,%xmm1
11915 DB 15,89,207 ; mulps %xmm7,%xmm1
11916 DB 15,88,217 ; addps %xmm1,%xmm3
Mike Klein66b09ab2017-03-31 10:29:40 -040011917 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040011918 DB 65,15,40,200 ; movaps %xmm8,%xmm1
11919 DB 65,15,40,209 ; movaps %xmm9,%xmm2
Mike Klein66b09ab2017-03-31 10:29:40 -040011920 DB 255,224 ; jmpq *%rax
11921
Mike Klein61b84162017-03-31 11:48:14 -040011922PUBLIC _sk_colorburn_sse41
11923_sk_colorburn_sse41 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040011924 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040011925 DB 68,15,40,21,215,66,0,0 ; movaps 0x42d7(%rip),%xmm10 # 49e0 <_sk_callback_sse41+0x1db>
Mike Klein61b84162017-03-31 11:48:14 -040011926 DB 69,15,40,218 ; movaps %xmm10,%xmm11
11927 DB 68,15,92,223 ; subps %xmm7,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -040011928 DB 69,15,40,203 ; movaps %xmm11,%xmm9
11929 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Klein61b84162017-03-31 11:48:14 -040011930 DB 15,40,199 ; movaps %xmm7,%xmm0
11931 DB 15,92,196 ; subps %xmm4,%xmm0
11932 DB 15,89,195 ; mulps %xmm3,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040011933 DB 65,15,94,192 ; divps %xmm8,%xmm0
11934 DB 68,15,40,231 ; movaps %xmm7,%xmm12
11935 DB 68,15,93,224 ; minps %xmm0,%xmm12
Mike Klein61b84162017-03-31 11:48:14 -040011936 DB 68,15,40,239 ; movaps %xmm7,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040011937 DB 69,15,92,236 ; subps %xmm12,%xmm13
11938 DB 68,15,89,235 ; mulps %xmm3,%xmm13
11939 DB 69,15,88,233 ; addps %xmm9,%xmm13
11940 DB 69,15,40,225 ; movaps %xmm9,%xmm12
Mike Klein61b84162017-03-31 11:48:14 -040011941 DB 68,15,88,228 ; addps %xmm4,%xmm12
Mike Kleinfe560a82017-05-01 12:56:35 -040011942 DB 69,15,87,201 ; xorps %xmm9,%xmm9
11943 DB 65,15,40,192 ; movaps %xmm8,%xmm0
11944 DB 65,15,194,193,0 ; cmpeqps %xmm9,%xmm0
11945 DB 68,15,92,211 ; subps %xmm3,%xmm10
11946 DB 102,69,15,56,20,232 ; blendvps %xmm0,%xmm8,%xmm13
11947 DB 69,15,40,194 ; movaps %xmm10,%xmm8
11948 DB 68,15,89,196 ; mulps %xmm4,%xmm8
Mike Klein61b84162017-03-31 11:48:14 -040011949 DB 15,40,196 ; movaps %xmm4,%xmm0
11950 DB 15,194,199,0 ; cmpeqps %xmm7,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040011951 DB 69,15,88,197 ; addps %xmm13,%xmm8
11952 DB 102,69,15,56,20,196 ; blendvps %xmm0,%xmm12,%xmm8
Mike Klein61b84162017-03-31 11:48:14 -040011953 DB 69,15,40,227 ; movaps %xmm11,%xmm12
11954 DB 68,15,89,225 ; mulps %xmm1,%xmm12
11955 DB 15,40,199 ; movaps %xmm7,%xmm0
11956 DB 15,92,197 ; subps %xmm5,%xmm0
11957 DB 15,89,195 ; mulps %xmm3,%xmm0
11958 DB 15,94,193 ; divps %xmm1,%xmm0
11959 DB 68,15,40,239 ; movaps %xmm7,%xmm13
11960 DB 68,15,93,232 ; minps %xmm0,%xmm13
11961 DB 68,15,40,247 ; movaps %xmm7,%xmm14
11962 DB 69,15,92,245 ; subps %xmm13,%xmm14
11963 DB 15,40,193 ; movaps %xmm1,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040011964 DB 65,15,194,193,0 ; cmpeqps %xmm9,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040011965 DB 68,15,89,243 ; mulps %xmm3,%xmm14
11966 DB 69,15,88,244 ; addps %xmm12,%xmm14
11967 DB 102,68,15,56,20,241 ; blendvps %xmm0,%xmm1,%xmm14
Mike Kleinfe560a82017-05-01 12:56:35 -040011968 DB 68,15,88,229 ; addps %xmm5,%xmm12
Mike Klein61b84162017-03-31 11:48:14 -040011969 DB 65,15,40,202 ; movaps %xmm10,%xmm1
11970 DB 15,89,205 ; mulps %xmm5,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040011971 DB 65,15,88,206 ; addps %xmm14,%xmm1
11972 DB 15,40,197 ; movaps %xmm5,%xmm0
11973 DB 15,194,199,0 ; cmpeqps %xmm7,%xmm0
11974 DB 102,65,15,56,20,204 ; blendvps %xmm0,%xmm12,%xmm1
11975 DB 15,40,199 ; movaps %xmm7,%xmm0
11976 DB 15,92,198 ; subps %xmm6,%xmm0
11977 DB 15,89,195 ; mulps %xmm3,%xmm0
11978 DB 15,94,194 ; divps %xmm2,%xmm0
11979 DB 68,15,40,231 ; movaps %xmm7,%xmm12
11980 DB 68,15,93,224 ; minps %xmm0,%xmm12
11981 DB 68,15,40,239 ; movaps %xmm7,%xmm13
11982 DB 69,15,92,236 ; subps %xmm12,%xmm13
11983 DB 68,15,89,218 ; mulps %xmm2,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -040011984 DB 68,15,194,202,0 ; cmpeqps %xmm2,%xmm9
Mike Klein61b84162017-03-31 11:48:14 -040011985 DB 68,15,89,235 ; mulps %xmm3,%xmm13
11986 DB 69,15,88,235 ; addps %xmm11,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040011987 DB 65,15,40,193 ; movaps %xmm9,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040011988 DB 102,68,15,56,20,234 ; blendvps %xmm0,%xmm2,%xmm13
11989 DB 68,15,88,222 ; addps %xmm6,%xmm11
11990 DB 65,15,40,210 ; movaps %xmm10,%xmm2
11991 DB 15,89,214 ; mulps %xmm6,%xmm2
11992 DB 65,15,88,213 ; addps %xmm13,%xmm2
11993 DB 15,40,198 ; movaps %xmm6,%xmm0
11994 DB 15,194,199,0 ; cmpeqps %xmm7,%xmm0
11995 DB 102,65,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm2
11996 DB 68,15,89,215 ; mulps %xmm7,%xmm10
11997 DB 65,15,88,218 ; addps %xmm10,%xmm3
11998 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040011999 DB 65,15,40,192 ; movaps %xmm8,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040012000 DB 255,224 ; jmpq *%rax
12001
12002PUBLIC _sk_colordodge_sse41
12003_sk_colordodge_sse41 LABEL PROC
12004 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040012005 DB 68,15,40,21,181,65,0,0 ; movaps 0x41b5(%rip),%xmm10 # 49f0 <_sk_callback_sse41+0x1eb>
Mike Klein61b84162017-03-31 11:48:14 -040012006 DB 69,15,40,218 ; movaps %xmm10,%xmm11
12007 DB 68,15,92,223 ; subps %xmm7,%xmm11
12008 DB 69,15,40,227 ; movaps %xmm11,%xmm12
12009 DB 69,15,89,224 ; mulps %xmm8,%xmm12
12010 DB 68,15,40,203 ; movaps %xmm3,%xmm9
12011 DB 68,15,89,204 ; mulps %xmm4,%xmm9
12012 DB 15,40,195 ; movaps %xmm3,%xmm0
12013 DB 65,15,92,192 ; subps %xmm8,%xmm0
12014 DB 68,15,94,200 ; divps %xmm0,%xmm9
12015 DB 68,15,40,239 ; movaps %xmm7,%xmm13
12016 DB 68,15,40,247 ; movaps %xmm7,%xmm14
12017 DB 69,15,93,241 ; minps %xmm9,%xmm14
12018 DB 65,15,40,192 ; movaps %xmm8,%xmm0
12019 DB 15,194,195,0 ; cmpeqps %xmm3,%xmm0
12020 DB 68,15,89,243 ; mulps %xmm3,%xmm14
12021 DB 69,15,88,244 ; addps %xmm12,%xmm14
12022 DB 102,69,15,56,20,240 ; blendvps %xmm0,%xmm8,%xmm14
12023 DB 69,15,87,201 ; xorps %xmm9,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040012024 DB 68,15,88,228 ; addps %xmm4,%xmm12
Mike Klein61b84162017-03-31 11:48:14 -040012025 DB 68,15,92,211 ; subps %xmm3,%xmm10
12026 DB 69,15,40,194 ; movaps %xmm10,%xmm8
12027 DB 68,15,89,196 ; mulps %xmm4,%xmm8
Mike Klein61b84162017-03-31 11:48:14 -040012028 DB 69,15,88,198 ; addps %xmm14,%xmm8
12029 DB 15,40,196 ; movaps %xmm4,%xmm0
12030 DB 65,15,194,193,0 ; cmpeqps %xmm9,%xmm0
12031 DB 102,69,15,56,20,196 ; blendvps %xmm0,%xmm12,%xmm8
12032 DB 68,15,40,227 ; movaps %xmm3,%xmm12
12033 DB 68,15,89,229 ; mulps %xmm5,%xmm12
12034 DB 15,40,195 ; movaps %xmm3,%xmm0
12035 DB 15,92,193 ; subps %xmm1,%xmm0
12036 DB 68,15,94,224 ; divps %xmm0,%xmm12
12037 DB 69,15,40,243 ; movaps %xmm11,%xmm14
12038 DB 68,15,89,241 ; mulps %xmm1,%xmm14
12039 DB 69,15,93,236 ; minps %xmm12,%xmm13
12040 DB 15,40,193 ; movaps %xmm1,%xmm0
12041 DB 15,194,195,0 ; cmpeqps %xmm3,%xmm0
12042 DB 68,15,89,235 ; mulps %xmm3,%xmm13
12043 DB 69,15,88,238 ; addps %xmm14,%xmm13
12044 DB 102,68,15,56,20,233 ; blendvps %xmm0,%xmm1,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040012045 DB 68,15,88,245 ; addps %xmm5,%xmm14
Mike Klein61b84162017-03-31 11:48:14 -040012046 DB 65,15,40,202 ; movaps %xmm10,%xmm1
12047 DB 15,89,205 ; mulps %xmm5,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040012048 DB 65,15,88,205 ; addps %xmm13,%xmm1
12049 DB 15,40,197 ; movaps %xmm5,%xmm0
12050 DB 65,15,194,193,0 ; cmpeqps %xmm9,%xmm0
12051 DB 102,65,15,56,20,206 ; blendvps %xmm0,%xmm14,%xmm1
12052 DB 68,15,40,227 ; movaps %xmm3,%xmm12
12053 DB 68,15,89,230 ; mulps %xmm6,%xmm12
12054 DB 15,40,195 ; movaps %xmm3,%xmm0
12055 DB 15,92,194 ; subps %xmm2,%xmm0
12056 DB 68,15,94,224 ; divps %xmm0,%xmm12
12057 DB 68,15,40,239 ; movaps %xmm7,%xmm13
12058 DB 68,15,89,218 ; mulps %xmm2,%xmm11
12059 DB 69,15,93,236 ; minps %xmm12,%xmm13
12060 DB 15,40,194 ; movaps %xmm2,%xmm0
12061 DB 15,194,195,0 ; cmpeqps %xmm3,%xmm0
12062 DB 68,15,89,235 ; mulps %xmm3,%xmm13
12063 DB 69,15,88,235 ; addps %xmm11,%xmm13
12064 DB 102,68,15,56,20,234 ; blendvps %xmm0,%xmm2,%xmm13
12065 DB 65,15,40,210 ; movaps %xmm10,%xmm2
12066 DB 15,89,214 ; mulps %xmm6,%xmm2
12067 DB 65,15,88,213 ; addps %xmm13,%xmm2
12068 DB 68,15,194,206,0 ; cmpeqps %xmm6,%xmm9
12069 DB 68,15,88,222 ; addps %xmm6,%xmm11
12070 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12071 DB 102,65,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm2
12072 DB 68,15,89,215 ; mulps %xmm7,%xmm10
12073 DB 65,15,88,218 ; addps %xmm10,%xmm3
12074 DB 72,173 ; lods %ds:(%rsi),%rax
12075 DB 65,15,40,192 ; movaps %xmm8,%xmm0
12076 DB 255,224 ; jmpq *%rax
12077
12078PUBLIC _sk_hardlight_sse41
12079_sk_hardlight_sse41 LABEL PROC
12080 DB 72,131,236,24 ; sub $0x18,%rsp
12081 DB 15,41,52,36 ; movaps %xmm6,(%rsp)
12082 DB 68,15,40,229 ; movaps %xmm5,%xmm12
12083 DB 15,40,244 ; movaps %xmm4,%xmm6
12084 DB 15,40,227 ; movaps %xmm3,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040012085 DB 68,15,40,200 ; movaps %xmm0,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040012086 DB 68,15,40,21,139,64,0,0 ; movaps 0x408b(%rip),%xmm10 # 4a00 <_sk_callback_sse41+0x1fb>
Mike Kleinfe560a82017-05-01 12:56:35 -040012087 DB 65,15,40,234 ; movaps %xmm10,%xmm5
12088 DB 15,92,239 ; subps %xmm7,%xmm5
12089 DB 15,40,197 ; movaps %xmm5,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040012090 DB 65,15,89,193 ; mulps %xmm9,%xmm0
12091 DB 68,15,92,212 ; subps %xmm4,%xmm10
12092 DB 69,15,40,194 ; movaps %xmm10,%xmm8
12093 DB 68,15,89,198 ; mulps %xmm6,%xmm8
12094 DB 68,15,88,192 ; addps %xmm0,%xmm8
12095 DB 68,15,40,252 ; movaps %xmm4,%xmm15
12096 DB 69,15,92,249 ; subps %xmm9,%xmm15
12097 DB 15,89,223 ; mulps %xmm7,%xmm3
12098 DB 68,15,40,239 ; movaps %xmm7,%xmm13
12099 DB 68,15,40,247 ; movaps %xmm7,%xmm14
12100 DB 15,40,199 ; movaps %xmm7,%xmm0
12101 DB 15,92,198 ; subps %xmm6,%xmm0
12102 DB 65,15,89,199 ; mulps %xmm15,%xmm0
12103 DB 15,88,192 ; addps %xmm0,%xmm0
12104 DB 68,15,40,251 ; movaps %xmm3,%xmm15
12105 DB 68,15,92,248 ; subps %xmm0,%xmm15
12106 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12107 DB 15,88,192 ; addps %xmm0,%xmm0
12108 DB 15,194,196,2 ; cmpleps %xmm4,%xmm0
12109 DB 68,15,89,206 ; mulps %xmm6,%xmm9
12110 DB 69,15,88,201 ; addps %xmm9,%xmm9
12111 DB 102,69,15,56,20,249 ; blendvps %xmm0,%xmm9,%xmm15
Mike Kleinfe560a82017-05-01 12:56:35 -040012112 DB 68,15,40,221 ; movaps %xmm5,%xmm11
Mike Klein61b84162017-03-31 11:48:14 -040012113 DB 68,15,89,217 ; mulps %xmm1,%xmm11
12114 DB 15,40,196 ; movaps %xmm4,%xmm0
12115 DB 15,92,193 ; subps %xmm1,%xmm0
12116 DB 69,15,40,204 ; movaps %xmm12,%xmm9
12117 DB 69,15,92,233 ; subps %xmm9,%xmm13
12118 DB 68,15,89,232 ; mulps %xmm0,%xmm13
12119 DB 69,15,88,237 ; addps %xmm13,%xmm13
12120 DB 68,15,40,227 ; movaps %xmm3,%xmm12
12121 DB 69,15,92,229 ; subps %xmm13,%xmm12
12122 DB 15,40,193 ; movaps %xmm1,%xmm0
12123 DB 15,88,192 ; addps %xmm0,%xmm0
12124 DB 15,194,196,2 ; cmpleps %xmm4,%xmm0
12125 DB 65,15,89,201 ; mulps %xmm9,%xmm1
12126 DB 69,15,40,233 ; movaps %xmm9,%xmm13
12127 DB 15,88,201 ; addps %xmm1,%xmm1
12128 DB 102,68,15,56,20,225 ; blendvps %xmm0,%xmm1,%xmm12
12129 DB 65,15,40,202 ; movaps %xmm10,%xmm1
12130 DB 69,15,40,202 ; movaps %xmm10,%xmm9
12131 DB 68,15,89,215 ; mulps %xmm7,%xmm10
12132 DB 69,15,88,199 ; addps %xmm15,%xmm8
12133 DB 65,15,89,205 ; mulps %xmm13,%xmm1
12134 DB 65,15,88,203 ; addps %xmm11,%xmm1
12135 DB 65,15,88,204 ; addps %xmm12,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040012136 DB 15,89,234 ; mulps %xmm2,%xmm5
Mike Klein61b84162017-03-31 11:48:14 -040012137 DB 68,15,40,28,36 ; movaps (%rsp),%xmm11
12138 DB 69,15,89,203 ; mulps %xmm11,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040012139 DB 68,15,88,205 ; addps %xmm5,%xmm9
12140 DB 15,40,194 ; movaps %xmm2,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040012141 DB 15,88,192 ; addps %xmm0,%xmm0
12142 DB 15,194,196,2 ; cmpleps %xmm4,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040012143 DB 15,40,236 ; movaps %xmm4,%xmm5
12144 DB 15,92,234 ; subps %xmm2,%xmm5
12145 DB 65,15,89,211 ; mulps %xmm11,%xmm2
12146 DB 15,88,210 ; addps %xmm2,%xmm2
Mike Klein61b84162017-03-31 11:48:14 -040012147 DB 69,15,92,243 ; subps %xmm11,%xmm14
Mike Kleinfe560a82017-05-01 12:56:35 -040012148 DB 68,15,89,245 ; mulps %xmm5,%xmm14
Mike Klein61b84162017-03-31 11:48:14 -040012149 DB 69,15,88,246 ; addps %xmm14,%xmm14
12150 DB 65,15,92,222 ; subps %xmm14,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -040012151 DB 102,15,56,20,218 ; blendvps %xmm0,%xmm2,%xmm3
Mike Klein61b84162017-03-31 11:48:14 -040012152 DB 68,15,88,203 ; addps %xmm3,%xmm9
12153 DB 65,15,88,226 ; addps %xmm10,%xmm4
12154 DB 72,173 ; lods %ds:(%rsi),%rax
12155 DB 65,15,40,192 ; movaps %xmm8,%xmm0
12156 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12157 DB 15,40,220 ; movaps %xmm4,%xmm3
12158 DB 15,40,230 ; movaps %xmm6,%xmm4
12159 DB 65,15,40,237 ; movaps %xmm13,%xmm5
12160 DB 65,15,40,243 ; movaps %xmm11,%xmm6
12161 DB 72,131,196,24 ; add $0x18,%rsp
12162 DB 255,224 ; jmpq *%rax
12163
12164PUBLIC _sk_overlay_sse41
12165_sk_overlay_sse41 LABEL PROC
12166 DB 68,15,40,201 ; movaps %xmm1,%xmm9
12167 DB 68,15,40,240 ; movaps %xmm0,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040012168 DB 68,15,40,21,109,63,0,0 ; movaps 0x3f6d(%rip),%xmm10 # 4a10 <_sk_callback_sse41+0x20b>
Mike Klein61b84162017-03-31 11:48:14 -040012169 DB 69,15,40,218 ; movaps %xmm10,%xmm11
12170 DB 68,15,92,223 ; subps %xmm7,%xmm11
12171 DB 65,15,40,195 ; movaps %xmm11,%xmm0
12172 DB 65,15,89,198 ; mulps %xmm14,%xmm0
12173 DB 68,15,92,211 ; subps %xmm3,%xmm10
12174 DB 69,15,40,194 ; movaps %xmm10,%xmm8
12175 DB 68,15,89,196 ; mulps %xmm4,%xmm8
12176 DB 68,15,88,192 ; addps %xmm0,%xmm8
12177 DB 68,15,40,235 ; movaps %xmm3,%xmm13
12178 DB 69,15,92,238 ; subps %xmm14,%xmm13
12179 DB 68,15,89,244 ; mulps %xmm4,%xmm14
12180 DB 15,40,207 ; movaps %xmm7,%xmm1
12181 DB 15,92,204 ; subps %xmm4,%xmm1
12182 DB 15,40,196 ; movaps %xmm4,%xmm0
12183 DB 15,88,192 ; addps %xmm0,%xmm0
12184 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0
12185 DB 69,15,88,246 ; addps %xmm14,%xmm14
12186 DB 68,15,40,227 ; movaps %xmm3,%xmm12
12187 DB 68,15,89,231 ; mulps %xmm7,%xmm12
12188 DB 65,15,89,205 ; mulps %xmm13,%xmm1
12189 DB 15,88,201 ; addps %xmm1,%xmm1
12190 DB 69,15,40,236 ; movaps %xmm12,%xmm13
12191 DB 68,15,92,233 ; subps %xmm1,%xmm13
12192 DB 102,69,15,56,20,238 ; blendvps %xmm0,%xmm14,%xmm13
12193 DB 69,15,88,197 ; addps %xmm13,%xmm8
12194 DB 65,15,40,195 ; movaps %xmm11,%xmm0
12195 DB 65,15,89,193 ; mulps %xmm9,%xmm0
12196 DB 65,15,40,202 ; movaps %xmm10,%xmm1
12197 DB 15,89,205 ; mulps %xmm5,%xmm1
12198 DB 15,88,200 ; addps %xmm0,%xmm1
12199 DB 68,15,40,235 ; movaps %xmm3,%xmm13
12200 DB 69,15,92,233 ; subps %xmm9,%xmm13
12201 DB 68,15,89,205 ; mulps %xmm5,%xmm9
12202 DB 68,15,40,247 ; movaps %xmm7,%xmm14
12203 DB 68,15,92,245 ; subps %xmm5,%xmm14
12204 DB 15,40,197 ; movaps %xmm5,%xmm0
12205 DB 15,88,192 ; addps %xmm0,%xmm0
12206 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0
12207 DB 69,15,88,201 ; addps %xmm9,%xmm9
12208 DB 69,15,89,245 ; mulps %xmm13,%xmm14
12209 DB 69,15,88,246 ; addps %xmm14,%xmm14
12210 DB 69,15,40,236 ; movaps %xmm12,%xmm13
12211 DB 69,15,92,238 ; subps %xmm14,%xmm13
12212 DB 102,69,15,56,20,233 ; blendvps %xmm0,%xmm9,%xmm13
12213 DB 65,15,88,205 ; addps %xmm13,%xmm1
12214 DB 68,15,89,218 ; mulps %xmm2,%xmm11
12215 DB 69,15,40,202 ; movaps %xmm10,%xmm9
12216 DB 68,15,89,206 ; mulps %xmm6,%xmm9
12217 DB 69,15,88,203 ; addps %xmm11,%xmm9
12218 DB 68,15,40,219 ; movaps %xmm3,%xmm11
12219 DB 68,15,92,218 ; subps %xmm2,%xmm11
12220 DB 15,89,214 ; mulps %xmm6,%xmm2
12221 DB 68,15,40,239 ; movaps %xmm7,%xmm13
12222 DB 68,15,92,238 ; subps %xmm6,%xmm13
12223 DB 15,40,198 ; movaps %xmm6,%xmm0
12224 DB 15,88,192 ; addps %xmm0,%xmm0
12225 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0
12226 DB 15,88,210 ; addps %xmm2,%xmm2
12227 DB 69,15,89,235 ; mulps %xmm11,%xmm13
12228 DB 69,15,88,237 ; addps %xmm13,%xmm13
12229 DB 69,15,92,229 ; subps %xmm13,%xmm12
12230 DB 102,68,15,56,20,226 ; blendvps %xmm0,%xmm2,%xmm12
12231 DB 69,15,88,204 ; addps %xmm12,%xmm9
12232 DB 68,15,89,215 ; mulps %xmm7,%xmm10
12233 DB 65,15,88,218 ; addps %xmm10,%xmm3
12234 DB 72,173 ; lods %ds:(%rsi),%rax
12235 DB 65,15,40,192 ; movaps %xmm8,%xmm0
12236 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12237 DB 255,224 ; jmpq *%rax
12238
12239PUBLIC _sk_softlight_sse41
12240_sk_softlight_sse41 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040012241 DB 72,131,236,72 ; sub $0x48,%rsp
12242 DB 15,41,116,36,32 ; movaps %xmm6,0x20(%rsp)
Mike Klein61b84162017-03-31 11:48:14 -040012243 DB 15,40,244 ; movaps %xmm4,%xmm6
Mike Kleinfe560a82017-05-01 12:56:35 -040012244 DB 15,41,84,36,48 ; movaps %xmm2,0x30(%rsp)
12245 DB 15,41,76,36,16 ; movaps %xmm1,0x10(%rsp)
Mike Klein61b84162017-03-31 11:48:14 -040012246 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040012247 DB 69,15,87,201 ; xorps %xmm9,%xmm9
12248 DB 68,15,194,207,1 ; cmpltps %xmm7,%xmm9
Mike Klein61b84162017-03-31 11:48:14 -040012249 DB 15,40,198 ; movaps %xmm6,%xmm0
12250 DB 15,94,199 ; divps %xmm7,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040012251 DB 65,15,84,193 ; andps %xmm9,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040012252 DB 15,40,13,64,62,0,0 ; movaps 0x3e40(%rip),%xmm1 # 4a20 <_sk_callback_sse41+0x21b>
Mike Klein61b84162017-03-31 11:48:14 -040012253 DB 68,15,40,209 ; movaps %xmm1,%xmm10
12254 DB 68,15,92,208 ; subps %xmm0,%xmm10
12255 DB 68,15,40,240 ; movaps %xmm0,%xmm14
12256 DB 68,15,40,248 ; movaps %xmm0,%xmm15
12257 DB 15,82,208 ; rsqrtps %xmm0,%xmm2
12258 DB 68,15,83,218 ; rcpps %xmm2,%xmm11
12259 DB 68,15,92,216 ; subps %xmm0,%xmm11
12260 DB 15,88,192 ; addps %xmm0,%xmm0
12261 DB 15,88,192 ; addps %xmm0,%xmm0
12262 DB 15,40,208 ; movaps %xmm0,%xmm2
12263 DB 15,89,210 ; mulps %xmm2,%xmm2
12264 DB 15,88,208 ; addps %xmm0,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040012265 DB 68,15,40,45,30,62,0,0 ; movaps 0x3e1e(%rip),%xmm13 # 4a30 <_sk_callback_sse41+0x22b>
Mike Kleinfe560a82017-05-01 12:56:35 -040012266 DB 69,15,88,245 ; addps %xmm13,%xmm14
Mike Klein61b84162017-03-31 11:48:14 -040012267 DB 68,15,89,242 ; mulps %xmm2,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040012268 DB 68,15,40,37,30,62,0,0 ; movaps 0x3e1e(%rip),%xmm12 # 4a40 <_sk_callback_sse41+0x23b>
Mike Kleinfe560a82017-05-01 12:56:35 -040012269 DB 69,15,89,252 ; mulps %xmm12,%xmm15
Mike Klein61b84162017-03-31 11:48:14 -040012270 DB 69,15,88,254 ; addps %xmm14,%xmm15
12271 DB 15,40,198 ; movaps %xmm6,%xmm0
12272 DB 15,88,192 ; addps %xmm0,%xmm0
12273 DB 15,88,192 ; addps %xmm0,%xmm0
12274 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0
12275 DB 102,69,15,56,20,223 ; blendvps %xmm0,%xmm15,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -040012276 DB 65,15,40,192 ; movaps %xmm8,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040012277 DB 15,88,192 ; addps %xmm0,%xmm0
12278 DB 15,40,208 ; movaps %xmm0,%xmm2
12279 DB 15,92,211 ; subps %xmm3,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040012280 DB 68,15,89,210 ; mulps %xmm2,%xmm10
12281 DB 68,15,88,211 ; addps %xmm3,%xmm10
12282 DB 68,15,89,214 ; mulps %xmm6,%xmm10
Mike Klein61b84162017-03-31 11:48:14 -040012283 DB 15,89,215 ; mulps %xmm7,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040012284 DB 68,15,89,218 ; mulps %xmm2,%xmm11
Mike Klein61b84162017-03-31 11:48:14 -040012285 DB 15,40,211 ; movaps %xmm3,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040012286 DB 15,89,214 ; mulps %xmm6,%xmm2
12287 DB 68,15,88,218 ; addps %xmm2,%xmm11
Mike Klein61b84162017-03-31 11:48:14 -040012288 DB 15,194,195,2 ; cmpleps %xmm3,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040012289 DB 102,69,15,56,20,218 ; blendvps %xmm0,%xmm10,%xmm11
12290 DB 68,15,40,213 ; movaps %xmm5,%xmm10
12291 DB 68,15,94,215 ; divps %xmm7,%xmm10
12292 DB 69,15,84,209 ; andps %xmm9,%xmm10
12293 DB 65,15,40,194 ; movaps %xmm10,%xmm0
12294 DB 15,88,192 ; addps %xmm0,%xmm0
12295 DB 15,88,192 ; addps %xmm0,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040012296 DB 15,40,208 ; movaps %xmm0,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040012297 DB 15,89,210 ; mulps %xmm2,%xmm2
12298 DB 15,88,208 ; addps %xmm0,%xmm2
12299 DB 65,15,40,194 ; movaps %xmm10,%xmm0
12300 DB 65,15,88,197 ; addps %xmm13,%xmm0
12301 DB 15,89,194 ; mulps %xmm2,%xmm0
12302 DB 65,15,40,210 ; movaps %xmm10,%xmm2
12303 DB 65,15,89,212 ; mulps %xmm12,%xmm2
12304 DB 15,88,208 ; addps %xmm0,%xmm2
12305 DB 65,15,82,194 ; rsqrtps %xmm10,%xmm0
12306 DB 68,15,83,240 ; rcpps %xmm0,%xmm14
12307 DB 69,15,92,242 ; subps %xmm10,%xmm14
Mike Klein61b84162017-03-31 11:48:14 -040012308 DB 15,40,197 ; movaps %xmm5,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040012309 DB 15,40,229 ; movaps %xmm5,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040012310 DB 15,88,192 ; addps %xmm0,%xmm0
12311 DB 15,88,192 ; addps %xmm0,%xmm0
12312 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040012313 DB 102,68,15,56,20,242 ; blendvps %xmm0,%xmm2,%xmm14
12314 DB 68,15,40,249 ; movaps %xmm1,%xmm15
12315 DB 69,15,92,250 ; subps %xmm10,%xmm15
12316 DB 15,40,108,36,16 ; movaps 0x10(%rsp),%xmm5
12317 DB 15,40,197 ; movaps %xmm5,%xmm0
12318 DB 15,88,192 ; addps %xmm0,%xmm0
12319 DB 15,40,208 ; movaps %xmm0,%xmm2
12320 DB 15,92,211 ; subps %xmm3,%xmm2
12321 DB 68,15,89,250 ; mulps %xmm2,%xmm15
12322 DB 15,89,215 ; mulps %xmm7,%xmm2
12323 DB 68,15,89,242 ; mulps %xmm2,%xmm14
12324 DB 15,40,211 ; movaps %xmm3,%xmm2
12325 DB 15,41,36,36 ; movaps %xmm4,(%rsp)
12326 DB 15,89,212 ; mulps %xmm4,%xmm2
12327 DB 68,15,88,242 ; addps %xmm2,%xmm14
12328 DB 68,15,88,251 ; addps %xmm3,%xmm15
12329 DB 68,15,89,252 ; mulps %xmm4,%xmm15
12330 DB 15,194,195,2 ; cmpleps %xmm3,%xmm0
12331 DB 102,69,15,56,20,247 ; blendvps %xmm0,%xmm15,%xmm14
12332 DB 68,15,40,249 ; movaps %xmm1,%xmm15
12333 DB 15,40,100,36,32 ; movaps 0x20(%rsp),%xmm4
12334 DB 15,40,196 ; movaps %xmm4,%xmm0
12335 DB 15,94,199 ; divps %xmm7,%xmm0
12336 DB 65,15,84,193 ; andps %xmm9,%xmm0
12337 DB 68,15,40,209 ; movaps %xmm1,%xmm10
12338 DB 15,92,200 ; subps %xmm0,%xmm1
12339 DB 68,15,88,232 ; addps %xmm0,%xmm13
12340 DB 68,15,89,224 ; mulps %xmm0,%xmm12
12341 DB 15,82,208 ; rsqrtps %xmm0,%xmm2
12342 DB 68,15,83,202 ; rcpps %xmm2,%xmm9
12343 DB 68,15,92,200 ; subps %xmm0,%xmm9
12344 DB 15,88,192 ; addps %xmm0,%xmm0
12345 DB 15,88,192 ; addps %xmm0,%xmm0
12346 DB 15,40,208 ; movaps %xmm0,%xmm2
12347 DB 15,89,210 ; mulps %xmm2,%xmm2
12348 DB 15,88,208 ; addps %xmm0,%xmm2
12349 DB 68,15,89,234 ; mulps %xmm2,%xmm13
12350 DB 69,15,88,229 ; addps %xmm13,%xmm12
12351 DB 15,40,196 ; movaps %xmm4,%xmm0
12352 DB 15,88,192 ; addps %xmm0,%xmm0
12353 DB 15,88,192 ; addps %xmm0,%xmm0
12354 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0
12355 DB 102,69,15,56,20,204 ; blendvps %xmm0,%xmm12,%xmm9
12356 DB 68,15,40,100,36,48 ; movaps 0x30(%rsp),%xmm12
12357 DB 65,15,40,196 ; movaps %xmm12,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040012358 DB 15,88,192 ; addps %xmm0,%xmm0
12359 DB 15,40,208 ; movaps %xmm0,%xmm2
12360 DB 15,92,211 ; subps %xmm3,%xmm2
12361 DB 15,89,202 ; mulps %xmm2,%xmm1
12362 DB 15,89,215 ; mulps %xmm7,%xmm2
12363 DB 68,15,89,202 ; mulps %xmm2,%xmm9
12364 DB 15,40,211 ; movaps %xmm3,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040012365 DB 15,89,212 ; mulps %xmm4,%xmm2
Mike Klein61b84162017-03-31 11:48:14 -040012366 DB 68,15,88,202 ; addps %xmm2,%xmm9
12367 DB 15,88,203 ; addps %xmm3,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040012368 DB 15,89,204 ; mulps %xmm4,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040012369 DB 15,194,195,2 ; cmpleps %xmm3,%xmm0
12370 DB 102,68,15,56,20,201 ; blendvps %xmm0,%xmm1,%xmm9
12371 DB 68,15,92,255 ; subps %xmm7,%xmm15
12372 DB 69,15,89,199 ; mulps %xmm15,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040012373 DB 15,40,205 ; movaps %xmm5,%xmm1
12374 DB 65,15,89,207 ; mulps %xmm15,%xmm1
12375 DB 69,15,89,252 ; mulps %xmm12,%xmm15
Mike Klein61b84162017-03-31 11:48:14 -040012376 DB 68,15,92,211 ; subps %xmm3,%xmm10
12377 DB 65,15,40,194 ; movaps %xmm10,%xmm0
12378 DB 15,89,198 ; mulps %xmm6,%xmm0
12379 DB 68,15,88,192 ; addps %xmm0,%xmm8
12380 DB 69,15,88,195 ; addps %xmm11,%xmm8
12381 DB 65,15,40,194 ; movaps %xmm10,%xmm0
12382 DB 15,40,44,36 ; movaps (%rsp),%xmm5
12383 DB 15,89,197 ; mulps %xmm5,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040012384 DB 15,88,200 ; addps %xmm0,%xmm1
12385 DB 65,15,88,206 ; addps %xmm14,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040012386 DB 65,15,40,194 ; movaps %xmm10,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040012387 DB 15,89,196 ; mulps %xmm4,%xmm0
12388 DB 15,40,212 ; movaps %xmm4,%xmm2
Mike Klein61b84162017-03-31 11:48:14 -040012389 DB 65,15,88,199 ; addps %xmm15,%xmm0
12390 DB 68,15,88,200 ; addps %xmm0,%xmm9
12391 DB 68,15,89,215 ; mulps %xmm7,%xmm10
12392 DB 65,15,88,218 ; addps %xmm10,%xmm3
12393 DB 72,173 ; lods %ds:(%rsi),%rax
12394 DB 15,40,230 ; movaps %xmm6,%xmm4
12395 DB 15,40,242 ; movaps %xmm2,%xmm6
12396 DB 65,15,40,192 ; movaps %xmm8,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040012397 DB 65,15,40,209 ; movaps %xmm9,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040012398 DB 72,131,196,72 ; add $0x48,%rsp
Mike Klein61b84162017-03-31 11:48:14 -040012399 DB 255,224 ; jmpq *%rax
12400
Mike Kleinbb338332017-05-04 12:42:52 -040012401PUBLIC _sk_hue_sse41
12402_sk_hue_sse41 LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -040012403 DB 72,131,236,104 ; sub $0x68,%rsp
12404 DB 15,41,60,36 ; movaps %xmm7,(%rsp)
12405 DB 68,15,40,246 ; movaps %xmm6,%xmm14
12406 DB 15,40,244 ; movaps %xmm4,%xmm6
12407 DB 68,15,40,195 ; movaps %xmm3,%xmm8
12408 DB 15,41,84,36,80 ; movaps %xmm2,0x50(%rsp)
12409 DB 15,41,76,36,64 ; movaps %xmm1,0x40(%rsp)
12410 DB 68,15,40,208 ; movaps %xmm0,%xmm10
12411 DB 68,15,41,84,36,48 ; movaps %xmm10,0x30(%rsp)
12412 DB 69,15,89,208 ; mulps %xmm8,%xmm10
12413 DB 65,15,89,200 ; mulps %xmm8,%xmm1
12414 DB 68,15,40,234 ; movaps %xmm2,%xmm13
12415 DB 69,15,89,232 ; mulps %xmm8,%xmm13
12416 DB 68,15,40,205 ; movaps %xmm5,%xmm9
12417 DB 68,15,40,221 ; movaps %xmm5,%xmm11
12418 DB 15,41,108,36,32 ; movaps %xmm5,0x20(%rsp)
12419 DB 69,15,95,222 ; maxps %xmm14,%xmm11
12420 DB 15,40,254 ; movaps %xmm6,%xmm7
12421 DB 68,15,40,230 ; movaps %xmm6,%xmm12
12422 DB 15,40,214 ; movaps %xmm6,%xmm2
12423 DB 65,15,95,211 ; maxps %xmm11,%xmm2
12424 DB 65,15,40,230 ; movaps %xmm14,%xmm4
12425 DB 15,41,100,36,16 ; movaps %xmm4,0x10(%rsp)
12426 DB 68,15,93,204 ; minps %xmm4,%xmm9
12427 DB 65,15,93,249 ; minps %xmm9,%xmm7
12428 DB 15,92,215 ; subps %xmm7,%xmm2
12429 DB 15,40,249 ; movaps %xmm1,%xmm7
12430 DB 65,15,93,253 ; minps %xmm13,%xmm7
12431 DB 65,15,40,218 ; movaps %xmm10,%xmm3
12432 DB 15,93,223 ; minps %xmm7,%xmm3
12433 DB 15,40,249 ; movaps %xmm1,%xmm7
12434 DB 65,15,95,253 ; maxps %xmm13,%xmm7
Mike Kleinbb338332017-05-04 12:42:52 -040012435 DB 65,15,40,194 ; movaps %xmm10,%xmm0
Mike Klein08aa88d2017-05-12 12:59:24 -040012436 DB 15,95,199 ; maxps %xmm7,%xmm0
12437 DB 15,40,253 ; movaps %xmm5,%xmm7
Mike Kleinbb338332017-05-04 12:42:52 -040012438 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Klein08aa88d2017-05-12 12:59:24 -040012439 DB 15,92,195 ; subps %xmm3,%xmm0
12440 DB 68,15,92,211 ; subps %xmm3,%xmm10
12441 DB 15,92,203 ; subps %xmm3,%xmm1
12442 DB 68,15,92,235 ; subps %xmm3,%xmm13
12443 DB 15,87,219 ; xorps %xmm3,%xmm3
12444 DB 68,15,89,210 ; mulps %xmm2,%xmm10
12445 DB 68,15,94,208 ; divps %xmm0,%xmm10
12446 DB 15,89,202 ; mulps %xmm2,%xmm1
12447 DB 15,94,200 ; divps %xmm0,%xmm1
12448 DB 68,15,89,234 ; mulps %xmm2,%xmm13
12449 DB 68,15,94,232 ; divps %xmm0,%xmm13
12450 DB 15,194,195,4 ; cmpneqps %xmm3,%xmm0
12451 DB 68,15,84,208 ; andps %xmm0,%xmm10
12452 DB 15,84,200 ; andps %xmm0,%xmm1
12453 DB 68,15,84,232 ; andps %xmm0,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040012454 DB 15,40,5,132,59,0,0 ; movaps 0x3b84(%rip),%xmm0 # 4a50 <_sk_callback_sse41+0x24b>
Mike Klein08aa88d2017-05-12 12:59:24 -040012455 DB 68,15,89,224 ; mulps %xmm0,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040012456 DB 15,40,21,137,59,0,0 ; movaps 0x3b89(%rip),%xmm2 # 4a60 <_sk_callback_sse41+0x25b>
Mike Klein08aa88d2017-05-12 12:59:24 -040012457 DB 15,89,250 ; mulps %xmm2,%xmm7
12458 DB 65,15,88,252 ; addps %xmm12,%xmm7
Mike Klein8ca33562017-05-23 08:07:43 -040012459 DB 68,15,40,53,138,59,0,0 ; movaps 0x3b8a(%rip),%xmm14 # 4a70 <_sk_callback_sse41+0x26b>
Mike Klein08aa88d2017-05-12 12:59:24 -040012460 DB 68,15,40,252 ; movaps %xmm4,%xmm15
Mike Kleinbb338332017-05-04 12:42:52 -040012461 DB 69,15,89,254 ; mulps %xmm14,%xmm15
Mike Klein08aa88d2017-05-12 12:59:24 -040012462 DB 68,15,88,255 ; addps %xmm7,%xmm15
12463 DB 65,15,40,218 ; movaps %xmm10,%xmm3
Mike Kleinbb338332017-05-04 12:42:52 -040012464 DB 15,89,216 ; mulps %xmm0,%xmm3
Mike Klein08aa88d2017-05-12 12:59:24 -040012465 DB 15,40,249 ; movaps %xmm1,%xmm7
12466 DB 15,89,250 ; mulps %xmm2,%xmm7
12467 DB 15,88,251 ; addps %xmm3,%xmm7
12468 DB 65,15,40,221 ; movaps %xmm13,%xmm3
12469 DB 65,15,89,222 ; mulps %xmm14,%xmm3
12470 DB 15,88,223 ; addps %xmm7,%xmm3
12471 DB 69,15,89,248 ; mulps %xmm8,%xmm15
12472 DB 68,15,92,251 ; subps %xmm3,%xmm15
12473 DB 69,15,88,215 ; addps %xmm15,%xmm10
12474 DB 65,15,88,207 ; addps %xmm15,%xmm1
12475 DB 69,15,88,253 ; addps %xmm13,%xmm15
12476 DB 15,40,217 ; movaps %xmm1,%xmm3
12477 DB 65,15,93,223 ; minps %xmm15,%xmm3
12478 DB 65,15,40,250 ; movaps %xmm10,%xmm7
12479 DB 15,93,251 ; minps %xmm3,%xmm7
12480 DB 65,15,89,194 ; mulps %xmm10,%xmm0
12481 DB 15,89,209 ; mulps %xmm1,%xmm2
12482 DB 15,88,208 ; addps %xmm0,%xmm2
Mike Kleinbb338332017-05-04 12:42:52 -040012483 DB 69,15,89,247 ; mulps %xmm15,%xmm14
Mike Klein08aa88d2017-05-12 12:59:24 -040012484 DB 68,15,88,242 ; addps %xmm2,%xmm14
12485 DB 69,15,87,201 ; xorps %xmm9,%xmm9
12486 DB 68,15,194,207,2 ; cmpleps %xmm7,%xmm9
Mike Kleinbb338332017-05-04 12:42:52 -040012487 DB 65,15,40,222 ; movaps %xmm14,%xmm3
Mike Klein08aa88d2017-05-12 12:59:24 -040012488 DB 15,92,223 ; subps %xmm7,%xmm3
12489 DB 69,15,40,234 ; movaps %xmm10,%xmm13
12490 DB 69,15,92,238 ; subps %xmm14,%xmm13
12491 DB 69,15,89,238 ; mulps %xmm14,%xmm13
12492 DB 68,15,94,235 ; divps %xmm3,%xmm13
12493 DB 69,15,88,238 ; addps %xmm14,%xmm13
12494 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12495 DB 102,69,15,56,20,234 ; blendvps %xmm0,%xmm10,%xmm13
12496 DB 15,40,193 ; movaps %xmm1,%xmm0
12497 DB 65,15,95,199 ; maxps %xmm15,%xmm0
12498 DB 68,15,95,208 ; maxps %xmm0,%xmm10
12499 DB 65,15,40,248 ; movaps %xmm8,%xmm7
12500 DB 15,40,44,36 ; movaps (%rsp),%xmm5
12501 DB 15,89,253 ; mulps %xmm5,%xmm7
12502 DB 15,40,231 ; movaps %xmm7,%xmm4
12503 DB 65,15,194,226,1 ; cmpltps %xmm10,%xmm4
12504 DB 65,15,40,213 ; movaps %xmm13,%xmm2
12505 DB 65,15,92,214 ; subps %xmm14,%xmm2
12506 DB 68,15,40,223 ; movaps %xmm7,%xmm11
12507 DB 69,15,92,222 ; subps %xmm14,%xmm11
12508 DB 65,15,89,211 ; mulps %xmm11,%xmm2
12509 DB 69,15,92,214 ; subps %xmm14,%xmm10
12510 DB 65,15,94,210 ; divps %xmm10,%xmm2
12511 DB 65,15,88,214 ; addps %xmm14,%xmm2
12512 DB 15,40,196 ; movaps %xmm4,%xmm0
12513 DB 102,68,15,56,20,234 ; blendvps %xmm0,%xmm2,%xmm13
12514 DB 68,15,40,225 ; movaps %xmm1,%xmm12
Mike Kleinbb338332017-05-04 12:42:52 -040012515 DB 69,15,92,230 ; subps %xmm14,%xmm12
Mike Klein08aa88d2017-05-12 12:59:24 -040012516 DB 69,15,89,230 ; mulps %xmm14,%xmm12
12517 DB 68,15,94,227 ; divps %xmm3,%xmm12
12518 DB 69,15,88,230 ; addps %xmm14,%xmm12
12519 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12520 DB 102,68,15,56,20,225 ; blendvps %xmm0,%xmm1,%xmm12
12521 DB 65,15,40,204 ; movaps %xmm12,%xmm1
12522 DB 65,15,92,206 ; subps %xmm14,%xmm1
12523 DB 65,15,89,203 ; mulps %xmm11,%xmm1
12524 DB 65,15,94,202 ; divps %xmm10,%xmm1
Mike Kleinbb338332017-05-04 12:42:52 -040012525 DB 65,15,88,206 ; addps %xmm14,%xmm1
Mike Klein08aa88d2017-05-12 12:59:24 -040012526 DB 15,40,196 ; movaps %xmm4,%xmm0
12527 DB 102,68,15,56,20,225 ; blendvps %xmm0,%xmm1,%xmm12
12528 DB 65,15,40,207 ; movaps %xmm15,%xmm1
Mike Kleinbb338332017-05-04 12:42:52 -040012529 DB 65,15,92,206 ; subps %xmm14,%xmm1
12530 DB 65,15,89,206 ; mulps %xmm14,%xmm1
12531 DB 15,94,203 ; divps %xmm3,%xmm1
12532 DB 65,15,88,206 ; addps %xmm14,%xmm1
Mike Klein08aa88d2017-05-12 12:59:24 -040012533 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12534 DB 102,65,15,56,20,207 ; blendvps %xmm0,%xmm15,%xmm1
Mike Kleinbb338332017-05-04 12:42:52 -040012535 DB 15,40,209 ; movaps %xmm1,%xmm2
12536 DB 65,15,92,214 ; subps %xmm14,%xmm2
Mike Klein08aa88d2017-05-12 12:59:24 -040012537 DB 65,15,89,211 ; mulps %xmm11,%xmm2
12538 DB 65,15,94,210 ; divps %xmm10,%xmm2
Mike Kleinbb338332017-05-04 12:42:52 -040012539 DB 65,15,88,214 ; addps %xmm14,%xmm2
Mike Klein08aa88d2017-05-12 12:59:24 -040012540 DB 15,40,196 ; movaps %xmm4,%xmm0
Mike Kleinbb338332017-05-04 12:42:52 -040012541 DB 102,15,56,20,202 ; blendvps %xmm0,%xmm2,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040012542 DB 68,15,40,13,79,58,0,0 ; movaps 0x3a4f(%rip),%xmm9 # 4a80 <_sk_callback_sse41+0x27b>
Mike Klein08aa88d2017-05-12 12:59:24 -040012543 DB 65,15,40,225 ; movaps %xmm9,%xmm4
12544 DB 15,92,229 ; subps %xmm5,%xmm4
12545 DB 15,40,68,36,48 ; movaps 0x30(%rsp),%xmm0
12546 DB 15,89,196 ; mulps %xmm4,%xmm0
12547 DB 15,40,92,36,64 ; movaps 0x40(%rsp),%xmm3
12548 DB 15,89,220 ; mulps %xmm4,%xmm3
12549 DB 15,89,100,36,80 ; mulps 0x50(%rsp),%xmm4
12550 DB 69,15,92,200 ; subps %xmm8,%xmm9
12551 DB 68,15,88,197 ; addps %xmm5,%xmm8
12552 DB 68,15,40,213 ; movaps %xmm5,%xmm10
12553 DB 68,15,92,199 ; subps %xmm7,%xmm8
12554 DB 15,87,210 ; xorps %xmm2,%xmm2
12555 DB 68,15,95,234 ; maxps %xmm2,%xmm13
12556 DB 68,15,95,226 ; maxps %xmm2,%xmm12
12557 DB 15,95,202 ; maxps %xmm2,%xmm1
12558 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12559 DB 15,89,214 ; mulps %xmm6,%xmm2
12560 DB 15,88,194 ; addps %xmm2,%xmm0
12561 DB 65,15,88,197 ; addps %xmm13,%xmm0
12562 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12563 DB 15,40,108,36,32 ; movaps 0x20(%rsp),%xmm5
12564 DB 15,89,213 ; mulps %xmm5,%xmm2
12565 DB 15,88,218 ; addps %xmm2,%xmm3
12566 DB 65,15,88,220 ; addps %xmm12,%xmm3
12567 DB 15,40,211 ; movaps %xmm3,%xmm2
12568 DB 15,40,92,36,16 ; movaps 0x10(%rsp),%xmm3
12569 DB 68,15,89,203 ; mulps %xmm3,%xmm9
12570 DB 68,15,88,204 ; addps %xmm4,%xmm9
12571 DB 68,15,88,201 ; addps %xmm1,%xmm9
Mike Kleinbb338332017-05-04 12:42:52 -040012572 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -040012573 DB 15,40,230 ; movaps %xmm6,%xmm4
12574 DB 15,40,243 ; movaps %xmm3,%xmm6
12575 DB 15,40,202 ; movaps %xmm2,%xmm1
12576 DB 65,15,40,209 ; movaps %xmm9,%xmm2
Mike Kleinbb338332017-05-04 12:42:52 -040012577 DB 65,15,40,216 ; movaps %xmm8,%xmm3
Mike Klein08aa88d2017-05-12 12:59:24 -040012578 DB 65,15,40,250 ; movaps %xmm10,%xmm7
12579 DB 72,131,196,104 ; add $0x68,%rsp
12580 DB 255,224 ; jmpq *%rax
12581
12582PUBLIC _sk_saturation_sse41
12583_sk_saturation_sse41 LABEL PROC
12584 DB 72,131,236,88 ; sub $0x58,%rsp
12585 DB 68,15,40,206 ; movaps %xmm6,%xmm9
12586 DB 15,40,245 ; movaps %xmm5,%xmm6
12587 DB 15,40,236 ; movaps %xmm4,%xmm5
12588 DB 15,40,227 ; movaps %xmm3,%xmm4
12589 DB 15,41,76,36,48 ; movaps %xmm1,0x30(%rsp)
12590 DB 15,41,68,36,32 ; movaps %xmm0,0x20(%rsp)
12591 DB 68,15,40,212 ; movaps %xmm4,%xmm10
12592 DB 68,15,89,213 ; mulps %xmm5,%xmm10
12593 DB 68,15,40,220 ; movaps %xmm4,%xmm11
12594 DB 68,15,89,222 ; mulps %xmm6,%xmm11
12595 DB 68,15,40,196 ; movaps %xmm4,%xmm8
12596 DB 69,15,89,193 ; mulps %xmm9,%xmm8
12597 DB 69,15,40,241 ; movaps %xmm9,%xmm14
12598 DB 68,15,41,116,36,16 ; movaps %xmm14,0x10(%rsp)
12599 DB 15,40,217 ; movaps %xmm1,%xmm3
12600 DB 68,15,40,202 ; movaps %xmm2,%xmm9
12601 DB 68,15,41,76,36,64 ; movaps %xmm9,0x40(%rsp)
12602 DB 65,15,95,217 ; maxps %xmm9,%xmm3
12603 DB 15,40,208 ; movaps %xmm0,%xmm2
12604 DB 15,95,211 ; maxps %xmm3,%xmm2
12605 DB 68,15,40,225 ; movaps %xmm1,%xmm12
12606 DB 69,15,93,225 ; minps %xmm9,%xmm12
12607 DB 15,40,216 ; movaps %xmm0,%xmm3
12608 DB 65,15,93,220 ; minps %xmm12,%xmm3
12609 DB 15,92,211 ; subps %xmm3,%xmm2
12610 DB 15,89,215 ; mulps %xmm7,%xmm2
12611 DB 68,15,40,231 ; movaps %xmm7,%xmm12
12612 DB 68,15,41,36,36 ; movaps %xmm12,(%rsp)
12613 DB 65,15,40,195 ; movaps %xmm11,%xmm0
12614 DB 65,15,93,192 ; minps %xmm8,%xmm0
12615 DB 65,15,40,218 ; movaps %xmm10,%xmm3
12616 DB 15,93,216 ; minps %xmm0,%xmm3
12617 DB 65,15,40,195 ; movaps %xmm11,%xmm0
12618 DB 65,15,95,192 ; maxps %xmm8,%xmm0
12619 DB 65,15,40,250 ; movaps %xmm10,%xmm7
12620 DB 15,95,248 ; maxps %xmm0,%xmm7
12621 DB 15,92,251 ; subps %xmm3,%xmm7
12622 DB 15,87,192 ; xorps %xmm0,%xmm0
12623 DB 68,15,92,211 ; subps %xmm3,%xmm10
12624 DB 68,15,89,210 ; mulps %xmm2,%xmm10
12625 DB 68,15,94,215 ; divps %xmm7,%xmm10
12626 DB 68,15,92,219 ; subps %xmm3,%xmm11
12627 DB 68,15,89,218 ; mulps %xmm2,%xmm11
12628 DB 68,15,94,223 ; divps %xmm7,%xmm11
12629 DB 68,15,92,195 ; subps %xmm3,%xmm8
12630 DB 68,15,89,194 ; mulps %xmm2,%xmm8
12631 DB 68,15,94,199 ; divps %xmm7,%xmm8
12632 DB 15,194,248,4 ; cmpneqps %xmm0,%xmm7
12633 DB 68,15,84,215 ; andps %xmm7,%xmm10
12634 DB 68,15,84,223 ; andps %xmm7,%xmm11
12635 DB 68,15,84,199 ; andps %xmm7,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040012636 DB 15,40,21,2,57,0,0 ; movaps 0x3902(%rip),%xmm2 # 4a90 <_sk_callback_sse41+0x28b>
Mike Klein08aa88d2017-05-12 12:59:24 -040012637 DB 15,40,221 ; movaps %xmm5,%xmm3
12638 DB 15,89,218 ; mulps %xmm2,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040012639 DB 15,40,13,5,57,0,0 ; movaps 0x3905(%rip),%xmm1 # 4aa0 <_sk_callback_sse41+0x29b>
Mike Klein08aa88d2017-05-12 12:59:24 -040012640 DB 15,40,254 ; movaps %xmm6,%xmm7
12641 DB 15,89,249 ; mulps %xmm1,%xmm7
12642 DB 15,88,251 ; addps %xmm3,%xmm7
Mike Klein8ca33562017-05-23 08:07:43 -040012643 DB 68,15,40,45,4,57,0,0 ; movaps 0x3904(%rip),%xmm13 # 4ab0 <_sk_callback_sse41+0x2ab>
Mike Klein08aa88d2017-05-12 12:59:24 -040012644 DB 69,15,89,245 ; mulps %xmm13,%xmm14
12645 DB 68,15,88,247 ; addps %xmm7,%xmm14
12646 DB 65,15,40,218 ; movaps %xmm10,%xmm3
12647 DB 15,89,218 ; mulps %xmm2,%xmm3
12648 DB 65,15,40,251 ; movaps %xmm11,%xmm7
12649 DB 15,89,249 ; mulps %xmm1,%xmm7
12650 DB 15,88,251 ; addps %xmm3,%xmm7
12651 DB 65,15,40,216 ; movaps %xmm8,%xmm3
12652 DB 65,15,89,221 ; mulps %xmm13,%xmm3
12653 DB 15,88,223 ; addps %xmm7,%xmm3
12654 DB 68,15,89,244 ; mulps %xmm4,%xmm14
12655 DB 68,15,92,243 ; subps %xmm3,%xmm14
12656 DB 69,15,88,214 ; addps %xmm14,%xmm10
12657 DB 69,15,88,222 ; addps %xmm14,%xmm11
12658 DB 69,15,88,240 ; addps %xmm8,%xmm14
12659 DB 65,15,40,195 ; movaps %xmm11,%xmm0
12660 DB 65,15,93,198 ; minps %xmm14,%xmm0
12661 DB 65,15,40,218 ; movaps %xmm10,%xmm3
12662 DB 15,93,216 ; minps %xmm0,%xmm3
12663 DB 65,15,89,210 ; mulps %xmm10,%xmm2
12664 DB 65,15,89,203 ; mulps %xmm11,%xmm1
12665 DB 15,88,202 ; addps %xmm2,%xmm1
12666 DB 69,15,89,238 ; mulps %xmm14,%xmm13
12667 DB 68,15,88,233 ; addps %xmm1,%xmm13
12668 DB 69,15,87,201 ; xorps %xmm9,%xmm9
12669 DB 68,15,194,203,2 ; cmpleps %xmm3,%xmm9
12670 DB 65,15,40,253 ; movaps %xmm13,%xmm7
12671 DB 15,92,251 ; subps %xmm3,%xmm7
12672 DB 69,15,40,250 ; movaps %xmm10,%xmm15
12673 DB 69,15,92,253 ; subps %xmm13,%xmm15
12674 DB 69,15,89,253 ; mulps %xmm13,%xmm15
12675 DB 68,15,94,255 ; divps %xmm7,%xmm15
12676 DB 69,15,88,253 ; addps %xmm13,%xmm15
12677 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12678 DB 102,69,15,56,20,250 ; blendvps %xmm0,%xmm10,%xmm15
12679 DB 65,15,40,195 ; movaps %xmm11,%xmm0
12680 DB 65,15,95,198 ; maxps %xmm14,%xmm0
12681 DB 68,15,95,208 ; maxps %xmm0,%xmm10
12682 DB 15,40,212 ; movaps %xmm4,%xmm2
12683 DB 65,15,89,212 ; mulps %xmm12,%xmm2
12684 DB 68,15,40,194 ; movaps %xmm2,%xmm8
12685 DB 69,15,194,194,1 ; cmpltps %xmm10,%xmm8
12686 DB 65,15,40,223 ; movaps %xmm15,%xmm3
12687 DB 65,15,92,221 ; subps %xmm13,%xmm3
12688 DB 15,40,202 ; movaps %xmm2,%xmm1
12689 DB 65,15,92,205 ; subps %xmm13,%xmm1
12690 DB 15,89,217 ; mulps %xmm1,%xmm3
12691 DB 69,15,92,213 ; subps %xmm13,%xmm10
12692 DB 65,15,94,218 ; divps %xmm10,%xmm3
12693 DB 65,15,88,221 ; addps %xmm13,%xmm3
12694 DB 65,15,40,192 ; movaps %xmm8,%xmm0
12695 DB 102,68,15,56,20,251 ; blendvps %xmm0,%xmm3,%xmm15
12696 DB 69,15,40,227 ; movaps %xmm11,%xmm12
12697 DB 69,15,92,229 ; subps %xmm13,%xmm12
12698 DB 69,15,89,229 ; mulps %xmm13,%xmm12
12699 DB 68,15,94,231 ; divps %xmm7,%xmm12
12700 DB 69,15,88,229 ; addps %xmm13,%xmm12
12701 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12702 DB 102,69,15,56,20,227 ; blendvps %xmm0,%xmm11,%xmm12
12703 DB 65,15,40,220 ; movaps %xmm12,%xmm3
12704 DB 65,15,92,221 ; subps %xmm13,%xmm3
12705 DB 15,89,217 ; mulps %xmm1,%xmm3
12706 DB 65,15,94,218 ; divps %xmm10,%xmm3
12707 DB 65,15,88,221 ; addps %xmm13,%xmm3
12708 DB 65,15,40,192 ; movaps %xmm8,%xmm0
12709 DB 102,68,15,56,20,227 ; blendvps %xmm0,%xmm3,%xmm12
12710 DB 69,15,40,222 ; movaps %xmm14,%xmm11
12711 DB 69,15,92,221 ; subps %xmm13,%xmm11
12712 DB 69,15,89,221 ; mulps %xmm13,%xmm11
12713 DB 68,15,94,223 ; divps %xmm7,%xmm11
12714 DB 69,15,88,221 ; addps %xmm13,%xmm11
12715 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12716 DB 102,69,15,56,20,222 ; blendvps %xmm0,%xmm14,%xmm11
12717 DB 65,15,40,251 ; movaps %xmm11,%xmm7
12718 DB 65,15,92,253 ; subps %xmm13,%xmm7
12719 DB 15,89,249 ; mulps %xmm1,%xmm7
12720 DB 65,15,94,250 ; divps %xmm10,%xmm7
12721 DB 65,15,88,253 ; addps %xmm13,%xmm7
12722 DB 65,15,40,192 ; movaps %xmm8,%xmm0
12723 DB 102,68,15,56,20,223 ; blendvps %xmm0,%xmm7,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040012724 DB 68,15,40,13,202,55,0,0 ; movaps 0x37ca(%rip),%xmm9 # 4ac0 <_sk_callback_sse41+0x2bb>
Mike Klein08aa88d2017-05-12 12:59:24 -040012725 DB 69,15,40,193 ; movaps %xmm9,%xmm8
12726 DB 68,15,92,204 ; subps %xmm4,%xmm9
12727 DB 15,40,60,36 ; movaps (%rsp),%xmm7
12728 DB 15,88,231 ; addps %xmm7,%xmm4
12729 DB 15,92,226 ; subps %xmm2,%xmm4
12730 DB 15,40,220 ; movaps %xmm4,%xmm3
12731 DB 15,87,192 ; xorps %xmm0,%xmm0
12732 DB 68,15,95,248 ; maxps %xmm0,%xmm15
12733 DB 68,15,95,224 ; maxps %xmm0,%xmm12
12734 DB 68,15,95,216 ; maxps %xmm0,%xmm11
12735 DB 65,15,40,201 ; movaps %xmm9,%xmm1
12736 DB 15,89,205 ; mulps %xmm5,%xmm1
12737 DB 68,15,92,199 ; subps %xmm7,%xmm8
12738 DB 15,40,68,36,32 ; movaps 0x20(%rsp),%xmm0
12739 DB 65,15,89,192 ; mulps %xmm8,%xmm0
12740 DB 15,88,193 ; addps %xmm1,%xmm0
12741 DB 65,15,88,199 ; addps %xmm15,%xmm0
12742 DB 65,15,40,201 ; movaps %xmm9,%xmm1
12743 DB 15,89,206 ; mulps %xmm6,%xmm1
12744 DB 15,40,84,36,48 ; movaps 0x30(%rsp),%xmm2
12745 DB 65,15,89,208 ; mulps %xmm8,%xmm2
12746 DB 15,88,209 ; addps %xmm1,%xmm2
12747 DB 65,15,88,212 ; addps %xmm12,%xmm2
12748 DB 15,40,202 ; movaps %xmm2,%xmm1
12749 DB 68,15,89,68,36,64 ; mulps 0x40(%rsp),%xmm8
12750 DB 15,40,84,36,16 ; movaps 0x10(%rsp),%xmm2
12751 DB 68,15,89,202 ; mulps %xmm2,%xmm9
12752 DB 69,15,88,200 ; addps %xmm8,%xmm9
12753 DB 69,15,88,203 ; addps %xmm11,%xmm9
12754 DB 72,173 ; lods %ds:(%rsi),%rax
12755 DB 15,40,229 ; movaps %xmm5,%xmm4
12756 DB 15,40,238 ; movaps %xmm6,%xmm5
12757 DB 15,40,242 ; movaps %xmm2,%xmm6
12758 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12759 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -040012760 DB 255,224 ; jmpq *%rax
12761
12762PUBLIC _sk_color_sse41
12763_sk_color_sse41 LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -040012764 DB 72,131,236,72 ; sub $0x48,%rsp
12765 DB 68,15,40,230 ; movaps %xmm6,%xmm12
12766 DB 68,15,41,100,36,16 ; movaps %xmm12,0x10(%rsp)
Mike Kleinbb338332017-05-04 12:42:52 -040012767 DB 68,15,40,221 ; movaps %xmm5,%xmm11
Mike Klein08aa88d2017-05-12 12:59:24 -040012768 DB 68,15,41,92,36,32 ; movaps %xmm11,0x20(%rsp)
12769 DB 68,15,40,212 ; movaps %xmm4,%xmm10
12770 DB 68,15,41,84,36,48 ; movaps %xmm10,0x30(%rsp)
12771 DB 15,40,243 ; movaps %xmm3,%xmm6
12772 DB 15,41,20,36 ; movaps %xmm2,(%rsp)
12773 DB 15,40,233 ; movaps %xmm1,%xmm5
Mike Kleinbb338332017-05-04 12:42:52 -040012774 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Klein08aa88d2017-05-12 12:59:24 -040012775 DB 69,15,40,240 ; movaps %xmm8,%xmm14
12776 DB 15,40,231 ; movaps %xmm7,%xmm4
12777 DB 68,15,89,244 ; mulps %xmm4,%xmm14
12778 DB 15,89,204 ; mulps %xmm4,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040012779 DB 68,15,40,13,15,55,0,0 ; movaps 0x370f(%rip),%xmm9 # 4ad0 <_sk_callback_sse41+0x2cb>
Mike Klein08aa88d2017-05-12 12:59:24 -040012780 DB 65,15,40,250 ; movaps %xmm10,%xmm7
12781 DB 65,15,89,249 ; mulps %xmm9,%xmm7
Mike Klein8ca33562017-05-23 08:07:43 -040012782 DB 68,15,40,21,15,55,0,0 ; movaps 0x370f(%rip),%xmm10 # 4ae0 <_sk_callback_sse41+0x2db>
Mike Klein08aa88d2017-05-12 12:59:24 -040012783 DB 65,15,40,219 ; movaps %xmm11,%xmm3
12784 DB 65,15,89,218 ; mulps %xmm10,%xmm3
12785 DB 15,88,223 ; addps %xmm7,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040012786 DB 68,15,40,29,12,55,0,0 ; movaps 0x370c(%rip),%xmm11 # 4af0 <_sk_callback_sse41+0x2eb>
Mike Klein08aa88d2017-05-12 12:59:24 -040012787 DB 69,15,40,236 ; movaps %xmm12,%xmm13
12788 DB 69,15,89,235 ; mulps %xmm11,%xmm13
12789 DB 68,15,88,235 ; addps %xmm3,%xmm13
12790 DB 65,15,40,222 ; movaps %xmm14,%xmm3
12791 DB 65,15,89,217 ; mulps %xmm9,%xmm3
12792 DB 15,40,249 ; movaps %xmm1,%xmm7
12793 DB 65,15,89,250 ; mulps %xmm10,%xmm7
12794 DB 15,88,251 ; addps %xmm3,%xmm7
12795 DB 15,40,194 ; movaps %xmm2,%xmm0
12796 DB 15,89,196 ; mulps %xmm4,%xmm0
12797 DB 15,40,216 ; movaps %xmm0,%xmm3
12798 DB 65,15,89,219 ; mulps %xmm11,%xmm3
12799 DB 15,88,223 ; addps %xmm7,%xmm3
12800 DB 68,15,89,238 ; mulps %xmm6,%xmm13
12801 DB 68,15,92,235 ; subps %xmm3,%xmm13
12802 DB 69,15,88,245 ; addps %xmm13,%xmm14
12803 DB 65,15,88,205 ; addps %xmm13,%xmm1
12804 DB 68,15,88,232 ; addps %xmm0,%xmm13
Mike Kleinbb338332017-05-04 12:42:52 -040012805 DB 15,40,193 ; movaps %xmm1,%xmm0
Mike Klein08aa88d2017-05-12 12:59:24 -040012806 DB 65,15,93,197 ; minps %xmm13,%xmm0
12807 DB 65,15,40,222 ; movaps %xmm14,%xmm3
12808 DB 15,93,216 ; minps %xmm0,%xmm3
12809 DB 69,15,89,206 ; mulps %xmm14,%xmm9
Mike Kleinbb338332017-05-04 12:42:52 -040012810 DB 68,15,89,209 ; mulps %xmm1,%xmm10
12811 DB 69,15,88,209 ; addps %xmm9,%xmm10
Mike Klein08aa88d2017-05-12 12:59:24 -040012812 DB 69,15,89,221 ; mulps %xmm13,%xmm11
12813 DB 69,15,88,218 ; addps %xmm10,%xmm11
12814 DB 69,15,87,201 ; xorps %xmm9,%xmm9
12815 DB 68,15,194,203,2 ; cmpleps %xmm3,%xmm9
12816 DB 69,15,40,230 ; movaps %xmm14,%xmm12
12817 DB 69,15,92,227 ; subps %xmm11,%xmm12
12818 DB 69,15,89,227 ; mulps %xmm11,%xmm12
12819 DB 65,15,40,251 ; movaps %xmm11,%xmm7
12820 DB 15,92,251 ; subps %xmm3,%xmm7
12821 DB 68,15,94,231 ; divps %xmm7,%xmm12
12822 DB 69,15,88,227 ; addps %xmm11,%xmm12
Mike Kleinbb338332017-05-04 12:42:52 -040012823 DB 65,15,40,193 ; movaps %xmm9,%xmm0
Mike Klein08aa88d2017-05-12 12:59:24 -040012824 DB 102,69,15,56,20,230 ; blendvps %xmm0,%xmm14,%xmm12
12825 DB 15,40,193 ; movaps %xmm1,%xmm0
12826 DB 65,15,95,197 ; maxps %xmm13,%xmm0
12827 DB 65,15,40,214 ; movaps %xmm14,%xmm2
12828 DB 15,95,208 ; maxps %xmm0,%xmm2
12829 DB 15,40,222 ; movaps %xmm6,%xmm3
12830 DB 15,89,220 ; mulps %xmm4,%xmm3
12831 DB 68,15,40,211 ; movaps %xmm3,%xmm10
12832 DB 68,15,194,210,1 ; cmpltps %xmm2,%xmm10
12833 DB 69,15,40,244 ; movaps %xmm12,%xmm14
12834 DB 69,15,92,243 ; subps %xmm11,%xmm14
12835 DB 68,15,40,251 ; movaps %xmm3,%xmm15
12836 DB 69,15,92,251 ; subps %xmm11,%xmm15
12837 DB 69,15,89,247 ; mulps %xmm15,%xmm14
12838 DB 65,15,92,211 ; subps %xmm11,%xmm2
12839 DB 68,15,94,242 ; divps %xmm2,%xmm14
12840 DB 69,15,88,243 ; addps %xmm11,%xmm14
12841 DB 65,15,40,194 ; movaps %xmm10,%xmm0
12842 DB 102,69,15,56,20,230 ; blendvps %xmm0,%xmm14,%xmm12
12843 DB 68,15,40,241 ; movaps %xmm1,%xmm14
12844 DB 69,15,92,243 ; subps %xmm11,%xmm14
12845 DB 69,15,89,243 ; mulps %xmm11,%xmm14
12846 DB 68,15,94,247 ; divps %xmm7,%xmm14
12847 DB 69,15,88,243 ; addps %xmm11,%xmm14
12848 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12849 DB 102,68,15,56,20,241 ; blendvps %xmm0,%xmm1,%xmm14
12850 DB 65,15,40,206 ; movaps %xmm14,%xmm1
12851 DB 65,15,92,203 ; subps %xmm11,%xmm1
12852 DB 65,15,89,207 ; mulps %xmm15,%xmm1
12853 DB 15,94,202 ; divps %xmm2,%xmm1
12854 DB 65,15,88,203 ; addps %xmm11,%xmm1
12855 DB 65,15,40,194 ; movaps %xmm10,%xmm0
12856 DB 102,68,15,56,20,241 ; blendvps %xmm0,%xmm1,%xmm14
12857 DB 65,15,40,205 ; movaps %xmm13,%xmm1
12858 DB 65,15,92,203 ; subps %xmm11,%xmm1
12859 DB 65,15,89,203 ; mulps %xmm11,%xmm1
12860 DB 15,94,207 ; divps %xmm7,%xmm1
12861 DB 65,15,88,203 ; addps %xmm11,%xmm1
12862 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12863 DB 102,65,15,56,20,205 ; blendvps %xmm0,%xmm13,%xmm1
12864 DB 15,40,249 ; movaps %xmm1,%xmm7
12865 DB 65,15,92,251 ; subps %xmm11,%xmm7
12866 DB 65,15,89,255 ; mulps %xmm15,%xmm7
12867 DB 15,94,250 ; divps %xmm2,%xmm7
12868 DB 65,15,88,251 ; addps %xmm11,%xmm7
12869 DB 65,15,40,194 ; movaps %xmm10,%xmm0
12870 DB 102,15,56,20,207 ; blendvps %xmm0,%xmm7,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040012871 DB 68,15,40,13,200,53,0,0 ; movaps 0x35c8(%rip),%xmm9 # 4b00 <_sk_callback_sse41+0x2fb>
Mike Klein08aa88d2017-05-12 12:59:24 -040012872 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12873 DB 15,92,196 ; subps %xmm4,%xmm0
12874 DB 68,15,89,192 ; mulps %xmm0,%xmm8
12875 DB 15,89,232 ; mulps %xmm0,%xmm5
12876 DB 15,89,4,36 ; mulps (%rsp),%xmm0
12877 DB 68,15,92,206 ; subps %xmm6,%xmm9
12878 DB 15,88,244 ; addps %xmm4,%xmm6
12879 DB 15,40,252 ; movaps %xmm4,%xmm7
12880 DB 15,92,243 ; subps %xmm3,%xmm6
12881 DB 15,40,222 ; movaps %xmm6,%xmm3
12882 DB 15,87,210 ; xorps %xmm2,%xmm2
12883 DB 68,15,95,226 ; maxps %xmm2,%xmm12
12884 DB 68,15,95,242 ; maxps %xmm2,%xmm14
12885 DB 15,95,202 ; maxps %xmm2,%xmm1
12886 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12887 DB 15,40,100,36,48 ; movaps 0x30(%rsp),%xmm4
12888 DB 15,89,212 ; mulps %xmm4,%xmm2
12889 DB 68,15,88,194 ; addps %xmm2,%xmm8
12890 DB 69,15,88,196 ; addps %xmm12,%xmm8
12891 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12892 DB 15,40,116,36,32 ; movaps 0x20(%rsp),%xmm6
12893 DB 15,89,214 ; mulps %xmm6,%xmm2
12894 DB 68,15,40,213 ; movaps %xmm5,%xmm10
12895 DB 68,15,88,210 ; addps %xmm2,%xmm10
12896 DB 69,15,88,214 ; addps %xmm14,%xmm10
12897 DB 15,40,84,36,16 ; movaps 0x10(%rsp),%xmm2
12898 DB 68,15,89,202 ; mulps %xmm2,%xmm9
12899 DB 68,15,88,200 ; addps %xmm0,%xmm9
12900 DB 68,15,88,201 ; addps %xmm1,%xmm9
12901 DB 72,173 ; lods %ds:(%rsi),%rax
12902 DB 15,40,238 ; movaps %xmm6,%xmm5
12903 DB 15,40,242 ; movaps %xmm2,%xmm6
12904 DB 65,15,40,192 ; movaps %xmm8,%xmm0
12905 DB 65,15,40,202 ; movaps %xmm10,%xmm1
12906 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12907 DB 72,131,196,72 ; add $0x48,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -040012908 DB 255,224 ; jmpq *%rax
12909
12910PUBLIC _sk_luminosity_sse41
12911_sk_luminosity_sse41 LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -040012912 DB 72,131,236,72 ; sub $0x48,%rsp
12913 DB 15,41,116,36,16 ; movaps %xmm6,0x10(%rsp)
12914 DB 15,41,108,36,48 ; movaps %xmm5,0x30(%rsp)
12915 DB 68,15,40,196 ; movaps %xmm4,%xmm8
12916 DB 68,15,41,68,36,32 ; movaps %xmm8,0x20(%rsp)
12917 DB 15,41,20,36 ; movaps %xmm2,(%rsp)
12918 DB 15,40,224 ; movaps %xmm0,%xmm4
Mike Kleinbb338332017-05-04 12:42:52 -040012919 DB 68,15,40,219 ; movaps %xmm3,%xmm11
Mike Klein08aa88d2017-05-12 12:59:24 -040012920 DB 69,15,89,216 ; mulps %xmm8,%xmm11
12921 DB 68,15,40,203 ; movaps %xmm3,%xmm9
12922 DB 68,15,89,205 ; mulps %xmm5,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040012923 DB 68,15,40,5,26,53,0,0 ; movaps 0x351a(%rip),%xmm8 # 4b10 <_sk_callback_sse41+0x30b>
Mike Kleinbb338332017-05-04 12:42:52 -040012924 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040012925 DB 68,15,40,21,30,53,0,0 ; movaps 0x351e(%rip),%xmm10 # 4b20 <_sk_callback_sse41+0x31b>
Mike Klein08aa88d2017-05-12 12:59:24 -040012926 DB 15,40,233 ; movaps %xmm1,%xmm5
12927 DB 65,15,89,234 ; mulps %xmm10,%xmm5
12928 DB 15,88,232 ; addps %xmm0,%xmm5
Mike Klein8ca33562017-05-23 08:07:43 -040012929 DB 68,15,40,37,28,53,0,0 ; movaps 0x351c(%rip),%xmm12 # 4b30 <_sk_callback_sse41+0x32b>
Mike Klein08aa88d2017-05-12 12:59:24 -040012930 DB 68,15,40,242 ; movaps %xmm2,%xmm14
12931 DB 69,15,89,244 ; mulps %xmm12,%xmm14
12932 DB 68,15,88,245 ; addps %xmm5,%xmm14
12933 DB 65,15,40,235 ; movaps %xmm11,%xmm5
12934 DB 65,15,89,232 ; mulps %xmm8,%xmm5
12935 DB 65,15,40,209 ; movaps %xmm9,%xmm2
12936 DB 65,15,89,210 ; mulps %xmm10,%xmm2
12937 DB 15,88,213 ; addps %xmm5,%xmm2
Mike Kleinbb338332017-05-04 12:42:52 -040012938 DB 15,40,195 ; movaps %xmm3,%xmm0
Mike Klein08aa88d2017-05-12 12:59:24 -040012939 DB 15,89,198 ; mulps %xmm6,%xmm0
12940 DB 15,40,232 ; movaps %xmm0,%xmm5
12941 DB 65,15,89,236 ; mulps %xmm12,%xmm5
12942 DB 15,88,234 ; addps %xmm2,%xmm5
12943 DB 68,15,89,247 ; mulps %xmm7,%xmm14
12944 DB 68,15,92,245 ; subps %xmm5,%xmm14
Mike Kleinbb338332017-05-04 12:42:52 -040012945 DB 69,15,88,222 ; addps %xmm14,%xmm11
Mike Klein08aa88d2017-05-12 12:59:24 -040012946 DB 69,15,88,206 ; addps %xmm14,%xmm9
12947 DB 68,15,88,240 ; addps %xmm0,%xmm14
12948 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12949 DB 65,15,93,198 ; minps %xmm14,%xmm0
12950 DB 65,15,40,235 ; movaps %xmm11,%xmm5
12951 DB 15,93,232 ; minps %xmm0,%xmm5
12952 DB 69,15,89,195 ; mulps %xmm11,%xmm8
12953 DB 69,15,89,209 ; mulps %xmm9,%xmm10
12954 DB 69,15,88,208 ; addps %xmm8,%xmm10
12955 DB 69,15,89,230 ; mulps %xmm14,%xmm12
12956 DB 69,15,88,226 ; addps %xmm10,%xmm12
12957 DB 69,15,87,210 ; xorps %xmm10,%xmm10
12958 DB 68,15,194,213,2 ; cmpleps %xmm5,%xmm10
12959 DB 69,15,40,235 ; movaps %xmm11,%xmm13
12960 DB 69,15,92,236 ; subps %xmm12,%xmm13
12961 DB 69,15,89,236 ; mulps %xmm12,%xmm13
12962 DB 65,15,40,244 ; movaps %xmm12,%xmm6
12963 DB 15,92,245 ; subps %xmm5,%xmm6
12964 DB 68,15,94,238 ; divps %xmm6,%xmm13
12965 DB 69,15,88,236 ; addps %xmm12,%xmm13
Mike Kleinbb338332017-05-04 12:42:52 -040012966 DB 65,15,40,194 ; movaps %xmm10,%xmm0
Mike Klein08aa88d2017-05-12 12:59:24 -040012967 DB 102,69,15,56,20,235 ; blendvps %xmm0,%xmm11,%xmm13
12968 DB 65,15,40,193 ; movaps %xmm9,%xmm0
12969 DB 65,15,95,198 ; maxps %xmm14,%xmm0
Mike Kleinbb338332017-05-04 12:42:52 -040012970 DB 65,15,40,211 ; movaps %xmm11,%xmm2
Mike Klein08aa88d2017-05-12 12:59:24 -040012971 DB 15,95,208 ; maxps %xmm0,%xmm2
12972 DB 15,40,235 ; movaps %xmm3,%xmm5
12973 DB 15,89,239 ; mulps %xmm7,%xmm5
12974 DB 68,15,40,221 ; movaps %xmm5,%xmm11
12975 DB 68,15,194,218,1 ; cmpltps %xmm2,%xmm11
12976 DB 69,15,40,197 ; movaps %xmm13,%xmm8
12977 DB 69,15,92,196 ; subps %xmm12,%xmm8
12978 DB 68,15,40,253 ; movaps %xmm5,%xmm15
12979 DB 69,15,92,252 ; subps %xmm12,%xmm15
12980 DB 69,15,89,199 ; mulps %xmm15,%xmm8
12981 DB 65,15,92,212 ; subps %xmm12,%xmm2
12982 DB 68,15,94,194 ; divps %xmm2,%xmm8
12983 DB 69,15,88,196 ; addps %xmm12,%xmm8
12984 DB 65,15,40,195 ; movaps %xmm11,%xmm0
12985 DB 102,69,15,56,20,232 ; blendvps %xmm0,%xmm8,%xmm13
12986 DB 69,15,40,193 ; movaps %xmm9,%xmm8
12987 DB 69,15,92,196 ; subps %xmm12,%xmm8
12988 DB 69,15,89,196 ; mulps %xmm12,%xmm8
12989 DB 68,15,94,198 ; divps %xmm6,%xmm8
12990 DB 69,15,88,196 ; addps %xmm12,%xmm8
12991 DB 65,15,40,194 ; movaps %xmm10,%xmm0
12992 DB 102,69,15,56,20,193 ; blendvps %xmm0,%xmm9,%xmm8
12993 DB 69,15,40,200 ; movaps %xmm8,%xmm9
12994 DB 69,15,92,204 ; subps %xmm12,%xmm9
12995 DB 69,15,89,207 ; mulps %xmm15,%xmm9
12996 DB 68,15,94,202 ; divps %xmm2,%xmm9
12997 DB 69,15,88,204 ; addps %xmm12,%xmm9
12998 DB 65,15,40,195 ; movaps %xmm11,%xmm0
12999 DB 102,69,15,56,20,193 ; blendvps %xmm0,%xmm9,%xmm8
13000 DB 69,15,40,206 ; movaps %xmm14,%xmm9
13001 DB 69,15,92,204 ; subps %xmm12,%xmm9
13002 DB 69,15,89,204 ; mulps %xmm12,%xmm9
13003 DB 68,15,94,206 ; divps %xmm6,%xmm9
13004 DB 69,15,88,204 ; addps %xmm12,%xmm9
13005 DB 65,15,40,194 ; movaps %xmm10,%xmm0
13006 DB 102,69,15,56,20,206 ; blendvps %xmm0,%xmm14,%xmm9
13007 DB 65,15,40,241 ; movaps %xmm9,%xmm6
13008 DB 65,15,92,244 ; subps %xmm12,%xmm6
13009 DB 65,15,89,247 ; mulps %xmm15,%xmm6
13010 DB 15,94,242 ; divps %xmm2,%xmm6
13011 DB 65,15,88,244 ; addps %xmm12,%xmm6
13012 DB 65,15,40,195 ; movaps %xmm11,%xmm0
13013 DB 102,68,15,56,20,206 ; blendvps %xmm0,%xmm6,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040013014 DB 15,40,5,210,51,0,0 ; movaps 0x33d2(%rip),%xmm0 # 4b40 <_sk_callback_sse41+0x33b>
Mike Klein08aa88d2017-05-12 12:59:24 -040013015 DB 15,40,208 ; movaps %xmm0,%xmm2
13016 DB 15,92,215 ; subps %xmm7,%xmm2
13017 DB 15,89,226 ; mulps %xmm2,%xmm4
13018 DB 15,89,202 ; mulps %xmm2,%xmm1
13019 DB 15,89,20,36 ; mulps (%rsp),%xmm2
13020 DB 15,92,195 ; subps %xmm3,%xmm0
13021 DB 15,88,223 ; addps %xmm7,%xmm3
13022 DB 15,92,221 ; subps %xmm5,%xmm3
13023 DB 15,87,237 ; xorps %xmm5,%xmm5
13024 DB 68,15,95,237 ; maxps %xmm5,%xmm13
13025 DB 68,15,95,197 ; maxps %xmm5,%xmm8
13026 DB 68,15,95,205 ; maxps %xmm5,%xmm9
13027 DB 15,40,232 ; movaps %xmm0,%xmm5
13028 DB 68,15,40,84,36,32 ; movaps 0x20(%rsp),%xmm10
13029 DB 65,15,89,234 ; mulps %xmm10,%xmm5
13030 DB 15,88,229 ; addps %xmm5,%xmm4
13031 DB 65,15,88,229 ; addps %xmm13,%xmm4
13032 DB 15,40,240 ; movaps %xmm0,%xmm6
13033 DB 15,40,108,36,48 ; movaps 0x30(%rsp),%xmm5
13034 DB 15,89,245 ; mulps %xmm5,%xmm6
13035 DB 15,88,206 ; addps %xmm6,%xmm1
13036 DB 65,15,88,200 ; addps %xmm8,%xmm1
13037 DB 15,40,116,36,16 ; movaps 0x10(%rsp),%xmm6
13038 DB 15,89,198 ; mulps %xmm6,%xmm0
13039 DB 15,88,194 ; addps %xmm2,%xmm0
13040 DB 68,15,88,200 ; addps %xmm0,%xmm9
13041 DB 72,173 ; lods %ds:(%rsi),%rax
13042 DB 15,40,196 ; movaps %xmm4,%xmm0
13043 DB 65,15,40,209 ; movaps %xmm9,%xmm2
13044 DB 65,15,40,226 ; movaps %xmm10,%xmm4
13045 DB 72,131,196,72 ; add $0x48,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -040013046 DB 255,224 ; jmpq *%rax
13047
Mike Kleind7e06ae2017-03-29 16:33:06 -040013048PUBLIC _sk_clamp_0_sse41
13049_sk_clamp_0_sse41 LABEL PROC
13050 DB 69,15,87,192 ; xorps %xmm8,%xmm8
13051 DB 65,15,95,192 ; maxps %xmm8,%xmm0
13052 DB 65,15,95,200 ; maxps %xmm8,%xmm1
13053 DB 65,15,95,208 ; maxps %xmm8,%xmm2
13054 DB 65,15,95,216 ; maxps %xmm8,%xmm3
13055 DB 72,173 ; lods %ds:(%rsi),%rax
13056 DB 255,224 ; jmpq *%rax
13057
13058PUBLIC _sk_clamp_1_sse41
13059_sk_clamp_1_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040013060 DB 68,15,40,5,82,51,0,0 ; movaps 0x3352(%rip),%xmm8 # 4b50 <_sk_callback_sse41+0x34b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013061 DB 65,15,93,192 ; minps %xmm8,%xmm0
13062 DB 65,15,93,200 ; minps %xmm8,%xmm1
13063 DB 65,15,93,208 ; minps %xmm8,%xmm2
13064 DB 65,15,93,216 ; minps %xmm8,%xmm3
13065 DB 72,173 ; lods %ds:(%rsi),%rax
13066 DB 255,224 ; jmpq *%rax
13067
13068PUBLIC _sk_clamp_a_sse41
13069_sk_clamp_a_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040013070 DB 15,93,29,71,51,0,0 ; minps 0x3347(%rip),%xmm3 # 4b60 <_sk_callback_sse41+0x35b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013071 DB 15,93,195 ; minps %xmm3,%xmm0
13072 DB 15,93,203 ; minps %xmm3,%xmm1
13073 DB 15,93,211 ; minps %xmm3,%xmm2
13074 DB 72,173 ; lods %ds:(%rsi),%rax
13075 DB 255,224 ; jmpq *%rax
13076
13077PUBLIC _sk_set_rgb_sse41
13078_sk_set_rgb_sse41 LABEL PROC
13079 DB 72,173 ; lods %ds:(%rsi),%rax
13080 DB 243,15,16,0 ; movss (%rax),%xmm0
13081 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
13082 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
13083 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
13084 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
13085 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
13086 DB 72,173 ; lods %ds:(%rsi),%rax
13087 DB 255,224 ; jmpq *%rax
13088
13089PUBLIC _sk_swap_rb_sse41
13090_sk_swap_rb_sse41 LABEL PROC
13091 DB 68,15,40,192 ; movaps %xmm0,%xmm8
13092 DB 72,173 ; lods %ds:(%rsi),%rax
13093 DB 15,40,194 ; movaps %xmm2,%xmm0
13094 DB 65,15,40,208 ; movaps %xmm8,%xmm2
13095 DB 255,224 ; jmpq *%rax
13096
13097PUBLIC _sk_swap_sse41
13098_sk_swap_sse41 LABEL PROC
13099 DB 68,15,40,195 ; movaps %xmm3,%xmm8
13100 DB 68,15,40,202 ; movaps %xmm2,%xmm9
13101 DB 68,15,40,209 ; movaps %xmm1,%xmm10
13102 DB 68,15,40,216 ; movaps %xmm0,%xmm11
13103 DB 72,173 ; lods %ds:(%rsi),%rax
13104 DB 15,40,196 ; movaps %xmm4,%xmm0
13105 DB 15,40,205 ; movaps %xmm5,%xmm1
13106 DB 15,40,214 ; movaps %xmm6,%xmm2
13107 DB 15,40,223 ; movaps %xmm7,%xmm3
13108 DB 65,15,40,227 ; movaps %xmm11,%xmm4
13109 DB 65,15,40,234 ; movaps %xmm10,%xmm5
13110 DB 65,15,40,241 ; movaps %xmm9,%xmm6
13111 DB 65,15,40,248 ; movaps %xmm8,%xmm7
13112 DB 255,224 ; jmpq *%rax
13113
13114PUBLIC _sk_move_src_dst_sse41
13115_sk_move_src_dst_sse41 LABEL PROC
13116 DB 72,173 ; lods %ds:(%rsi),%rax
13117 DB 15,40,224 ; movaps %xmm0,%xmm4
13118 DB 15,40,233 ; movaps %xmm1,%xmm5
13119 DB 15,40,242 ; movaps %xmm2,%xmm6
13120 DB 15,40,251 ; movaps %xmm3,%xmm7
13121 DB 255,224 ; jmpq *%rax
13122
13123PUBLIC _sk_move_dst_src_sse41
13124_sk_move_dst_src_sse41 LABEL PROC
13125 DB 72,173 ; lods %ds:(%rsi),%rax
13126 DB 15,40,196 ; movaps %xmm4,%xmm0
13127 DB 15,40,205 ; movaps %xmm5,%xmm1
13128 DB 15,40,214 ; movaps %xmm6,%xmm2
13129 DB 15,40,223 ; movaps %xmm7,%xmm3
13130 DB 255,224 ; jmpq *%rax
13131
13132PUBLIC _sk_premul_sse41
13133_sk_premul_sse41 LABEL PROC
13134 DB 15,89,195 ; mulps %xmm3,%xmm0
13135 DB 15,89,203 ; mulps %xmm3,%xmm1
13136 DB 15,89,211 ; mulps %xmm3,%xmm2
13137 DB 72,173 ; lods %ds:(%rsi),%rax
13138 DB 255,224 ; jmpq *%rax
13139
13140PUBLIC _sk_unpremul_sse41
13141_sk_unpremul_sse41 LABEL PROC
13142 DB 69,15,87,192 ; xorps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013143 DB 68,15,40,13,178,50,0,0 ; movaps 0x32b2(%rip),%xmm9 # 4b70 <_sk_callback_sse41+0x36b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013144 DB 68,15,94,203 ; divps %xmm3,%xmm9
13145 DB 68,15,194,195,4 ; cmpneqps %xmm3,%xmm8
13146 DB 69,15,84,193 ; andps %xmm9,%xmm8
13147 DB 65,15,89,192 ; mulps %xmm8,%xmm0
13148 DB 65,15,89,200 ; mulps %xmm8,%xmm1
13149 DB 65,15,89,208 ; mulps %xmm8,%xmm2
13150 DB 72,173 ; lods %ds:(%rsi),%rax
13151 DB 255,224 ; jmpq *%rax
13152
13153PUBLIC _sk_from_srgb_sse41
13154_sk_from_srgb_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040013155 DB 68,15,40,29,157,50,0,0 ; movaps 0x329d(%rip),%xmm11 # 4b80 <_sk_callback_sse41+0x37b>
Mike Kleinfe560a82017-05-01 12:56:35 -040013156 DB 68,15,40,200 ; movaps %xmm0,%xmm9
13157 DB 69,15,89,203 ; mulps %xmm11,%xmm9
13158 DB 68,15,40,208 ; movaps %xmm0,%xmm10
13159 DB 69,15,89,210 ; mulps %xmm10,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040013160 DB 68,15,40,37,149,50,0,0 ; movaps 0x3295(%rip),%xmm12 # 4b90 <_sk_callback_sse41+0x38b>
Mike Kleinfe560a82017-05-01 12:56:35 -040013161 DB 68,15,40,192 ; movaps %xmm0,%xmm8
13162 DB 69,15,89,196 ; mulps %xmm12,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013163 DB 68,15,40,45,149,50,0,0 ; movaps 0x3295(%rip),%xmm13 # 4ba0 <_sk_callback_sse41+0x39b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013164 DB 69,15,88,197 ; addps %xmm13,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040013165 DB 69,15,89,194 ; mulps %xmm10,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013166 DB 68,15,40,53,149,50,0,0 ; movaps 0x3295(%rip),%xmm14 # 4bb0 <_sk_callback_sse41+0x3ab>
Mike Kleinfe560a82017-05-01 12:56:35 -040013167 DB 69,15,88,198 ; addps %xmm14,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013168 DB 68,15,40,61,153,50,0,0 ; movaps 0x3299(%rip),%xmm15 # 4bc0 <_sk_callback_sse41+0x3bb>
Mike Kleinfe560a82017-05-01 12:56:35 -040013169 DB 65,15,194,199,1 ; cmpltps %xmm15,%xmm0
13170 DB 102,69,15,56,20,193 ; blendvps %xmm0,%xmm9,%xmm8
13171 DB 68,15,40,209 ; movaps %xmm1,%xmm10
13172 DB 69,15,89,211 ; mulps %xmm11,%xmm10
13173 DB 15,40,193 ; movaps %xmm1,%xmm0
13174 DB 15,89,192 ; mulps %xmm0,%xmm0
13175 DB 68,15,40,201 ; movaps %xmm1,%xmm9
13176 DB 69,15,89,204 ; mulps %xmm12,%xmm9
13177 DB 69,15,88,205 ; addps %xmm13,%xmm9
13178 DB 68,15,89,200 ; mulps %xmm0,%xmm9
13179 DB 69,15,88,206 ; addps %xmm14,%xmm9
13180 DB 65,15,194,207,1 ; cmpltps %xmm15,%xmm1
13181 DB 15,40,193 ; movaps %xmm1,%xmm0
13182 DB 102,69,15,56,20,202 ; blendvps %xmm0,%xmm10,%xmm9
13183 DB 68,15,89,218 ; mulps %xmm2,%xmm11
13184 DB 68,15,40,210 ; movaps %xmm2,%xmm10
13185 DB 69,15,89,210 ; mulps %xmm10,%xmm10
13186 DB 68,15,89,226 ; mulps %xmm2,%xmm12
13187 DB 69,15,88,229 ; addps %xmm13,%xmm12
13188 DB 69,15,89,212 ; mulps %xmm12,%xmm10
13189 DB 69,15,88,214 ; addps %xmm14,%xmm10
13190 DB 65,15,194,215,1 ; cmpltps %xmm15,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040013191 DB 15,40,194 ; movaps %xmm2,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040013192 DB 102,69,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040013193 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040013194 DB 65,15,40,192 ; movaps %xmm8,%xmm0
13195 DB 65,15,40,201 ; movaps %xmm9,%xmm1
13196 DB 65,15,40,210 ; movaps %xmm10,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040013197 DB 255,224 ; jmpq *%rax
13198
13199PUBLIC _sk_to_srgb_sse41
13200_sk_to_srgb_sse41 LABEL PROC
13201 DB 72,131,236,24 ; sub $0x18,%rsp
13202 DB 15,41,60,36 ; movaps %xmm7,(%rsp)
13203 DB 15,40,254 ; movaps %xmm6,%xmm7
13204 DB 15,40,245 ; movaps %xmm5,%xmm6
13205 DB 15,40,236 ; movaps %xmm4,%xmm5
13206 DB 15,40,227 ; movaps %xmm3,%xmm4
13207 DB 15,40,218 ; movaps %xmm2,%xmm3
13208 DB 15,40,209 ; movaps %xmm1,%xmm2
13209 DB 68,15,82,192 ; rsqrtps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013210 DB 68,15,40,29,14,50,0,0 ; movaps 0x320e(%rip),%xmm11 # 4bd0 <_sk_callback_sse41+0x3cb>
Mike Kleinf45e3d72017-05-15 17:36:59 -040013211 DB 68,15,40,200 ; movaps %xmm0,%xmm9
13212 DB 69,15,89,203 ; mulps %xmm11,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040013213 DB 68,15,40,37,14,50,0,0 ; movaps 0x320e(%rip),%xmm12 # 4be0 <_sk_callback_sse41+0x3db>
Mike Kleinf45e3d72017-05-15 17:36:59 -040013214 DB 69,15,40,248 ; movaps %xmm8,%xmm15
13215 DB 69,15,89,252 ; mulps %xmm12,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040013216 DB 68,15,40,21,14,50,0,0 ; movaps 0x320e(%rip),%xmm10 # 4bf0 <_sk_callback_sse41+0x3eb>
Mike Kleinf45e3d72017-05-15 17:36:59 -040013217 DB 69,15,88,250 ; addps %xmm10,%xmm15
13218 DB 69,15,89,248 ; mulps %xmm8,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040013219 DB 68,15,40,45,14,50,0,0 ; movaps 0x320e(%rip),%xmm13 # 4c00 <_sk_callback_sse41+0x3fb>
Mike Kleinf45e3d72017-05-15 17:36:59 -040013220 DB 69,15,88,253 ; addps %xmm13,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040013221 DB 68,15,40,53,18,50,0,0 ; movaps 0x3212(%rip),%xmm14 # 4c10 <_sk_callback_sse41+0x40b>
Mike Kleinf45e3d72017-05-15 17:36:59 -040013222 DB 69,15,88,198 ; addps %xmm14,%xmm8
13223 DB 69,15,83,192 ; rcpps %xmm8,%xmm8
13224 DB 69,15,89,199 ; mulps %xmm15,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013225 DB 68,15,40,61,14,50,0,0 ; movaps 0x320e(%rip),%xmm15 # 4c20 <_sk_callback_sse41+0x41b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013226 DB 65,15,194,199,1 ; cmpltps %xmm15,%xmm0
Mike Kleinf45e3d72017-05-15 17:36:59 -040013227 DB 102,69,15,56,20,193 ; blendvps %xmm0,%xmm9,%xmm8
13228 DB 68,15,82,202 ; rsqrtps %xmm2,%xmm9
13229 DB 65,15,40,193 ; movaps %xmm9,%xmm0
13230 DB 65,15,89,196 ; mulps %xmm12,%xmm0
13231 DB 65,15,88,194 ; addps %xmm10,%xmm0
13232 DB 65,15,89,193 ; mulps %xmm9,%xmm0
13233 DB 65,15,88,197 ; addps %xmm13,%xmm0
13234 DB 69,15,88,206 ; addps %xmm14,%xmm9
13235 DB 69,15,83,201 ; rcpps %xmm9,%xmm9
13236 DB 68,15,89,200 ; mulps %xmm0,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040013237 DB 65,15,89,203 ; mulps %xmm11,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040013238 DB 65,15,194,215,1 ; cmpltps %xmm15,%xmm2
13239 DB 15,40,194 ; movaps %xmm2,%xmm0
Mike Kleinf45e3d72017-05-15 17:36:59 -040013240 DB 102,68,15,56,20,201 ; blendvps %xmm0,%xmm1,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040013241 DB 15,82,195 ; rsqrtps %xmm3,%xmm0
Mike Kleinf45e3d72017-05-15 17:36:59 -040013242 DB 68,15,89,224 ; mulps %xmm0,%xmm12
13243 DB 69,15,88,226 ; addps %xmm10,%xmm12
13244 DB 68,15,89,224 ; mulps %xmm0,%xmm12
13245 DB 69,15,88,229 ; addps %xmm13,%xmm12
13246 DB 65,15,88,198 ; addps %xmm14,%xmm0
13247 DB 68,15,83,208 ; rcpps %xmm0,%xmm10
13248 DB 69,15,89,212 ; mulps %xmm12,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040013249 DB 68,15,89,219 ; mulps %xmm3,%xmm11
13250 DB 65,15,194,223,1 ; cmpltps %xmm15,%xmm3
13251 DB 15,40,195 ; movaps %xmm3,%xmm0
Mike Kleinf45e3d72017-05-15 17:36:59 -040013252 DB 102,69,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040013253 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinf45e3d72017-05-15 17:36:59 -040013254 DB 65,15,40,192 ; movaps %xmm8,%xmm0
13255 DB 65,15,40,201 ; movaps %xmm9,%xmm1
13256 DB 65,15,40,210 ; movaps %xmm10,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040013257 DB 15,40,220 ; movaps %xmm4,%xmm3
13258 DB 15,40,229 ; movaps %xmm5,%xmm4
13259 DB 15,40,238 ; movaps %xmm6,%xmm5
13260 DB 15,40,247 ; movaps %xmm7,%xmm6
13261 DB 15,40,60,36 ; movaps (%rsp),%xmm7
13262 DB 72,131,196,24 ; add $0x18,%rsp
13263 DB 255,224 ; jmpq *%rax
13264
Mike Kleindb1cbcb2017-04-12 08:35:41 -040013265PUBLIC _sk_rgb_to_hsl_sse41
13266_sk_rgb_to_hsl_sse41 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040013267 DB 68,15,40,201 ; movaps %xmm1,%xmm9
13268 DB 68,15,40,192 ; movaps %xmm0,%xmm8
13269 DB 69,15,40,216 ; movaps %xmm8,%xmm11
13270 DB 69,15,95,217 ; maxps %xmm9,%xmm11
13271 DB 68,15,95,218 ; maxps %xmm2,%xmm11
13272 DB 69,15,40,224 ; movaps %xmm8,%xmm12
13273 DB 69,15,93,225 ; minps %xmm9,%xmm12
13274 DB 68,15,93,226 ; minps %xmm2,%xmm12
13275 DB 65,15,40,203 ; movaps %xmm11,%xmm1
Mike Kleindb1cbcb2017-04-12 08:35:41 -040013276 DB 65,15,92,204 ; subps %xmm12,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040013277 DB 68,15,40,53,88,49,0,0 ; movaps 0x3158(%rip),%xmm14 # 4c30 <_sk_callback_sse41+0x42b>
Mike Kleinfe560a82017-05-01 12:56:35 -040013278 DB 68,15,94,241 ; divps %xmm1,%xmm14
13279 DB 69,15,40,211 ; movaps %xmm11,%xmm10
13280 DB 69,15,194,208,0 ; cmpeqps %xmm8,%xmm10
13281 DB 65,15,40,193 ; movaps %xmm9,%xmm0
13282 DB 15,92,194 ; subps %xmm2,%xmm0
13283 DB 65,15,89,198 ; mulps %xmm14,%xmm0
13284 DB 69,15,40,249 ; movaps %xmm9,%xmm15
13285 DB 68,15,194,250,1 ; cmpltps %xmm2,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040013286 DB 68,15,84,61,63,49,0,0 ; andps 0x313f(%rip),%xmm15 # 4c40 <_sk_callback_sse41+0x43b>
Mike Kleinfe560a82017-05-01 12:56:35 -040013287 DB 68,15,88,248 ; addps %xmm0,%xmm15
13288 DB 65,15,40,195 ; movaps %xmm11,%xmm0
13289 DB 65,15,194,193,0 ; cmpeqps %xmm9,%xmm0
13290 DB 65,15,92,208 ; subps %xmm8,%xmm2
13291 DB 65,15,89,214 ; mulps %xmm14,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040013292 DB 68,15,40,45,50,49,0,0 ; movaps 0x3132(%rip),%xmm13 # 4c50 <_sk_callback_sse41+0x44b>
Mike Kleinfe560a82017-05-01 12:56:35 -040013293 DB 65,15,88,213 ; addps %xmm13,%xmm2
13294 DB 69,15,92,193 ; subps %xmm9,%xmm8
13295 DB 69,15,89,198 ; mulps %xmm14,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013296 DB 68,15,88,5,46,49,0,0 ; addps 0x312e(%rip),%xmm8 # 4c60 <_sk_callback_sse41+0x45b>
Mike Kleinfe560a82017-05-01 12:56:35 -040013297 DB 102,68,15,56,20,194 ; blendvps %xmm0,%xmm2,%xmm8
Mike Kleindb1cbcb2017-04-12 08:35:41 -040013298 DB 65,15,40,194 ; movaps %xmm10,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040013299 DB 102,69,15,56,20,199 ; blendvps %xmm0,%xmm15,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013300 DB 68,15,89,5,38,49,0,0 ; mulps 0x3126(%rip),%xmm8 # 4c70 <_sk_callback_sse41+0x46b>
Mike Kleinfe560a82017-05-01 12:56:35 -040013301 DB 69,15,40,203 ; movaps %xmm11,%xmm9
13302 DB 69,15,194,204,4 ; cmpneqps %xmm12,%xmm9
13303 DB 69,15,84,193 ; andps %xmm9,%xmm8
13304 DB 69,15,92,235 ; subps %xmm11,%xmm13
13305 DB 69,15,88,220 ; addps %xmm12,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040013306 DB 15,40,5,26,49,0,0 ; movaps 0x311a(%rip),%xmm0 # 4c80 <_sk_callback_sse41+0x47b>
Mike Kleinfe560a82017-05-01 12:56:35 -040013307 DB 65,15,40,211 ; movaps %xmm11,%xmm2
13308 DB 15,89,208 ; mulps %xmm0,%xmm2
13309 DB 15,194,194,1 ; cmpltps %xmm2,%xmm0
13310 DB 69,15,92,236 ; subps %xmm12,%xmm13
13311 DB 102,69,15,56,20,221 ; blendvps %xmm0,%xmm13,%xmm11
13312 DB 65,15,94,203 ; divps %xmm11,%xmm1
13313 DB 65,15,84,201 ; andps %xmm9,%xmm1
Mike Kleindb1cbcb2017-04-12 08:35:41 -040013314 DB 72,173 ; lods %ds:(%rsi),%rax
13315 DB 65,15,40,192 ; movaps %xmm8,%xmm0
Mike Kleindb1cbcb2017-04-12 08:35:41 -040013316 DB 255,224 ; jmpq *%rax
13317
13318PUBLIC _sk_hsl_to_rgb_sse41
13319_sk_hsl_to_rgb_sse41 LABEL PROC
Mike Klein5664e652017-05-01 16:01:38 -040013320 DB 72,131,236,104 ; sub $0x68,%rsp
13321 DB 15,41,124,36,80 ; movaps %xmm7,0x50(%rsp)
13322 DB 15,41,116,36,64 ; movaps %xmm6,0x40(%rsp)
13323 DB 15,41,108,36,48 ; movaps %xmm5,0x30(%rsp)
13324 DB 15,41,100,36,32 ; movaps %xmm4,0x20(%rsp)
Mike Klein879a08a2017-05-01 15:34:01 -040013325 DB 15,41,92,36,16 ; movaps %xmm3,0x10(%rsp)
Mike Klein5664e652017-05-01 16:01:38 -040013326 DB 68,15,40,208 ; movaps %xmm0,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040013327 DB 68,15,40,13,220,48,0,0 ; movaps 0x30dc(%rip),%xmm9 # 4c90 <_sk_callback_sse41+0x48b>
Mike Klein5664e652017-05-01 16:01:38 -040013328 DB 65,15,40,193 ; movaps %xmm9,%xmm0
13329 DB 15,194,194,2 ; cmpleps %xmm2,%xmm0
13330 DB 15,40,217 ; movaps %xmm1,%xmm3
13331 DB 15,40,233 ; movaps %xmm1,%xmm5
13332 DB 15,89,234 ; mulps %xmm2,%xmm5
13333 DB 15,92,221 ; subps %xmm5,%xmm3
13334 DB 102,15,56,20,235 ; blendvps %xmm0,%xmm3,%xmm5
13335 DB 15,88,234 ; addps %xmm2,%xmm5
13336 DB 68,15,40,194 ; movaps %xmm2,%xmm8
13337 DB 15,41,20,36 ; movaps %xmm2,(%rsp)
Mike Klein879a08a2017-05-01 15:34:01 -040013338 DB 69,15,88,192 ; addps %xmm8,%xmm8
Mike Klein5664e652017-05-01 16:01:38 -040013339 DB 68,15,92,197 ; subps %xmm5,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013340 DB 68,15,40,53,184,48,0,0 ; movaps 0x30b8(%rip),%xmm14 # 4ca0 <_sk_callback_sse41+0x49b>
Mike Klein5664e652017-05-01 16:01:38 -040013341 DB 69,15,88,242 ; addps %xmm10,%xmm14
13342 DB 102,65,15,58,8,198,1 ; roundps $0x1,%xmm14,%xmm0
13343 DB 68,15,92,240 ; subps %xmm0,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040013344 DB 68,15,40,29,177,48,0,0 ; movaps 0x30b1(%rip),%xmm11 # 4cb0 <_sk_callback_sse41+0x4ab>
Mike Klein5664e652017-05-01 16:01:38 -040013345 DB 65,15,40,195 ; movaps %xmm11,%xmm0
13346 DB 65,15,194,198,2 ; cmpleps %xmm14,%xmm0
13347 DB 15,40,245 ; movaps %xmm5,%xmm6
13348 DB 65,15,92,240 ; subps %xmm8,%xmm6
Mike Klein8ca33562017-05-23 08:07:43 -040013349 DB 15,40,61,170,48,0,0 ; movaps 0x30aa(%rip),%xmm7 # 4cc0 <_sk_callback_sse41+0x4bb>
Mike Klein5664e652017-05-01 16:01:38 -040013350 DB 69,15,40,238 ; movaps %xmm14,%xmm13
Mike Klein879a08a2017-05-01 15:34:01 -040013351 DB 68,15,89,239 ; mulps %xmm7,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040013352 DB 15,40,29,171,48,0,0 ; movaps 0x30ab(%rip),%xmm3 # 4cd0 <_sk_callback_sse41+0x4cb>
Mike Klein5664e652017-05-01 16:01:38 -040013353 DB 68,15,40,227 ; movaps %xmm3,%xmm12
13354 DB 69,15,92,229 ; subps %xmm13,%xmm12
13355 DB 68,15,89,230 ; mulps %xmm6,%xmm12
13356 DB 69,15,88,224 ; addps %xmm8,%xmm12
13357 DB 102,69,15,56,20,224 ; blendvps %xmm0,%xmm8,%xmm12
13358 DB 65,15,40,193 ; movaps %xmm9,%xmm0
13359 DB 65,15,194,198,2 ; cmpleps %xmm14,%xmm0
13360 DB 68,15,40,253 ; movaps %xmm5,%xmm15
13361 DB 102,69,15,56,20,252 ; blendvps %xmm0,%xmm12,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040013362 DB 68,15,40,37,138,48,0,0 ; movaps 0x308a(%rip),%xmm12 # 4ce0 <_sk_callback_sse41+0x4db>
Mike Klein879a08a2017-05-01 15:34:01 -040013363 DB 65,15,40,196 ; movaps %xmm12,%xmm0
Mike Klein5664e652017-05-01 16:01:38 -040013364 DB 65,15,194,198,2 ; cmpleps %xmm14,%xmm0
13365 DB 68,15,89,238 ; mulps %xmm6,%xmm13
13366 DB 69,15,88,232 ; addps %xmm8,%xmm13
13367 DB 102,69,15,56,20,239 ; blendvps %xmm0,%xmm15,%xmm13
13368 DB 69,15,87,246 ; xorps %xmm14,%xmm14
13369 DB 68,15,194,241,0 ; cmpeqps %xmm1,%xmm14
13370 DB 65,15,40,198 ; movaps %xmm14,%xmm0
13371 DB 102,68,15,56,20,234 ; blendvps %xmm0,%xmm2,%xmm13
13372 DB 102,65,15,58,8,194,1 ; roundps $0x1,%xmm10,%xmm0
13373 DB 69,15,40,250 ; movaps %xmm10,%xmm15
13374 DB 68,15,92,248 ; subps %xmm0,%xmm15
Mike Klein879a08a2017-05-01 15:34:01 -040013375 DB 65,15,40,195 ; movaps %xmm11,%xmm0
Mike Klein5664e652017-05-01 16:01:38 -040013376 DB 65,15,194,199,2 ; cmpleps %xmm15,%xmm0
13377 DB 65,15,40,207 ; movaps %xmm15,%xmm1
13378 DB 15,89,207 ; mulps %xmm7,%xmm1
13379 DB 15,40,211 ; movaps %xmm3,%xmm2
13380 DB 15,92,209 ; subps %xmm1,%xmm2
13381 DB 15,89,214 ; mulps %xmm6,%xmm2
13382 DB 65,15,88,208 ; addps %xmm8,%xmm2
13383 DB 102,65,15,56,20,208 ; blendvps %xmm0,%xmm8,%xmm2
13384 DB 65,15,40,193 ; movaps %xmm9,%xmm0
13385 DB 65,15,194,199,2 ; cmpleps %xmm15,%xmm0
13386 DB 15,40,229 ; movaps %xmm5,%xmm4
13387 DB 102,15,56,20,226 ; blendvps %xmm0,%xmm2,%xmm4
13388 DB 65,15,40,196 ; movaps %xmm12,%xmm0
13389 DB 65,15,194,199,2 ; cmpleps %xmm15,%xmm0
13390 DB 15,89,206 ; mulps %xmm6,%xmm1
13391 DB 65,15,88,200 ; addps %xmm8,%xmm1
13392 DB 102,15,56,20,204 ; blendvps %xmm0,%xmm4,%xmm1
13393 DB 65,15,40,198 ; movaps %xmm14,%xmm0
13394 DB 15,40,20,36 ; movaps (%rsp),%xmm2
13395 DB 102,15,56,20,202 ; blendvps %xmm0,%xmm2,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040013396 DB 68,15,88,21,3,48,0,0 ; addps 0x3003(%rip),%xmm10 # 4cf0 <_sk_callback_sse41+0x4eb>
Mike Klein879a08a2017-05-01 15:34:01 -040013397 DB 102,65,15,58,8,194,1 ; roundps $0x1,%xmm10,%xmm0
13398 DB 68,15,92,208 ; subps %xmm0,%xmm10
Mike Klein5664e652017-05-01 16:01:38 -040013399 DB 69,15,194,218,2 ; cmpleps %xmm10,%xmm11
13400 DB 65,15,89,250 ; mulps %xmm10,%xmm7
13401 DB 15,92,223 ; subps %xmm7,%xmm3
13402 DB 15,89,222 ; mulps %xmm6,%xmm3
13403 DB 65,15,88,216 ; addps %xmm8,%xmm3
Mike Klein879a08a2017-05-01 15:34:01 -040013404 DB 65,15,40,195 ; movaps %xmm11,%xmm0
Mike Klein5664e652017-05-01 16:01:38 -040013405 DB 102,65,15,56,20,216 ; blendvps %xmm0,%xmm8,%xmm3
13406 DB 69,15,194,202,2 ; cmpleps %xmm10,%xmm9
Mike Klein879a08a2017-05-01 15:34:01 -040013407 DB 65,15,40,193 ; movaps %xmm9,%xmm0
Mike Klein5664e652017-05-01 16:01:38 -040013408 DB 102,15,56,20,235 ; blendvps %xmm0,%xmm3,%xmm5
13409 DB 69,15,194,226,2 ; cmpleps %xmm10,%xmm12
13410 DB 15,89,254 ; mulps %xmm6,%xmm7
13411 DB 68,15,88,199 ; addps %xmm7,%xmm8
13412 DB 65,15,40,196 ; movaps %xmm12,%xmm0
13413 DB 102,68,15,56,20,197 ; blendvps %xmm0,%xmm5,%xmm8
13414 DB 65,15,40,198 ; movaps %xmm14,%xmm0
13415 DB 102,68,15,56,20,194 ; blendvps %xmm0,%xmm2,%xmm8
13416 DB 72,173 ; lods %ds:(%rsi),%rax
13417 DB 65,15,40,197 ; movaps %xmm13,%xmm0
Mike Klein879a08a2017-05-01 15:34:01 -040013418 DB 65,15,40,208 ; movaps %xmm8,%xmm2
Mike Klein5664e652017-05-01 16:01:38 -040013419 DB 15,40,92,36,16 ; movaps 0x10(%rsp),%xmm3
13420 DB 15,40,100,36,32 ; movaps 0x20(%rsp),%xmm4
13421 DB 15,40,108,36,48 ; movaps 0x30(%rsp),%xmm5
13422 DB 15,40,116,36,64 ; movaps 0x40(%rsp),%xmm6
13423 DB 15,40,124,36,80 ; movaps 0x50(%rsp),%xmm7
13424 DB 72,131,196,104 ; add $0x68,%rsp
Mike Kleindb1cbcb2017-04-12 08:35:41 -040013425 DB 255,224 ; jmpq *%rax
13426
Mike Kleind7e06ae2017-03-29 16:33:06 -040013427PUBLIC _sk_scale_1_float_sse41
13428_sk_scale_1_float_sse41 LABEL PROC
13429 DB 72,173 ; lods %ds:(%rsi),%rax
13430 DB 243,68,15,16,0 ; movss (%rax),%xmm8
13431 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
13432 DB 65,15,89,192 ; mulps %xmm8,%xmm0
13433 DB 65,15,89,200 ; mulps %xmm8,%xmm1
13434 DB 65,15,89,208 ; mulps %xmm8,%xmm2
13435 DB 65,15,89,216 ; mulps %xmm8,%xmm3
13436 DB 72,173 ; lods %ds:(%rsi),%rax
13437 DB 255,224 ; jmpq *%rax
13438
13439PUBLIC _sk_scale_u8_sse41
13440_sk_scale_u8_sse41 LABEL PROC
13441 DB 72,173 ; lods %ds:(%rsi),%rax
13442 DB 72,139,0 ; mov (%rax),%rax
13443 DB 102,68,15,56,49,4,56 ; pmovzxbd (%rax,%rdi,1),%xmm8
13444 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013445 DB 68,15,89,5,92,47,0,0 ; mulps 0x2f5c(%rip),%xmm8 # 4d00 <_sk_callback_sse41+0x4fb>
Mike Kleinfe560a82017-05-01 12:56:35 -040013446 DB 65,15,89,192 ; mulps %xmm8,%xmm0
13447 DB 65,15,89,200 ; mulps %xmm8,%xmm1
13448 DB 65,15,89,208 ; mulps %xmm8,%xmm2
13449 DB 65,15,89,216 ; mulps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040013450 DB 72,173 ; lods %ds:(%rsi),%rax
13451 DB 255,224 ; jmpq *%rax
13452
13453PUBLIC _sk_lerp_1_float_sse41
13454_sk_lerp_1_float_sse41 LABEL PROC
13455 DB 72,173 ; lods %ds:(%rsi),%rax
13456 DB 243,68,15,16,0 ; movss (%rax),%xmm8
13457 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
13458 DB 15,92,196 ; subps %xmm4,%xmm0
13459 DB 65,15,89,192 ; mulps %xmm8,%xmm0
13460 DB 15,88,196 ; addps %xmm4,%xmm0
13461 DB 15,92,205 ; subps %xmm5,%xmm1
13462 DB 65,15,89,200 ; mulps %xmm8,%xmm1
13463 DB 15,88,205 ; addps %xmm5,%xmm1
13464 DB 15,92,214 ; subps %xmm6,%xmm2
13465 DB 65,15,89,208 ; mulps %xmm8,%xmm2
13466 DB 15,88,214 ; addps %xmm6,%xmm2
13467 DB 15,92,223 ; subps %xmm7,%xmm3
13468 DB 65,15,89,216 ; mulps %xmm8,%xmm3
13469 DB 15,88,223 ; addps %xmm7,%xmm3
13470 DB 72,173 ; lods %ds:(%rsi),%rax
13471 DB 255,224 ; jmpq *%rax
13472
13473PUBLIC _sk_lerp_u8_sse41
13474_sk_lerp_u8_sse41 LABEL PROC
13475 DB 72,173 ; lods %ds:(%rsi),%rax
13476 DB 72,139,0 ; mov (%rax),%rax
13477 DB 102,68,15,56,49,4,56 ; pmovzxbd (%rax,%rdi,1),%xmm8
13478 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013479 DB 68,15,89,5,8,47,0,0 ; mulps 0x2f08(%rip),%xmm8 # 4d10 <_sk_callback_sse41+0x50b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013480 DB 15,92,196 ; subps %xmm4,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040013481 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040013482 DB 15,88,196 ; addps %xmm4,%xmm0
13483 DB 15,92,205 ; subps %xmm5,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040013484 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040013485 DB 15,88,205 ; addps %xmm5,%xmm1
13486 DB 15,92,214 ; subps %xmm6,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040013487 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040013488 DB 15,88,214 ; addps %xmm6,%xmm2
13489 DB 15,92,223 ; subps %xmm7,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -040013490 DB 65,15,89,216 ; mulps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040013491 DB 15,88,223 ; addps %xmm7,%xmm3
13492 DB 72,173 ; lods %ds:(%rsi),%rax
13493 DB 255,224 ; jmpq *%rax
13494
13495PUBLIC _sk_lerp_565_sse41
13496_sk_lerp_565_sse41 LABEL PROC
13497 DB 72,173 ; lods %ds:(%rsi),%rax
13498 DB 72,139,0 ; mov (%rax),%rax
bungeman6f9f2592017-05-10 13:50:12 -040013499 DB 102,68,15,56,51,20,120 ; pmovzxwd (%rax,%rdi,2),%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040013500 DB 102,68,15,111,5,215,46,0,0 ; movdqa 0x2ed7(%rip),%xmm8 # 4d20 <_sk_callback_sse41+0x51b>
bungeman6f9f2592017-05-10 13:50:12 -040013501 DB 102,69,15,219,194 ; pand %xmm10,%xmm8
Mike Klein308e6242017-04-27 13:56:33 -040013502 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013503 DB 68,15,89,5,214,46,0,0 ; mulps 0x2ed6(%rip),%xmm8 # 4d30 <_sk_callback_sse41+0x52b>
13504 DB 102,68,15,111,13,221,46,0,0 ; movdqa 0x2edd(%rip),%xmm9 # 4d40 <_sk_callback_sse41+0x53b>
bungeman6f9f2592017-05-10 13:50:12 -040013505 DB 102,69,15,219,202 ; pand %xmm10,%xmm9
13506 DB 69,15,91,201 ; cvtdq2ps %xmm9,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040013507 DB 68,15,89,13,220,46,0,0 ; mulps 0x2edc(%rip),%xmm9 # 4d50 <_sk_callback_sse41+0x54b>
13508 DB 102,68,15,219,21,227,46,0,0 ; pand 0x2ee3(%rip),%xmm10 # 4d60 <_sk_callback_sse41+0x55b>
bungeman6f9f2592017-05-10 13:50:12 -040013509 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040013510 DB 68,15,89,21,231,46,0,0 ; mulps 0x2ee7(%rip),%xmm10 # 4d70 <_sk_callback_sse41+0x56b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013511 DB 15,92,196 ; subps %xmm4,%xmm0
bungeman6f9f2592017-05-10 13:50:12 -040013512 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040013513 DB 15,88,196 ; addps %xmm4,%xmm0
13514 DB 15,92,205 ; subps %xmm5,%xmm1
bungeman6f9f2592017-05-10 13:50:12 -040013515 DB 65,15,89,201 ; mulps %xmm9,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040013516 DB 15,88,205 ; addps %xmm5,%xmm1
13517 DB 15,92,214 ; subps %xmm6,%xmm2
bungeman6f9f2592017-05-10 13:50:12 -040013518 DB 65,15,89,210 ; mulps %xmm10,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040013519 DB 15,88,214 ; addps %xmm6,%xmm2
bungeman6f9f2592017-05-10 13:50:12 -040013520 DB 15,92,223 ; subps %xmm7,%xmm3
13521 DB 68,15,89,195 ; mulps %xmm3,%xmm8
13522 DB 68,15,88,199 ; addps %xmm7,%xmm8
13523 DB 68,15,89,203 ; mulps %xmm3,%xmm9
13524 DB 68,15,88,207 ; addps %xmm7,%xmm9
13525 DB 65,15,89,218 ; mulps %xmm10,%xmm3
13526 DB 15,88,223 ; addps %xmm7,%xmm3
13527 DB 68,15,95,203 ; maxps %xmm3,%xmm9
13528 DB 69,15,95,193 ; maxps %xmm9,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -040013529 DB 72,173 ; lods %ds:(%rsi),%rax
bungeman6f9f2592017-05-10 13:50:12 -040013530 DB 65,15,40,216 ; movaps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040013531 DB 255,224 ; jmpq *%rax
13532
13533PUBLIC _sk_load_tables_sse41
13534_sk_load_tables_sse41 LABEL PROC
13535 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040013536 DB 76,139,0 ; mov (%rax),%r8
13537 DB 76,139,72,8 ; mov 0x8(%rax),%r9
13538 DB 243,69,15,111,4,184 ; movdqu (%r8,%rdi,4),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040013539 DB 102,15,111,5,152,46,0,0 ; movdqa 0x2e98(%rip),%xmm0 # 4d80 <_sk_callback_sse41+0x57b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013540 DB 102,65,15,219,192 ; pand %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040013541 DB 102,73,15,58,22,192,1 ; pextrq $0x1,%xmm0,%r8
13542 DB 102,72,15,126,193 ; movq %xmm0,%rcx
13543 DB 68,15,182,209 ; movzbl %cl,%r10d
Mike Kleind7e06ae2017-03-29 16:33:06 -040013544 DB 72,193,233,30 ; shr $0x1e,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013545 DB 69,15,182,216 ; movzbl %r8b,%r11d
13546 DB 73,193,232,30 ; shr $0x1e,%r8
13547 DB 243,67,15,16,4,145 ; movss (%r9,%r10,4),%xmm0
13548 DB 102,65,15,58,33,4,9,16 ; insertps $0x10,(%r9,%rcx,1),%xmm0
13549 DB 102,67,15,58,33,4,153,32 ; insertps $0x20,(%r9,%r11,4),%xmm0
13550 DB 243,67,15,16,12,1 ; movss (%r9,%r8,1),%xmm1
13551 DB 102,15,58,33,193,48 ; insertps $0x30,%xmm1,%xmm0
13552 DB 76,139,64,16 ; mov 0x10(%rax),%r8
13553 DB 102,65,15,111,200 ; movdqa %xmm8,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040013554 DB 102,15,56,0,13,83,46,0,0 ; pshufb 0x2e53(%rip),%xmm1 # 4d90 <_sk_callback_sse41+0x58b>
Mike Klein0aa742f2017-04-27 13:36:57 -040013555 DB 102,73,15,58,22,201,1 ; pextrq $0x1,%xmm1,%r9
13556 DB 102,72,15,126,201 ; movq %xmm1,%rcx
13557 DB 68,15,182,209 ; movzbl %cl,%r10d
13558 DB 72,193,233,30 ; shr $0x1e,%rcx
13559 DB 69,15,182,217 ; movzbl %r9b,%r11d
13560 DB 73,193,233,30 ; shr $0x1e,%r9
13561 DB 243,67,15,16,12,144 ; movss (%r8,%r10,4),%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040013562 DB 102,65,15,58,33,12,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040013563 DB 243,67,15,16,20,152 ; movss (%r8,%r11,4),%xmm2
13564 DB 102,15,58,33,202,32 ; insertps $0x20,%xmm2,%xmm1
13565 DB 243,67,15,16,20,8 ; movss (%r8,%r9,1),%xmm2
13566 DB 102,15,58,33,202,48 ; insertps $0x30,%xmm2,%xmm1
13567 DB 76,139,64,24 ; mov 0x18(%rax),%r8
13568 DB 102,65,15,111,208 ; movdqa %xmm8,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040013569 DB 102,15,56,0,21,15,46,0,0 ; pshufb 0x2e0f(%rip),%xmm2 # 4da0 <_sk_callback_sse41+0x59b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013570 DB 102,72,15,58,22,209,1 ; pextrq $0x1,%xmm2,%rcx
Mike Kleind7e06ae2017-03-29 16:33:06 -040013571 DB 102,72,15,126,208 ; movq %xmm2,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040013572 DB 68,15,182,200 ; movzbl %al,%r9d
Mike Kleind7e06ae2017-03-29 16:33:06 -040013573 DB 72,193,232,30 ; shr $0x1e,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040013574 DB 68,15,182,209 ; movzbl %cl,%r10d
13575 DB 72,193,233,30 ; shr $0x1e,%rcx
13576 DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2
13577 DB 102,65,15,58,33,20,0,16 ; insertps $0x10,(%r8,%rax,1),%xmm2
13578 DB 243,67,15,16,28,144 ; movss (%r8,%r10,4),%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040013579 DB 102,15,58,33,211,32 ; insertps $0x20,%xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040013580 DB 243,65,15,16,28,8 ; movss (%r8,%rcx,1),%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040013581 DB 102,15,58,33,211,48 ; insertps $0x30,%xmm3,%xmm2
13582 DB 102,65,15,114,208,24 ; psrld $0x18,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040013583 DB 65,15,91,216 ; cvtdq2ps %xmm8,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040013584 DB 15,89,29,204,45,0,0 ; mulps 0x2dcc(%rip),%xmm3 # 4db0 <_sk_callback_sse41+0x5ab>
Mike Kleind7e06ae2017-03-29 16:33:06 -040013585 DB 72,173 ; lods %ds:(%rsi),%rax
13586 DB 255,224 ; jmpq *%rax
13587
Mike Kleina3735cd2017-04-17 13:19:05 -040013588PUBLIC _sk_load_tables_u16_be_sse41
13589_sk_load_tables_u16_be_sse41 LABEL PROC
13590 DB 72,173 ; lods %ds:(%rsi),%rax
13591 DB 72,139,8 ; mov (%rax),%rcx
13592 DB 76,139,64,8 ; mov 0x8(%rax),%r8
13593 DB 243,15,111,4,249 ; movdqu (%rcx,%rdi,8),%xmm0
13594 DB 243,15,111,76,249,16 ; movdqu 0x10(%rcx,%rdi,8),%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040013595 DB 102,68,15,111,200 ; movdqa %xmm0,%xmm9
13596 DB 102,68,15,97,201 ; punpcklwd %xmm1,%xmm9
Mike Kleina3735cd2017-04-17 13:19:05 -040013597 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040013598 DB 102,65,15,111,201 ; movdqa %xmm9,%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -040013599 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040013600 DB 102,68,15,105,200 ; punpckhwd %xmm0,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040013601 DB 102,68,15,111,5,159,45,0,0 ; movdqa 0x2d9f(%rip),%xmm8 # 4dc0 <_sk_callback_sse41+0x5bb>
Mike Klein0aa742f2017-04-27 13:36:57 -040013602 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040013603 DB 102,65,15,219,192 ; pand %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040013604 DB 102,15,56,51,192 ; pmovzxwd %xmm0,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040013605 DB 102,73,15,58,22,193,1 ; pextrq $0x1,%xmm0,%r9
13606 DB 102,72,15,126,193 ; movq %xmm0,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013607 DB 68,15,182,209 ; movzbl %cl,%r10d
Mike Kleina3735cd2017-04-17 13:19:05 -040013608 DB 72,193,233,30 ; shr $0x1e,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013609 DB 69,15,182,217 ; movzbl %r9b,%r11d
Mike Kleina3735cd2017-04-17 13:19:05 -040013610 DB 73,193,233,30 ; shr $0x1e,%r9
13611 DB 243,67,15,16,4,144 ; movss (%r8,%r10,4),%xmm0
13612 DB 102,65,15,58,33,4,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040013613 DB 243,67,15,16,20,152 ; movss (%r8,%r11,4),%xmm2
13614 DB 102,15,58,33,194,32 ; insertps $0x20,%xmm2,%xmm0
13615 DB 243,67,15,16,20,8 ; movss (%r8,%r9,1),%xmm2
13616 DB 102,15,58,33,194,48 ; insertps $0x30,%xmm2,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040013617 DB 76,139,64,16 ; mov 0x10(%rax),%r8
Mike Klein8ca33562017-05-23 08:07:43 -040013618 DB 102,15,56,0,13,82,45,0,0 ; pshufb 0x2d52(%rip),%xmm1 # 4dd0 <_sk_callback_sse41+0x5cb>
Mike Kleina3735cd2017-04-17 13:19:05 -040013619 DB 102,15,56,51,201 ; pmovzxwd %xmm1,%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -040013620 DB 102,73,15,58,22,201,1 ; pextrq $0x1,%xmm1,%r9
13621 DB 102,72,15,126,201 ; movq %xmm1,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013622 DB 68,15,182,209 ; movzbl %cl,%r10d
Mike Kleina3735cd2017-04-17 13:19:05 -040013623 DB 72,193,233,30 ; shr $0x1e,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013624 DB 69,15,182,217 ; movzbl %r9b,%r11d
Mike Kleina3735cd2017-04-17 13:19:05 -040013625 DB 73,193,233,30 ; shr $0x1e,%r9
13626 DB 243,67,15,16,12,144 ; movss (%r8,%r10,4),%xmm1
13627 DB 102,65,15,58,33,12,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm1
13628 DB 243,67,15,16,20,152 ; movss (%r8,%r11,4),%xmm2
13629 DB 102,15,58,33,202,32 ; insertps $0x20,%xmm2,%xmm1
13630 DB 243,67,15,16,20,8 ; movss (%r8,%r9,1),%xmm2
13631 DB 102,15,58,33,202,48 ; insertps $0x30,%xmm2,%xmm1
13632 DB 76,139,64,24 ; mov 0x18(%rax),%r8
Mike Klein0aa742f2017-04-27 13:36:57 -040013633 DB 102,69,15,219,193 ; pand %xmm9,%xmm8
13634 DB 102,65,15,56,51,208 ; pmovzxwd %xmm8,%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -040013635 DB 102,72,15,58,22,209,1 ; pextrq $0x1,%xmm2,%rcx
13636 DB 102,72,15,126,208 ; movq %xmm2,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040013637 DB 68,15,182,200 ; movzbl %al,%r9d
Mike Kleina3735cd2017-04-17 13:19:05 -040013638 DB 72,193,232,30 ; shr $0x1e,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040013639 DB 68,15,182,209 ; movzbl %cl,%r10d
Mike Kleina3735cd2017-04-17 13:19:05 -040013640 DB 72,193,233,30 ; shr $0x1e,%rcx
13641 DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2
13642 DB 102,65,15,58,33,20,0,16 ; insertps $0x10,(%r8,%rax,1),%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040013643 DB 243,67,15,16,28,144 ; movss (%r8,%r10,4),%xmm3
13644 DB 102,15,58,33,211,32 ; insertps $0x20,%xmm3,%xmm2
13645 DB 243,65,15,16,28,8 ; movss (%r8,%rcx,1),%xmm3
13646 DB 102,15,58,33,211,48 ; insertps $0x30,%xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040013647 DB 102,65,15,112,217,78 ; pshufd $0x4e,%xmm9,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -040013648 DB 102,68,15,111,195 ; movdqa %xmm3,%xmm8
13649 DB 102,65,15,113,240,8 ; psllw $0x8,%xmm8
Mike Kleina3735cd2017-04-17 13:19:05 -040013650 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -040013651 DB 102,65,15,235,216 ; por %xmm8,%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -040013652 DB 102,15,56,51,219 ; pmovzxwd %xmm3,%xmm3
13653 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040013654 DB 15,89,29,160,44,0,0 ; mulps 0x2ca0(%rip),%xmm3 # 4de0 <_sk_callback_sse41+0x5db>
Mike Kleina3735cd2017-04-17 13:19:05 -040013655 DB 72,173 ; lods %ds:(%rsi),%rax
13656 DB 255,224 ; jmpq *%rax
13657
13658PUBLIC _sk_load_tables_rgb_u16_be_sse41
13659_sk_load_tables_rgb_u16_be_sse41 LABEL PROC
13660 DB 72,173 ; lods %ds:(%rsi),%rax
13661 DB 76,141,12,127 ; lea (%rdi,%rdi,2),%r9
13662 DB 72,139,8 ; mov (%rax),%rcx
13663 DB 76,139,64,8 ; mov 0x8(%rax),%r8
13664 DB 243,66,15,111,20,73 ; movdqu (%rcx,%r9,2),%xmm2
13665 DB 243,66,15,111,68,73,8 ; movdqu 0x8(%rcx,%r9,2),%xmm0
13666 DB 102,15,115,216,4 ; psrldq $0x4,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040013667 DB 102,68,15,111,202 ; movdqa %xmm2,%xmm9
13668 DB 102,65,15,115,217,6 ; psrldq $0x6,%xmm9
Mike Kleina3735cd2017-04-17 13:19:05 -040013669 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2
13670 DB 102,15,115,216,6 ; psrldq $0x6,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040013671 DB 102,68,15,97,200 ; punpcklwd %xmm0,%xmm9
13672 DB 102,15,111,202 ; movdqa %xmm2,%xmm1
13673 DB 102,65,15,97,201 ; punpcklwd %xmm9,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040013674 DB 102,68,15,111,5,98,44,0,0 ; movdqa 0x2c62(%rip),%xmm8 # 4df0 <_sk_callback_sse41+0x5eb>
Mike Klein0aa742f2017-04-27 13:36:57 -040013675 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
13676 DB 102,65,15,219,192 ; pand %xmm8,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040013677 DB 102,15,56,51,192 ; pmovzxwd %xmm0,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040013678 DB 102,73,15,58,22,193,1 ; pextrq $0x1,%xmm0,%r9
13679 DB 102,72,15,126,193 ; movq %xmm0,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013680 DB 68,15,182,209 ; movzbl %cl,%r10d
Mike Kleina3735cd2017-04-17 13:19:05 -040013681 DB 72,193,233,30 ; shr $0x1e,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013682 DB 69,15,182,217 ; movzbl %r9b,%r11d
Mike Kleina3735cd2017-04-17 13:19:05 -040013683 DB 73,193,233,30 ; shr $0x1e,%r9
13684 DB 243,67,15,16,4,144 ; movss (%r8,%r10,4),%xmm0
13685 DB 102,65,15,58,33,4,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040013686 DB 243,67,15,16,28,152 ; movss (%r8,%r11,4),%xmm3
13687 DB 102,15,58,33,195,32 ; insertps $0x20,%xmm3,%xmm0
13688 DB 243,67,15,16,28,8 ; movss (%r8,%r9,1),%xmm3
13689 DB 102,15,58,33,195,48 ; insertps $0x30,%xmm3,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040013690 DB 76,139,64,16 ; mov 0x10(%rax),%r8
Mike Klein8ca33562017-05-23 08:07:43 -040013691 DB 102,15,56,0,13,21,44,0,0 ; pshufb 0x2c15(%rip),%xmm1 # 4e00 <_sk_callback_sse41+0x5fb>
Mike Klein0aa742f2017-04-27 13:36:57 -040013692 DB 102,15,56,51,201 ; pmovzxwd %xmm1,%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -040013693 DB 102,73,15,58,22,201,1 ; pextrq $0x1,%xmm1,%r9
13694 DB 102,72,15,126,201 ; movq %xmm1,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013695 DB 68,15,182,209 ; movzbl %cl,%r10d
Mike Kleina3735cd2017-04-17 13:19:05 -040013696 DB 72,193,233,30 ; shr $0x1e,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040013697 DB 69,15,182,217 ; movzbl %r9b,%r11d
Mike Kleina3735cd2017-04-17 13:19:05 -040013698 DB 73,193,233,30 ; shr $0x1e,%r9
13699 DB 243,67,15,16,12,144 ; movss (%r8,%r10,4),%xmm1
13700 DB 102,65,15,58,33,12,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm1
13701 DB 243,67,15,16,28,152 ; movss (%r8,%r11,4),%xmm3
13702 DB 102,15,58,33,203,32 ; insertps $0x20,%xmm3,%xmm1
13703 DB 243,67,15,16,28,8 ; movss (%r8,%r9,1),%xmm3
13704 DB 102,15,58,33,203,48 ; insertps $0x30,%xmm3,%xmm1
13705 DB 76,139,64,24 ; mov 0x18(%rax),%r8
Mike Klein0aa742f2017-04-27 13:36:57 -040013706 DB 102,65,15,105,209 ; punpckhwd %xmm9,%xmm2
13707 DB 102,65,15,219,208 ; pand %xmm8,%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -040013708 DB 102,15,56,51,210 ; pmovzxwd %xmm2,%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -040013709 DB 102,72,15,58,22,209,1 ; pextrq $0x1,%xmm2,%rcx
13710 DB 102,72,15,126,208 ; movq %xmm2,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040013711 DB 68,15,182,200 ; movzbl %al,%r9d
Mike Kleina3735cd2017-04-17 13:19:05 -040013712 DB 72,193,232,30 ; shr $0x1e,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040013713 DB 68,15,182,209 ; movzbl %cl,%r10d
Mike Kleina3735cd2017-04-17 13:19:05 -040013714 DB 72,193,233,30 ; shr $0x1e,%rcx
13715 DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2
13716 DB 102,65,15,58,33,20,0,16 ; insertps $0x10,(%r8,%rax,1),%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040013717 DB 243,67,15,16,28,144 ; movss (%r8,%r10,4),%xmm3
13718 DB 102,15,58,33,211,32 ; insertps $0x20,%xmm3,%xmm2
13719 DB 243,65,15,16,28,8 ; movss (%r8,%rcx,1),%xmm3
13720 DB 102,15,58,33,211,48 ; insertps $0x30,%xmm3,%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -040013721 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040013722 DB 15,40,29,128,43,0,0 ; movaps 0x2b80(%rip),%xmm3 # 4e10 <_sk_callback_sse41+0x60b>
Mike Kleina3735cd2017-04-17 13:19:05 -040013723 DB 255,224 ; jmpq *%rax
13724
Mike Klein40de6da2017-04-07 13:09:29 -040013725PUBLIC _sk_byte_tables_sse41
13726_sk_byte_tables_sse41 LABEL PROC
13727 DB 65,86 ; push %r14
13728 DB 83 ; push %rbx
13729 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040013730 DB 68,15,40,5,129,43,0,0 ; movaps 0x2b81(%rip),%xmm8 # 4e20 <_sk_callback_sse41+0x61b>
Mike Klein40de6da2017-04-07 13:09:29 -040013731 DB 65,15,89,192 ; mulps %xmm8,%xmm0
13732 DB 102,15,91,192 ; cvtps2dq %xmm0,%xmm0
13733 DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx
13734 DB 65,137,200 ; mov %ecx,%r8d
13735 DB 72,193,233,32 ; shr $0x20,%rcx
13736 DB 102,73,15,126,193 ; movq %xmm0,%r9
13737 DB 69,137,202 ; mov %r9d,%r10d
Mike Kleinfe560a82017-05-01 12:56:35 -040013738 DB 73,193,233,32 ; shr $0x20,%r9
13739 DB 76,139,24 ; mov (%rax),%r11
13740 DB 76,139,112,8 ; mov 0x8(%rax),%r14
13741 DB 102,67,15,58,32,4,19,0 ; pinsrb $0x0,(%r11,%r10,1),%xmm0
13742 DB 102,67,15,58,32,4,11,1 ; pinsrb $0x1,(%r11,%r9,1),%xmm0
13743 DB 67,15,182,28,3 ; movzbl (%r11,%r8,1),%ebx
Mike Klein40de6da2017-04-07 13:09:29 -040013744 DB 102,15,58,32,195,2 ; pinsrb $0x2,%ebx,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040013745 DB 65,15,182,12,11 ; movzbl (%r11,%rcx,1),%ecx
Mike Klein40de6da2017-04-07 13:09:29 -040013746 DB 102,15,58,32,193,3 ; pinsrb $0x3,%ecx,%xmm0
13747 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0
13748 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040013749 DB 68,15,40,13,50,43,0,0 ; movaps 0x2b32(%rip),%xmm9 # 4e30 <_sk_callback_sse41+0x62b>
Mike Klein40de6da2017-04-07 13:09:29 -040013750 DB 65,15,89,193 ; mulps %xmm9,%xmm0
13751 DB 65,15,89,200 ; mulps %xmm8,%xmm1
13752 DB 102,15,91,201 ; cvtps2dq %xmm1,%xmm1
13753 DB 102,72,15,58,22,201,1 ; pextrq $0x1,%xmm1,%rcx
13754 DB 65,137,200 ; mov %ecx,%r8d
13755 DB 72,193,233,32 ; shr $0x20,%rcx
13756 DB 102,72,15,126,203 ; movq %xmm1,%rbx
Mike Kleinfe560a82017-05-01 12:56:35 -040013757 DB 65,137,217 ; mov %ebx,%r9d
Mike Klein40de6da2017-04-07 13:09:29 -040013758 DB 72,193,235,32 ; shr $0x20,%rbx
Mike Kleinfe560a82017-05-01 12:56:35 -040013759 DB 102,67,15,58,32,12,14,0 ; pinsrb $0x0,(%r14,%r9,1),%xmm1
13760 DB 102,65,15,58,32,12,30,1 ; pinsrb $0x1,(%r14,%rbx,1),%xmm1
13761 DB 67,15,182,28,6 ; movzbl (%r14,%r8,1),%ebx
Mike Klein40de6da2017-04-07 13:09:29 -040013762 DB 102,15,58,32,203,2 ; pinsrb $0x2,%ebx,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040013763 DB 65,15,182,12,14 ; movzbl (%r14,%rcx,1),%ecx
Mike Klein40de6da2017-04-07 13:09:29 -040013764 DB 102,15,58,32,201,3 ; pinsrb $0x3,%ecx,%xmm1
13765 DB 102,15,56,49,201 ; pmovzxbd %xmm1,%xmm1
13766 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
13767 DB 65,15,89,201 ; mulps %xmm9,%xmm1
13768 DB 76,139,72,16 ; mov 0x10(%rax),%r9
13769 DB 65,15,89,208 ; mulps %xmm8,%xmm2
13770 DB 102,15,91,210 ; cvtps2dq %xmm2,%xmm2
13771 DB 102,72,15,58,22,211,1 ; pextrq $0x1,%xmm2,%rbx
13772 DB 65,137,216 ; mov %ebx,%r8d
13773 DB 72,193,235,32 ; shr $0x20,%rbx
13774 DB 102,72,15,126,209 ; movq %xmm2,%rcx
13775 DB 65,137,202 ; mov %ecx,%r10d
13776 DB 72,193,233,32 ; shr $0x20,%rcx
13777 DB 102,67,15,58,32,20,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm2
13778 DB 102,65,15,58,32,20,9,1 ; pinsrb $0x1,(%r9,%rcx,1),%xmm2
13779 DB 67,15,182,12,1 ; movzbl (%r9,%r8,1),%ecx
13780 DB 102,15,58,32,209,2 ; pinsrb $0x2,%ecx,%xmm2
13781 DB 65,15,182,12,25 ; movzbl (%r9,%rbx,1),%ecx
13782 DB 102,15,58,32,209,3 ; pinsrb $0x3,%ecx,%xmm2
13783 DB 102,15,56,49,210 ; pmovzxbd %xmm2,%xmm2
13784 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
13785 DB 65,15,89,209 ; mulps %xmm9,%xmm2
13786 DB 72,139,64,24 ; mov 0x18(%rax),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040013787 DB 65,15,89,216 ; mulps %xmm8,%xmm3
13788 DB 102,15,91,219 ; cvtps2dq %xmm3,%xmm3
Mike Klein40de6da2017-04-07 13:09:29 -040013789 DB 102,72,15,58,22,217,1 ; pextrq $0x1,%xmm3,%rcx
13790 DB 65,137,200 ; mov %ecx,%r8d
13791 DB 72,193,233,32 ; shr $0x20,%rcx
13792 DB 102,72,15,126,219 ; movq %xmm3,%rbx
13793 DB 65,137,217 ; mov %ebx,%r9d
13794 DB 72,193,235,32 ; shr $0x20,%rbx
13795 DB 102,66,15,58,32,28,8,0 ; pinsrb $0x0,(%rax,%r9,1),%xmm3
13796 DB 102,15,58,32,28,24,1 ; pinsrb $0x1,(%rax,%rbx,1),%xmm3
13797 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx
13798 DB 102,15,58,32,219,2 ; pinsrb $0x2,%ebx,%xmm3
13799 DB 15,182,4,8 ; movzbl (%rax,%rcx,1),%eax
13800 DB 102,15,58,32,216,3 ; pinsrb $0x3,%eax,%xmm3
13801 DB 102,15,56,49,219 ; pmovzxbd %xmm3,%xmm3
13802 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
13803 DB 65,15,89,217 ; mulps %xmm9,%xmm3
13804 DB 72,173 ; lods %ds:(%rsi),%rax
13805 DB 91 ; pop %rbx
13806 DB 65,94 ; pop %r14
13807 DB 255,224 ; jmpq *%rax
13808
13809PUBLIC _sk_byte_tables_rgb_sse41
13810_sk_byte_tables_rgb_sse41 LABEL PROC
13811 DB 65,86 ; push %r14
13812 DB 83 ; push %rbx
13813 DB 72,173 ; lods %ds:(%rsi),%rax
13814 DB 139,72,24 ; mov 0x18(%rax),%ecx
13815 DB 255,201 ; dec %ecx
13816 DB 102,68,15,110,193 ; movd %ecx,%xmm8
13817 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
13818 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
13819 DB 65,15,89,192 ; mulps %xmm8,%xmm0
13820 DB 102,15,91,192 ; cvtps2dq %xmm0,%xmm0
13821 DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx
13822 DB 65,137,200 ; mov %ecx,%r8d
13823 DB 72,193,233,32 ; shr $0x20,%rcx
13824 DB 102,73,15,126,193 ; movq %xmm0,%r9
13825 DB 69,137,202 ; mov %r9d,%r10d
13826 DB 77,137,203 ; mov %r9,%r11
13827 DB 73,193,235,32 ; shr $0x20,%r11
13828 DB 76,139,48 ; mov (%rax),%r14
13829 DB 76,139,72,8 ; mov 0x8(%rax),%r9
13830 DB 102,67,15,58,32,4,22,0 ; pinsrb $0x0,(%r14,%r10,1),%xmm0
13831 DB 102,67,15,58,32,4,30,1 ; pinsrb $0x1,(%r14,%r11,1),%xmm0
13832 DB 67,15,182,28,6 ; movzbl (%r14,%r8,1),%ebx
13833 DB 102,15,58,32,195,2 ; pinsrb $0x2,%ebx,%xmm0
13834 DB 65,15,182,12,14 ; movzbl (%r14,%rcx,1),%ecx
13835 DB 102,15,58,32,193,3 ; pinsrb $0x3,%ecx,%xmm0
13836 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0
13837 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040013838 DB 68,15,40,13,186,41,0,0 ; movaps 0x29ba(%rip),%xmm9 # 4e40 <_sk_callback_sse41+0x63b>
Mike Klein40de6da2017-04-07 13:09:29 -040013839 DB 65,15,89,193 ; mulps %xmm9,%xmm0
13840 DB 65,15,89,200 ; mulps %xmm8,%xmm1
13841 DB 102,15,91,201 ; cvtps2dq %xmm1,%xmm1
13842 DB 102,72,15,58,22,201,1 ; pextrq $0x1,%xmm1,%rcx
13843 DB 65,137,200 ; mov %ecx,%r8d
13844 DB 72,193,233,32 ; shr $0x20,%rcx
13845 DB 102,72,15,126,203 ; movq %xmm1,%rbx
13846 DB 65,137,218 ; mov %ebx,%r10d
13847 DB 72,193,235,32 ; shr $0x20,%rbx
13848 DB 102,67,15,58,32,12,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm1
13849 DB 102,65,15,58,32,12,25,1 ; pinsrb $0x1,(%r9,%rbx,1),%xmm1
13850 DB 67,15,182,28,1 ; movzbl (%r9,%r8,1),%ebx
13851 DB 102,15,58,32,203,2 ; pinsrb $0x2,%ebx,%xmm1
13852 DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx
13853 DB 102,15,58,32,201,3 ; pinsrb $0x3,%ecx,%xmm1
13854 DB 102,15,56,49,201 ; pmovzxbd %xmm1,%xmm1
13855 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
13856 DB 65,15,89,201 ; mulps %xmm9,%xmm1
13857 DB 72,139,64,16 ; mov 0x10(%rax),%rax
13858 DB 65,15,89,208 ; mulps %xmm8,%xmm2
13859 DB 102,15,91,210 ; cvtps2dq %xmm2,%xmm2
13860 DB 102,72,15,58,22,209,1 ; pextrq $0x1,%xmm2,%rcx
13861 DB 65,137,200 ; mov %ecx,%r8d
13862 DB 72,193,233,32 ; shr $0x20,%rcx
13863 DB 102,72,15,126,211 ; movq %xmm2,%rbx
13864 DB 65,137,217 ; mov %ebx,%r9d
13865 DB 72,193,235,32 ; shr $0x20,%rbx
13866 DB 102,66,15,58,32,20,8,0 ; pinsrb $0x0,(%rax,%r9,1),%xmm2
13867 DB 102,15,58,32,20,24,1 ; pinsrb $0x1,(%rax,%rbx,1),%xmm2
13868 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx
13869 DB 102,15,58,32,211,2 ; pinsrb $0x2,%ebx,%xmm2
13870 DB 15,182,4,8 ; movzbl (%rax,%rcx,1),%eax
13871 DB 102,15,58,32,208,3 ; pinsrb $0x3,%eax,%xmm2
13872 DB 102,15,56,49,210 ; pmovzxbd %xmm2,%xmm2
13873 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
13874 DB 65,15,89,209 ; mulps %xmm9,%xmm2
13875 DB 72,173 ; lods %ds:(%rsi),%rax
13876 DB 91 ; pop %rbx
13877 DB 65,94 ; pop %r14
13878 DB 255,224 ; jmpq *%rax
13879
Mike Kleinc7d9c0b2017-04-17 14:43:59 -040013880PUBLIC _sk_table_r_sse41
13881_sk_table_r_sse41 LABEL PROC
13882 DB 72,173 ; lods %ds:(%rsi),%rax
13883 DB 76,139,8 ; mov (%rax),%r9
13884 DB 139,64,8 ; mov 0x8(%rax),%eax
13885 DB 255,200 ; dec %eax
13886 DB 102,68,15,110,192 ; movd %eax,%xmm8
13887 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
13888 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
13889 DB 68,15,89,192 ; mulps %xmm0,%xmm8
13890 DB 102,65,15,91,192 ; cvtps2dq %xmm8,%xmm0
13891 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax
13892 DB 65,137,192 ; mov %eax,%r8d
13893 DB 72,193,232,32 ; shr $0x20,%rax
13894 DB 102,72,15,126,193 ; movq %xmm0,%rcx
13895 DB 65,137,202 ; mov %ecx,%r10d
13896 DB 72,193,233,32 ; shr $0x20,%rcx
13897 DB 243,67,15,16,4,145 ; movss (%r9,%r10,4),%xmm0
13898 DB 102,65,15,58,33,4,137,16 ; insertps $0x10,(%r9,%rcx,4),%xmm0
13899 DB 243,71,15,16,4,129 ; movss (%r9,%r8,4),%xmm8
13900 DB 102,65,15,58,33,192,32 ; insertps $0x20,%xmm8,%xmm0
13901 DB 243,69,15,16,4,129 ; movss (%r9,%rax,4),%xmm8
13902 DB 102,65,15,58,33,192,48 ; insertps $0x30,%xmm8,%xmm0
13903 DB 72,173 ; lods %ds:(%rsi),%rax
13904 DB 255,224 ; jmpq *%rax
13905
13906PUBLIC _sk_table_g_sse41
13907_sk_table_g_sse41 LABEL PROC
13908 DB 72,173 ; lods %ds:(%rsi),%rax
13909 DB 76,139,8 ; mov (%rax),%r9
13910 DB 139,64,8 ; mov 0x8(%rax),%eax
13911 DB 255,200 ; dec %eax
13912 DB 102,68,15,110,192 ; movd %eax,%xmm8
13913 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
13914 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
13915 DB 68,15,89,193 ; mulps %xmm1,%xmm8
13916 DB 102,65,15,91,200 ; cvtps2dq %xmm8,%xmm1
13917 DB 102,72,15,58,22,200,1 ; pextrq $0x1,%xmm1,%rax
13918 DB 65,137,192 ; mov %eax,%r8d
13919 DB 72,193,232,32 ; shr $0x20,%rax
13920 DB 102,72,15,126,201 ; movq %xmm1,%rcx
13921 DB 65,137,202 ; mov %ecx,%r10d
13922 DB 72,193,233,32 ; shr $0x20,%rcx
13923 DB 243,67,15,16,12,145 ; movss (%r9,%r10,4),%xmm1
13924 DB 102,65,15,58,33,12,137,16 ; insertps $0x10,(%r9,%rcx,4),%xmm1
13925 DB 243,71,15,16,4,129 ; movss (%r9,%r8,4),%xmm8
13926 DB 102,65,15,58,33,200,32 ; insertps $0x20,%xmm8,%xmm1
13927 DB 243,69,15,16,4,129 ; movss (%r9,%rax,4),%xmm8
13928 DB 102,65,15,58,33,200,48 ; insertps $0x30,%xmm8,%xmm1
13929 DB 72,173 ; lods %ds:(%rsi),%rax
13930 DB 255,224 ; jmpq *%rax
13931
13932PUBLIC _sk_table_b_sse41
13933_sk_table_b_sse41 LABEL PROC
13934 DB 72,173 ; lods %ds:(%rsi),%rax
13935 DB 76,139,8 ; mov (%rax),%r9
13936 DB 139,64,8 ; mov 0x8(%rax),%eax
13937 DB 255,200 ; dec %eax
13938 DB 102,68,15,110,192 ; movd %eax,%xmm8
13939 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
13940 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
13941 DB 68,15,89,194 ; mulps %xmm2,%xmm8
13942 DB 102,65,15,91,208 ; cvtps2dq %xmm8,%xmm2
13943 DB 102,72,15,58,22,208,1 ; pextrq $0x1,%xmm2,%rax
13944 DB 65,137,192 ; mov %eax,%r8d
13945 DB 72,193,232,32 ; shr $0x20,%rax
13946 DB 102,72,15,126,209 ; movq %xmm2,%rcx
13947 DB 65,137,202 ; mov %ecx,%r10d
13948 DB 72,193,233,32 ; shr $0x20,%rcx
13949 DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2
13950 DB 102,65,15,58,33,20,137,16 ; insertps $0x10,(%r9,%rcx,4),%xmm2
13951 DB 243,71,15,16,4,129 ; movss (%r9,%r8,4),%xmm8
13952 DB 102,65,15,58,33,208,32 ; insertps $0x20,%xmm8,%xmm2
13953 DB 243,69,15,16,4,129 ; movss (%r9,%rax,4),%xmm8
13954 DB 102,65,15,58,33,208,48 ; insertps $0x30,%xmm8,%xmm2
13955 DB 72,173 ; lods %ds:(%rsi),%rax
13956 DB 255,224 ; jmpq *%rax
13957
13958PUBLIC _sk_table_a_sse41
13959_sk_table_a_sse41 LABEL PROC
13960 DB 72,173 ; lods %ds:(%rsi),%rax
13961 DB 76,139,8 ; mov (%rax),%r9
13962 DB 139,64,8 ; mov 0x8(%rax),%eax
13963 DB 255,200 ; dec %eax
13964 DB 102,68,15,110,192 ; movd %eax,%xmm8
13965 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
13966 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
13967 DB 68,15,89,195 ; mulps %xmm3,%xmm8
13968 DB 102,65,15,91,216 ; cvtps2dq %xmm8,%xmm3
13969 DB 102,72,15,58,22,216,1 ; pextrq $0x1,%xmm3,%rax
13970 DB 65,137,192 ; mov %eax,%r8d
13971 DB 72,193,232,32 ; shr $0x20,%rax
13972 DB 102,72,15,126,217 ; movq %xmm3,%rcx
13973 DB 65,137,202 ; mov %ecx,%r10d
13974 DB 72,193,233,32 ; shr $0x20,%rcx
13975 DB 243,67,15,16,28,145 ; movss (%r9,%r10,4),%xmm3
13976 DB 102,65,15,58,33,28,137,16 ; insertps $0x10,(%r9,%rcx,4),%xmm3
13977 DB 243,71,15,16,4,129 ; movss (%r9,%r8,4),%xmm8
13978 DB 102,65,15,58,33,216,32 ; insertps $0x20,%xmm8,%xmm3
13979 DB 243,69,15,16,4,129 ; movss (%r9,%rax,4),%xmm8
13980 DB 102,65,15,58,33,216,48 ; insertps $0x30,%xmm8,%xmm3
13981 DB 72,173 ; lods %ds:(%rsi),%rax
13982 DB 255,224 ; jmpq *%rax
13983
Mike Klein44375172017-04-17 19:32:05 -040013984PUBLIC _sk_parametric_r_sse41
13985_sk_parametric_r_sse41 LABEL PROC
13986 DB 72,173 ; lods %ds:(%rsi),%rax
13987 DB 243,68,15,16,64,16 ; movss 0x10(%rax),%xmm8
13988 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
13989 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9
13990 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
13991 DB 68,15,89,200 ; mulps %xmm0,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040013992 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10
13993 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
13994 DB 68,15,89,208 ; mulps %xmm0,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040013995 DB 65,15,194,192,2 ; cmpleps %xmm8,%xmm0
13996 DB 243,68,15,16,64,24 ; movss 0x18(%rax),%xmm8
13997 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
13998 DB 69,15,88,200 ; addps %xmm8,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040013999 DB 243,68,15,16,24 ; movss (%rax),%xmm11
Mike Kleinda164342017-04-19 14:33:58 -040014000 DB 243,68,15,16,64,8 ; movss 0x8(%rax),%xmm8
14001 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040014002 DB 69,15,88,208 ; addps %xmm8,%xmm10
14003 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
14004 DB 69,15,91,194 ; cvtdq2ps %xmm10,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040014005 DB 68,15,89,5,17,39,0,0 ; mulps 0x2711(%rip),%xmm8 # 4e50 <_sk_callback_sse41+0x64b>
14006 DB 68,15,84,21,25,39,0,0 ; andps 0x2719(%rip),%xmm10 # 4e60 <_sk_callback_sse41+0x65b>
14007 DB 68,15,86,21,33,39,0,0 ; orps 0x2721(%rip),%xmm10 # 4e70 <_sk_callback_sse41+0x66b>
14008 DB 68,15,88,5,41,39,0,0 ; addps 0x2729(%rip),%xmm8 # 4e80 <_sk_callback_sse41+0x67b>
14009 DB 68,15,40,37,49,39,0,0 ; movaps 0x2731(%rip),%xmm12 # 4e90 <_sk_callback_sse41+0x68b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014010 DB 69,15,89,226 ; mulps %xmm10,%xmm12
14011 DB 69,15,92,196 ; subps %xmm12,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040014012 DB 68,15,88,21,49,39,0,0 ; addps 0x2731(%rip),%xmm10 # 4ea0 <_sk_callback_sse41+0x69b>
14013 DB 68,15,40,37,57,39,0,0 ; movaps 0x2739(%rip),%xmm12 # 4eb0 <_sk_callback_sse41+0x6ab>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014014 DB 69,15,94,226 ; divps %xmm10,%xmm12
14015 DB 69,15,92,196 ; subps %xmm12,%xmm8
14016 DB 69,15,89,195 ; mulps %xmm11,%xmm8
14017 DB 102,69,15,58,8,208,1 ; roundps $0x1,%xmm8,%xmm10
14018 DB 69,15,40,216 ; movaps %xmm8,%xmm11
14019 DB 69,15,92,218 ; subps %xmm10,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040014020 DB 68,15,88,5,38,39,0,0 ; addps 0x2726(%rip),%xmm8 # 4ec0 <_sk_callback_sse41+0x6bb>
14021 DB 68,15,40,21,46,39,0,0 ; movaps 0x272e(%rip),%xmm10 # 4ed0 <_sk_callback_sse41+0x6cb>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014022 DB 69,15,89,211 ; mulps %xmm11,%xmm10
14023 DB 69,15,92,194 ; subps %xmm10,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040014024 DB 68,15,40,21,46,39,0,0 ; movaps 0x272e(%rip),%xmm10 # 4ee0 <_sk_callback_sse41+0x6db>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014025 DB 69,15,92,211 ; subps %xmm11,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040014026 DB 68,15,40,29,50,39,0,0 ; movaps 0x2732(%rip),%xmm11 # 4ef0 <_sk_callback_sse41+0x6eb>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014027 DB 69,15,94,218 ; divps %xmm10,%xmm11
Mike Kleinda164342017-04-19 14:33:58 -040014028 DB 69,15,88,216 ; addps %xmm8,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040014029 DB 68,15,89,29,50,39,0,0 ; mulps 0x2732(%rip),%xmm11 # 4f00 <_sk_callback_sse41+0x6fb>
Mike Klein44375172017-04-17 19:32:05 -040014030 DB 102,69,15,91,211 ; cvtps2dq %xmm11,%xmm10
14031 DB 243,68,15,16,64,20 ; movss 0x14(%rax),%xmm8
14032 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
14033 DB 69,15,88,194 ; addps %xmm10,%xmm8
14034 DB 102,69,15,56,20,193 ; blendvps %xmm0,%xmm9,%xmm8
14035 DB 15,87,192 ; xorps %xmm0,%xmm0
14036 DB 68,15,95,192 ; maxps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040014037 DB 68,15,93,5,25,39,0,0 ; minps 0x2719(%rip),%xmm8 # 4f10 <_sk_callback_sse41+0x70b>
Mike Klein44375172017-04-17 19:32:05 -040014038 DB 72,173 ; lods %ds:(%rsi),%rax
14039 DB 65,15,40,192 ; movaps %xmm8,%xmm0
14040 DB 255,224 ; jmpq *%rax
14041
14042PUBLIC _sk_parametric_g_sse41
14043_sk_parametric_g_sse41 LABEL PROC
14044 DB 68,15,40,192 ; movaps %xmm0,%xmm8
14045 DB 72,173 ; lods %ds:(%rsi),%rax
14046 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
14047 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
14048 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9
14049 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
14050 DB 68,15,89,201 ; mulps %xmm1,%xmm9
14051 DB 243,68,15,16,88,4 ; movss 0x4(%rax),%xmm11
14052 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
14053 DB 68,15,89,217 ; mulps %xmm1,%xmm11
14054 DB 15,40,193 ; movaps %xmm1,%xmm0
14055 DB 65,15,194,194,2 ; cmpleps %xmm10,%xmm0
14056 DB 243,15,16,72,24 ; movss 0x18(%rax),%xmm1
14057 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
14058 DB 68,15,88,201 ; addps %xmm1,%xmm9
Mike Kleinda164342017-04-19 14:33:58 -040014059 DB 243,68,15,16,16 ; movss (%rax),%xmm10
Mike Klein44375172017-04-17 19:32:05 -040014060 DB 243,15,16,72,8 ; movss 0x8(%rax),%xmm1
14061 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
14062 DB 68,15,88,217 ; addps %xmm1,%xmm11
Mike Kleinda164342017-04-19 14:33:58 -040014063 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
14064 DB 69,15,91,227 ; cvtdq2ps %xmm11,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014065 DB 68,15,89,37,186,38,0,0 ; mulps 0x26ba(%rip),%xmm12 # 4f20 <_sk_callback_sse41+0x71b>
14066 DB 68,15,84,29,194,38,0,0 ; andps 0x26c2(%rip),%xmm11 # 4f30 <_sk_callback_sse41+0x72b>
14067 DB 68,15,86,29,202,38,0,0 ; orps 0x26ca(%rip),%xmm11 # 4f40 <_sk_callback_sse41+0x73b>
14068 DB 68,15,88,37,210,38,0,0 ; addps 0x26d2(%rip),%xmm12 # 4f50 <_sk_callback_sse41+0x74b>
14069 DB 15,40,13,219,38,0,0 ; movaps 0x26db(%rip),%xmm1 # 4f60 <_sk_callback_sse41+0x75b>
Mike Klein44375172017-04-17 19:32:05 -040014070 DB 65,15,89,203 ; mulps %xmm11,%xmm1
Mike Kleinda164342017-04-19 14:33:58 -040014071 DB 68,15,92,225 ; subps %xmm1,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014072 DB 68,15,88,29,219,38,0,0 ; addps 0x26db(%rip),%xmm11 # 4f70 <_sk_callback_sse41+0x76b>
14073 DB 15,40,13,228,38,0,0 ; movaps 0x26e4(%rip),%xmm1 # 4f80 <_sk_callback_sse41+0x77b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014074 DB 65,15,94,203 ; divps %xmm11,%xmm1
14075 DB 68,15,92,225 ; subps %xmm1,%xmm12
14076 DB 69,15,89,226 ; mulps %xmm10,%xmm12
14077 DB 102,69,15,58,8,212,1 ; roundps $0x1,%xmm12,%xmm10
14078 DB 69,15,40,220 ; movaps %xmm12,%xmm11
14079 DB 69,15,92,218 ; subps %xmm10,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040014080 DB 68,15,88,37,209,38,0,0 ; addps 0x26d1(%rip),%xmm12 # 4f90 <_sk_callback_sse41+0x78b>
14081 DB 15,40,13,218,38,0,0 ; movaps 0x26da(%rip),%xmm1 # 4fa0 <_sk_callback_sse41+0x79b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014082 DB 65,15,89,203 ; mulps %xmm11,%xmm1
14083 DB 68,15,92,225 ; subps %xmm1,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014084 DB 68,15,40,21,218,38,0,0 ; movaps 0x26da(%rip),%xmm10 # 4fb0 <_sk_callback_sse41+0x7ab>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014085 DB 69,15,92,211 ; subps %xmm11,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040014086 DB 15,40,13,223,38,0,0 ; movaps 0x26df(%rip),%xmm1 # 4fc0 <_sk_callback_sse41+0x7bb>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014087 DB 65,15,94,202 ; divps %xmm10,%xmm1
14088 DB 65,15,88,204 ; addps %xmm12,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014089 DB 15,89,13,224,38,0,0 ; mulps 0x26e0(%rip),%xmm1 # 4fd0 <_sk_callback_sse41+0x7cb>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014090 DB 102,68,15,91,209 ; cvtps2dq %xmm1,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040014091 DB 243,15,16,72,20 ; movss 0x14(%rax),%xmm1
14092 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
14093 DB 65,15,88,202 ; addps %xmm10,%xmm1
14094 DB 102,65,15,56,20,201 ; blendvps %xmm0,%xmm9,%xmm1
14095 DB 15,87,192 ; xorps %xmm0,%xmm0
14096 DB 15,95,200 ; maxps %xmm0,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014097 DB 15,93,13,203,38,0,0 ; minps 0x26cb(%rip),%xmm1 # 4fe0 <_sk_callback_sse41+0x7db>
Mike Klein44375172017-04-17 19:32:05 -040014098 DB 72,173 ; lods %ds:(%rsi),%rax
14099 DB 65,15,40,192 ; movaps %xmm8,%xmm0
14100 DB 255,224 ; jmpq *%rax
14101
14102PUBLIC _sk_parametric_b_sse41
14103_sk_parametric_b_sse41 LABEL PROC
14104 DB 68,15,40,192 ; movaps %xmm0,%xmm8
14105 DB 72,173 ; lods %ds:(%rsi),%rax
14106 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
14107 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
14108 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9
14109 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
14110 DB 68,15,89,202 ; mulps %xmm2,%xmm9
14111 DB 243,68,15,16,88,4 ; movss 0x4(%rax),%xmm11
14112 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
14113 DB 68,15,89,218 ; mulps %xmm2,%xmm11
14114 DB 15,40,194 ; movaps %xmm2,%xmm0
14115 DB 65,15,194,194,2 ; cmpleps %xmm10,%xmm0
14116 DB 243,15,16,80,24 ; movss 0x18(%rax),%xmm2
14117 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
14118 DB 68,15,88,202 ; addps %xmm2,%xmm9
Mike Kleinda164342017-04-19 14:33:58 -040014119 DB 243,68,15,16,16 ; movss (%rax),%xmm10
Mike Klein44375172017-04-17 19:32:05 -040014120 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
14121 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
14122 DB 68,15,88,218 ; addps %xmm2,%xmm11
Mike Kleinda164342017-04-19 14:33:58 -040014123 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
14124 DB 69,15,91,227 ; cvtdq2ps %xmm11,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014125 DB 68,15,89,37,108,38,0,0 ; mulps 0x266c(%rip),%xmm12 # 4ff0 <_sk_callback_sse41+0x7eb>
14126 DB 68,15,84,29,116,38,0,0 ; andps 0x2674(%rip),%xmm11 # 5000 <_sk_callback_sse41+0x7fb>
14127 DB 68,15,86,29,124,38,0,0 ; orps 0x267c(%rip),%xmm11 # 5010 <_sk_callback_sse41+0x80b>
14128 DB 68,15,88,37,132,38,0,0 ; addps 0x2684(%rip),%xmm12 # 5020 <_sk_callback_sse41+0x81b>
14129 DB 15,40,21,141,38,0,0 ; movaps 0x268d(%rip),%xmm2 # 5030 <_sk_callback_sse41+0x82b>
Mike Klein44375172017-04-17 19:32:05 -040014130 DB 65,15,89,211 ; mulps %xmm11,%xmm2
Mike Kleinda164342017-04-19 14:33:58 -040014131 DB 68,15,92,226 ; subps %xmm2,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014132 DB 68,15,88,29,141,38,0,0 ; addps 0x268d(%rip),%xmm11 # 5040 <_sk_callback_sse41+0x83b>
14133 DB 15,40,21,150,38,0,0 ; movaps 0x2696(%rip),%xmm2 # 5050 <_sk_callback_sse41+0x84b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014134 DB 65,15,94,211 ; divps %xmm11,%xmm2
14135 DB 68,15,92,226 ; subps %xmm2,%xmm12
14136 DB 69,15,89,226 ; mulps %xmm10,%xmm12
14137 DB 102,69,15,58,8,212,1 ; roundps $0x1,%xmm12,%xmm10
14138 DB 69,15,40,220 ; movaps %xmm12,%xmm11
14139 DB 69,15,92,218 ; subps %xmm10,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040014140 DB 68,15,88,37,131,38,0,0 ; addps 0x2683(%rip),%xmm12 # 5060 <_sk_callback_sse41+0x85b>
14141 DB 15,40,21,140,38,0,0 ; movaps 0x268c(%rip),%xmm2 # 5070 <_sk_callback_sse41+0x86b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014142 DB 65,15,89,211 ; mulps %xmm11,%xmm2
14143 DB 68,15,92,226 ; subps %xmm2,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014144 DB 68,15,40,21,140,38,0,0 ; movaps 0x268c(%rip),%xmm10 # 5080 <_sk_callback_sse41+0x87b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014145 DB 69,15,92,211 ; subps %xmm11,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040014146 DB 15,40,21,145,38,0,0 ; movaps 0x2691(%rip),%xmm2 # 5090 <_sk_callback_sse41+0x88b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014147 DB 65,15,94,210 ; divps %xmm10,%xmm2
14148 DB 65,15,88,212 ; addps %xmm12,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014149 DB 15,89,21,146,38,0,0 ; mulps 0x2692(%rip),%xmm2 # 50a0 <_sk_callback_sse41+0x89b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014150 DB 102,68,15,91,210 ; cvtps2dq %xmm2,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040014151 DB 243,15,16,80,20 ; movss 0x14(%rax),%xmm2
14152 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
14153 DB 65,15,88,210 ; addps %xmm10,%xmm2
14154 DB 102,65,15,56,20,209 ; blendvps %xmm0,%xmm9,%xmm2
14155 DB 15,87,192 ; xorps %xmm0,%xmm0
14156 DB 15,95,208 ; maxps %xmm0,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014157 DB 15,93,21,125,38,0,0 ; minps 0x267d(%rip),%xmm2 # 50b0 <_sk_callback_sse41+0x8ab>
Mike Klein44375172017-04-17 19:32:05 -040014158 DB 72,173 ; lods %ds:(%rsi),%rax
14159 DB 65,15,40,192 ; movaps %xmm8,%xmm0
14160 DB 255,224 ; jmpq *%rax
14161
14162PUBLIC _sk_parametric_a_sse41
14163_sk_parametric_a_sse41 LABEL PROC
14164 DB 68,15,40,192 ; movaps %xmm0,%xmm8
14165 DB 72,173 ; lods %ds:(%rsi),%rax
14166 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
14167 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
14168 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9
14169 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
14170 DB 68,15,89,203 ; mulps %xmm3,%xmm9
14171 DB 243,68,15,16,88,4 ; movss 0x4(%rax),%xmm11
14172 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
14173 DB 68,15,89,219 ; mulps %xmm3,%xmm11
14174 DB 15,40,195 ; movaps %xmm3,%xmm0
14175 DB 65,15,194,194,2 ; cmpleps %xmm10,%xmm0
14176 DB 243,15,16,88,24 ; movss 0x18(%rax),%xmm3
14177 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
14178 DB 68,15,88,203 ; addps %xmm3,%xmm9
Mike Kleinda164342017-04-19 14:33:58 -040014179 DB 243,68,15,16,16 ; movss (%rax),%xmm10
Mike Klein44375172017-04-17 19:32:05 -040014180 DB 243,15,16,88,8 ; movss 0x8(%rax),%xmm3
14181 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
14182 DB 68,15,88,219 ; addps %xmm3,%xmm11
Mike Kleinda164342017-04-19 14:33:58 -040014183 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
14184 DB 69,15,91,227 ; cvtdq2ps %xmm11,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014185 DB 68,15,89,37,30,38,0,0 ; mulps 0x261e(%rip),%xmm12 # 50c0 <_sk_callback_sse41+0x8bb>
14186 DB 68,15,84,29,38,38,0,0 ; andps 0x2626(%rip),%xmm11 # 50d0 <_sk_callback_sse41+0x8cb>
14187 DB 68,15,86,29,46,38,0,0 ; orps 0x262e(%rip),%xmm11 # 50e0 <_sk_callback_sse41+0x8db>
14188 DB 68,15,88,37,54,38,0,0 ; addps 0x2636(%rip),%xmm12 # 50f0 <_sk_callback_sse41+0x8eb>
14189 DB 15,40,29,63,38,0,0 ; movaps 0x263f(%rip),%xmm3 # 5100 <_sk_callback_sse41+0x8fb>
Mike Klein44375172017-04-17 19:32:05 -040014190 DB 65,15,89,219 ; mulps %xmm11,%xmm3
Mike Kleinda164342017-04-19 14:33:58 -040014191 DB 68,15,92,227 ; subps %xmm3,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014192 DB 68,15,88,29,63,38,0,0 ; addps 0x263f(%rip),%xmm11 # 5110 <_sk_callback_sse41+0x90b>
14193 DB 15,40,29,72,38,0,0 ; movaps 0x2648(%rip),%xmm3 # 5120 <_sk_callback_sse41+0x91b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014194 DB 65,15,94,219 ; divps %xmm11,%xmm3
14195 DB 68,15,92,227 ; subps %xmm3,%xmm12
14196 DB 69,15,89,226 ; mulps %xmm10,%xmm12
14197 DB 102,69,15,58,8,212,1 ; roundps $0x1,%xmm12,%xmm10
14198 DB 69,15,40,220 ; movaps %xmm12,%xmm11
14199 DB 69,15,92,218 ; subps %xmm10,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040014200 DB 68,15,88,37,53,38,0,0 ; addps 0x2635(%rip),%xmm12 # 5130 <_sk_callback_sse41+0x92b>
14201 DB 15,40,29,62,38,0,0 ; movaps 0x263e(%rip),%xmm3 # 5140 <_sk_callback_sse41+0x93b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014202 DB 65,15,89,219 ; mulps %xmm11,%xmm3
14203 DB 68,15,92,227 ; subps %xmm3,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014204 DB 68,15,40,21,62,38,0,0 ; movaps 0x263e(%rip),%xmm10 # 5150 <_sk_callback_sse41+0x94b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014205 DB 69,15,92,211 ; subps %xmm11,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040014206 DB 15,40,29,67,38,0,0 ; movaps 0x2643(%rip),%xmm3 # 5160 <_sk_callback_sse41+0x95b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014207 DB 65,15,94,218 ; divps %xmm10,%xmm3
14208 DB 65,15,88,220 ; addps %xmm12,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014209 DB 15,89,29,68,38,0,0 ; mulps 0x2644(%rip),%xmm3 # 5170 <_sk_callback_sse41+0x96b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014210 DB 102,68,15,91,211 ; cvtps2dq %xmm3,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040014211 DB 243,15,16,88,20 ; movss 0x14(%rax),%xmm3
14212 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
14213 DB 65,15,88,218 ; addps %xmm10,%xmm3
14214 DB 102,65,15,56,20,217 ; blendvps %xmm0,%xmm9,%xmm3
14215 DB 15,87,192 ; xorps %xmm0,%xmm0
14216 DB 15,95,216 ; maxps %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014217 DB 15,93,29,47,38,0,0 ; minps 0x262f(%rip),%xmm3 # 5180 <_sk_callback_sse41+0x97b>
Mike Klein44375172017-04-17 19:32:05 -040014218 DB 72,173 ; lods %ds:(%rsi),%rax
14219 DB 65,15,40,192 ; movaps %xmm8,%xmm0
14220 DB 255,224 ; jmpq *%rax
14221
Mike Klein4e3e9f82017-04-20 11:04:29 -040014222PUBLIC _sk_lab_to_xyz_sse41
14223_sk_lab_to_xyz_sse41 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040014224 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040014225 DB 68,15,89,5,43,38,0,0 ; mulps 0x262b(%rip),%xmm8 # 5190 <_sk_callback_sse41+0x98b>
14226 DB 68,15,40,13,51,38,0,0 ; movaps 0x2633(%rip),%xmm9 # 51a0 <_sk_callback_sse41+0x99b>
Mike Kleinfe560a82017-05-01 12:56:35 -040014227 DB 65,15,89,201 ; mulps %xmm9,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014228 DB 15,40,5,56,38,0,0 ; movaps 0x2638(%rip),%xmm0 # 51b0 <_sk_callback_sse41+0x9ab>
Mike Kleinfe560a82017-05-01 12:56:35 -040014229 DB 15,88,200 ; addps %xmm0,%xmm1
14230 DB 65,15,89,209 ; mulps %xmm9,%xmm2
14231 DB 15,88,208 ; addps %xmm0,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014232 DB 68,15,88,5,54,38,0,0 ; addps 0x2636(%rip),%xmm8 # 51c0 <_sk_callback_sse41+0x9bb>
14233 DB 68,15,89,5,62,38,0,0 ; mulps 0x263e(%rip),%xmm8 # 51d0 <_sk_callback_sse41+0x9cb>
14234 DB 15,89,13,71,38,0,0 ; mulps 0x2647(%rip),%xmm1 # 51e0 <_sk_callback_sse41+0x9db>
Mike Kleinfe560a82017-05-01 12:56:35 -040014235 DB 65,15,88,200 ; addps %xmm8,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014236 DB 15,89,21,76,38,0,0 ; mulps 0x264c(%rip),%xmm2 # 51f0 <_sk_callback_sse41+0x9eb>
Mike Kleinfe560a82017-05-01 12:56:35 -040014237 DB 69,15,40,208 ; movaps %xmm8,%xmm10
14238 DB 68,15,92,210 ; subps %xmm2,%xmm10
14239 DB 68,15,40,217 ; movaps %xmm1,%xmm11
Mike Klein4e3e9f82017-04-20 11:04:29 -040014240 DB 69,15,89,219 ; mulps %xmm11,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -040014241 DB 68,15,89,217 ; mulps %xmm1,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040014242 DB 68,15,40,13,64,38,0,0 ; movaps 0x2640(%rip),%xmm9 # 5200 <_sk_callback_sse41+0x9fb>
Mike Kleinfe560a82017-05-01 12:56:35 -040014243 DB 65,15,40,193 ; movaps %xmm9,%xmm0
Mike Klein4e3e9f82017-04-20 11:04:29 -040014244 DB 65,15,194,195,1 ; cmpltps %xmm11,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014245 DB 15,40,21,64,38,0,0 ; movaps 0x2640(%rip),%xmm2 # 5210 <_sk_callback_sse41+0xa0b>
Mike Kleinfe560a82017-05-01 12:56:35 -040014246 DB 15,88,202 ; addps %xmm2,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014247 DB 68,15,40,37,69,38,0,0 ; movaps 0x2645(%rip),%xmm12 # 5220 <_sk_callback_sse41+0xa1b>
Mike Klein4e3e9f82017-04-20 11:04:29 -040014248 DB 65,15,89,204 ; mulps %xmm12,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040014249 DB 102,65,15,56,20,203 ; blendvps %xmm0,%xmm11,%xmm1
14250 DB 69,15,40,216 ; movaps %xmm8,%xmm11
14251 DB 69,15,89,219 ; mulps %xmm11,%xmm11
14252 DB 69,15,89,216 ; mulps %xmm8,%xmm11
14253 DB 65,15,40,193 ; movaps %xmm9,%xmm0
14254 DB 65,15,194,195,1 ; cmpltps %xmm11,%xmm0
14255 DB 68,15,88,194 ; addps %xmm2,%xmm8
14256 DB 69,15,89,196 ; mulps %xmm12,%xmm8
14257 DB 102,69,15,56,20,195 ; blendvps %xmm0,%xmm11,%xmm8
14258 DB 69,15,40,218 ; movaps %xmm10,%xmm11
14259 DB 69,15,89,219 ; mulps %xmm11,%xmm11
14260 DB 69,15,89,218 ; mulps %xmm10,%xmm11
14261 DB 69,15,194,203,1 ; cmpltps %xmm11,%xmm9
14262 DB 65,15,88,210 ; addps %xmm10,%xmm2
14263 DB 65,15,89,212 ; mulps %xmm12,%xmm2
14264 DB 65,15,40,193 ; movaps %xmm9,%xmm0
14265 DB 102,65,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014266 DB 15,89,13,254,37,0,0 ; mulps 0x25fe(%rip),%xmm1 # 5230 <_sk_callback_sse41+0xa2b>
14267 DB 15,89,21,7,38,0,0 ; mulps 0x2607(%rip),%xmm2 # 5240 <_sk_callback_sse41+0xa3b>
Mike Klein4e3e9f82017-04-20 11:04:29 -040014268 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040014269 DB 15,40,193 ; movaps %xmm1,%xmm0
14270 DB 65,15,40,200 ; movaps %xmm8,%xmm1
Mike Klein4e3e9f82017-04-20 11:04:29 -040014271 DB 255,224 ; jmpq *%rax
14272
Mike Kleind7e06ae2017-03-29 16:33:06 -040014273PUBLIC _sk_load_a8_sse41
14274_sk_load_a8_sse41 LABEL PROC
14275 DB 72,173 ; lods %ds:(%rsi),%rax
14276 DB 72,139,0 ; mov (%rax),%rax
14277 DB 102,15,56,49,4,56 ; pmovzxbd (%rax,%rdi,1),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040014278 DB 15,91,216 ; cvtdq2ps %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014279 DB 15,89,29,247,37,0,0 ; mulps 0x25f7(%rip),%xmm3 # 5250 <_sk_callback_sse41+0xa4b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014280 DB 72,173 ; lods %ds:(%rsi),%rax
14281 DB 15,87,192 ; xorps %xmm0,%xmm0
14282 DB 15,87,201 ; xorps %xmm1,%xmm1
14283 DB 15,87,210 ; xorps %xmm2,%xmm2
14284 DB 255,224 ; jmpq *%rax
14285
Mike Klein21bd3e42017-04-06 16:32:29 -040014286PUBLIC _sk_gather_a8_sse41
14287_sk_gather_a8_sse41 LABEL PROC
14288 DB 72,173 ; lods %ds:(%rsi),%rax
14289 DB 76,139,8 ; mov (%rax),%r9
14290 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
14291 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
14292 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
14293 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2
14294 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
14295 DB 102,15,254,194 ; paddd %xmm2,%xmm0
14296 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax
14297 DB 65,137,192 ; mov %eax,%r8d
14298 DB 72,193,232,32 ; shr $0x20,%rax
14299 DB 102,72,15,126,193 ; movq %xmm0,%rcx
14300 DB 65,137,202 ; mov %ecx,%r10d
14301 DB 72,193,233,32 ; shr $0x20,%rcx
14302 DB 102,67,15,58,32,4,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm0
14303 DB 102,65,15,58,32,4,9,1 ; pinsrb $0x1,(%r9,%rcx,1),%xmm0
14304 DB 67,15,182,12,1 ; movzbl (%r9,%r8,1),%ecx
14305 DB 102,15,58,32,193,2 ; pinsrb $0x2,%ecx,%xmm0
14306 DB 65,15,182,4,1 ; movzbl (%r9,%rax,1),%eax
14307 DB 102,15,58,32,192,3 ; pinsrb $0x3,%eax,%xmm0
14308 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040014309 DB 15,91,216 ; cvtdq2ps %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014310 DB 15,89,29,139,37,0,0 ; mulps 0x258b(%rip),%xmm3 # 5260 <_sk_callback_sse41+0xa5b>
Mike Klein21bd3e42017-04-06 16:32:29 -040014311 DB 72,173 ; lods %ds:(%rsi),%rax
14312 DB 15,87,192 ; xorps %xmm0,%xmm0
14313 DB 102,15,239,201 ; pxor %xmm1,%xmm1
14314 DB 102,15,239,210 ; pxor %xmm2,%xmm2
14315 DB 255,224 ; jmpq *%rax
14316
Mike Kleind7e06ae2017-03-29 16:33:06 -040014317PUBLIC _sk_store_a8_sse41
14318_sk_store_a8_sse41 LABEL PROC
14319 DB 72,173 ; lods %ds:(%rsi),%rax
14320 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014321 DB 68,15,40,5,127,37,0,0 ; movaps 0x257f(%rip),%xmm8 # 5270 <_sk_callback_sse41+0xa6b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014322 DB 68,15,89,195 ; mulps %xmm3,%xmm8
14323 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
14324 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8
14325 DB 102,69,15,103,192 ; packuswb %xmm8,%xmm8
14326 DB 102,68,15,126,4,56 ; movd %xmm8,(%rax,%rdi,1)
14327 DB 72,173 ; lods %ds:(%rsi),%rax
14328 DB 255,224 ; jmpq *%rax
14329
Mike Kleinf809fef2017-03-31 13:52:45 -040014330PUBLIC _sk_load_g8_sse41
14331_sk_load_g8_sse41 LABEL PROC
14332 DB 72,173 ; lods %ds:(%rsi),%rax
14333 DB 72,139,0 ; mov (%rax),%rax
14334 DB 102,15,56,49,4,56 ; pmovzxbd (%rax,%rdi,1),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040014335 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014336 DB 15,89,5,92,37,0,0 ; mulps 0x255c(%rip),%xmm0 # 5280 <_sk_callback_sse41+0xa7b>
Mike Kleinf809fef2017-03-31 13:52:45 -040014337 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014338 DB 15,40,29,99,37,0,0 ; movaps 0x2563(%rip),%xmm3 # 5290 <_sk_callback_sse41+0xa8b>
Mike Kleinf809fef2017-03-31 13:52:45 -040014339 DB 15,40,200 ; movaps %xmm0,%xmm1
14340 DB 15,40,208 ; movaps %xmm0,%xmm2
14341 DB 255,224 ; jmpq *%rax
14342
Mike Klein21bd3e42017-04-06 16:32:29 -040014343PUBLIC _sk_gather_g8_sse41
14344_sk_gather_g8_sse41 LABEL PROC
14345 DB 72,173 ; lods %ds:(%rsi),%rax
14346 DB 76,139,8 ; mov (%rax),%r9
14347 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
14348 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
14349 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
14350 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2
14351 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
14352 DB 102,15,254,194 ; paddd %xmm2,%xmm0
14353 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax
14354 DB 65,137,192 ; mov %eax,%r8d
14355 DB 72,193,232,32 ; shr $0x20,%rax
14356 DB 102,72,15,126,193 ; movq %xmm0,%rcx
14357 DB 65,137,202 ; mov %ecx,%r10d
14358 DB 72,193,233,32 ; shr $0x20,%rcx
14359 DB 102,67,15,58,32,4,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm0
14360 DB 102,65,15,58,32,4,9,1 ; pinsrb $0x1,(%r9,%rcx,1),%xmm0
14361 DB 67,15,182,12,1 ; movzbl (%r9,%r8,1),%ecx
14362 DB 102,15,58,32,193,2 ; pinsrb $0x2,%ecx,%xmm0
14363 DB 65,15,182,4,1 ; movzbl (%r9,%rax,1),%eax
14364 DB 102,15,58,32,192,3 ; pinsrb $0x3,%eax,%xmm0
14365 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040014366 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014367 DB 15,89,5,252,36,0,0 ; mulps 0x24fc(%rip),%xmm0 # 52a0 <_sk_callback_sse41+0xa9b>
Mike Klein21bd3e42017-04-06 16:32:29 -040014368 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014369 DB 15,40,29,3,37,0,0 ; movaps 0x2503(%rip),%xmm3 # 52b0 <_sk_callback_sse41+0xaab>
Mike Klein21bd3e42017-04-06 16:32:29 -040014370 DB 15,40,200 ; movaps %xmm0,%xmm1
14371 DB 15,40,208 ; movaps %xmm0,%xmm2
14372 DB 255,224 ; jmpq *%rax
14373
Mike Klein7d3d8722017-04-06 17:53:18 -040014374PUBLIC _sk_gather_i8_sse41
14375_sk_gather_i8_sse41 LABEL PROC
14376 DB 72,173 ; lods %ds:(%rsi),%rax
14377 DB 73,137,192 ; mov %rax,%r8
14378 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -040014379 DB 116,5 ; je 2dc4 <_sk_gather_i8_sse41+0xf>
Mike Klein7d3d8722017-04-06 17:53:18 -040014380 DB 76,137,192 ; mov %r8,%rax
Mike Klein5d7f2b52017-05-20 13:21:59 -040014381 DB 235,2 ; jmp 2dc6 <_sk_gather_i8_sse41+0x11>
Mike Klein7d3d8722017-04-06 17:53:18 -040014382 DB 72,173 ; lods %ds:(%rsi),%rax
14383 DB 76,139,16 ; mov (%rax),%r10
14384 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
14385 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
14386 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
14387 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2
14388 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
14389 DB 102,15,254,194 ; paddd %xmm2,%xmm0
14390 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax
14391 DB 65,137,193 ; mov %eax,%r9d
14392 DB 72,193,232,32 ; shr $0x20,%rax
14393 DB 102,72,15,126,193 ; movq %xmm0,%rcx
14394 DB 65,137,203 ; mov %ecx,%r11d
14395 DB 72,193,233,32 ; shr $0x20,%rcx
14396 DB 102,67,15,58,32,4,26,0 ; pinsrb $0x0,(%r10,%r11,1),%xmm0
14397 DB 102,65,15,58,32,4,10,1 ; pinsrb $0x1,(%r10,%rcx,1),%xmm0
14398 DB 102,67,15,58,32,4,10,2 ; pinsrb $0x2,(%r10,%r9,1),%xmm0
14399 DB 102,65,15,58,32,4,2,3 ; pinsrb $0x3,(%r10,%rax,1),%xmm0
14400 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0
14401 DB 102,73,15,58,22,193,1 ; pextrq $0x1,%xmm0,%r9
14402 DB 102,72,15,126,193 ; movq %xmm0,%rcx
14403 DB 73,139,64,8 ; mov 0x8(%r8),%rax
14404 DB 65,137,200 ; mov %ecx,%r8d
14405 DB 72,193,233,30 ; shr $0x1e,%rcx
14406 DB 69,137,202 ; mov %r9d,%r10d
14407 DB 73,193,233,30 ; shr $0x1e,%r9
14408 DB 102,66,15,110,28,128 ; movd (%rax,%r8,4),%xmm3
14409 DB 102,15,58,34,28,8,1 ; pinsrd $0x1,(%rax,%rcx,1),%xmm3
14410 DB 102,66,15,58,34,28,144,2 ; pinsrd $0x2,(%rax,%r10,4),%xmm3
14411 DB 102,66,15,58,34,28,8,3 ; pinsrd $0x3,(%rax,%r9,1),%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014412 DB 102,15,111,5,90,36,0,0 ; movdqa 0x245a(%rip),%xmm0 # 52c0 <_sk_callback_sse41+0xabb>
Mike Klein7d3d8722017-04-06 17:53:18 -040014413 DB 102,15,219,195 ; pand %xmm3,%xmm0
14414 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014415 DB 68,15,40,5,91,36,0,0 ; movaps 0x245b(%rip),%xmm8 # 52d0 <_sk_callback_sse41+0xacb>
Mike Klein7d3d8722017-04-06 17:53:18 -040014416 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040014417 DB 102,15,111,203 ; movdqa %xmm3,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014418 DB 102,15,56,0,13,90,36,0,0 ; pshufb 0x245a(%rip),%xmm1 # 52e0 <_sk_callback_sse41+0xadb>
Mike Klein7d3d8722017-04-06 17:53:18 -040014419 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
14420 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040014421 DB 102,15,111,211 ; movdqa %xmm3,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014422 DB 102,15,56,0,21,86,36,0,0 ; pshufb 0x2456(%rip),%xmm2 # 52f0 <_sk_callback_sse41+0xaeb>
Mike Klein7d3d8722017-04-06 17:53:18 -040014423 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
14424 DB 65,15,89,208 ; mulps %xmm8,%xmm2
14425 DB 102,15,114,211,24 ; psrld $0x18,%xmm3
14426 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
14427 DB 65,15,89,216 ; mulps %xmm8,%xmm3
14428 DB 72,173 ; lods %ds:(%rsi),%rax
14429 DB 255,224 ; jmpq *%rax
14430
Mike Kleind7e06ae2017-03-29 16:33:06 -040014431PUBLIC _sk_load_565_sse41
14432_sk_load_565_sse41 LABEL PROC
14433 DB 72,173 ; lods %ds:(%rsi),%rax
14434 DB 72,139,0 ; mov (%rax),%rax
14435 DB 102,15,56,51,20,120 ; pmovzxwd (%rax,%rdi,2),%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014436 DB 102,15,111,5,60,36,0,0 ; movdqa 0x243c(%rip),%xmm0 # 5300 <_sk_callback_sse41+0xafb>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014437 DB 102,15,219,194 ; pand %xmm2,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040014438 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014439 DB 15,89,5,62,36,0,0 ; mulps 0x243e(%rip),%xmm0 # 5310 <_sk_callback_sse41+0xb0b>
14440 DB 102,15,111,13,70,36,0,0 ; movdqa 0x2446(%rip),%xmm1 # 5320 <_sk_callback_sse41+0xb1b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014441 DB 102,15,219,202 ; pand %xmm2,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040014442 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014443 DB 15,89,13,72,36,0,0 ; mulps 0x2448(%rip),%xmm1 # 5330 <_sk_callback_sse41+0xb2b>
14444 DB 102,15,219,21,80,36,0,0 ; pand 0x2450(%rip),%xmm2 # 5340 <_sk_callback_sse41+0xb3b>
Mike Kleinfe560a82017-05-01 12:56:35 -040014445 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014446 DB 15,89,21,86,36,0,0 ; mulps 0x2456(%rip),%xmm2 # 5350 <_sk_callback_sse41+0xb4b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014447 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014448 DB 15,40,29,93,36,0,0 ; movaps 0x245d(%rip),%xmm3 # 5360 <_sk_callback_sse41+0xb5b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014449 DB 255,224 ; jmpq *%rax
14450
Mike Klein21bd3e42017-04-06 16:32:29 -040014451PUBLIC _sk_gather_565_sse41
14452_sk_gather_565_sse41 LABEL PROC
14453 DB 72,173 ; lods %ds:(%rsi),%rax
14454 DB 76,139,8 ; mov (%rax),%r9
14455 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
14456 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
14457 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
14458 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2
14459 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
14460 DB 102,15,254,194 ; paddd %xmm2,%xmm0
14461 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax
14462 DB 65,137,192 ; mov %eax,%r8d
14463 DB 72,193,232,32 ; shr $0x20,%rax
14464 DB 102,72,15,126,193 ; movq %xmm0,%rcx
14465 DB 65,137,202 ; mov %ecx,%r10d
14466 DB 72,193,233,32 ; shr $0x20,%rcx
14467 DB 102,67,15,196,4,81,0 ; pinsrw $0x0,(%r9,%r10,2),%xmm0
14468 DB 102,65,15,196,4,73,1 ; pinsrw $0x1,(%r9,%rcx,2),%xmm0
14469 DB 67,15,183,12,65 ; movzwl (%r9,%r8,2),%ecx
14470 DB 102,15,196,193,2 ; pinsrw $0x2,%ecx,%xmm0
14471 DB 65,15,183,4,65 ; movzwl (%r9,%rax,2),%eax
14472 DB 102,15,196,192,3 ; pinsrw $0x3,%eax,%xmm0
14473 DB 102,15,56,51,208 ; pmovzxwd %xmm0,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014474 DB 102,15,111,5,2,36,0,0 ; movdqa 0x2402(%rip),%xmm0 # 5370 <_sk_callback_sse41+0xb6b>
Mike Klein21bd3e42017-04-06 16:32:29 -040014475 DB 102,15,219,194 ; pand %xmm2,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040014476 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014477 DB 15,89,5,4,36,0,0 ; mulps 0x2404(%rip),%xmm0 # 5380 <_sk_callback_sse41+0xb7b>
14478 DB 102,15,111,13,12,36,0,0 ; movdqa 0x240c(%rip),%xmm1 # 5390 <_sk_callback_sse41+0xb8b>
Mike Klein21bd3e42017-04-06 16:32:29 -040014479 DB 102,15,219,202 ; pand %xmm2,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040014480 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014481 DB 15,89,13,14,36,0,0 ; mulps 0x240e(%rip),%xmm1 # 53a0 <_sk_callback_sse41+0xb9b>
14482 DB 102,15,219,21,22,36,0,0 ; pand 0x2416(%rip),%xmm2 # 53b0 <_sk_callback_sse41+0xbab>
Mike Kleinfe560a82017-05-01 12:56:35 -040014483 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014484 DB 15,89,21,28,36,0,0 ; mulps 0x241c(%rip),%xmm2 # 53c0 <_sk_callback_sse41+0xbbb>
Mike Klein21bd3e42017-04-06 16:32:29 -040014485 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014486 DB 15,40,29,35,36,0,0 ; movaps 0x2423(%rip),%xmm3 # 53d0 <_sk_callback_sse41+0xbcb>
Mike Klein21bd3e42017-04-06 16:32:29 -040014487 DB 255,224 ; jmpq *%rax
14488
Mike Kleind7e06ae2017-03-29 16:33:06 -040014489PUBLIC _sk_store_565_sse41
14490_sk_store_565_sse41 LABEL PROC
14491 DB 72,173 ; lods %ds:(%rsi),%rax
14492 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014493 DB 68,15,40,5,36,36,0,0 ; movaps 0x2424(%rip),%xmm8 # 53e0 <_sk_callback_sse41+0xbdb>
Mike Kleinfe560a82017-05-01 12:56:35 -040014494 DB 68,15,40,200 ; movaps %xmm0,%xmm9
14495 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040014496 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
14497 DB 102,65,15,114,241,11 ; pslld $0xb,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040014498 DB 68,15,40,21,25,36,0,0 ; movaps 0x2419(%rip),%xmm10 # 53f0 <_sk_callback_sse41+0xbeb>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014499 DB 68,15,89,209 ; mulps %xmm1,%xmm10
14500 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10
14501 DB 102,65,15,114,242,5 ; pslld $0x5,%xmm10
14502 DB 102,69,15,235,209 ; por %xmm9,%xmm10
14503 DB 68,15,89,194 ; mulps %xmm2,%xmm8
14504 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
14505 DB 102,69,15,86,194 ; orpd %xmm10,%xmm8
14506 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8
14507 DB 102,68,15,214,4,120 ; movq %xmm8,(%rax,%rdi,2)
14508 DB 72,173 ; lods %ds:(%rsi),%rax
14509 DB 255,224 ; jmpq *%rax
14510
Mike Kleinf809fef2017-03-31 13:52:45 -040014511PUBLIC _sk_load_4444_sse41
14512_sk_load_4444_sse41 LABEL PROC
14513 DB 72,173 ; lods %ds:(%rsi),%rax
14514 DB 72,139,0 ; mov (%rax),%rax
Mike Klein308e6242017-04-27 13:56:33 -040014515 DB 102,15,56,51,28,120 ; pmovzxwd (%rax,%rdi,2),%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014516 DB 102,15,111,5,228,35,0,0 ; movdqa 0x23e4(%rip),%xmm0 # 5400 <_sk_callback_sse41+0xbfb>
Mike Klein308e6242017-04-27 13:56:33 -040014517 DB 102,15,219,195 ; pand %xmm3,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040014518 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014519 DB 15,89,5,230,35,0,0 ; mulps 0x23e6(%rip),%xmm0 # 5410 <_sk_callback_sse41+0xc0b>
14520 DB 102,15,111,13,238,35,0,0 ; movdqa 0x23ee(%rip),%xmm1 # 5420 <_sk_callback_sse41+0xc1b>
Mike Klein308e6242017-04-27 13:56:33 -040014521 DB 102,15,219,203 ; pand %xmm3,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040014522 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014523 DB 15,89,13,240,35,0,0 ; mulps 0x23f0(%rip),%xmm1 # 5430 <_sk_callback_sse41+0xc2b>
14524 DB 102,15,111,21,248,35,0,0 ; movdqa 0x23f8(%rip),%xmm2 # 5440 <_sk_callback_sse41+0xc3b>
Mike Klein308e6242017-04-27 13:56:33 -040014525 DB 102,15,219,211 ; pand %xmm3,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040014526 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014527 DB 15,89,21,250,35,0,0 ; mulps 0x23fa(%rip),%xmm2 # 5450 <_sk_callback_sse41+0xc4b>
14528 DB 102,15,219,29,2,36,0,0 ; pand 0x2402(%rip),%xmm3 # 5460 <_sk_callback_sse41+0xc5b>
Mike Kleinfe560a82017-05-01 12:56:35 -040014529 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014530 DB 15,89,29,8,36,0,0 ; mulps 0x2408(%rip),%xmm3 # 5470 <_sk_callback_sse41+0xc6b>
Mike Kleinf809fef2017-03-31 13:52:45 -040014531 DB 72,173 ; lods %ds:(%rsi),%rax
14532 DB 255,224 ; jmpq *%rax
14533
Mike Klein21bd3e42017-04-06 16:32:29 -040014534PUBLIC _sk_gather_4444_sse41
14535_sk_gather_4444_sse41 LABEL PROC
14536 DB 72,173 ; lods %ds:(%rsi),%rax
14537 DB 76,139,8 ; mov (%rax),%r9
14538 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
14539 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
14540 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
14541 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2
14542 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
14543 DB 102,15,254,194 ; paddd %xmm2,%xmm0
14544 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax
14545 DB 65,137,192 ; mov %eax,%r8d
14546 DB 72,193,232,32 ; shr $0x20,%rax
14547 DB 102,72,15,126,193 ; movq %xmm0,%rcx
14548 DB 65,137,202 ; mov %ecx,%r10d
14549 DB 72,193,233,32 ; shr $0x20,%rcx
14550 DB 102,67,15,196,4,81,0 ; pinsrw $0x0,(%r9,%r10,2),%xmm0
14551 DB 102,65,15,196,4,73,1 ; pinsrw $0x1,(%r9,%rcx,2),%xmm0
14552 DB 67,15,183,12,65 ; movzwl (%r9,%r8,2),%ecx
14553 DB 102,15,196,193,2 ; pinsrw $0x2,%ecx,%xmm0
14554 DB 65,15,183,4,65 ; movzwl (%r9,%rax,2),%eax
14555 DB 102,15,196,192,3 ; pinsrw $0x3,%eax,%xmm0
Mike Klein308e6242017-04-27 13:56:33 -040014556 DB 102,15,56,51,216 ; pmovzxwd %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014557 DB 102,15,111,5,171,35,0,0 ; movdqa 0x23ab(%rip),%xmm0 # 5480 <_sk_callback_sse41+0xc7b>
Mike Klein308e6242017-04-27 13:56:33 -040014558 DB 102,15,219,195 ; pand %xmm3,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040014559 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014560 DB 15,89,5,173,35,0,0 ; mulps 0x23ad(%rip),%xmm0 # 5490 <_sk_callback_sse41+0xc8b>
14561 DB 102,15,111,13,181,35,0,0 ; movdqa 0x23b5(%rip),%xmm1 # 54a0 <_sk_callback_sse41+0xc9b>
Mike Klein308e6242017-04-27 13:56:33 -040014562 DB 102,15,219,203 ; pand %xmm3,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040014563 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014564 DB 15,89,13,183,35,0,0 ; mulps 0x23b7(%rip),%xmm1 # 54b0 <_sk_callback_sse41+0xcab>
14565 DB 102,15,111,21,191,35,0,0 ; movdqa 0x23bf(%rip),%xmm2 # 54c0 <_sk_callback_sse41+0xcbb>
Mike Klein308e6242017-04-27 13:56:33 -040014566 DB 102,15,219,211 ; pand %xmm3,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040014567 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014568 DB 15,89,21,193,35,0,0 ; mulps 0x23c1(%rip),%xmm2 # 54d0 <_sk_callback_sse41+0xccb>
14569 DB 102,15,219,29,201,35,0,0 ; pand 0x23c9(%rip),%xmm3 # 54e0 <_sk_callback_sse41+0xcdb>
Mike Kleinfe560a82017-05-01 12:56:35 -040014570 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014571 DB 15,89,29,207,35,0,0 ; mulps 0x23cf(%rip),%xmm3 # 54f0 <_sk_callback_sse41+0xceb>
Mike Klein21bd3e42017-04-06 16:32:29 -040014572 DB 72,173 ; lods %ds:(%rsi),%rax
14573 DB 255,224 ; jmpq *%rax
14574
Mike Kleinf809fef2017-03-31 13:52:45 -040014575PUBLIC _sk_store_4444_sse41
14576_sk_store_4444_sse41 LABEL PROC
14577 DB 72,173 ; lods %ds:(%rsi),%rax
14578 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014579 DB 68,15,40,5,206,35,0,0 ; movaps 0x23ce(%rip),%xmm8 # 5500 <_sk_callback_sse41+0xcfb>
Mike Kleinfe560a82017-05-01 12:56:35 -040014580 DB 68,15,40,200 ; movaps %xmm0,%xmm9
14581 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleinf809fef2017-03-31 13:52:45 -040014582 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
14583 DB 102,65,15,114,241,12 ; pslld $0xc,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040014584 DB 68,15,40,209 ; movaps %xmm1,%xmm10
14585 DB 69,15,89,208 ; mulps %xmm8,%xmm10
Mike Kleinf809fef2017-03-31 13:52:45 -040014586 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10
14587 DB 102,65,15,114,242,8 ; pslld $0x8,%xmm10
14588 DB 102,69,15,235,209 ; por %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040014589 DB 68,15,40,202 ; movaps %xmm2,%xmm9
14590 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleinf809fef2017-03-31 13:52:45 -040014591 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
14592 DB 102,65,15,114,241,4 ; pslld $0x4,%xmm9
14593 DB 68,15,89,195 ; mulps %xmm3,%xmm8
14594 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
14595 DB 102,69,15,86,193 ; orpd %xmm9,%xmm8
14596 DB 102,69,15,86,194 ; orpd %xmm10,%xmm8
14597 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8
14598 DB 102,68,15,214,4,120 ; movq %xmm8,(%rax,%rdi,2)
14599 DB 72,173 ; lods %ds:(%rsi),%rax
14600 DB 255,224 ; jmpq *%rax
14601
Mike Kleind7e06ae2017-03-29 16:33:06 -040014602PUBLIC _sk_load_8888_sse41
14603_sk_load_8888_sse41 LABEL PROC
14604 DB 72,173 ; lods %ds:(%rsi),%rax
14605 DB 72,139,0 ; mov (%rax),%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040014606 DB 15,16,28,184 ; movups (%rax,%rdi,4),%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014607 DB 15,40,5,109,35,0,0 ; movaps 0x236d(%rip),%xmm0 # 5510 <_sk_callback_sse41+0xd0b>
Mike Klein0aa742f2017-04-27 13:36:57 -040014608 DB 15,84,195 ; andps %xmm3,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040014609 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014610 DB 68,15,40,5,111,35,0,0 ; movaps 0x236f(%rip),%xmm8 # 5520 <_sk_callback_sse41+0xd1b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014611 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040014612 DB 15,40,203 ; movaps %xmm3,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014613 DB 102,15,56,0,13,111,35,0,0 ; pshufb 0x236f(%rip),%xmm1 # 5530 <_sk_callback_sse41+0xd2b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014614 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
14615 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040014616 DB 15,40,211 ; movaps %xmm3,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014617 DB 102,15,56,0,21,108,35,0,0 ; pshufb 0x236c(%rip),%xmm2 # 5540 <_sk_callback_sse41+0xd3b>
Mike Kleind7e06ae2017-03-29 16:33:06 -040014618 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
14619 DB 65,15,89,208 ; mulps %xmm8,%xmm2
14620 DB 102,15,114,211,24 ; psrld $0x18,%xmm3
14621 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
14622 DB 65,15,89,216 ; mulps %xmm8,%xmm3
14623 DB 72,173 ; lods %ds:(%rsi),%rax
14624 DB 255,224 ; jmpq *%rax
14625
Mike Kleindec4ea82017-04-06 15:04:05 -040014626PUBLIC _sk_gather_8888_sse41
14627_sk_gather_8888_sse41 LABEL PROC
14628 DB 72,173 ; lods %ds:(%rsi),%rax
14629 DB 76,139,8 ; mov (%rax),%r9
14630 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
14631 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
14632 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
14633 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2
14634 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
14635 DB 102,15,254,194 ; paddd %xmm2,%xmm0
14636 DB 102,72,15,126,192 ; movq %xmm0,%rax
14637 DB 65,137,192 ; mov %eax,%r8d
14638 DB 72,193,232,32 ; shr $0x20,%rax
14639 DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx
14640 DB 65,137,202 ; mov %ecx,%r10d
14641 DB 72,193,233,32 ; shr $0x20,%rcx
14642 DB 102,67,15,110,28,129 ; movd (%r9,%r8,4),%xmm3
14643 DB 102,65,15,58,34,28,129,1 ; pinsrd $0x1,(%r9,%rax,4),%xmm3
14644 DB 102,67,15,58,34,28,145,2 ; pinsrd $0x2,(%r9,%r10,4),%xmm3
14645 DB 102,65,15,58,34,28,137,3 ; pinsrd $0x3,(%r9,%rcx,4),%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040014646 DB 102,15,111,5,5,35,0,0 ; movdqa 0x2305(%rip),%xmm0 # 5550 <_sk_callback_sse41+0xd4b>
Mike Kleindec4ea82017-04-06 15:04:05 -040014647 DB 102,15,219,195 ; pand %xmm3,%xmm0
14648 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014649 DB 68,15,40,5,6,35,0,0 ; movaps 0x2306(%rip),%xmm8 # 5560 <_sk_callback_sse41+0xd5b>
Mike Kleindec4ea82017-04-06 15:04:05 -040014650 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040014651 DB 102,15,111,203 ; movdqa %xmm3,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014652 DB 102,15,56,0,13,5,35,0,0 ; pshufb 0x2305(%rip),%xmm1 # 5570 <_sk_callback_sse41+0xd6b>
Mike Kleindec4ea82017-04-06 15:04:05 -040014653 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
14654 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040014655 DB 102,15,111,211 ; movdqa %xmm3,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040014656 DB 102,15,56,0,21,1,35,0,0 ; pshufb 0x2301(%rip),%xmm2 # 5580 <_sk_callback_sse41+0xd7b>
Mike Kleindec4ea82017-04-06 15:04:05 -040014657 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
14658 DB 65,15,89,208 ; mulps %xmm8,%xmm2
14659 DB 102,15,114,211,24 ; psrld $0x18,%xmm3
14660 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
14661 DB 65,15,89,216 ; mulps %xmm8,%xmm3
14662 DB 72,173 ; lods %ds:(%rsi),%rax
14663 DB 255,224 ; jmpq *%rax
14664
Mike Kleind7e06ae2017-03-29 16:33:06 -040014665PUBLIC _sk_store_8888_sse41
14666_sk_store_8888_sse41 LABEL PROC
14667 DB 72,173 ; lods %ds:(%rsi),%rax
14668 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014669 DB 68,15,40,5,237,34,0,0 ; movaps 0x22ed(%rip),%xmm8 # 5590 <_sk_callback_sse41+0xd8b>
Mike Kleinfe560a82017-05-01 12:56:35 -040014670 DB 68,15,40,200 ; movaps %xmm0,%xmm9
14671 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040014672 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040014673 DB 68,15,40,209 ; movaps %xmm1,%xmm10
14674 DB 69,15,89,208 ; mulps %xmm8,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040014675 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10
14676 DB 102,65,15,114,242,8 ; pslld $0x8,%xmm10
14677 DB 102,69,15,235,209 ; por %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040014678 DB 68,15,40,202 ; movaps %xmm2,%xmm9
14679 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040014680 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
14681 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9
14682 DB 68,15,89,195 ; mulps %xmm3,%xmm8
14683 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
14684 DB 102,65,15,114,240,24 ; pslld $0x18,%xmm8
14685 DB 102,69,15,235,193 ; por %xmm9,%xmm8
14686 DB 102,69,15,235,194 ; por %xmm10,%xmm8
14687 DB 243,68,15,127,4,184 ; movdqu %xmm8,(%rax,%rdi,4)
14688 DB 72,173 ; lods %ds:(%rsi),%rax
14689 DB 255,224 ; jmpq *%rax
14690
14691PUBLIC _sk_load_f16_sse41
14692_sk_load_f16_sse41 LABEL PROC
14693 DB 72,173 ; lods %ds:(%rsi),%rax
14694 DB 72,139,0 ; mov (%rax),%rax
14695 DB 243,15,111,4,248 ; movdqu (%rax,%rdi,8),%xmm0
14696 DB 243,15,111,76,248,16 ; movdqu 0x10(%rax,%rdi,8),%xmm1
Mike Kleind0ce1482017-04-19 17:19:30 -040014697 DB 102,68,15,111,200 ; movdqa %xmm0,%xmm9
14698 DB 102,68,15,97,201 ; punpcklwd %xmm1,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040014699 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0
Mike Klein097d0932017-04-20 09:11:53 -040014700 DB 102,69,15,111,217 ; movdqa %xmm9,%xmm11
14701 DB 102,68,15,97,216 ; punpcklwd %xmm0,%xmm11
Mike Kleind0ce1482017-04-19 17:19:30 -040014702 DB 102,68,15,105,200 ; punpckhwd %xmm0,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040014703 DB 102,65,15,56,51,203 ; pmovzxwd %xmm11,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014704 DB 102,68,15,111,5,102,34,0,0 ; movdqa 0x2266(%rip),%xmm8 # 55a0 <_sk_callback_sse41+0xd9b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014705 DB 102,15,111,209 ; movdqa %xmm1,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -040014706 DB 102,65,15,219,208 ; pand %xmm8,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -040014707 DB 102,15,239,202 ; pxor %xmm2,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014708 DB 102,15,111,29,97,34,0,0 ; movdqa 0x2261(%rip),%xmm3 # 55b0 <_sk_callback_sse41+0xdab>
Mike Kleind0ce1482017-04-19 17:19:30 -040014709 DB 102,15,114,242,16 ; pslld $0x10,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -040014710 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
14711 DB 102,15,56,63,195 ; pmaxud %xmm3,%xmm0
14712 DB 102,15,118,193 ; pcmpeqd %xmm1,%xmm0
14713 DB 102,15,114,241,13 ; pslld $0xd,%xmm1
14714 DB 102,15,235,202 ; por %xmm2,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014715 DB 102,68,15,111,21,77,34,0,0 ; movdqa 0x224d(%rip),%xmm10 # 55c0 <_sk_callback_sse41+0xdbb>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014716 DB 102,65,15,254,202 ; paddd %xmm10,%xmm1
14717 DB 102,15,219,193 ; pand %xmm1,%xmm0
Mike Klein097d0932017-04-20 09:11:53 -040014718 DB 102,65,15,115,219,8 ; psrldq $0x8,%xmm11
14719 DB 102,69,15,56,51,219 ; pmovzxwd %xmm11,%xmm11
14720 DB 102,65,15,111,211 ; movdqa %xmm11,%xmm2
14721 DB 102,65,15,219,208 ; pand %xmm8,%xmm2
14722 DB 102,68,15,239,218 ; pxor %xmm2,%xmm11
14723 DB 102,15,114,242,16 ; pslld $0x10,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -040014724 DB 102,65,15,111,203 ; movdqa %xmm11,%xmm1
14725 DB 102,15,56,63,203 ; pmaxud %xmm3,%xmm1
14726 DB 102,65,15,118,203 ; pcmpeqd %xmm11,%xmm1
Mike Klein097d0932017-04-20 09:11:53 -040014727 DB 102,65,15,114,243,13 ; pslld $0xd,%xmm11
Mike Kleinb4bbc642017-04-27 08:59:55 -040014728 DB 102,68,15,235,218 ; por %xmm2,%xmm11
14729 DB 102,69,15,254,218 ; paddd %xmm10,%xmm11
14730 DB 102,65,15,219,203 ; pand %xmm11,%xmm1
Mike Klein097d0932017-04-20 09:11:53 -040014731 DB 102,69,15,56,51,217 ; pmovzxwd %xmm9,%xmm11
14732 DB 102,69,15,111,227 ; movdqa %xmm11,%xmm12
14733 DB 102,69,15,219,224 ; pand %xmm8,%xmm12
14734 DB 102,69,15,239,220 ; pxor %xmm12,%xmm11
14735 DB 102,65,15,114,244,16 ; pslld $0x10,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040014736 DB 102,65,15,111,211 ; movdqa %xmm11,%xmm2
14737 DB 102,15,56,63,211 ; pmaxud %xmm3,%xmm2
14738 DB 102,65,15,118,211 ; pcmpeqd %xmm11,%xmm2
Mike Klein097d0932017-04-20 09:11:53 -040014739 DB 102,65,15,114,243,13 ; pslld $0xd,%xmm11
Mike Kleinb4bbc642017-04-27 08:59:55 -040014740 DB 102,69,15,235,220 ; por %xmm12,%xmm11
14741 DB 102,69,15,254,218 ; paddd %xmm10,%xmm11
14742 DB 102,65,15,219,211 ; pand %xmm11,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -040014743 DB 102,65,15,115,217,8 ; psrldq $0x8,%xmm9
14744 DB 102,69,15,56,51,201 ; pmovzxwd %xmm9,%xmm9
14745 DB 102,69,15,219,193 ; pand %xmm9,%xmm8
Mike Kleind0ce1482017-04-19 17:19:30 -040014746 DB 102,69,15,239,200 ; pxor %xmm8,%xmm9
14747 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040014748 DB 102,65,15,56,63,217 ; pmaxud %xmm9,%xmm3
14749 DB 102,65,15,118,217 ; pcmpeqd %xmm9,%xmm3
Mike Kleind0ce1482017-04-19 17:19:30 -040014750 DB 102,65,15,114,241,13 ; pslld $0xd,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040014751 DB 102,69,15,235,200 ; por %xmm8,%xmm9
14752 DB 102,69,15,254,202 ; paddd %xmm10,%xmm9
14753 DB 102,65,15,219,217 ; pand %xmm9,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040014754 DB 72,173 ; lods %ds:(%rsi),%rax
14755 DB 255,224 ; jmpq *%rax
14756
Mike Klein5f055f02017-04-06 20:02:11 -040014757PUBLIC _sk_gather_f16_sse41
14758_sk_gather_f16_sse41 LABEL PROC
14759 DB 72,173 ; lods %ds:(%rsi),%rax
14760 DB 76,139,8 ; mov (%rax),%r9
14761 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
14762 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
14763 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
14764 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2
14765 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
14766 DB 102,15,254,194 ; paddd %xmm2,%xmm0
14767 DB 102,72,15,126,192 ; movq %xmm0,%rax
14768 DB 65,137,192 ; mov %eax,%r8d
14769 DB 72,193,232,32 ; shr $0x20,%rax
14770 DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx
14771 DB 65,137,202 ; mov %ecx,%r10d
14772 DB 72,193,233,32 ; shr $0x20,%rcx
14773 DB 243,65,15,126,4,201 ; movq (%r9,%rcx,8),%xmm0
14774 DB 243,67,15,126,12,209 ; movq (%r9,%r10,8),%xmm1
14775 DB 102,15,108,200 ; punpcklqdq %xmm0,%xmm1
14776 DB 243,65,15,126,4,193 ; movq (%r9,%rax,8),%xmm0
14777 DB 243,67,15,126,20,193 ; movq (%r9,%r8,8),%xmm2
14778 DB 102,15,108,208 ; punpcklqdq %xmm0,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -040014779 DB 102,68,15,111,202 ; movdqa %xmm2,%xmm9
14780 DB 102,68,15,97,201 ; punpcklwd %xmm1,%xmm9
Mike Klein5f055f02017-04-06 20:02:11 -040014781 DB 102,15,105,209 ; punpckhwd %xmm1,%xmm2
Mike Klein097d0932017-04-20 09:11:53 -040014782 DB 102,69,15,111,217 ; movdqa %xmm9,%xmm11
14783 DB 102,68,15,97,218 ; punpcklwd %xmm2,%xmm11
Mike Kleind0ce1482017-04-19 17:19:30 -040014784 DB 102,68,15,105,202 ; punpckhwd %xmm2,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040014785 DB 102,65,15,56,51,203 ; pmovzxwd %xmm11,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014786 DB 102,68,15,111,5,11,33,0,0 ; movdqa 0x210b(%rip),%xmm8 # 55d0 <_sk_callback_sse41+0xdcb>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014787 DB 102,15,111,209 ; movdqa %xmm1,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -040014788 DB 102,65,15,219,208 ; pand %xmm8,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -040014789 DB 102,15,239,202 ; pxor %xmm2,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014790 DB 102,15,111,29,6,33,0,0 ; movdqa 0x2106(%rip),%xmm3 # 55e0 <_sk_callback_sse41+0xddb>
Mike Kleind0ce1482017-04-19 17:19:30 -040014791 DB 102,15,114,242,16 ; pslld $0x10,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -040014792 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
14793 DB 102,15,56,63,195 ; pmaxud %xmm3,%xmm0
14794 DB 102,15,118,193 ; pcmpeqd %xmm1,%xmm0
14795 DB 102,15,114,241,13 ; pslld $0xd,%xmm1
14796 DB 102,15,235,202 ; por %xmm2,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040014797 DB 102,68,15,111,21,242,32,0,0 ; movdqa 0x20f2(%rip),%xmm10 # 55f0 <_sk_callback_sse41+0xdeb>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014798 DB 102,65,15,254,202 ; paddd %xmm10,%xmm1
14799 DB 102,15,219,193 ; pand %xmm1,%xmm0
Mike Klein097d0932017-04-20 09:11:53 -040014800 DB 102,65,15,115,219,8 ; psrldq $0x8,%xmm11
14801 DB 102,69,15,56,51,219 ; pmovzxwd %xmm11,%xmm11
14802 DB 102,65,15,111,211 ; movdqa %xmm11,%xmm2
14803 DB 102,65,15,219,208 ; pand %xmm8,%xmm2
14804 DB 102,68,15,239,218 ; pxor %xmm2,%xmm11
14805 DB 102,15,114,242,16 ; pslld $0x10,%xmm2
Mike Kleinb4bbc642017-04-27 08:59:55 -040014806 DB 102,65,15,111,203 ; movdqa %xmm11,%xmm1
14807 DB 102,15,56,63,203 ; pmaxud %xmm3,%xmm1
14808 DB 102,65,15,118,203 ; pcmpeqd %xmm11,%xmm1
Mike Klein097d0932017-04-20 09:11:53 -040014809 DB 102,65,15,114,243,13 ; pslld $0xd,%xmm11
Mike Kleinb4bbc642017-04-27 08:59:55 -040014810 DB 102,68,15,235,218 ; por %xmm2,%xmm11
14811 DB 102,69,15,254,218 ; paddd %xmm10,%xmm11
14812 DB 102,65,15,219,203 ; pand %xmm11,%xmm1
Mike Klein097d0932017-04-20 09:11:53 -040014813 DB 102,69,15,56,51,217 ; pmovzxwd %xmm9,%xmm11
14814 DB 102,69,15,111,227 ; movdqa %xmm11,%xmm12
14815 DB 102,69,15,219,224 ; pand %xmm8,%xmm12
14816 DB 102,69,15,239,220 ; pxor %xmm12,%xmm11
14817 DB 102,65,15,114,244,16 ; pslld $0x10,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040014818 DB 102,65,15,111,211 ; movdqa %xmm11,%xmm2
14819 DB 102,15,56,63,211 ; pmaxud %xmm3,%xmm2
14820 DB 102,65,15,118,211 ; pcmpeqd %xmm11,%xmm2
Mike Klein097d0932017-04-20 09:11:53 -040014821 DB 102,65,15,114,243,13 ; pslld $0xd,%xmm11
Mike Kleinb4bbc642017-04-27 08:59:55 -040014822 DB 102,69,15,235,220 ; por %xmm12,%xmm11
14823 DB 102,69,15,254,218 ; paddd %xmm10,%xmm11
14824 DB 102,65,15,219,211 ; pand %xmm11,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -040014825 DB 102,65,15,115,217,8 ; psrldq $0x8,%xmm9
14826 DB 102,69,15,56,51,201 ; pmovzxwd %xmm9,%xmm9
14827 DB 102,69,15,219,193 ; pand %xmm9,%xmm8
Mike Kleind0ce1482017-04-19 17:19:30 -040014828 DB 102,69,15,239,200 ; pxor %xmm8,%xmm9
14829 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040014830 DB 102,65,15,56,63,217 ; pmaxud %xmm9,%xmm3
14831 DB 102,65,15,118,217 ; pcmpeqd %xmm9,%xmm3
Mike Kleind0ce1482017-04-19 17:19:30 -040014832 DB 102,65,15,114,241,13 ; pslld $0xd,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040014833 DB 102,69,15,235,200 ; por %xmm8,%xmm9
14834 DB 102,69,15,254,202 ; paddd %xmm10,%xmm9
14835 DB 102,65,15,219,217 ; pand %xmm9,%xmm3
Mike Klein5f055f02017-04-06 20:02:11 -040014836 DB 72,173 ; lods %ds:(%rsi),%rax
14837 DB 255,224 ; jmpq *%rax
14838
Mike Kleind7e06ae2017-03-29 16:33:06 -040014839PUBLIC _sk_store_f16_sse41
14840_sk_store_f16_sse41 LABEL PROC
14841 DB 72,173 ; lods %ds:(%rsi),%rax
14842 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014843 DB 102,68,15,111,21,40,32,0,0 ; movdqa 0x2028(%rip),%xmm10 # 5600 <_sk_callback_sse41+0xdfb>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014844 DB 102,68,15,111,224 ; movdqa %xmm0,%xmm12
Mike Klein097d0932017-04-20 09:11:53 -040014845 DB 102,68,15,111,232 ; movdqa %xmm0,%xmm13
Mike Kleinb4bbc642017-04-27 08:59:55 -040014846 DB 102,69,15,219,234 ; pand %xmm10,%xmm13
14847 DB 102,69,15,239,229 ; pxor %xmm13,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014848 DB 102,68,15,111,13,27,32,0,0 ; movdqa 0x201b(%rip),%xmm9 # 5610 <_sk_callback_sse41+0xe0b>
Mike Kleind0ce1482017-04-19 17:19:30 -040014849 DB 102,65,15,114,213,16 ; psrld $0x10,%xmm13
Mike Kleinb4bbc642017-04-27 08:59:55 -040014850 DB 102,69,15,111,193 ; movdqa %xmm9,%xmm8
14851 DB 102,69,15,102,196 ; pcmpgtd %xmm12,%xmm8
14852 DB 102,65,15,114,212,13 ; psrld $0xd,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040014853 DB 102,68,15,111,29,12,32,0,0 ; movdqa 0x200c(%rip),%xmm11 # 5620 <_sk_callback_sse41+0xe1b>
Mike Kleinb4bbc642017-04-27 08:59:55 -040014854 DB 102,69,15,235,235 ; por %xmm11,%xmm13
14855 DB 102,69,15,254,236 ; paddd %xmm12,%xmm13
14856 DB 102,69,15,223,197 ; pandn %xmm13,%xmm8
14857 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8
14858 DB 102,68,15,111,233 ; movdqa %xmm1,%xmm13
14859 DB 102,68,15,111,241 ; movdqa %xmm1,%xmm14
14860 DB 102,69,15,219,242 ; pand %xmm10,%xmm14
14861 DB 102,69,15,239,238 ; pxor %xmm14,%xmm13
Mike Kleind0ce1482017-04-19 17:19:30 -040014862 DB 102,65,15,114,214,16 ; psrld $0x10,%xmm14
Mike Kleinb4bbc642017-04-27 08:59:55 -040014863 DB 102,69,15,111,225 ; movdqa %xmm9,%xmm12
14864 DB 102,69,15,102,229 ; pcmpgtd %xmm13,%xmm12
14865 DB 102,65,15,114,213,13 ; psrld $0xd,%xmm13
14866 DB 102,69,15,235,243 ; por %xmm11,%xmm14
14867 DB 102,69,15,254,245 ; paddd %xmm13,%xmm14
14868 DB 102,69,15,223,230 ; pandn %xmm14,%xmm12
14869 DB 102,69,15,56,43,228 ; packusdw %xmm12,%xmm12
14870 DB 102,68,15,111,242 ; movdqa %xmm2,%xmm14
14871 DB 102,68,15,111,250 ; movdqa %xmm2,%xmm15
14872 DB 102,69,15,219,250 ; pand %xmm10,%xmm15
14873 DB 102,69,15,239,247 ; pxor %xmm15,%xmm14
14874 DB 102,65,15,114,215,16 ; psrld $0x10,%xmm15
14875 DB 102,69,15,111,233 ; movdqa %xmm9,%xmm13
14876 DB 102,69,15,102,238 ; pcmpgtd %xmm14,%xmm13
Mike Klein097d0932017-04-20 09:11:53 -040014877 DB 102,65,15,114,214,13 ; psrld $0xd,%xmm14
Mike Kleinb4bbc642017-04-27 08:59:55 -040014878 DB 102,69,15,235,251 ; por %xmm11,%xmm15
14879 DB 102,69,15,254,254 ; paddd %xmm14,%xmm15
14880 DB 102,69,15,223,239 ; pandn %xmm15,%xmm13
14881 DB 102,69,15,56,43,237 ; packusdw %xmm13,%xmm13
14882 DB 102,68,15,219,211 ; pand %xmm3,%xmm10
14883 DB 102,68,15,111,243 ; movdqa %xmm3,%xmm14
14884 DB 102,69,15,239,242 ; pxor %xmm10,%xmm14
14885 DB 102,65,15,114,210,16 ; psrld $0x10,%xmm10
14886 DB 102,69,15,102,206 ; pcmpgtd %xmm14,%xmm9
14887 DB 102,65,15,114,214,13 ; psrld $0xd,%xmm14
14888 DB 102,69,15,235,211 ; por %xmm11,%xmm10
14889 DB 102,69,15,254,214 ; paddd %xmm14,%xmm10
14890 DB 102,69,15,223,202 ; pandn %xmm10,%xmm9
14891 DB 102,69,15,56,43,201 ; packusdw %xmm9,%xmm9
Mike Kleind0ce1482017-04-19 17:19:30 -040014892 DB 102,69,15,97,196 ; punpcklwd %xmm12,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040014893 DB 102,69,15,97,233 ; punpcklwd %xmm9,%xmm13
Mike Klein95f53be2017-04-04 10:24:56 -040014894 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9
Mike Kleind0ce1482017-04-19 17:19:30 -040014895 DB 102,69,15,98,205 ; punpckldq %xmm13,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040014896 DB 243,68,15,127,12,248 ; movdqu %xmm9,(%rax,%rdi,8)
Mike Kleind0ce1482017-04-19 17:19:30 -040014897 DB 102,69,15,106,197 ; punpckhdq %xmm13,%xmm8
Mike Klein95f53be2017-04-04 10:24:56 -040014898 DB 243,68,15,127,68,248,16 ; movdqu %xmm8,0x10(%rax,%rdi,8)
Mike Kleind7e06ae2017-03-29 16:33:06 -040014899 DB 72,173 ; lods %ds:(%rsi),%rax
14900 DB 255,224 ; jmpq *%rax
14901
Mike Klein3146bb92017-04-05 14:45:02 -040014902PUBLIC _sk_load_u16_be_sse41
14903_sk_load_u16_be_sse41 LABEL PROC
14904 DB 72,173 ; lods %ds:(%rsi),%rax
14905 DB 72,139,0 ; mov (%rax),%rax
14906 DB 243,15,111,4,248 ; movdqu (%rax,%rdi,8),%xmm0
14907 DB 243,15,111,76,248,16 ; movdqu 0x10(%rax,%rdi,8),%xmm1
14908 DB 102,15,111,208 ; movdqa %xmm0,%xmm2
14909 DB 102,15,97,209 ; punpcklwd %xmm1,%xmm2
14910 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0
14911 DB 102,15,111,202 ; movdqa %xmm2,%xmm1
14912 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1
14913 DB 102,15,105,208 ; punpckhwd %xmm0,%xmm2
Mike Klein3146bb92017-04-05 14:45:02 -040014914 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
14915 DB 102,15,113,240,8 ; psllw $0x8,%xmm0
14916 DB 102,15,112,217,78 ; pshufd $0x4e,%xmm1,%xmm3
14917 DB 102,15,113,209,8 ; psrlw $0x8,%xmm1
14918 DB 102,15,235,200 ; por %xmm0,%xmm1
14919 DB 102,15,56,51,193 ; pmovzxwd %xmm1,%xmm0
14920 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014921 DB 68,15,40,5,219,30,0,0 ; movaps 0x1edb(%rip),%xmm8 # 5630 <_sk_callback_sse41+0xe2b>
Mike Klein3146bb92017-04-05 14:45:02 -040014922 DB 65,15,89,192 ; mulps %xmm8,%xmm0
14923 DB 102,15,111,203 ; movdqa %xmm3,%xmm1
14924 DB 102,15,113,241,8 ; psllw $0x8,%xmm1
14925 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3
14926 DB 102,15,235,217 ; por %xmm1,%xmm3
14927 DB 102,15,56,51,203 ; pmovzxwd %xmm3,%xmm1
14928 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
14929 DB 65,15,89,200 ; mulps %xmm8,%xmm1
14930 DB 102,68,15,111,202 ; movdqa %xmm2,%xmm9
14931 DB 102,65,15,113,241,8 ; psllw $0x8,%xmm9
14932 DB 102,15,112,218,78 ; pshufd $0x4e,%xmm2,%xmm3
14933 DB 102,15,113,210,8 ; psrlw $0x8,%xmm2
14934 DB 102,65,15,235,209 ; por %xmm9,%xmm2
14935 DB 102,15,56,51,210 ; pmovzxwd %xmm2,%xmm2
14936 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
14937 DB 65,15,89,208 ; mulps %xmm8,%xmm2
14938 DB 102,68,15,111,203 ; movdqa %xmm3,%xmm9
14939 DB 102,65,15,113,241,8 ; psllw $0x8,%xmm9
14940 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3
14941 DB 102,65,15,235,217 ; por %xmm9,%xmm3
14942 DB 102,15,56,51,219 ; pmovzxwd %xmm3,%xmm3
14943 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
14944 DB 65,15,89,216 ; mulps %xmm8,%xmm3
14945 DB 72,173 ; lods %ds:(%rsi),%rax
14946 DB 255,224 ; jmpq *%rax
14947
Mike Kleinb3821732017-04-17 10:58:05 -040014948PUBLIC _sk_load_rgb_u16_be_sse41
14949_sk_load_rgb_u16_be_sse41 LABEL PROC
14950 DB 72,173 ; lods %ds:(%rsi),%rax
14951 DB 72,139,0 ; mov (%rax),%rax
14952 DB 72,141,12,127 ; lea (%rdi,%rdi,2),%rcx
14953 DB 243,15,111,20,72 ; movdqu (%rax,%rcx,2),%xmm2
14954 DB 243,15,111,68,72,8 ; movdqu 0x8(%rax,%rcx,2),%xmm0
14955 DB 102,15,115,216,4 ; psrldq $0x4,%xmm0
14956 DB 102,15,111,202 ; movdqa %xmm2,%xmm1
14957 DB 102,15,115,217,6 ; psrldq $0x6,%xmm1
14958 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2
14959 DB 102,15,115,216,6 ; psrldq $0x6,%xmm0
14960 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1
14961 DB 102,15,111,194 ; movdqa %xmm2,%xmm0
14962 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0
14963 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3
14964 DB 102,15,105,209 ; punpckhwd %xmm1,%xmm2
Mike Kleinb3821732017-04-17 10:58:05 -040014965 DB 102,15,111,200 ; movdqa %xmm0,%xmm1
14966 DB 102,15,113,241,8 ; psllw $0x8,%xmm1
14967 DB 102,15,113,208,8 ; psrlw $0x8,%xmm0
14968 DB 102,15,235,193 ; por %xmm1,%xmm0
14969 DB 102,15,56,51,192 ; pmovzxwd %xmm0,%xmm0
14970 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040014971 DB 68,15,40,5,28,30,0,0 ; movaps 0x1e1c(%rip),%xmm8 # 5640 <_sk_callback_sse41+0xe3b>
Mike Kleinb3821732017-04-17 10:58:05 -040014972 DB 65,15,89,192 ; mulps %xmm8,%xmm0
14973 DB 102,15,111,203 ; movdqa %xmm3,%xmm1
14974 DB 102,15,113,241,8 ; psllw $0x8,%xmm1
14975 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3
14976 DB 102,15,235,217 ; por %xmm1,%xmm3
14977 DB 102,15,56,51,203 ; pmovzxwd %xmm3,%xmm1
14978 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
14979 DB 65,15,89,200 ; mulps %xmm8,%xmm1
14980 DB 102,15,111,218 ; movdqa %xmm2,%xmm3
14981 DB 102,15,113,243,8 ; psllw $0x8,%xmm3
14982 DB 102,15,113,210,8 ; psrlw $0x8,%xmm2
14983 DB 102,15,235,211 ; por %xmm3,%xmm2
14984 DB 102,15,56,51,210 ; pmovzxwd %xmm2,%xmm2
14985 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
14986 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Kleinb3821732017-04-17 10:58:05 -040014987 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014988 DB 15,40,29,227,29,0,0 ; movaps 0x1de3(%rip),%xmm3 # 5650 <_sk_callback_sse41+0xe4b>
Mike Kleinb3821732017-04-17 10:58:05 -040014989 DB 255,224 ; jmpq *%rax
14990
Mike Klein3146bb92017-04-05 14:45:02 -040014991PUBLIC _sk_store_u16_be_sse41
14992_sk_store_u16_be_sse41 LABEL PROC
14993 DB 72,173 ; lods %ds:(%rsi),%rax
14994 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040014995 DB 68,15,40,13,228,29,0,0 ; movaps 0x1de4(%rip),%xmm9 # 5660 <_sk_callback_sse41+0xe5b>
Mike Kleinfe560a82017-05-01 12:56:35 -040014996 DB 68,15,40,192 ; movaps %xmm0,%xmm8
14997 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein3146bb92017-04-05 14:45:02 -040014998 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
14999 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8
15000 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10
15001 DB 102,65,15,113,242,8 ; psllw $0x8,%xmm10
15002 DB 102,65,15,113,208,8 ; psrlw $0x8,%xmm8
15003 DB 102,69,15,235,194 ; por %xmm10,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040015004 DB 68,15,40,209 ; movaps %xmm1,%xmm10
15005 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein3146bb92017-04-05 14:45:02 -040015006 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10
15007 DB 102,69,15,56,43,210 ; packusdw %xmm10,%xmm10
15008 DB 102,69,15,111,218 ; movdqa %xmm10,%xmm11
15009 DB 102,65,15,113,243,8 ; psllw $0x8,%xmm11
15010 DB 102,65,15,113,210,8 ; psrlw $0x8,%xmm10
15011 DB 102,69,15,235,211 ; por %xmm11,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040015012 DB 68,15,40,218 ; movaps %xmm2,%xmm11
15013 DB 69,15,89,217 ; mulps %xmm9,%xmm11
Mike Klein3146bb92017-04-05 14:45:02 -040015014 DB 102,69,15,91,219 ; cvtps2dq %xmm11,%xmm11
15015 DB 102,69,15,56,43,219 ; packusdw %xmm11,%xmm11
15016 DB 102,69,15,111,227 ; movdqa %xmm11,%xmm12
15017 DB 102,65,15,113,244,8 ; psllw $0x8,%xmm12
15018 DB 102,65,15,113,211,8 ; psrlw $0x8,%xmm11
15019 DB 102,69,15,235,220 ; por %xmm12,%xmm11
15020 DB 68,15,89,203 ; mulps %xmm3,%xmm9
15021 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
15022 DB 102,69,15,56,43,201 ; packusdw %xmm9,%xmm9
15023 DB 102,69,15,111,225 ; movdqa %xmm9,%xmm12
15024 DB 102,65,15,113,244,8 ; psllw $0x8,%xmm12
15025 DB 102,65,15,113,209,8 ; psrlw $0x8,%xmm9
15026 DB 102,69,15,235,204 ; por %xmm12,%xmm9
15027 DB 102,69,15,97,194 ; punpcklwd %xmm10,%xmm8
15028 DB 102,69,15,97,217 ; punpcklwd %xmm9,%xmm11
15029 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9
15030 DB 102,69,15,98,203 ; punpckldq %xmm11,%xmm9
15031 DB 243,68,15,127,12,248 ; movdqu %xmm9,(%rax,%rdi,8)
15032 DB 102,69,15,106,195 ; punpckhdq %xmm11,%xmm8
15033 DB 243,68,15,127,68,248,16 ; movdqu %xmm8,0x10(%rax,%rdi,8)
15034 DB 72,173 ; lods %ds:(%rsi),%rax
15035 DB 255,224 ; jmpq *%rax
15036
Mike Klein14987eb2017-04-06 10:22:26 -040015037PUBLIC _sk_load_f32_sse41
15038_sk_load_f32_sse41 LABEL PROC
15039 DB 72,173 ; lods %ds:(%rsi),%rax
15040 DB 72,139,0 ; mov (%rax),%rax
15041 DB 72,137,249 ; mov %rdi,%rcx
15042 DB 72,193,225,4 ; shl $0x4,%rcx
15043 DB 68,15,16,4,8 ; movups (%rax,%rcx,1),%xmm8
15044 DB 15,16,68,8,16 ; movups 0x10(%rax,%rcx,1),%xmm0
15045 DB 15,16,92,8,32 ; movups 0x20(%rax,%rcx,1),%xmm3
15046 DB 68,15,16,76,8,48 ; movups 0x30(%rax,%rcx,1),%xmm9
15047 DB 65,15,40,208 ; movaps %xmm8,%xmm2
15048 DB 15,20,208 ; unpcklps %xmm0,%xmm2
15049 DB 15,40,203 ; movaps %xmm3,%xmm1
15050 DB 65,15,20,201 ; unpcklps %xmm9,%xmm1
15051 DB 68,15,21,192 ; unpckhps %xmm0,%xmm8
15052 DB 65,15,21,217 ; unpckhps %xmm9,%xmm3
15053 DB 15,40,194 ; movaps %xmm2,%xmm0
15054 DB 102,15,20,193 ; unpcklpd %xmm1,%xmm0
15055 DB 15,18,202 ; movhlps %xmm2,%xmm1
15056 DB 65,15,40,208 ; movaps %xmm8,%xmm2
15057 DB 102,15,20,211 ; unpcklpd %xmm3,%xmm2
15058 DB 65,15,18,216 ; movhlps %xmm8,%xmm3
15059 DB 72,173 ; lods %ds:(%rsi),%rax
15060 DB 255,224 ; jmpq *%rax
15061
Mike Kleind7e06ae2017-03-29 16:33:06 -040015062PUBLIC _sk_store_f32_sse41
15063_sk_store_f32_sse41 LABEL PROC
15064 DB 72,173 ; lods %ds:(%rsi),%rax
15065 DB 72,139,0 ; mov (%rax),%rax
15066 DB 72,137,249 ; mov %rdi,%rcx
15067 DB 72,193,225,4 ; shl $0x4,%rcx
15068 DB 68,15,40,192 ; movaps %xmm0,%xmm8
15069 DB 68,15,40,200 ; movaps %xmm0,%xmm9
15070 DB 68,15,20,201 ; unpcklps %xmm1,%xmm9
15071 DB 68,15,40,210 ; movaps %xmm2,%xmm10
15072 DB 68,15,40,218 ; movaps %xmm2,%xmm11
15073 DB 68,15,20,219 ; unpcklps %xmm3,%xmm11
15074 DB 68,15,21,193 ; unpckhps %xmm1,%xmm8
15075 DB 68,15,21,211 ; unpckhps %xmm3,%xmm10
15076 DB 69,15,40,225 ; movaps %xmm9,%xmm12
15077 DB 102,69,15,20,227 ; unpcklpd %xmm11,%xmm12
15078 DB 69,15,18,217 ; movhlps %xmm9,%xmm11
15079 DB 69,15,40,200 ; movaps %xmm8,%xmm9
15080 DB 102,69,15,20,202 ; unpcklpd %xmm10,%xmm9
15081 DB 69,15,18,208 ; movhlps %xmm8,%xmm10
15082 DB 102,68,15,17,36,8 ; movupd %xmm12,(%rax,%rcx,1)
15083 DB 68,15,17,92,8,16 ; movups %xmm11,0x10(%rax,%rcx,1)
15084 DB 102,68,15,17,76,8,32 ; movupd %xmm9,0x20(%rax,%rcx,1)
15085 DB 68,15,17,84,8,48 ; movups %xmm10,0x30(%rax,%rcx,1)
15086 DB 72,173 ; lods %ds:(%rsi),%rax
15087 DB 255,224 ; jmpq *%rax
15088
15089PUBLIC _sk_clamp_x_sse41
15090_sk_clamp_x_sse41 LABEL PROC
15091 DB 72,173 ; lods %ds:(%rsi),%rax
15092 DB 69,15,87,192 ; xorps %xmm8,%xmm8
15093 DB 68,15,95,192 ; maxps %xmm0,%xmm8
Mike Kleinfc84dc52017-05-11 15:29:31 -040015094 DB 243,15,16,0 ; movss (%rax),%xmm0
15095 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040015096 DB 68,15,93,192 ; minps %xmm0,%xmm8
15097 DB 72,173 ; lods %ds:(%rsi),%rax
15098 DB 65,15,40,192 ; movaps %xmm8,%xmm0
15099 DB 255,224 ; jmpq *%rax
15100
15101PUBLIC _sk_clamp_y_sse41
15102_sk_clamp_y_sse41 LABEL PROC
15103 DB 72,173 ; lods %ds:(%rsi),%rax
15104 DB 69,15,87,192 ; xorps %xmm8,%xmm8
15105 DB 68,15,95,193 ; maxps %xmm1,%xmm8
Mike Kleinfc84dc52017-05-11 15:29:31 -040015106 DB 243,15,16,8 ; movss (%rax),%xmm1
15107 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040015108 DB 68,15,93,193 ; minps %xmm1,%xmm8
15109 DB 72,173 ; lods %ds:(%rsi),%rax
15110 DB 65,15,40,200 ; movaps %xmm8,%xmm1
15111 DB 255,224 ; jmpq *%rax
15112
15113PUBLIC _sk_repeat_x_sse41
15114_sk_repeat_x_sse41 LABEL PROC
15115 DB 72,173 ; lods %ds:(%rsi),%rax
15116 DB 243,68,15,16,0 ; movss (%rax),%xmm8
15117 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
15118 DB 68,15,40,200 ; movaps %xmm0,%xmm9
15119 DB 69,15,94,200 ; divps %xmm8,%xmm9
15120 DB 102,69,15,58,8,201,1 ; roundps $0x1,%xmm9,%xmm9
15121 DB 69,15,89,200 ; mulps %xmm8,%xmm9
15122 DB 65,15,92,193 ; subps %xmm9,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040015123 DB 72,173 ; lods %ds:(%rsi),%rax
15124 DB 255,224 ; jmpq *%rax
15125
15126PUBLIC _sk_repeat_y_sse41
15127_sk_repeat_y_sse41 LABEL PROC
15128 DB 72,173 ; lods %ds:(%rsi),%rax
15129 DB 243,68,15,16,0 ; movss (%rax),%xmm8
15130 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
15131 DB 68,15,40,201 ; movaps %xmm1,%xmm9
15132 DB 69,15,94,200 ; divps %xmm8,%xmm9
15133 DB 102,69,15,58,8,201,1 ; roundps $0x1,%xmm9,%xmm9
15134 DB 69,15,89,200 ; mulps %xmm8,%xmm9
15135 DB 65,15,92,201 ; subps %xmm9,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040015136 DB 72,173 ; lods %ds:(%rsi),%rax
15137 DB 255,224 ; jmpq *%rax
15138
15139PUBLIC _sk_mirror_x_sse41
15140_sk_mirror_x_sse41 LABEL PROC
15141 DB 72,173 ; lods %ds:(%rsi),%rax
15142 DB 243,68,15,16,0 ; movss (%rax),%xmm8
15143 DB 69,15,40,200 ; movaps %xmm8,%xmm9
15144 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
15145 DB 65,15,92,193 ; subps %xmm9,%xmm0
15146 DB 243,69,15,88,192 ; addss %xmm8,%xmm8
15147 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
15148 DB 68,15,40,208 ; movaps %xmm0,%xmm10
15149 DB 69,15,94,208 ; divps %xmm8,%xmm10
15150 DB 102,69,15,58,8,210,1 ; roundps $0x1,%xmm10,%xmm10
15151 DB 69,15,89,208 ; mulps %xmm8,%xmm10
15152 DB 65,15,92,194 ; subps %xmm10,%xmm0
15153 DB 65,15,92,193 ; subps %xmm9,%xmm0
15154 DB 69,15,87,192 ; xorps %xmm8,%xmm8
15155 DB 68,15,92,192 ; subps %xmm0,%xmm8
15156 DB 65,15,84,192 ; andps %xmm8,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040015157 DB 72,173 ; lods %ds:(%rsi),%rax
15158 DB 255,224 ; jmpq *%rax
15159
15160PUBLIC _sk_mirror_y_sse41
15161_sk_mirror_y_sse41 LABEL PROC
15162 DB 72,173 ; lods %ds:(%rsi),%rax
15163 DB 243,68,15,16,0 ; movss (%rax),%xmm8
15164 DB 69,15,40,200 ; movaps %xmm8,%xmm9
15165 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
15166 DB 65,15,92,201 ; subps %xmm9,%xmm1
15167 DB 243,69,15,88,192 ; addss %xmm8,%xmm8
15168 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
15169 DB 68,15,40,209 ; movaps %xmm1,%xmm10
15170 DB 69,15,94,208 ; divps %xmm8,%xmm10
15171 DB 102,69,15,58,8,210,1 ; roundps $0x1,%xmm10,%xmm10
15172 DB 69,15,89,208 ; mulps %xmm8,%xmm10
15173 DB 65,15,92,202 ; subps %xmm10,%xmm1
15174 DB 65,15,92,201 ; subps %xmm9,%xmm1
15175 DB 69,15,87,192 ; xorps %xmm8,%xmm8
15176 DB 68,15,92,193 ; subps %xmm1,%xmm8
15177 DB 65,15,84,200 ; andps %xmm8,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040015178 DB 72,173 ; lods %ds:(%rsi),%rax
15179 DB 255,224 ; jmpq *%rax
15180
Mike Klein9f85d682017-05-23 07:52:01 -040015181PUBLIC _sk_clamp_x_1_sse41
15182_sk_clamp_x_1_sse41 LABEL PROC
15183 DB 69,15,87,192 ; xorps %xmm8,%xmm8
15184 DB 68,15,95,192 ; maxps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015185 DB 68,15,93,5,74,27,0,0 ; minps 0x1b4a(%rip),%xmm8 # 5670 <_sk_callback_sse41+0xe6b>
Mike Klein9f85d682017-05-23 07:52:01 -040015186 DB 72,173 ; lods %ds:(%rsi),%rax
15187 DB 65,15,40,192 ; movaps %xmm8,%xmm0
15188 DB 255,224 ; jmpq *%rax
15189
15190PUBLIC _sk_repeat_x_1_sse41
15191_sk_repeat_x_1_sse41 LABEL PROC
15192 DB 102,68,15,58,8,192,1 ; roundps $0x1,%xmm0,%xmm8
15193 DB 65,15,92,192 ; subps %xmm8,%xmm0
15194 DB 72,173 ; lods %ds:(%rsi),%rax
15195 DB 255,224 ; jmpq *%rax
15196
15197PUBLIC _sk_mirror_x_1_sse41
15198_sk_mirror_x_1_sse41 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040015199 DB 68,15,40,5,59,27,0,0 ; movaps 0x1b3b(%rip),%xmm8 # 5680 <_sk_callback_sse41+0xe7b>
Mike Klein9f85d682017-05-23 07:52:01 -040015200 DB 65,15,88,192 ; addps %xmm8,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040015201 DB 68,15,40,13,63,27,0,0 ; movaps 0x1b3f(%rip),%xmm9 # 5690 <_sk_callback_sse41+0xe8b>
Mike Klein9f85d682017-05-23 07:52:01 -040015202 DB 68,15,89,200 ; mulps %xmm0,%xmm9
15203 DB 102,69,15,58,8,201,1 ; roundps $0x1,%xmm9,%xmm9
15204 DB 69,15,88,201 ; addps %xmm9,%xmm9
15205 DB 65,15,92,193 ; subps %xmm9,%xmm0
15206 DB 65,15,88,192 ; addps %xmm8,%xmm0
15207 DB 69,15,87,192 ; xorps %xmm8,%xmm8
15208 DB 68,15,92,192 ; subps %xmm0,%xmm8
15209 DB 65,15,84,192 ; andps %xmm8,%xmm0
15210 DB 72,173 ; lods %ds:(%rsi),%rax
15211 DB 255,224 ; jmpq *%rax
15212
Mike Kleind7e06ae2017-03-29 16:33:06 -040015213PUBLIC _sk_luminance_to_alpha_sse41
15214_sk_luminance_to_alpha_sse41 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040015215 DB 15,40,218 ; movaps %xmm2,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040015216 DB 15,89,5,30,27,0,0 ; mulps 0x1b1e(%rip),%xmm0 # 56a0 <_sk_callback_sse41+0xe9b>
15217 DB 15,89,13,39,27,0,0 ; mulps 0x1b27(%rip),%xmm1 # 56b0 <_sk_callback_sse41+0xeab>
Mike Kleinfe560a82017-05-01 12:56:35 -040015218 DB 15,88,200 ; addps %xmm0,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040015219 DB 15,89,29,45,27,0,0 ; mulps 0x1b2d(%rip),%xmm3 # 56c0 <_sk_callback_sse41+0xebb>
Mike Kleinfe560a82017-05-01 12:56:35 -040015220 DB 15,88,217 ; addps %xmm1,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040015221 DB 72,173 ; lods %ds:(%rsi),%rax
15222 DB 15,87,192 ; xorps %xmm0,%xmm0
15223 DB 15,87,201 ; xorps %xmm1,%xmm1
15224 DB 15,87,210 ; xorps %xmm2,%xmm2
15225 DB 255,224 ; jmpq *%rax
15226
15227PUBLIC _sk_matrix_2x3_sse41
15228_sk_matrix_2x3_sse41 LABEL PROC
15229 DB 68,15,40,201 ; movaps %xmm1,%xmm9
15230 DB 68,15,40,192 ; movaps %xmm0,%xmm8
15231 DB 72,173 ; lods %ds:(%rsi),%rax
15232 DB 243,15,16,0 ; movss (%rax),%xmm0
15233 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
15234 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
15235 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
15236 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15237 DB 243,68,15,16,88,16 ; movss 0x10(%rax),%xmm11
15238 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15239 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15240 DB 69,15,88,211 ; addps %xmm11,%xmm10
15241 DB 65,15,89,192 ; mulps %xmm8,%xmm0
15242 DB 65,15,88,194 ; addps %xmm10,%xmm0
15243 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
15244 DB 243,68,15,16,80,12 ; movss 0xc(%rax),%xmm10
15245 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15246 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11
15247 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15248 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15249 DB 69,15,88,211 ; addps %xmm11,%xmm10
15250 DB 65,15,89,200 ; mulps %xmm8,%xmm1
15251 DB 65,15,88,202 ; addps %xmm10,%xmm1
15252 DB 72,173 ; lods %ds:(%rsi),%rax
15253 DB 255,224 ; jmpq *%rax
15254
15255PUBLIC _sk_matrix_3x4_sse41
15256_sk_matrix_3x4_sse41 LABEL PROC
15257 DB 68,15,40,201 ; movaps %xmm1,%xmm9
15258 DB 68,15,40,192 ; movaps %xmm0,%xmm8
15259 DB 72,173 ; lods %ds:(%rsi),%rax
15260 DB 243,15,16,0 ; movss (%rax),%xmm0
15261 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
15262 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
15263 DB 243,68,15,16,80,12 ; movss 0xc(%rax),%xmm10
15264 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15265 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11
15266 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15267 DB 243,68,15,16,96,36 ; movss 0x24(%rax),%xmm12
15268 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
15269 DB 68,15,89,218 ; mulps %xmm2,%xmm11
15270 DB 69,15,88,220 ; addps %xmm12,%xmm11
15271 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15272 DB 69,15,88,211 ; addps %xmm11,%xmm10
15273 DB 65,15,89,192 ; mulps %xmm8,%xmm0
15274 DB 65,15,88,194 ; addps %xmm10,%xmm0
15275 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
15276 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
15277 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15278 DB 243,68,15,16,88,28 ; movss 0x1c(%rax),%xmm11
15279 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15280 DB 243,68,15,16,96,40 ; movss 0x28(%rax),%xmm12
15281 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
15282 DB 68,15,89,218 ; mulps %xmm2,%xmm11
15283 DB 69,15,88,220 ; addps %xmm12,%xmm11
15284 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15285 DB 69,15,88,211 ; addps %xmm11,%xmm10
15286 DB 65,15,89,200 ; mulps %xmm8,%xmm1
15287 DB 65,15,88,202 ; addps %xmm10,%xmm1
15288 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
15289 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15290 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11
15291 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15292 DB 243,68,15,16,96,32 ; movss 0x20(%rax),%xmm12
15293 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
15294 DB 243,68,15,16,104,44 ; movss 0x2c(%rax),%xmm13
15295 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
15296 DB 68,15,89,226 ; mulps %xmm2,%xmm12
15297 DB 69,15,88,229 ; addps %xmm13,%xmm12
15298 DB 69,15,89,217 ; mulps %xmm9,%xmm11
15299 DB 69,15,88,220 ; addps %xmm12,%xmm11
15300 DB 69,15,89,208 ; mulps %xmm8,%xmm10
15301 DB 69,15,88,211 ; addps %xmm11,%xmm10
15302 DB 72,173 ; lods %ds:(%rsi),%rax
15303 DB 65,15,40,210 ; movaps %xmm10,%xmm2
15304 DB 255,224 ; jmpq *%rax
15305
15306PUBLIC _sk_matrix_4x5_sse41
15307_sk_matrix_4x5_sse41 LABEL PROC
15308 DB 68,15,40,201 ; movaps %xmm1,%xmm9
15309 DB 68,15,40,192 ; movaps %xmm0,%xmm8
15310 DB 72,173 ; lods %ds:(%rsi),%rax
15311 DB 243,15,16,0 ; movss (%rax),%xmm0
15312 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
15313 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
15314 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
15315 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15316 DB 243,68,15,16,88,32 ; movss 0x20(%rax),%xmm11
15317 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15318 DB 243,68,15,16,96,48 ; movss 0x30(%rax),%xmm12
15319 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
15320 DB 243,68,15,16,104,64 ; movss 0x40(%rax),%xmm13
15321 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
15322 DB 68,15,89,227 ; mulps %xmm3,%xmm12
15323 DB 69,15,88,229 ; addps %xmm13,%xmm12
15324 DB 68,15,89,218 ; mulps %xmm2,%xmm11
15325 DB 69,15,88,220 ; addps %xmm12,%xmm11
15326 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15327 DB 69,15,88,211 ; addps %xmm11,%xmm10
15328 DB 65,15,89,192 ; mulps %xmm8,%xmm0
15329 DB 65,15,88,194 ; addps %xmm10,%xmm0
15330 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
15331 DB 243,68,15,16,80,20 ; movss 0x14(%rax),%xmm10
15332 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15333 DB 243,68,15,16,88,36 ; movss 0x24(%rax),%xmm11
15334 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15335 DB 243,68,15,16,96,52 ; movss 0x34(%rax),%xmm12
15336 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
15337 DB 243,68,15,16,104,68 ; movss 0x44(%rax),%xmm13
15338 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
15339 DB 68,15,89,227 ; mulps %xmm3,%xmm12
15340 DB 69,15,88,229 ; addps %xmm13,%xmm12
15341 DB 68,15,89,218 ; mulps %xmm2,%xmm11
15342 DB 69,15,88,220 ; addps %xmm12,%xmm11
15343 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15344 DB 69,15,88,211 ; addps %xmm11,%xmm10
15345 DB 65,15,89,200 ; mulps %xmm8,%xmm1
15346 DB 65,15,88,202 ; addps %xmm10,%xmm1
15347 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
15348 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15349 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11
15350 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15351 DB 243,68,15,16,96,40 ; movss 0x28(%rax),%xmm12
15352 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
15353 DB 243,68,15,16,104,56 ; movss 0x38(%rax),%xmm13
15354 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
15355 DB 243,68,15,16,112,72 ; movss 0x48(%rax),%xmm14
15356 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14
15357 DB 68,15,89,235 ; mulps %xmm3,%xmm13
15358 DB 69,15,88,238 ; addps %xmm14,%xmm13
15359 DB 68,15,89,226 ; mulps %xmm2,%xmm12
15360 DB 69,15,88,229 ; addps %xmm13,%xmm12
15361 DB 69,15,89,217 ; mulps %xmm9,%xmm11
15362 DB 69,15,88,220 ; addps %xmm12,%xmm11
15363 DB 69,15,89,208 ; mulps %xmm8,%xmm10
15364 DB 69,15,88,211 ; addps %xmm11,%xmm10
15365 DB 243,68,15,16,88,12 ; movss 0xc(%rax),%xmm11
15366 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15367 DB 243,68,15,16,96,28 ; movss 0x1c(%rax),%xmm12
15368 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
15369 DB 243,68,15,16,104,44 ; movss 0x2c(%rax),%xmm13
15370 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
15371 DB 243,68,15,16,112,60 ; movss 0x3c(%rax),%xmm14
15372 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14
15373 DB 243,68,15,16,120,76 ; movss 0x4c(%rax),%xmm15
15374 DB 69,15,198,255,0 ; shufps $0x0,%xmm15,%xmm15
15375 DB 68,15,89,243 ; mulps %xmm3,%xmm14
15376 DB 69,15,88,247 ; addps %xmm15,%xmm14
15377 DB 68,15,89,234 ; mulps %xmm2,%xmm13
15378 DB 69,15,88,238 ; addps %xmm14,%xmm13
15379 DB 69,15,89,225 ; mulps %xmm9,%xmm12
15380 DB 69,15,88,229 ; addps %xmm13,%xmm12
15381 DB 69,15,89,216 ; mulps %xmm8,%xmm11
15382 DB 69,15,88,220 ; addps %xmm12,%xmm11
15383 DB 72,173 ; lods %ds:(%rsi),%rax
15384 DB 65,15,40,210 ; movaps %xmm10,%xmm2
15385 DB 65,15,40,219 ; movaps %xmm11,%xmm3
15386 DB 255,224 ; jmpq *%rax
15387
Mike Reed02640952017-05-19 15:32:13 -040015388PUBLIC _sk_matrix_4x3_sse41
15389_sk_matrix_4x3_sse41 LABEL PROC
15390 DB 68,15,40,201 ; movaps %xmm1,%xmm9
15391 DB 68,15,40,192 ; movaps %xmm0,%xmm8
15392 DB 72,173 ; lods %ds:(%rsi),%rax
15393 DB 243,15,16,0 ; movss (%rax),%xmm0
15394 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
15395 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
15396 DB 243,15,16,80,16 ; movss 0x10(%rax),%xmm2
15397 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
15398 DB 243,15,16,88,32 ; movss 0x20(%rax),%xmm3
15399 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
15400 DB 65,15,89,209 ; mulps %xmm9,%xmm2
15401 DB 15,88,211 ; addps %xmm3,%xmm2
15402 DB 65,15,89,192 ; mulps %xmm8,%xmm0
15403 DB 15,88,194 ; addps %xmm2,%xmm0
15404 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
15405 DB 243,15,16,80,20 ; movss 0x14(%rax),%xmm2
15406 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
15407 DB 243,15,16,88,36 ; movss 0x24(%rax),%xmm3
15408 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
15409 DB 65,15,89,209 ; mulps %xmm9,%xmm2
15410 DB 15,88,211 ; addps %xmm3,%xmm2
15411 DB 65,15,89,200 ; mulps %xmm8,%xmm1
15412 DB 15,88,202 ; addps %xmm2,%xmm1
15413 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
15414 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
15415 DB 243,15,16,88,24 ; movss 0x18(%rax),%xmm3
15416 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
15417 DB 243,68,15,16,80,40 ; movss 0x28(%rax),%xmm10
15418 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15419 DB 65,15,89,217 ; mulps %xmm9,%xmm3
15420 DB 65,15,88,218 ; addps %xmm10,%xmm3
15421 DB 65,15,89,208 ; mulps %xmm8,%xmm2
15422 DB 15,88,211 ; addps %xmm3,%xmm2
15423 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3
15424 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
15425 DB 243,68,15,16,80,28 ; movss 0x1c(%rax),%xmm10
15426 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15427 DB 243,68,15,16,88,44 ; movss 0x2c(%rax),%xmm11
15428 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15429 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15430 DB 69,15,88,211 ; addps %xmm11,%xmm10
15431 DB 65,15,89,216 ; mulps %xmm8,%xmm3
15432 DB 65,15,88,218 ; addps %xmm10,%xmm3
15433 DB 72,173 ; lods %ds:(%rsi),%rax
15434 DB 255,224 ; jmpq *%rax
15435
Mike Kleind7e06ae2017-03-29 16:33:06 -040015436PUBLIC _sk_matrix_perspective_sse41
15437_sk_matrix_perspective_sse41 LABEL PROC
15438 DB 68,15,40,192 ; movaps %xmm0,%xmm8
15439 DB 72,173 ; lods %ds:(%rsi),%rax
15440 DB 243,15,16,0 ; movss (%rax),%xmm0
15441 DB 243,68,15,16,72,4 ; movss 0x4(%rax),%xmm9
15442 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
15443 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
15444 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
15445 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15446 DB 68,15,89,201 ; mulps %xmm1,%xmm9
15447 DB 69,15,88,202 ; addps %xmm10,%xmm9
15448 DB 65,15,89,192 ; mulps %xmm8,%xmm0
15449 DB 65,15,88,193 ; addps %xmm9,%xmm0
15450 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9
15451 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
15452 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
15453 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15454 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11
15455 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15456 DB 68,15,89,209 ; mulps %xmm1,%xmm10
15457 DB 69,15,88,211 ; addps %xmm11,%xmm10
15458 DB 69,15,89,200 ; mulps %xmm8,%xmm9
15459 DB 69,15,88,202 ; addps %xmm10,%xmm9
15460 DB 243,68,15,16,80,24 ; movss 0x18(%rax),%xmm10
15461 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
15462 DB 243,68,15,16,88,28 ; movss 0x1c(%rax),%xmm11
15463 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
15464 DB 243,68,15,16,96,32 ; movss 0x20(%rax),%xmm12
15465 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
15466 DB 68,15,89,217 ; mulps %xmm1,%xmm11
15467 DB 69,15,88,220 ; addps %xmm12,%xmm11
15468 DB 69,15,89,208 ; mulps %xmm8,%xmm10
15469 DB 69,15,88,211 ; addps %xmm11,%xmm10
15470 DB 65,15,83,202 ; rcpps %xmm10,%xmm1
15471 DB 15,89,193 ; mulps %xmm1,%xmm0
15472 DB 68,15,89,201 ; mulps %xmm1,%xmm9
15473 DB 72,173 ; lods %ds:(%rsi),%rax
15474 DB 65,15,40,201 ; movaps %xmm9,%xmm1
15475 DB 255,224 ; jmpq *%rax
15476
Herb Derby4de13042017-05-15 10:49:39 -040015477PUBLIC _sk_evenly_spaced_gradient_sse41
15478_sk_evenly_spaced_gradient_sse41 LABEL PROC
15479 DB 72,173 ; lods %ds:(%rsi),%rax
15480 DB 72,139,8 ; mov (%rax),%rcx
15481 DB 76,139,88,8 ; mov 0x8(%rax),%r11
15482 DB 72,255,201 ; dec %rcx
Mike Klein8ca33562017-05-23 08:07:43 -040015483 DB 120,7 ; js 3fcc <_sk_evenly_spaced_gradient_sse41+0x15>
Herb Derby4de13042017-05-15 10:49:39 -040015484 DB 243,72,15,42,201 ; cvtsi2ss %rcx,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040015485 DB 235,21 ; jmp 3fe1 <_sk_evenly_spaced_gradient_sse41+0x2a>
Herb Derby4de13042017-05-15 10:49:39 -040015486 DB 73,137,200 ; mov %rcx,%r8
15487 DB 73,209,232 ; shr %r8
15488 DB 131,225,1 ; and $0x1,%ecx
15489 DB 76,9,193 ; or %r8,%rcx
15490 DB 243,72,15,42,201 ; cvtsi2ss %rcx,%xmm1
15491 DB 243,15,88,201 ; addss %xmm1,%xmm1
15492 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
15493 DB 15,89,200 ; mulps %xmm0,%xmm1
15494 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
15495 DB 102,73,15,58,22,201,1 ; pextrq $0x1,%xmm1,%r9
15496 DB 69,137,200 ; mov %r9d,%r8d
15497 DB 73,193,233,32 ; shr $0x20,%r9
15498 DB 102,72,15,126,201 ; movq %xmm1,%rcx
15499 DB 65,137,202 ; mov %ecx,%r10d
15500 DB 72,193,233,32 ; shr $0x20,%rcx
15501 DB 243,71,15,16,4,147 ; movss (%r11,%r10,4),%xmm8
15502 DB 102,69,15,58,33,4,139,16 ; insertps $0x10,(%r11,%rcx,4),%xmm8
15503 DB 243,67,15,16,12,131 ; movss (%r11,%r8,4),%xmm1
15504 DB 102,68,15,58,33,193,32 ; insertps $0x20,%xmm1,%xmm8
15505 DB 243,67,15,16,12,139 ; movss (%r11,%r9,4),%xmm1
15506 DB 102,68,15,58,33,193,48 ; insertps $0x30,%xmm1,%xmm8
15507 DB 76,139,88,40 ; mov 0x28(%rax),%r11
15508 DB 243,71,15,16,12,147 ; movss (%r11,%r10,4),%xmm9
15509 DB 102,69,15,58,33,12,139,16 ; insertps $0x10,(%r11,%rcx,4),%xmm9
15510 DB 243,67,15,16,12,131 ; movss (%r11,%r8,4),%xmm1
15511 DB 102,68,15,58,33,201,32 ; insertps $0x20,%xmm1,%xmm9
15512 DB 243,67,15,16,12,139 ; movss (%r11,%r9,4),%xmm1
15513 DB 102,68,15,58,33,201,48 ; insertps $0x30,%xmm1,%xmm9
15514 DB 76,139,88,16 ; mov 0x10(%rax),%r11
15515 DB 243,67,15,16,12,147 ; movss (%r11,%r10,4),%xmm1
15516 DB 102,65,15,58,33,12,139,16 ; insertps $0x10,(%r11,%rcx,4),%xmm1
15517 DB 243,67,15,16,20,131 ; movss (%r11,%r8,4),%xmm2
15518 DB 102,15,58,33,202,32 ; insertps $0x20,%xmm2,%xmm1
15519 DB 243,67,15,16,20,139 ; movss (%r11,%r9,4),%xmm2
15520 DB 102,15,58,33,202,48 ; insertps $0x30,%xmm2,%xmm1
15521 DB 76,139,88,48 ; mov 0x30(%rax),%r11
15522 DB 243,71,15,16,20,147 ; movss (%r11,%r10,4),%xmm10
15523 DB 102,69,15,58,33,20,139,16 ; insertps $0x10,(%r11,%rcx,4),%xmm10
15524 DB 243,67,15,16,20,131 ; movss (%r11,%r8,4),%xmm2
15525 DB 102,68,15,58,33,210,32 ; insertps $0x20,%xmm2,%xmm10
15526 DB 243,67,15,16,20,139 ; movss (%r11,%r9,4),%xmm2
15527 DB 102,68,15,58,33,210,48 ; insertps $0x30,%xmm2,%xmm10
15528 DB 76,139,88,24 ; mov 0x18(%rax),%r11
15529 DB 243,67,15,16,20,147 ; movss (%r11,%r10,4),%xmm2
15530 DB 102,65,15,58,33,20,139,16 ; insertps $0x10,(%r11,%rcx,4),%xmm2
15531 DB 243,67,15,16,28,131 ; movss (%r11,%r8,4),%xmm3
15532 DB 102,15,58,33,211,32 ; insertps $0x20,%xmm3,%xmm2
15533 DB 243,67,15,16,28,139 ; movss (%r11,%r9,4),%xmm3
15534 DB 102,15,58,33,211,48 ; insertps $0x30,%xmm3,%xmm2
15535 DB 76,139,88,56 ; mov 0x38(%rax),%r11
15536 DB 243,71,15,16,28,147 ; movss (%r11,%r10,4),%xmm11
15537 DB 102,69,15,58,33,28,139,16 ; insertps $0x10,(%r11,%rcx,4),%xmm11
15538 DB 243,67,15,16,28,131 ; movss (%r11,%r8,4),%xmm3
15539 DB 102,68,15,58,33,219,32 ; insertps $0x20,%xmm3,%xmm11
15540 DB 243,67,15,16,28,139 ; movss (%r11,%r9,4),%xmm3
15541 DB 102,68,15,58,33,219,48 ; insertps $0x30,%xmm3,%xmm11
15542 DB 76,139,88,32 ; mov 0x20(%rax),%r11
15543 DB 243,67,15,16,28,147 ; movss (%r11,%r10,4),%xmm3
15544 DB 102,65,15,58,33,28,139,16 ; insertps $0x10,(%r11,%rcx,4),%xmm3
15545 DB 243,71,15,16,36,131 ; movss (%r11,%r8,4),%xmm12
15546 DB 102,65,15,58,33,220,32 ; insertps $0x20,%xmm12,%xmm3
15547 DB 243,71,15,16,36,139 ; movss (%r11,%r9,4),%xmm12
15548 DB 102,65,15,58,33,220,48 ; insertps $0x30,%xmm12,%xmm3
15549 DB 72,139,64,64 ; mov 0x40(%rax),%rax
15550 DB 243,70,15,16,36,144 ; movss (%rax,%r10,4),%xmm12
15551 DB 102,68,15,58,33,36,136,16 ; insertps $0x10,(%rax,%rcx,4),%xmm12
15552 DB 243,70,15,16,44,128 ; movss (%rax,%r8,4),%xmm13
15553 DB 102,69,15,58,33,229,32 ; insertps $0x20,%xmm13,%xmm12
15554 DB 243,70,15,16,44,136 ; movss (%rax,%r9,4),%xmm13
15555 DB 102,69,15,58,33,229,48 ; insertps $0x30,%xmm13,%xmm12
15556 DB 68,15,89,192 ; mulps %xmm0,%xmm8
15557 DB 69,15,88,193 ; addps %xmm9,%xmm8
15558 DB 15,89,200 ; mulps %xmm0,%xmm1
15559 DB 65,15,88,202 ; addps %xmm10,%xmm1
15560 DB 15,89,208 ; mulps %xmm0,%xmm2
15561 DB 65,15,88,211 ; addps %xmm11,%xmm2
15562 DB 15,89,216 ; mulps %xmm0,%xmm3
15563 DB 65,15,88,220 ; addps %xmm12,%xmm3
15564 DB 72,173 ; lods %ds:(%rsi),%rax
15565 DB 65,15,40,192 ; movaps %xmm8,%xmm0
15566 DB 255,224 ; jmpq *%rax
15567
Mike Klein5c7960b2017-05-11 10:59:22 -040015568PUBLIC _sk_gradient_sse41
15569_sk_gradient_sse41 LABEL PROC
Herb Derby7b4202d2017-04-10 10:52:34 -040015570 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby4de13042017-05-15 10:49:39 -040015571 DB 76,139,0 ; mov (%rax),%r8
15572 DB 102,15,239,201 ; pxor %xmm1,%xmm1
15573 DB 73,131,248,2 ; cmp $0x2,%r8
Mike Klein8ca33562017-05-23 08:07:43 -040015574 DB 114,50 ; jb 41c4 <_sk_gradient_sse41+0x41>
Herb Derby4de13042017-05-15 10:49:39 -040015575 DB 72,139,72,72 ; mov 0x48(%rax),%rcx
15576 DB 73,255,200 ; dec %r8
15577 DB 72,131,193,4 ; add $0x4,%rcx
15578 DB 102,15,239,201 ; pxor %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040015579 DB 15,40,21,40,21,0,0 ; movaps 0x1528(%rip),%xmm2 # 56d0 <_sk_callback_sse41+0xecb>
Herb Derby4de13042017-05-15 10:49:39 -040015580 DB 243,15,16,25 ; movss (%rcx),%xmm3
Herb Derby7b4202d2017-04-10 10:52:34 -040015581 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
Herb Derby4de13042017-05-15 10:49:39 -040015582 DB 15,194,216,2 ; cmpleps %xmm0,%xmm3
15583 DB 15,84,218 ; andps %xmm2,%xmm3
15584 DB 102,15,254,203 ; paddd %xmm3,%xmm1
15585 DB 72,131,193,4 ; add $0x4,%rcx
15586 DB 73,255,200 ; dec %r8
Mike Klein8ca33562017-05-23 08:07:43 -040015587 DB 117,228 ; jne 41a8 <_sk_gradient_sse41+0x25>
Herb Derby4de13042017-05-15 10:49:39 -040015588 DB 65,86 ; push %r14
15589 DB 83 ; push %rbx
15590 DB 102,73,15,58,22,201,1 ; pextrq $0x1,%xmm1,%r9
15591 DB 69,137,200 ; mov %r9d,%r8d
15592 DB 73,193,233,32 ; shr $0x20,%r9
15593 DB 102,72,15,126,201 ; movq %xmm1,%rcx
15594 DB 65,137,202 ; mov %ecx,%r10d
15595 DB 72,193,233,32 ; shr $0x20,%rcx
15596 DB 76,139,88,8 ; mov 0x8(%rax),%r11
15597 DB 76,139,112,16 ; mov 0x10(%rax),%r14
15598 DB 243,71,15,16,4,147 ; movss (%r11,%r10,4),%xmm8
15599 DB 102,69,15,58,33,4,139,16 ; insertps $0x10,(%r11,%rcx,4),%xmm8
15600 DB 243,67,15,16,12,131 ; movss (%r11,%r8,4),%xmm1
15601 DB 102,68,15,58,33,193,32 ; insertps $0x20,%xmm1,%xmm8
15602 DB 243,67,15,16,12,139 ; movss (%r11,%r9,4),%xmm1
15603 DB 102,68,15,58,33,193,48 ; insertps $0x30,%xmm1,%xmm8
15604 DB 72,139,88,40 ; mov 0x28(%rax),%rbx
15605 DB 243,70,15,16,12,147 ; movss (%rbx,%r10,4),%xmm9
15606 DB 102,68,15,58,33,12,139,16 ; insertps $0x10,(%rbx,%rcx,4),%xmm9
15607 DB 243,66,15,16,12,131 ; movss (%rbx,%r8,4),%xmm1
15608 DB 102,68,15,58,33,201,32 ; insertps $0x20,%xmm1,%xmm9
15609 DB 243,66,15,16,12,139 ; movss (%rbx,%r9,4),%xmm1
15610 DB 102,68,15,58,33,201,48 ; insertps $0x30,%xmm1,%xmm9
15611 DB 243,67,15,16,12,150 ; movss (%r14,%r10,4),%xmm1
15612 DB 102,65,15,58,33,12,142,16 ; insertps $0x10,(%r14,%rcx,4),%xmm1
15613 DB 243,67,15,16,20,134 ; movss (%r14,%r8,4),%xmm2
15614 DB 102,15,58,33,202,32 ; insertps $0x20,%xmm2,%xmm1
15615 DB 243,67,15,16,20,142 ; movss (%r14,%r9,4),%xmm2
15616 DB 102,15,58,33,202,48 ; insertps $0x30,%xmm2,%xmm1
15617 DB 72,139,88,48 ; mov 0x30(%rax),%rbx
15618 DB 243,70,15,16,20,147 ; movss (%rbx,%r10,4),%xmm10
15619 DB 102,68,15,58,33,20,139,16 ; insertps $0x10,(%rbx,%rcx,4),%xmm10
15620 DB 243,66,15,16,20,131 ; movss (%rbx,%r8,4),%xmm2
15621 DB 102,68,15,58,33,210,32 ; insertps $0x20,%xmm2,%xmm10
15622 DB 243,66,15,16,20,139 ; movss (%rbx,%r9,4),%xmm2
15623 DB 102,68,15,58,33,210,48 ; insertps $0x30,%xmm2,%xmm10
15624 DB 72,139,88,24 ; mov 0x18(%rax),%rbx
15625 DB 243,66,15,16,20,147 ; movss (%rbx,%r10,4),%xmm2
15626 DB 102,15,58,33,20,139,16 ; insertps $0x10,(%rbx,%rcx,4),%xmm2
15627 DB 243,66,15,16,28,131 ; movss (%rbx,%r8,4),%xmm3
15628 DB 102,15,58,33,211,32 ; insertps $0x20,%xmm3,%xmm2
15629 DB 243,66,15,16,28,139 ; movss (%rbx,%r9,4),%xmm3
15630 DB 102,15,58,33,211,48 ; insertps $0x30,%xmm3,%xmm2
15631 DB 72,139,88,56 ; mov 0x38(%rax),%rbx
15632 DB 243,70,15,16,28,147 ; movss (%rbx,%r10,4),%xmm11
15633 DB 102,68,15,58,33,28,139,16 ; insertps $0x10,(%rbx,%rcx,4),%xmm11
15634 DB 243,66,15,16,28,131 ; movss (%rbx,%r8,4),%xmm3
15635 DB 102,68,15,58,33,219,32 ; insertps $0x20,%xmm3,%xmm11
15636 DB 243,66,15,16,28,139 ; movss (%rbx,%r9,4),%xmm3
15637 DB 102,68,15,58,33,219,48 ; insertps $0x30,%xmm3,%xmm11
15638 DB 72,139,88,32 ; mov 0x20(%rax),%rbx
15639 DB 243,66,15,16,28,147 ; movss (%rbx,%r10,4),%xmm3
15640 DB 102,15,58,33,28,139,16 ; insertps $0x10,(%rbx,%rcx,4),%xmm3
15641 DB 243,70,15,16,36,131 ; movss (%rbx,%r8,4),%xmm12
15642 DB 102,65,15,58,33,220,32 ; insertps $0x20,%xmm12,%xmm3
15643 DB 243,70,15,16,36,139 ; movss (%rbx,%r9,4),%xmm12
15644 DB 102,65,15,58,33,220,48 ; insertps $0x30,%xmm12,%xmm3
15645 DB 72,139,64,64 ; mov 0x40(%rax),%rax
15646 DB 243,70,15,16,36,144 ; movss (%rax,%r10,4),%xmm12
15647 DB 102,68,15,58,33,36,136,16 ; insertps $0x10,(%rax,%rcx,4),%xmm12
15648 DB 243,70,15,16,44,128 ; movss (%rax,%r8,4),%xmm13
15649 DB 102,69,15,58,33,229,32 ; insertps $0x20,%xmm13,%xmm12
15650 DB 243,70,15,16,44,136 ; movss (%rax,%r9,4),%xmm13
15651 DB 102,69,15,58,33,229,48 ; insertps $0x30,%xmm13,%xmm12
15652 DB 68,15,89,192 ; mulps %xmm0,%xmm8
15653 DB 69,15,88,193 ; addps %xmm9,%xmm8
Herb Derby7b4202d2017-04-10 10:52:34 -040015654 DB 15,89,200 ; mulps %xmm0,%xmm1
Herb Derby4de13042017-05-15 10:49:39 -040015655 DB 65,15,88,202 ; addps %xmm10,%xmm1
Herb Derby7b4202d2017-04-10 10:52:34 -040015656 DB 15,89,208 ; mulps %xmm0,%xmm2
Herb Derby4de13042017-05-15 10:49:39 -040015657 DB 65,15,88,211 ; addps %xmm11,%xmm2
Herb Derby7b4202d2017-04-10 10:52:34 -040015658 DB 15,89,216 ; mulps %xmm0,%xmm3
Herb Derby4de13042017-05-15 10:49:39 -040015659 DB 65,15,88,220 ; addps %xmm12,%xmm3
Herb Derby7b4202d2017-04-10 10:52:34 -040015660 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby4de13042017-05-15 10:49:39 -040015661 DB 65,15,40,192 ; movaps %xmm8,%xmm0
15662 DB 91 ; pop %rbx
15663 DB 65,94 ; pop %r14
Herb Derby7b4202d2017-04-10 10:52:34 -040015664 DB 255,224 ; jmpq *%rax
15665
Mike Klein5c7960b2017-05-11 10:59:22 -040015666PUBLIC _sk_evenly_spaced_2_stop_gradient_sse41
15667_sk_evenly_spaced_2_stop_gradient_sse41 LABEL PROC
Mike Klein8a823fa2017-04-05 17:29:26 -040015668 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -040015669 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby7b4202d2017-04-10 10:52:34 -040015670 DB 243,15,16,0 ; movss (%rax),%xmm0
15671 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
Mike Klein8a823fa2017-04-05 17:29:26 -040015672 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
Herb Derby7b4202d2017-04-10 10:52:34 -040015673 DB 243,15,16,80,16 ; movss 0x10(%rax),%xmm2
15674 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
Mike Klein8a823fa2017-04-05 17:29:26 -040015675 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Herb Derby7b4202d2017-04-10 10:52:34 -040015676 DB 15,88,194 ; addps %xmm2,%xmm0
Mike Klein8a823fa2017-04-05 17:29:26 -040015677 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
Herb Derby7b4202d2017-04-10 10:52:34 -040015678 DB 243,15,16,80,20 ; movss 0x14(%rax),%xmm2
Mike Klein8a823fa2017-04-05 17:29:26 -040015679 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
15680 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040015681 DB 15,88,202 ; addps %xmm2,%xmm1
Herb Derby7b4202d2017-04-10 10:52:34 -040015682 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
Mike Klein8a823fa2017-04-05 17:29:26 -040015683 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
Herb Derby7b4202d2017-04-10 10:52:34 -040015684 DB 243,15,16,88,24 ; movss 0x18(%rax),%xmm3
Mike Klein8a823fa2017-04-05 17:29:26 -040015685 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
15686 DB 65,15,89,208 ; mulps %xmm8,%xmm2
15687 DB 15,88,211 ; addps %xmm3,%xmm2
Herb Derby7b4202d2017-04-10 10:52:34 -040015688 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3
Mike Klein8a823fa2017-04-05 17:29:26 -040015689 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
Herb Derby7b4202d2017-04-10 10:52:34 -040015690 DB 243,68,15,16,72,28 ; movss 0x1c(%rax),%xmm9
Mike Klein8a823fa2017-04-05 17:29:26 -040015691 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
15692 DB 65,15,89,216 ; mulps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040015693 DB 65,15,88,217 ; addps %xmm9,%xmm3
15694 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleind7e06ae2017-03-29 16:33:06 -040015695 DB 255,224 ; jmpq *%rax
15696
Mike Klein5c7960b2017-05-11 10:59:22 -040015697PUBLIC _sk_xy_to_unit_angle_sse41
15698_sk_xy_to_unit_angle_sse41 LABEL PROC
Herb Derby7eb86982017-05-02 19:04:39 -040015699 DB 68,15,40,200 ; movaps %xmm0,%xmm9
15700 DB 69,15,87,192 ; xorps %xmm8,%xmm8
15701 DB 15,87,192 ; xorps %xmm0,%xmm0
15702 DB 65,15,92,193 ; subps %xmm9,%xmm0
15703 DB 65,15,84,193 ; andps %xmm9,%xmm0
15704 DB 69,15,87,219 ; xorps %xmm11,%xmm11
15705 DB 68,15,92,217 ; subps %xmm1,%xmm11
15706 DB 68,15,84,217 ; andps %xmm1,%xmm11
15707 DB 68,15,40,224 ; movaps %xmm0,%xmm12
15708 DB 69,15,93,227 ; minps %xmm11,%xmm12
15709 DB 68,15,40,208 ; movaps %xmm0,%xmm10
15710 DB 69,15,95,211 ; maxps %xmm11,%xmm10
15711 DB 69,15,94,226 ; divps %xmm10,%xmm12
15712 DB 69,15,40,236 ; movaps %xmm12,%xmm13
15713 DB 69,15,89,237 ; mulps %xmm13,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040015714 DB 68,15,40,21,202,18,0,0 ; movaps 0x12ca(%rip),%xmm10 # 56e0 <_sk_callback_sse41+0xedb>
Herb Derby7eb86982017-05-02 19:04:39 -040015715 DB 69,15,89,213 ; mulps %xmm13,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040015716 DB 68,15,88,21,206,18,0,0 ; addps 0x12ce(%rip),%xmm10 # 56f0 <_sk_callback_sse41+0xeeb>
Herb Derby7eb86982017-05-02 19:04:39 -040015717 DB 69,15,89,213 ; mulps %xmm13,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040015718 DB 68,15,88,21,210,18,0,0 ; addps 0x12d2(%rip),%xmm10 # 5700 <_sk_callback_sse41+0xefb>
Herb Derby7eb86982017-05-02 19:04:39 -040015719 DB 69,15,89,213 ; mulps %xmm13,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040015720 DB 68,15,88,21,214,18,0,0 ; addps 0x12d6(%rip),%xmm10 # 5710 <_sk_callback_sse41+0xf0b>
Herb Derby7eb86982017-05-02 19:04:39 -040015721 DB 69,15,89,212 ; mulps %xmm12,%xmm10
15722 DB 65,15,194,195,1 ; cmpltps %xmm11,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040015723 DB 68,15,40,29,213,18,0,0 ; movaps 0x12d5(%rip),%xmm11 # 5720 <_sk_callback_sse41+0xf1b>
Herb Derby7eb86982017-05-02 19:04:39 -040015724 DB 69,15,92,218 ; subps %xmm10,%xmm11
15725 DB 102,69,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm10
15726 DB 69,15,194,200,1 ; cmpltps %xmm8,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040015727 DB 68,15,40,29,206,18,0,0 ; movaps 0x12ce(%rip),%xmm11 # 5730 <_sk_callback_sse41+0xf2b>
Herb Derby7eb86982017-05-02 19:04:39 -040015728 DB 69,15,92,218 ; subps %xmm10,%xmm11
15729 DB 65,15,40,193 ; movaps %xmm9,%xmm0
15730 DB 102,69,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm10
15731 DB 15,40,193 ; movaps %xmm1,%xmm0
15732 DB 65,15,194,192,1 ; cmpltps %xmm8,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040015733 DB 68,15,40,13,192,18,0,0 ; movaps 0x12c0(%rip),%xmm9 # 5740 <_sk_callback_sse41+0xf3b>
Herb Derby7eb86982017-05-02 19:04:39 -040015734 DB 69,15,92,202 ; subps %xmm10,%xmm9
15735 DB 102,69,15,56,20,209 ; blendvps %xmm0,%xmm9,%xmm10
15736 DB 69,15,194,194,7 ; cmpordps %xmm10,%xmm8
15737 DB 69,15,84,194 ; andps %xmm10,%xmm8
15738 DB 72,173 ; lods %ds:(%rsi),%rax
15739 DB 65,15,40,192 ; movaps %xmm8,%xmm0
15740 DB 255,224 ; jmpq *%rax
15741
Herb Derby090fbf82017-05-08 15:10:36 -040015742PUBLIC _sk_xy_to_radius_sse41
15743_sk_xy_to_radius_sse41 LABEL PROC
15744 DB 15,89,192 ; mulps %xmm0,%xmm0
15745 DB 68,15,40,193 ; movaps %xmm1,%xmm8
15746 DB 69,15,89,192 ; mulps %xmm8,%xmm8
15747 DB 68,15,88,192 ; addps %xmm0,%xmm8
Mike Kleinfd35c742017-05-15 15:55:54 -040015748 DB 65,15,81,192 ; sqrtps %xmm8,%xmm0
Herb Derby090fbf82017-05-08 15:10:36 -040015749 DB 72,173 ; lods %ds:(%rsi),%rax
15750 DB 255,224 ; jmpq *%rax
15751
Mike Klein0a904492017-04-12 12:52:48 -040015752PUBLIC _sk_save_xy_sse41
15753_sk_save_xy_sse41 LABEL PROC
15754 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040015755 DB 68,15,40,5,148,18,0,0 ; movaps 0x1294(%rip),%xmm8 # 5750 <_sk_callback_sse41+0xf4b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015756 DB 15,17,0 ; movups %xmm0,(%rax)
15757 DB 68,15,40,200 ; movaps %xmm0,%xmm9
15758 DB 69,15,88,200 ; addps %xmm8,%xmm9
Mike Klein0a904492017-04-12 12:52:48 -040015759 DB 102,69,15,58,8,209,1 ; roundps $0x1,%xmm9,%xmm10
15760 DB 69,15,92,202 ; subps %xmm10,%xmm9
15761 DB 68,15,88,193 ; addps %xmm1,%xmm8
15762 DB 102,69,15,58,8,208,1 ; roundps $0x1,%xmm8,%xmm10
15763 DB 69,15,92,194 ; subps %xmm10,%xmm8
Mike Klein0a904492017-04-12 12:52:48 -040015764 DB 15,17,72,32 ; movups %xmm1,0x20(%rax)
15765 DB 68,15,17,72,64 ; movups %xmm9,0x40(%rax)
15766 DB 68,15,17,64,96 ; movups %xmm8,0x60(%rax)
15767 DB 72,173 ; lods %ds:(%rsi),%rax
15768 DB 255,224 ; jmpq *%rax
15769
15770PUBLIC _sk_accumulate_sse41
15771_sk_accumulate_sse41 LABEL PROC
15772 DB 72,173 ; lods %ds:(%rsi),%rax
15773 DB 68,15,16,128,128,0,0,0 ; movups 0x80(%rax),%xmm8
15774 DB 68,15,16,136,160,0,0,0 ; movups 0xa0(%rax),%xmm9
15775 DB 69,15,89,200 ; mulps %xmm8,%xmm9
15776 DB 69,15,40,193 ; movaps %xmm9,%xmm8
15777 DB 68,15,89,192 ; mulps %xmm0,%xmm8
15778 DB 65,15,88,224 ; addps %xmm8,%xmm4
15779 DB 69,15,40,193 ; movaps %xmm9,%xmm8
15780 DB 68,15,89,193 ; mulps %xmm1,%xmm8
15781 DB 65,15,88,232 ; addps %xmm8,%xmm5
15782 DB 69,15,40,193 ; movaps %xmm9,%xmm8
15783 DB 68,15,89,194 ; mulps %xmm2,%xmm8
15784 DB 65,15,88,240 ; addps %xmm8,%xmm6
15785 DB 68,15,89,203 ; mulps %xmm3,%xmm9
15786 DB 65,15,88,249 ; addps %xmm9,%xmm7
15787 DB 72,173 ; lods %ds:(%rsi),%rax
15788 DB 255,224 ; jmpq *%rax
15789
15790PUBLIC _sk_bilinear_nx_sse41
15791_sk_bilinear_nx_sse41 LABEL PROC
15792 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015793 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040015794 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015795 DB 15,88,5,22,18,0,0 ; addps 0x1216(%rip),%xmm0 # 5760 <_sk_callback_sse41+0xf5b>
15796 DB 68,15,40,13,30,18,0,0 ; movaps 0x121e(%rip),%xmm9 # 5770 <_sk_callback_sse41+0xf6b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015797 DB 69,15,92,200 ; subps %xmm8,%xmm9
15798 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040015799 DB 72,173 ; lods %ds:(%rsi),%rax
15800 DB 255,224 ; jmpq *%rax
15801
15802PUBLIC _sk_bilinear_px_sse41
15803_sk_bilinear_px_sse41 LABEL PROC
15804 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015805 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040015806 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015807 DB 15,88,5,13,18,0,0 ; addps 0x120d(%rip),%xmm0 # 5780 <_sk_callback_sse41+0xf7b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015808 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040015809 DB 72,173 ; lods %ds:(%rsi),%rax
15810 DB 255,224 ; jmpq *%rax
15811
15812PUBLIC _sk_bilinear_ny_sse41
15813_sk_bilinear_ny_sse41 LABEL PROC
15814 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015815 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040015816 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015817 DB 15,88,13,255,17,0,0 ; addps 0x11ff(%rip),%xmm1 # 5790 <_sk_callback_sse41+0xf8b>
15818 DB 68,15,40,13,7,18,0,0 ; movaps 0x1207(%rip),%xmm9 # 57a0 <_sk_callback_sse41+0xf9b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015819 DB 69,15,92,200 ; subps %xmm8,%xmm9
15820 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040015821 DB 72,173 ; lods %ds:(%rsi),%rax
15822 DB 255,224 ; jmpq *%rax
15823
15824PUBLIC _sk_bilinear_py_sse41
15825_sk_bilinear_py_sse41 LABEL PROC
15826 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015827 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040015828 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015829 DB 15,88,13,245,17,0,0 ; addps 0x11f5(%rip),%xmm1 # 57b0 <_sk_callback_sse41+0xfab>
Mike Kleinfe560a82017-05-01 12:56:35 -040015830 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040015831 DB 72,173 ; lods %ds:(%rsi),%rax
15832 DB 255,224 ; jmpq *%rax
15833
15834PUBLIC _sk_bicubic_n3x_sse41
15835_sk_bicubic_n3x_sse41 LABEL PROC
15836 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015837 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040015838 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015839 DB 15,88,5,232,17,0,0 ; addps 0x11e8(%rip),%xmm0 # 57c0 <_sk_callback_sse41+0xfbb>
15840 DB 68,15,40,13,240,17,0,0 ; movaps 0x11f0(%rip),%xmm9 # 57d0 <_sk_callback_sse41+0xfcb>
Mike Kleinfe560a82017-05-01 12:56:35 -040015841 DB 69,15,92,200 ; subps %xmm8,%xmm9
15842 DB 69,15,40,193 ; movaps %xmm9,%xmm8
Mike Klein0a904492017-04-12 12:52:48 -040015843 DB 69,15,89,192 ; mulps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015844 DB 68,15,89,13,236,17,0,0 ; mulps 0x11ec(%rip),%xmm9 # 57e0 <_sk_callback_sse41+0xfdb>
15845 DB 68,15,88,13,244,17,0,0 ; addps 0x11f4(%rip),%xmm9 # 57f0 <_sk_callback_sse41+0xfeb>
Mike Klein0a904492017-04-12 12:52:48 -040015846 DB 69,15,89,200 ; mulps %xmm8,%xmm9
15847 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax)
15848 DB 72,173 ; lods %ds:(%rsi),%rax
15849 DB 255,224 ; jmpq *%rax
15850
15851PUBLIC _sk_bicubic_n1x_sse41
15852_sk_bicubic_n1x_sse41 LABEL PROC
15853 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015854 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040015855 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015856 DB 15,88,5,227,17,0,0 ; addps 0x11e3(%rip),%xmm0 # 5800 <_sk_callback_sse41+0xffb>
15857 DB 68,15,40,13,235,17,0,0 ; movaps 0x11eb(%rip),%xmm9 # 5810 <_sk_callback_sse41+0x100b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015858 DB 69,15,92,200 ; subps %xmm8,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040015859 DB 68,15,40,5,239,17,0,0 ; movaps 0x11ef(%rip),%xmm8 # 5820 <_sk_callback_sse41+0x101b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015860 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015861 DB 68,15,88,5,243,17,0,0 ; addps 0x11f3(%rip),%xmm8 # 5830 <_sk_callback_sse41+0x102b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015862 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015863 DB 68,15,88,5,247,17,0,0 ; addps 0x11f7(%rip),%xmm8 # 5840 <_sk_callback_sse41+0x103b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015864 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015865 DB 68,15,88,5,251,17,0,0 ; addps 0x11fb(%rip),%xmm8 # 5850 <_sk_callback_sse41+0x104b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015866 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040015867 DB 72,173 ; lods %ds:(%rsi),%rax
15868 DB 255,224 ; jmpq *%rax
15869
15870PUBLIC _sk_bicubic_p1x_sse41
15871_sk_bicubic_p1x_sse41 LABEL PROC
15872 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040015873 DB 68,15,40,5,245,17,0,0 ; movaps 0x11f5(%rip),%xmm8 # 5860 <_sk_callback_sse41+0x105b>
Mike Klein0a904492017-04-12 12:52:48 -040015874 DB 15,16,0 ; movups (%rax),%xmm0
15875 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9
15876 DB 65,15,88,192 ; addps %xmm8,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040015877 DB 68,15,40,21,241,17,0,0 ; movaps 0x11f1(%rip),%xmm10 # 5870 <_sk_callback_sse41+0x106b>
Mike Klein0a904492017-04-12 12:52:48 -040015878 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040015879 DB 68,15,88,21,245,17,0,0 ; addps 0x11f5(%rip),%xmm10 # 5880 <_sk_callback_sse41+0x107b>
Mike Klein0a904492017-04-12 12:52:48 -040015880 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15881 DB 69,15,88,208 ; addps %xmm8,%xmm10
Mike Klein0a904492017-04-12 12:52:48 -040015882 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040015883 DB 68,15,88,21,241,17,0,0 ; addps 0x11f1(%rip),%xmm10 # 5890 <_sk_callback_sse41+0x108b>
Mike Klein0a904492017-04-12 12:52:48 -040015884 DB 68,15,17,144,128,0,0,0 ; movups %xmm10,0x80(%rax)
15885 DB 72,173 ; lods %ds:(%rsi),%rax
15886 DB 255,224 ; jmpq *%rax
15887
15888PUBLIC _sk_bicubic_p3x_sse41
15889_sk_bicubic_p3x_sse41 LABEL PROC
15890 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015891 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040015892 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015893 DB 15,88,5,228,17,0,0 ; addps 0x11e4(%rip),%xmm0 # 58a0 <_sk_callback_sse41+0x109b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015894 DB 69,15,40,200 ; movaps %xmm8,%xmm9
Mike Klein0a904492017-04-12 12:52:48 -040015895 DB 69,15,89,201 ; mulps %xmm9,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040015896 DB 68,15,89,5,228,17,0,0 ; mulps 0x11e4(%rip),%xmm8 # 58b0 <_sk_callback_sse41+0x10ab>
15897 DB 68,15,88,5,236,17,0,0 ; addps 0x11ec(%rip),%xmm8 # 58c0 <_sk_callback_sse41+0x10bb>
Mike Klein0a904492017-04-12 12:52:48 -040015898 DB 69,15,89,193 ; mulps %xmm9,%xmm8
15899 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax)
15900 DB 72,173 ; lods %ds:(%rsi),%rax
15901 DB 255,224 ; jmpq *%rax
15902
15903PUBLIC _sk_bicubic_n3y_sse41
15904_sk_bicubic_n3y_sse41 LABEL PROC
15905 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015906 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040015907 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015908 DB 15,88,13,218,17,0,0 ; addps 0x11da(%rip),%xmm1 # 58d0 <_sk_callback_sse41+0x10cb>
15909 DB 68,15,40,13,226,17,0,0 ; movaps 0x11e2(%rip),%xmm9 # 58e0 <_sk_callback_sse41+0x10db>
Mike Kleinfe560a82017-05-01 12:56:35 -040015910 DB 69,15,92,200 ; subps %xmm8,%xmm9
15911 DB 69,15,40,193 ; movaps %xmm9,%xmm8
Mike Klein0a904492017-04-12 12:52:48 -040015912 DB 69,15,89,192 ; mulps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015913 DB 68,15,89,13,222,17,0,0 ; mulps 0x11de(%rip),%xmm9 # 58f0 <_sk_callback_sse41+0x10eb>
15914 DB 68,15,88,13,230,17,0,0 ; addps 0x11e6(%rip),%xmm9 # 5900 <_sk_callback_sse41+0x10fb>
Mike Klein0a904492017-04-12 12:52:48 -040015915 DB 69,15,89,200 ; mulps %xmm8,%xmm9
15916 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax)
15917 DB 72,173 ; lods %ds:(%rsi),%rax
15918 DB 255,224 ; jmpq *%rax
15919
15920PUBLIC _sk_bicubic_n1y_sse41
15921_sk_bicubic_n1y_sse41 LABEL PROC
15922 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015923 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040015924 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015925 DB 15,88,13,212,17,0,0 ; addps 0x11d4(%rip),%xmm1 # 5910 <_sk_callback_sse41+0x110b>
15926 DB 68,15,40,13,220,17,0,0 ; movaps 0x11dc(%rip),%xmm9 # 5920 <_sk_callback_sse41+0x111b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015927 DB 69,15,92,200 ; subps %xmm8,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040015928 DB 68,15,40,5,224,17,0,0 ; movaps 0x11e0(%rip),%xmm8 # 5930 <_sk_callback_sse41+0x112b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015929 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015930 DB 68,15,88,5,228,17,0,0 ; addps 0x11e4(%rip),%xmm8 # 5940 <_sk_callback_sse41+0x113b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015931 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015932 DB 68,15,88,5,232,17,0,0 ; addps 0x11e8(%rip),%xmm8 # 5950 <_sk_callback_sse41+0x114b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015933 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015934 DB 68,15,88,5,236,17,0,0 ; addps 0x11ec(%rip),%xmm8 # 5960 <_sk_callback_sse41+0x115b>
Mike Kleinfe560a82017-05-01 12:56:35 -040015935 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040015936 DB 72,173 ; lods %ds:(%rsi),%rax
15937 DB 255,224 ; jmpq *%rax
15938
15939PUBLIC _sk_bicubic_p1y_sse41
15940_sk_bicubic_p1y_sse41 LABEL PROC
15941 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040015942 DB 68,15,40,5,230,17,0,0 ; movaps 0x11e6(%rip),%xmm8 # 5970 <_sk_callback_sse41+0x116b>
Mike Klein0a904492017-04-12 12:52:48 -040015943 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
15944 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9
15945 DB 65,15,88,200 ; addps %xmm8,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040015946 DB 68,15,40,21,225,17,0,0 ; movaps 0x11e1(%rip),%xmm10 # 5980 <_sk_callback_sse41+0x117b>
Mike Klein0a904492017-04-12 12:52:48 -040015947 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040015948 DB 68,15,88,21,229,17,0,0 ; addps 0x11e5(%rip),%xmm10 # 5990 <_sk_callback_sse41+0x118b>
Mike Klein0a904492017-04-12 12:52:48 -040015949 DB 69,15,89,209 ; mulps %xmm9,%xmm10
15950 DB 69,15,88,208 ; addps %xmm8,%xmm10
Mike Klein0a904492017-04-12 12:52:48 -040015951 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040015952 DB 68,15,88,21,225,17,0,0 ; addps 0x11e1(%rip),%xmm10 # 59a0 <_sk_callback_sse41+0x119b>
Mike Klein0a904492017-04-12 12:52:48 -040015953 DB 68,15,17,144,160,0,0,0 ; movups %xmm10,0xa0(%rax)
15954 DB 72,173 ; lods %ds:(%rsi),%rax
15955 DB 255,224 ; jmpq *%rax
15956
15957PUBLIC _sk_bicubic_p3y_sse41
15958_sk_bicubic_p3y_sse41 LABEL PROC
15959 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040015960 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040015961 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040015962 DB 15,88,13,211,17,0,0 ; addps 0x11d3(%rip),%xmm1 # 59b0 <_sk_callback_sse41+0x11ab>
Mike Kleinfe560a82017-05-01 12:56:35 -040015963 DB 69,15,40,200 ; movaps %xmm8,%xmm9
Mike Klein0a904492017-04-12 12:52:48 -040015964 DB 69,15,89,201 ; mulps %xmm9,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040015965 DB 68,15,89,5,211,17,0,0 ; mulps 0x11d3(%rip),%xmm8 # 59c0 <_sk_callback_sse41+0x11bb>
15966 DB 68,15,88,5,219,17,0,0 ; addps 0x11db(%rip),%xmm8 # 59d0 <_sk_callback_sse41+0x11cb>
Mike Klein0a904492017-04-12 12:52:48 -040015967 DB 69,15,89,193 ; mulps %xmm9,%xmm8
15968 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax)
15969 DB 72,173 ; lods %ds:(%rsi),%rax
15970 DB 255,224 ; jmpq *%rax
15971
Mike Klein7fee90c2017-04-07 16:55:09 -040015972PUBLIC _sk_callback_sse41
15973_sk_callback_sse41 LABEL PROC
Mike Kleinc17dc242017-04-20 16:21:57 -040015974 DB 65,86 ; push %r14
Mike Klein7fee90c2017-04-07 16:55:09 -040015975 DB 83 ; push %rbx
Mike Kleinc17dc242017-04-20 16:21:57 -040015976 DB 72,131,236,40 ; sub $0x28,%rsp
Mike Klein7fee90c2017-04-07 16:55:09 -040015977 DB 68,15,40,197 ; movaps %xmm5,%xmm8
15978 DB 68,15,40,204 ; movaps %xmm4,%xmm9
Mike Kleinc17dc242017-04-20 16:21:57 -040015979 DB 73,137,214 ; mov %rdx,%r14
Mike Klein7fee90c2017-04-07 16:55:09 -040015980 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinc17dc242017-04-20 16:21:57 -040015981 DB 72,137,195 ; mov %rax,%rbx
15982 DB 15,40,224 ; movaps %xmm0,%xmm4
15983 DB 15,20,225 ; unpcklps %xmm1,%xmm4
15984 DB 15,40,234 ; movaps %xmm2,%xmm5
15985 DB 15,20,235 ; unpcklps %xmm3,%xmm5
15986 DB 15,21,193 ; unpckhps %xmm1,%xmm0
15987 DB 15,21,211 ; unpckhps %xmm3,%xmm2
15988 DB 15,40,204 ; movaps %xmm4,%xmm1
15989 DB 102,15,20,205 ; unpcklpd %xmm5,%xmm1
15990 DB 15,18,236 ; movhlps %xmm4,%xmm5
15991 DB 15,40,216 ; movaps %xmm0,%xmm3
15992 DB 102,15,20,218 ; unpcklpd %xmm2,%xmm3
15993 DB 15,18,208 ; movhlps %xmm0,%xmm2
15994 DB 102,15,17,75,8 ; movupd %xmm1,0x8(%rbx)
15995 DB 15,17,107,24 ; movups %xmm5,0x18(%rbx)
15996 DB 102,15,17,91,40 ; movupd %xmm3,0x28(%rbx)
15997 DB 15,17,83,56 ; movups %xmm2,0x38(%rbx)
Mike Klein7fee90c2017-04-07 16:55:09 -040015998 DB 186,4,0,0,0 ; mov $0x4,%edx
Mike Kleinc17dc242017-04-20 16:21:57 -040015999 DB 72,137,217 ; mov %rbx,%rcx
16000 DB 255,19 ; callq *(%rbx)
16001 DB 72,139,131,136,0,0,0 ; mov 0x88(%rbx),%rax
16002 DB 15,16,32 ; movups (%rax),%xmm4
16003 DB 15,16,64,16 ; movups 0x10(%rax),%xmm0
16004 DB 15,16,88,32 ; movups 0x20(%rax),%xmm3
16005 DB 15,16,80,48 ; movups 0x30(%rax),%xmm2
16006 DB 15,40,236 ; movaps %xmm4,%xmm5
16007 DB 15,20,232 ; unpcklps %xmm0,%xmm5
16008 DB 15,40,203 ; movaps %xmm3,%xmm1
16009 DB 15,20,202 ; unpcklps %xmm2,%xmm1
16010 DB 15,21,224 ; unpckhps %xmm0,%xmm4
16011 DB 15,21,218 ; unpckhps %xmm2,%xmm3
16012 DB 15,40,197 ; movaps %xmm5,%xmm0
16013 DB 102,15,20,193 ; unpcklpd %xmm1,%xmm0
16014 DB 15,18,205 ; movhlps %xmm5,%xmm1
16015 DB 15,40,212 ; movaps %xmm4,%xmm2
16016 DB 102,15,20,211 ; unpcklpd %xmm3,%xmm2
16017 DB 15,18,220 ; movhlps %xmm4,%xmm3
Mike Klein7fee90c2017-04-07 16:55:09 -040016018 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinc17dc242017-04-20 16:21:57 -040016019 DB 76,137,242 ; mov %r14,%rdx
Mike Klein7fee90c2017-04-07 16:55:09 -040016020 DB 65,15,40,225 ; movaps %xmm9,%xmm4
16021 DB 65,15,40,232 ; movaps %xmm8,%xmm5
Mike Kleinc17dc242017-04-20 16:21:57 -040016022 DB 72,131,196,40 ; add $0x28,%rsp
Mike Klein7fee90c2017-04-07 16:55:09 -040016023 DB 91 ; pop %rbx
Mike Kleinc17dc242017-04-20 16:21:57 -040016024 DB 65,94 ; pop %r14
Mike Klein7fee90c2017-04-07 16:55:09 -040016025 DB 255,224 ; jmpq *%rax
16026
Mike Klein2229b572017-04-21 10:30:29 -040016027ALIGN 16
16028 DB 0,0 ; add %al,(%rax)
16029 DB 0,63 ; add %bh,(%rdi)
16030 DB 0,0 ; add %al,(%rax)
16031 DB 0,63 ; add %bh,(%rdi)
16032 DB 0,0 ; add %al,(%rax)
16033 DB 0,63 ; add %bh,(%rdi)
16034 DB 0,0 ; add %al,(%rax)
16035 DB 0,63 ; add %bh,(%rdi)
16036 DB 0,0 ; add %al,(%rax)
16037 DB 128,63,0 ; cmpb $0x0,(%rdi)
16038 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16039 DB 63 ; (bad)
16040 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040016041 DB 128,63,1 ; cmpb $0x1,(%rdi)
16042 DB 0,0 ; add %al,(%rax)
16043 DB 0,1 ; add %al,(%rcx)
16044 DB 0,0 ; add %al,(%rax)
16045 DB 0,1 ; add %al,(%rcx)
16046 DB 0,0 ; add %al,(%rax)
16047 DB 0,1 ; add %al,(%rcx)
16048 DB 0,0 ; add %al,(%rax)
16049 DB 0,4,0 ; add %al,(%rax,%rax,1)
16050 DB 0,0 ; add %al,(%rax)
16051 DB 4,0 ; add $0x0,%al
16052 DB 0,0 ; add %al,(%rax)
16053 DB 4,0 ; add $0x0,%al
16054 DB 0,0 ; add %al,(%rax)
16055 DB 4,0 ; add $0x0,%al
16056 DB 0,0 ; add %al,(%rax)
16057 DB 2,0 ; add (%rax),%al
16058 DB 0,0 ; add %al,(%rax)
16059 DB 2,0 ; add (%rax),%al
16060 DB 0,0 ; add %al,(%rax)
16061 DB 2,0 ; add (%rax),%al
16062 DB 0,0 ; add %al,(%rax)
16063 DB 2,0 ; add (%rax),%al
16064 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040016065 DB 0,0 ; add %al,(%rax)
Mike Kleindb711c92017-05-03 17:57:48 -040016066 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
16067 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
16068 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
16069 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
16070 DB 252 ; cld
16071 DB 190,0,0,252,190 ; mov $0xbefc0000,%esi
16072 DB 0,0 ; add %al,(%rax)
16073 DB 252 ; cld
16074 DB 190,0,0,252,190 ; mov $0xbefc0000,%esi
Mike Klein581e6982017-05-03 13:05:13 -040016075 DB 0,0 ; add %al,(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040016076 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -040016077 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16078 DB 63 ; (bad)
16079 DB 0,0 ; add %al,(%rax)
16080 DB 128,63,0 ; cmpb $0x0,(%rdi)
16081 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16082 DB 63 ; (bad)
16083 DB 0,0 ; add %al,(%rax)
16084 DB 128,63,0 ; cmpb $0x0,(%rdi)
16085 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16086 DB 63 ; (bad)
16087 DB 0,0 ; add %al,(%rax)
16088 DB 128,63,0 ; cmpb $0x0,(%rdi)
16089 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16090 DB 63 ; (bad)
16091 DB 0,0 ; add %al,(%rax)
16092 DB 128,63,0 ; cmpb $0x0,(%rdi)
16093 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16094 DB 63 ; (bad)
16095 DB 0,0 ; add %al,(%rax)
16096 DB 128,63,0 ; cmpb $0x0,(%rdi)
16097 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16098 DB 63 ; (bad)
16099 DB 0,0 ; add %al,(%rax)
16100 DB 128,63,0 ; cmpb $0x0,(%rdi)
16101 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16102 DB 63 ; (bad)
16103 DB 0,0 ; add %al,(%rax)
16104 DB 128,63,0 ; cmpb $0x0,(%rdi)
16105 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16106 DB 63 ; (bad)
16107 DB 0,0 ; add %al,(%rax)
16108 DB 128,63,0 ; cmpb $0x0,(%rdi)
16109 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16110 DB 63 ; (bad)
16111 DB 0,0 ; add %al,(%rax)
16112 DB 128,63,0 ; cmpb $0x0,(%rdi)
16113 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16114 DB 63 ; (bad)
16115 DB 0,0 ; add %al,(%rax)
16116 DB 128,63,0 ; cmpb $0x0,(%rdi)
16117 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16118 DB 63 ; (bad)
16119 DB 0,0 ; add %al,(%rax)
16120 DB 128,63,0 ; cmpb $0x0,(%rdi)
16121 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16122 DB 63 ; (bad)
16123 DB 0,0 ; add %al,(%rax)
16124 DB 128,63,0 ; cmpb $0x0,(%rdi)
16125 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16126 DB 63 ; (bad)
16127 DB 0,0 ; add %al,(%rax)
16128 DB 128,63,0 ; cmpb $0x0,(%rdi)
16129 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16130 DB 63 ; (bad)
16131 DB 0,0 ; add %al,(%rax)
16132 DB 128,63,0 ; cmpb $0x0,(%rdi)
16133 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16134 DB 63 ; (bad)
16135 DB 0,0 ; add %al,(%rax)
16136 DB 128,63,0 ; cmpb $0x0,(%rdi)
16137 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16138 DB 63 ; (bad)
16139 DB 0,0 ; add %al,(%rax)
16140 DB 128,63,0 ; cmpb $0x0,(%rdi)
16141 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16142 DB 63 ; (bad)
16143 DB 0,0 ; add %al,(%rax)
16144 DB 128,63,0 ; cmpb $0x0,(%rdi)
16145 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16146 DB 63 ; (bad)
16147 DB 0,0 ; add %al,(%rax)
16148 DB 128,63,0 ; cmpb $0x0,(%rdi)
16149 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16150 DB 63 ; (bad)
16151 DB 0,0 ; add %al,(%rax)
16152 DB 128,63,0 ; cmpb $0x0,(%rdi)
16153 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16154 DB 63 ; (bad)
16155 DB 0,0 ; add %al,(%rax)
16156 DB 128,63,0 ; cmpb $0x0,(%rdi)
16157 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16158 DB 63 ; (bad)
16159 DB 0,0 ; add %al,(%rax)
16160 DB 128,63,0 ; cmpb $0x0,(%rdi)
16161 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16162 DB 63 ; (bad)
16163 DB 0,0 ; add %al,(%rax)
16164 DB 128,63,0 ; cmpb $0x0,(%rdi)
16165 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040016166 DB 191,0,0,128,191 ; mov $0xbf800000,%edi
Mike Kleinfe560a82017-05-01 12:56:35 -040016167 DB 0,0 ; add %al,(%rax)
16168 DB 128,191,0,0,128,191,0 ; cmpb $0x0,-0x40800000(%rdi)
Mike Klein581e6982017-05-03 13:05:13 -040016169 DB 0,224 ; add %ah,%al
16170 DB 64,0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016171 DB 224,64 ; loopne 4a88 <.literal16+0x1d8>
Mike Kleinfe560a82017-05-01 12:56:35 -040016172 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016173 DB 224,64 ; loopne 4a8c <.literal16+0x1dc>
Mike Kleinfe560a82017-05-01 12:56:35 -040016174 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016175 DB 224,64 ; loopne 4a90 <.literal16+0x1e0>
Mike Klein08aa88d2017-05-12 12:59:24 -040016176 DB 154 ; (bad)
16177 DB 153 ; cltd
16178 DB 153 ; cltd
16179 DB 62,154 ; ds (bad)
16180 DB 153 ; cltd
16181 DB 153 ; cltd
16182 DB 62,154 ; ds (bad)
16183 DB 153 ; cltd
16184 DB 153 ; cltd
16185 DB 62,154 ; ds (bad)
16186 DB 153 ; cltd
16187 DB 153 ; cltd
16188 DB 62,61,10,23,63,61 ; ds cmp $0x3d3f170a,%eax
16189 DB 10,23 ; or (%rdi),%dl
16190 DB 63 ; (bad)
16191 DB 61,10,23,63,61 ; cmp $0x3d3f170a,%eax
16192 DB 10,23 ; or (%rdi),%dl
16193 DB 63 ; (bad)
16194 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016195 DB 71,225,61 ; rex.RXB loope 4ab1 <.literal16+0x201>
Mike Klein08aa88d2017-05-12 12:59:24 -040016196 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016197 DB 71,225,61 ; rex.RXB loope 4ab5 <.literal16+0x205>
Mike Klein08aa88d2017-05-12 12:59:24 -040016198 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016199 DB 71,225,61 ; rex.RXB loope 4ab9 <.literal16+0x209>
Mike Klein08aa88d2017-05-12 12:59:24 -040016200 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016201 DB 71,225,61 ; rex.RXB loope 4abd <.literal16+0x20d>
Mike Kleinbb338332017-05-04 12:42:52 -040016202 DB 0,0 ; add %al,(%rax)
16203 DB 128,63,0 ; cmpb $0x0,(%rdi)
16204 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16205 DB 63 ; (bad)
16206 DB 0,0 ; add %al,(%rax)
16207 DB 128,63,154 ; cmpb $0x9a,(%rdi)
16208 DB 153 ; cltd
16209 DB 153 ; cltd
16210 DB 62,154 ; ds (bad)
16211 DB 153 ; cltd
16212 DB 153 ; cltd
16213 DB 62,154 ; ds (bad)
16214 DB 153 ; cltd
16215 DB 153 ; cltd
16216 DB 62,154 ; ds (bad)
16217 DB 153 ; cltd
16218 DB 153 ; cltd
16219 DB 62,61,10,23,63,61 ; ds cmp $0x3d3f170a,%eax
16220 DB 10,23 ; or (%rdi),%dl
16221 DB 63 ; (bad)
16222 DB 61,10,23,63,61 ; cmp $0x3d3f170a,%eax
16223 DB 10,23 ; or (%rdi),%dl
16224 DB 63 ; (bad)
16225 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016226 DB 71,225,61 ; rex.RXB loope 4af1 <.literal16+0x241>
Mike Kleinbb338332017-05-04 12:42:52 -040016227 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016228 DB 71,225,61 ; rex.RXB loope 4af5 <.literal16+0x245>
Mike Kleinbb338332017-05-04 12:42:52 -040016229 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016230 DB 71,225,61 ; rex.RXB loope 4af9 <.literal16+0x249>
Mike Kleinbb338332017-05-04 12:42:52 -040016231 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016232 DB 71,225,61 ; rex.RXB loope 4afd <.literal16+0x24d>
Mike Kleinbb338332017-05-04 12:42:52 -040016233 DB 0,0 ; add %al,(%rax)
16234 DB 128,63,0 ; cmpb $0x0,(%rdi)
16235 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16236 DB 63 ; (bad)
16237 DB 0,0 ; add %al,(%rax)
16238 DB 128,63,154 ; cmpb $0x9a,(%rdi)
16239 DB 153 ; cltd
16240 DB 153 ; cltd
16241 DB 62,154 ; ds (bad)
16242 DB 153 ; cltd
16243 DB 153 ; cltd
16244 DB 62,154 ; ds (bad)
16245 DB 153 ; cltd
16246 DB 153 ; cltd
16247 DB 62,154 ; ds (bad)
16248 DB 153 ; cltd
16249 DB 153 ; cltd
16250 DB 62,61,10,23,63,61 ; ds cmp $0x3d3f170a,%eax
16251 DB 10,23 ; or (%rdi),%dl
16252 DB 63 ; (bad)
16253 DB 61,10,23,63,61 ; cmp $0x3d3f170a,%eax
16254 DB 10,23 ; or (%rdi),%dl
16255 DB 63 ; (bad)
16256 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016257 DB 71,225,61 ; rex.RXB loope 4b31 <.literal16+0x281>
Mike Kleinbb338332017-05-04 12:42:52 -040016258 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016259 DB 71,225,61 ; rex.RXB loope 4b35 <.literal16+0x285>
Mike Kleinbb338332017-05-04 12:42:52 -040016260 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016261 DB 71,225,61 ; rex.RXB loope 4b39 <.literal16+0x289>
Mike Kleinbb338332017-05-04 12:42:52 -040016262 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016263 DB 71,225,61 ; rex.RXB loope 4b3d <.literal16+0x28d>
Mike Kleinbb338332017-05-04 12:42:52 -040016264 DB 0,0 ; add %al,(%rax)
16265 DB 128,63,0 ; cmpb $0x0,(%rdi)
16266 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16267 DB 63 ; (bad)
16268 DB 0,0 ; add %al,(%rax)
16269 DB 128,63,154 ; cmpb $0x9a,(%rdi)
16270 DB 153 ; cltd
16271 DB 153 ; cltd
16272 DB 62,154 ; ds (bad)
16273 DB 153 ; cltd
16274 DB 153 ; cltd
16275 DB 62,154 ; ds (bad)
16276 DB 153 ; cltd
16277 DB 153 ; cltd
16278 DB 62,154 ; ds (bad)
16279 DB 153 ; cltd
16280 DB 153 ; cltd
16281 DB 62,61,10,23,63,61 ; ds cmp $0x3d3f170a,%eax
16282 DB 10,23 ; or (%rdi),%dl
16283 DB 63 ; (bad)
16284 DB 61,10,23,63,61 ; cmp $0x3d3f170a,%eax
16285 DB 10,23 ; or (%rdi),%dl
16286 DB 63 ; (bad)
16287 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016288 DB 71,225,61 ; rex.RXB loope 4b71 <.literal16+0x2c1>
Mike Kleinbb338332017-05-04 12:42:52 -040016289 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016290 DB 71,225,61 ; rex.RXB loope 4b75 <.literal16+0x2c5>
Mike Kleinbb338332017-05-04 12:42:52 -040016291 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016292 DB 71,225,61 ; rex.RXB loope 4b79 <.literal16+0x2c9>
Mike Kleinbb338332017-05-04 12:42:52 -040016293 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040016294 DB 71,225,61 ; rex.RXB loope 4b7d <.literal16+0x2cd>
Mike Kleinfe560a82017-05-01 12:56:35 -040016295 DB 0,0 ; add %al,(%rax)
16296 DB 128,63,0 ; cmpb $0x0,(%rdi)
16297 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16298 DB 63 ; (bad)
16299 DB 0,0 ; add %al,(%rax)
16300 DB 128,63,0 ; cmpb $0x0,(%rdi)
16301 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16302 DB 63 ; (bad)
16303 DB 0,0 ; add %al,(%rax)
16304 DB 128,63,0 ; cmpb $0x0,(%rdi)
16305 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16306 DB 63 ; (bad)
16307 DB 0,0 ; add %al,(%rax)
16308 DB 128,63,0 ; cmpb $0x0,(%rdi)
16309 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16310 DB 63 ; (bad)
Mike Klein08aa88d2017-05-12 12:59:24 -040016311 DB 0,0 ; add %al,(%rax)
16312 DB 128,63,0 ; cmpb $0x0,(%rdi)
16313 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16314 DB 63 ; (bad)
16315 DB 0,0 ; add %al,(%rax)
16316 DB 128,63,145 ; cmpb $0x91,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -040016317 DB 131,158,61,145,131,158,61 ; sbbl $0x3d,-0x617c6ec3(%rsi)
16318 DB 145 ; xchg %eax,%ecx
16319 DB 131,158,61,145,131,158,61 ; sbbl $0x3d,-0x617c6ec3(%rsi)
16320 DB 154 ; (bad)
16321 DB 153 ; cltd
16322 DB 153 ; cltd
16323 DB 62,154 ; ds (bad)
16324 DB 153 ; cltd
16325 DB 153 ; cltd
16326 DB 62,154 ; ds (bad)
16327 DB 153 ; cltd
16328 DB 153 ; cltd
16329 DB 62,154 ; ds (bad)
16330 DB 153 ; cltd
16331 DB 153 ; cltd
16332 DB 62,92 ; ds pop %rsp
16333 DB 143 ; (bad)
16334 DB 50,63 ; xor (%rdi),%bh
16335 DB 92 ; pop %rsp
16336 DB 143 ; (bad)
16337 DB 50,63 ; xor (%rdi),%bh
16338 DB 92 ; pop %rsp
16339 DB 143 ; (bad)
16340 DB 50,63 ; xor (%rdi),%bh
16341 DB 92 ; pop %rsp
16342 DB 143 ; (bad)
16343 DB 50,63 ; xor (%rdi),%bh
16344 DB 10,215 ; or %bh,%dl
16345 DB 35,59 ; and (%rbx),%edi
16346 DB 10,215 ; or %bh,%dl
16347 DB 35,59 ; and (%rbx),%edi
16348 DB 10,215 ; or %bh,%dl
16349 DB 35,59 ; and (%rbx),%edi
16350 DB 10,215 ; or %bh,%dl
16351 DB 35,59 ; and (%rbx),%edi
16352 DB 174 ; scas %es:(%rdi),%al
16353 DB 71,97 ; rex.RXB (bad)
16354 DB 61,174,71,97,61 ; cmp $0x3d6147ae,%eax
16355 DB 174 ; scas %es:(%rdi),%al
16356 DB 71,97 ; rex.RXB (bad)
16357 DB 61,174,71,97,61 ; cmp $0x3d6147ae,%eax
Mike Kleinf45e3d72017-05-15 17:36:59 -040016358 DB 82 ; push %rdx
16359 DB 184,78,65,82,184 ; mov $0xb852414e,%eax
16360 DB 78 ; rex.WRX
16361 DB 65,82 ; push %r10
16362 DB 184,78,65,82,184 ; mov $0xb852414e,%eax
16363 DB 78 ; rex.WRX
16364 DB 65,57,215 ; cmp %edx,%r15d
16365 DB 32,187,57,215,32,187 ; and %bh,-0x44df28c7(%rbx)
16366 DB 57,215 ; cmp %edx,%edi
16367 DB 32,187,57,215,32,187 ; and %bh,-0x44df28c7(%rbx)
16368 DB 186,159,98,60,186 ; mov $0xba3c629f,%edx
16369 DB 159 ; lahf
16370 DB 98 ; (bad)
16371 DB 60,186 ; cmp $0xba,%al
16372 DB 159 ; lahf
16373 DB 98 ; (bad)
16374 DB 60,186 ; cmp $0xba,%al
16375 DB 159 ; lahf
16376 DB 98 ; (bad)
16377 DB 60,13 ; cmp $0xd,%al
16378 DB 20,145 ; adc $0x91,%al
Mike Kleinfe560a82017-05-01 12:56:35 -040016379 DB 63 ; (bad)
Mike Kleinf45e3d72017-05-15 17:36:59 -040016380 DB 13,20,145,63,13 ; or $0xd3f9114,%eax
16381 DB 20,145 ; adc $0x91,%al
16382 DB 63 ; (bad)
16383 DB 13,20,145,63,141 ; or $0x8d3f9114,%eax
16384 DB 158 ; sahf
16385 DB 20,62 ; adc $0x3e,%al
16386 DB 141,158,20,62,141,158 ; lea -0x6172c1ec(%rsi),%ebx
16387 DB 20,62 ; adc $0x3e,%al
16388 DB 141,158,20,62,168,177 ; lea -0x4e57c1ec(%rsi),%ebx
16389 DB 152 ; cwtl
16390 DB 59,168,177,152,59,168 ; cmp -0x57c4674f(%rax),%ebp
16391 DB 177,152 ; mov $0x98,%cl
16392 DB 59,168,177,152,59,0 ; cmp 0x3b98b1(%rax),%ebp
Mike Kleinfe560a82017-05-01 12:56:35 -040016393 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16394 DB 63 ; (bad)
16395 DB 0,0 ; add %al,(%rax)
16396 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinf45e3d72017-05-15 17:36:59 -040016397 DB 0,128,63,0,0,192 ; add %al,-0x3fffffc1(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016398 DB 64,0,0 ; add %al,(%rax)
16399 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
16400 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
16401 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
16402 DB 0,64,0 ; add %al,0x0(%rax)
16403 DB 0,0 ; add %al,(%rax)
16404 DB 64,0,0 ; add %al,(%rax)
16405 DB 0,64,0 ; add %al,0x0(%rax)
16406 DB 0,0 ; add %al,(%rax)
16407 DB 64,0,0 ; add %al,(%rax)
16408 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
16409 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
16410 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
16411 DB 128,64,171,170 ; addb $0xaa,-0x55(%rax)
16412 DB 42,62 ; sub (%rsi),%bh
16413 DB 171 ; stos %eax,%es:(%rdi)
16414 DB 170 ; stos %al,%es:(%rdi)
16415 DB 42,62 ; sub (%rsi),%bh
16416 DB 171 ; stos %eax,%es:(%rdi)
16417 DB 170 ; stos %al,%es:(%rdi)
16418 DB 42,62 ; sub (%rsi),%bh
16419 DB 171 ; stos %eax,%es:(%rdi)
16420 DB 170 ; stos %al,%es:(%rdi)
16421 DB 42,62 ; sub (%rsi),%bh
16422 DB 0,0 ; add %al,(%rax)
16423 DB 0,63 ; add %bh,(%rdi)
16424 DB 0,0 ; add %al,(%rax)
16425 DB 0,63 ; add %bh,(%rdi)
16426 DB 0,0 ; add %al,(%rax)
16427 DB 0,63 ; add %bh,(%rdi)
16428 DB 0,0 ; add %al,(%rax)
16429 DB 0,63 ; add %bh,(%rdi)
Mike Klein5664e652017-05-01 16:01:38 -040016430 DB 0,0 ; add %al,(%rax)
16431 DB 0,63 ; add %bh,(%rdi)
16432 DB 0,0 ; add %al,(%rax)
16433 DB 0,63 ; add %bh,(%rdi)
16434 DB 0,0 ; add %al,(%rax)
16435 DB 0,63 ; add %bh,(%rdi)
16436 DB 0,0 ; add %al,(%rax)
16437 DB 0,63 ; add %bh,(%rdi)
Mike Klein879a08a2017-05-01 15:34:01 -040016438 DB 171 ; stos %eax,%es:(%rdi)
Mike Kleinfb11acd2017-05-01 14:22:10 -040016439 DB 170 ; stos %al,%es:(%rdi)
16440 DB 170 ; stos %al,%es:(%rdi)
16441 DB 62,171 ; ds stos %eax,%es:(%rdi)
16442 DB 170 ; stos %al,%es:(%rdi)
16443 DB 170 ; stos %al,%es:(%rdi)
16444 DB 62,171 ; ds stos %eax,%es:(%rdi)
16445 DB 170 ; stos %al,%es:(%rdi)
16446 DB 170 ; stos %al,%es:(%rdi)
16447 DB 62,171 ; ds stos %eax,%es:(%rdi)
16448 DB 170 ; stos %al,%es:(%rdi)
16449 DB 170 ; stos %al,%es:(%rdi)
Mike Klein5664e652017-05-01 16:01:38 -040016450 DB 62,171 ; ds stos %eax,%es:(%rdi)
16451 DB 170 ; stos %al,%es:(%rdi)
16452 DB 42,63 ; sub (%rdi),%bh
16453 DB 171 ; stos %eax,%es:(%rdi)
16454 DB 170 ; stos %al,%es:(%rdi)
16455 DB 42,63 ; sub (%rdi),%bh
16456 DB 171 ; stos %eax,%es:(%rdi)
16457 DB 170 ; stos %al,%es:(%rdi)
16458 DB 42,63 ; sub (%rdi),%bh
16459 DB 171 ; stos %eax,%es:(%rdi)
16460 DB 170 ; stos %al,%es:(%rdi)
16461 DB 42,63 ; sub (%rdi),%bh
16462 DB 0,0 ; add %al,(%rax)
Mike Kleinfb11acd2017-05-01 14:22:10 -040016463 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
16464 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
Mike Klein879a08a2017-05-01 15:34:01 -040016465 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
16466 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
16467 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
16468 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
16469 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
16470 DB 128,64,171,170 ; addb $0xaa,-0x55(%rax)
Mike Klein5664e652017-05-01 16:01:38 -040016471 DB 42,62 ; sub (%rsi),%bh
16472 DB 171 ; stos %eax,%es:(%rdi)
16473 DB 170 ; stos %al,%es:(%rdi)
16474 DB 42,62 ; sub (%rsi),%bh
16475 DB 171 ; stos %eax,%es:(%rdi)
16476 DB 170 ; stos %al,%es:(%rdi)
16477 DB 42,62 ; sub (%rsi),%bh
16478 DB 171 ; stos %eax,%es:(%rdi)
16479 DB 170 ; stos %al,%es:(%rdi)
16480 DB 42,62 ; sub (%rsi),%bh
16481 DB 171 ; stos %eax,%es:(%rdi)
16482 DB 170 ; stos %al,%es:(%rdi)
Mike Kleinfb11acd2017-05-01 14:22:10 -040016483 DB 170 ; stos %al,%es:(%rdi)
16484 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
16485 DB 171 ; stos %eax,%es:(%rdi)
16486 DB 170 ; stos %al,%es:(%rdi)
16487 DB 170 ; stos %al,%es:(%rdi)
16488 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
Mike Kleinfe560a82017-05-01 12:56:35 -040016489 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
16490 DB 128,59,129 ; cmpb $0x81,(%rbx)
16491 DB 128,128,59,129,128,128,59 ; addb $0x3b,-0x7f7f7ec5(%rax)
16492 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
16493 DB 128,59,0 ; cmpb $0x0,(%rbx)
Mike Klein308e6242017-04-27 13:56:33 -040016494 DB 248 ; clc
16495 DB 0,0 ; add %al,(%rax)
16496 DB 0,248 ; add %bh,%al
16497 DB 0,0 ; add %al,(%rax)
16498 DB 0,248 ; add %bh,%al
16499 DB 0,0 ; add %al,(%rax)
16500 DB 0,248 ; add %bh,%al
16501 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016502 DB 8,33 ; or %ah,(%rcx)
16503 DB 132,55 ; test %dh,(%rdi)
16504 DB 8,33 ; or %ah,(%rcx)
16505 DB 132,55 ; test %dh,(%rdi)
16506 DB 8,33 ; or %ah,(%rcx)
16507 DB 132,55 ; test %dh,(%rdi)
16508 DB 8,33 ; or %ah,(%rcx)
16509 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040016510 DB 224,7 ; loopne 4d49 <.literal16+0x499>
Mike Klein308e6242017-04-27 13:56:33 -040016511 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016512 DB 224,7 ; loopne 4d4d <.literal16+0x49d>
Mike Klein308e6242017-04-27 13:56:33 -040016513 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016514 DB 224,7 ; loopne 4d51 <.literal16+0x4a1>
Mike Klein308e6242017-04-27 13:56:33 -040016515 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016516 DB 224,7 ; loopne 4d55 <.literal16+0x4a5>
Mike Klein308e6242017-04-27 13:56:33 -040016517 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016518 DB 33,8 ; and %ecx,(%rax)
16519 DB 2,58 ; add (%rdx),%bh
16520 DB 33,8 ; and %ecx,(%rax)
16521 DB 2,58 ; add (%rdx),%bh
16522 DB 33,8 ; and %ecx,(%rax)
16523 DB 2,58 ; add (%rdx),%bh
16524 DB 33,8 ; and %ecx,(%rax)
16525 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040016526 DB 31 ; (bad)
16527 DB 0,0 ; add %al,(%rax)
16528 DB 0,31 ; add %bl,(%rdi)
16529 DB 0,0 ; add %al,(%rax)
16530 DB 0,31 ; add %bl,(%rdi)
16531 DB 0,0 ; add %al,(%rax)
16532 DB 0,31 ; add %bl,(%rdi)
16533 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016534 DB 0,8 ; add %cl,(%rax)
16535 DB 33,4,61,8,33,4,61 ; and %eax,0x3d042108(,%rdi,1)
16536 DB 8,33 ; or %ah,(%rcx)
16537 DB 4,61 ; add $0x3d,%al
16538 DB 8,33 ; or %ah,(%rcx)
16539 DB 4,61 ; add $0x3d,%al
bungeman6f9f2592017-05-10 13:50:12 -040016540 DB 255,0 ; incl (%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016541 DB 0,0 ; add %al,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040016542 DB 255,0 ; incl (%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016543 DB 0,0 ; add %al,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040016544 DB 255,0 ; incl (%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040016545 DB 0,0 ; add %al,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040016546 DB 255,0 ; incl (%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040016547 DB 0,0 ; add %al,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040016548 DB 1,255 ; add %edi,%edi
16549 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016550 DB 255,5,255,255,255,9 ; incl 0x9ffffff(%rip) # a004d98 <_sk_callback_sse41+0xa000593>
Mike Klein0aa742f2017-04-27 13:36:57 -040016551 DB 255 ; (bad)
16552 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016553 DB 255,13,255,255,255,2 ; decl 0x2ffffff(%rip) # 3004da0 <_sk_callback_sse41+0x300059b>
Mike Klein0aa742f2017-04-27 13:36:57 -040016554 DB 255 ; (bad)
16555 DB 255 ; (bad)
16556 DB 255,6 ; incl (%rsi)
16557 DB 255 ; (bad)
16558 DB 255 ; (bad)
16559 DB 255,10 ; decl (%rdx)
16560 DB 255 ; (bad)
16561 DB 255 ; (bad)
16562 DB 255,14 ; decl (%rsi)
16563 DB 255 ; (bad)
16564 DB 255 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -040016565 DB 255,129,128,128,59,129 ; incl -0x7ec47f80(%rcx)
16566 DB 128,128,59,129,128,128,59 ; addb $0x3b,-0x7f7f7ec5(%rax)
16567 DB 129,128,128,59,255,0,255,0,255,0 ; addl $0xff00ff,0xff3b80(%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040016568 DB 255,0 ; incl (%rax)
16569 DB 0,0 ; add %al,(%rax)
16570 DB 0,0 ; add %al,(%rax)
16571 DB 0,0 ; add %al,(%rax)
16572 DB 0,0 ; add %al,(%rax)
16573 DB 8,255 ; or %bh,%bh
16574 DB 10,255 ; or %bh,%bh
16575 DB 12,255 ; or $0xff,%al
16576 DB 14 ; (bad)
16577 DB 255,0 ; incl (%rax)
16578 DB 0,0 ; add %al,(%rax)
16579 DB 0,0 ; add %al,(%rax)
16580 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016581 DB 0,128,0,128,55,128 ; add %al,-0x7fc88000(%rax)
16582 DB 0,128,55,128,0,128 ; add %al,-0x7fff7fc9(%rax)
16583 DB 55 ; (bad)
16584 DB 128,0,128 ; addb $0x80,(%rax)
16585 DB 55 ; (bad)
16586 DB 255,0 ; incl (%rax)
16587 DB 255,0 ; incl (%rax)
16588 DB 255,0 ; incl (%rax)
16589 DB 255,0 ; incl (%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040016590 DB 0,0 ; add %al,(%rax)
16591 DB 0,0 ; add %al,(%rax)
16592 DB 0,0 ; add %al,(%rax)
16593 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016594 DB 8,128,10,128,12,128 ; or %al,-0x7ff37ff6(%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040016595 DB 14 ; (bad)
16596 DB 128,0,0 ; addb $0x0,(%rax)
16597 DB 0,0 ; add %al,(%rax)
16598 DB 0,0 ; add %al,(%rax)
16599 DB 0,0 ; add %al,(%rax)
16600 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016601 DB 128,63,0 ; cmpb $0x0,(%rdi)
16602 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16603 DB 63 ; (bad)
16604 DB 0,0 ; add %al,(%rax)
16605 DB 128,63,0 ; cmpb $0x0,(%rdi)
16606 DB 0,127,67 ; add %bh,0x43(%rdi)
16607 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016608 DB 127,67 ; jg 4e6b <.literal16+0x5bb>
Mike Kleinfe560a82017-05-01 12:56:35 -040016609 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016610 DB 127,67 ; jg 4e6f <.literal16+0x5bf>
Mike Kleinfe560a82017-05-01 12:56:35 -040016611 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040016612 DB 127,67 ; jg 4e73 <.literal16+0x5c3>
Mike Kleinfe560a82017-05-01 12:56:35 -040016613 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
16614 DB 128,59,129 ; cmpb $0x81,(%rbx)
16615 DB 128,128,59,129,128,128,59 ; addb $0x3b,-0x7f7f7ec5(%rax)
16616 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
16617 DB 128,59,0 ; cmpb $0x0,(%rbx)
16618 DB 0,0 ; add %al,(%rax)
16619 DB 52,0 ; xor $0x0,%al
Mike Kleinb4bbc642017-04-27 08:59:55 -040016620 DB 0,0 ; add %al,(%rax)
16621 DB 52,0 ; xor $0x0,%al
16622 DB 0,0 ; add %al,(%rax)
16623 DB 52,0 ; xor $0x0,%al
16624 DB 0,0 ; add %al,(%rax)
16625 DB 52,255 ; xor $0xff,%al
16626 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016627 DB 127,0 ; jg 4e64 <.literal16+0x5b4>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016628 DB 255 ; (bad)
16629 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016630 DB 127,0 ; jg 4e68 <.literal16+0x5b8>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016631 DB 255 ; (bad)
16632 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016633 DB 127,0 ; jg 4e6c <.literal16+0x5bc>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016634 DB 255 ; (bad)
16635 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016636 DB 127,0 ; jg 4e70 <.literal16+0x5c0>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016637 DB 0,0 ; add %al,(%rax)
16638 DB 0,63 ; add %bh,(%rdi)
16639 DB 0,0 ; add %al,(%rax)
16640 DB 0,63 ; add %bh,(%rdi)
16641 DB 0,0 ; add %al,(%rax)
16642 DB 0,63 ; add %bh,(%rdi)
16643 DB 0,0 ; add %al,(%rax)
16644 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040016645 DB 119,115 ; ja 4ef5 <.literal16+0x645>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016646 DB 248 ; clc
16647 DB 194,119,115 ; retq $0x7377
16648 DB 248 ; clc
16649 DB 194,119,115 ; retq $0x7377
16650 DB 248 ; clc
16651 DB 194,119,115 ; retq $0x7377
16652 DB 248 ; clc
16653 DB 194,117,191 ; retq $0xbf75
16654 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
Mike Klein2229b572017-04-21 10:30:29 -040016655 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016656 DB 117,191 ; jne 4e59 <.literal16+0x5a9>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016657 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
16658 DB 63 ; (bad)
16659 DB 249 ; stc
16660 DB 68,180,62 ; rex.R mov $0x3e,%spl
16661 DB 249 ; stc
16662 DB 68,180,62 ; rex.R mov $0x3e,%spl
16663 DB 249 ; stc
16664 DB 68,180,62 ; rex.R mov $0x3e,%spl
16665 DB 249 ; stc
16666 DB 68,180,62 ; rex.R mov $0x3e,%spl
16667 DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9
Mike Klein8ca33562017-05-23 08:07:43 -040016668 DB 233,220,63,163,233 ; jmpq ffffffffe9a38e9a <_sk_callback_sse41+0xffffffffe9a34695>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016669 DB 220,63 ; fdivrl (%rdi)
16670 DB 81 ; push %rcx
16671 DB 140,242 ; mov %?,%edx
16672 DB 66,81 ; rex.X push %rcx
16673 DB 140,242 ; mov %?,%edx
16674 DB 66,81 ; rex.X push %rcx
16675 DB 140,242 ; mov %?,%edx
16676 DB 66,81 ; rex.X push %rcx
16677 DB 140,242 ; mov %?,%edx
16678 DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi
16679 DB 63 ; (bad)
16680 DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi
16681 DB 63 ; (bad)
16682 DB 248 ; clc
16683 DB 245 ; cmc
16684 DB 154 ; (bad)
16685 DB 64,248 ; rex clc
16686 DB 245 ; cmc
16687 DB 154 ; (bad)
16688 DB 64,248 ; rex clc
16689 DB 245 ; cmc
16690 DB 154 ; (bad)
16691 DB 64,248 ; rex clc
16692 DB 245 ; cmc
16693 DB 154 ; (bad)
16694 DB 64,254 ; rex (bad)
16695 DB 210,221 ; rcr %cl,%ch
16696 DB 65,254 ; rex.B (bad)
16697 DB 210,221 ; rcr %cl,%ch
16698 DB 65,254 ; rex.B (bad)
16699 DB 210,221 ; rcr %cl,%ch
16700 DB 65,254 ; rex.B (bad)
16701 DB 210,221 ; rcr %cl,%ch
16702 DB 65,0,0 ; add %al,(%r8)
16703 DB 0,75,0 ; add %cl,0x0(%rbx)
16704 DB 0,0 ; add %al,(%rax)
16705 DB 75,0,0 ; rex.WXB add %al,(%r8)
16706 DB 0,75,0 ; add %cl,0x0(%rbx)
16707 DB 0,0 ; add %al,(%rax)
16708 DB 75,0,0 ; rex.WXB add %al,(%r8)
Mike Kleinfe560a82017-05-01 12:56:35 -040016709 DB 128,63,0 ; cmpb $0x0,(%rdi)
16710 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16711 DB 63 ; (bad)
16712 DB 0,0 ; add %al,(%rax)
16713 DB 128,63,0 ; cmpb $0x0,(%rdi)
16714 DB 0,0 ; add %al,(%rax)
16715 DB 52,0 ; xor $0x0,%al
Mike Kleinb4bbc642017-04-27 08:59:55 -040016716 DB 0,0 ; add %al,(%rax)
16717 DB 52,0 ; xor $0x0,%al
16718 DB 0,0 ; add %al,(%rax)
16719 DB 52,0 ; xor $0x0,%al
16720 DB 0,0 ; add %al,(%rax)
16721 DB 52,255 ; xor $0xff,%al
16722 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016723 DB 127,0 ; jg 4f34 <.literal16+0x684>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016724 DB 255 ; (bad)
16725 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016726 DB 127,0 ; jg 4f38 <.literal16+0x688>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016727 DB 255 ; (bad)
16728 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016729 DB 127,0 ; jg 4f3c <.literal16+0x68c>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016730 DB 255 ; (bad)
16731 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016732 DB 127,0 ; jg 4f40 <.literal16+0x690>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016733 DB 0,0 ; add %al,(%rax)
16734 DB 0,63 ; add %bh,(%rdi)
16735 DB 0,0 ; add %al,(%rax)
16736 DB 0,63 ; add %bh,(%rdi)
16737 DB 0,0 ; add %al,(%rax)
16738 DB 0,63 ; add %bh,(%rdi)
16739 DB 0,0 ; add %al,(%rax)
16740 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040016741 DB 119,115 ; ja 4fc5 <.literal16+0x715>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016742 DB 248 ; clc
16743 DB 194,119,115 ; retq $0x7377
16744 DB 248 ; clc
16745 DB 194,119,115 ; retq $0x7377
16746 DB 248 ; clc
16747 DB 194,119,115 ; retq $0x7377
16748 DB 248 ; clc
16749 DB 194,117,191 ; retq $0xbf75
16750 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
16751 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016752 DB 117,191 ; jne 4f29 <.literal16+0x679>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016753 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
16754 DB 63 ; (bad)
16755 DB 249 ; stc
16756 DB 68,180,62 ; rex.R mov $0x3e,%spl
16757 DB 249 ; stc
16758 DB 68,180,62 ; rex.R mov $0x3e,%spl
16759 DB 249 ; stc
16760 DB 68,180,62 ; rex.R mov $0x3e,%spl
16761 DB 249 ; stc
16762 DB 68,180,62 ; rex.R mov $0x3e,%spl
16763 DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9
Mike Klein8ca33562017-05-23 08:07:43 -040016764 DB 233,220,63,163,233 ; jmpq ffffffffe9a38f6a <_sk_callback_sse41+0xffffffffe9a34765>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016765 DB 220,63 ; fdivrl (%rdi)
16766 DB 81 ; push %rcx
16767 DB 140,242 ; mov %?,%edx
16768 DB 66,81 ; rex.X push %rcx
16769 DB 140,242 ; mov %?,%edx
16770 DB 66,81 ; rex.X push %rcx
16771 DB 140,242 ; mov %?,%edx
16772 DB 66,81 ; rex.X push %rcx
16773 DB 140,242 ; mov %?,%edx
16774 DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi
16775 DB 63 ; (bad)
16776 DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi
16777 DB 63 ; (bad)
16778 DB 248 ; clc
16779 DB 245 ; cmc
16780 DB 154 ; (bad)
16781 DB 64,248 ; rex clc
16782 DB 245 ; cmc
16783 DB 154 ; (bad)
16784 DB 64,248 ; rex clc
16785 DB 245 ; cmc
16786 DB 154 ; (bad)
16787 DB 64,248 ; rex clc
16788 DB 245 ; cmc
16789 DB 154 ; (bad)
16790 DB 64,254 ; rex (bad)
16791 DB 210,221 ; rcr %cl,%ch
16792 DB 65,254 ; rex.B (bad)
16793 DB 210,221 ; rcr %cl,%ch
16794 DB 65,254 ; rex.B (bad)
16795 DB 210,221 ; rcr %cl,%ch
16796 DB 65,254 ; rex.B (bad)
16797 DB 210,221 ; rcr %cl,%ch
16798 DB 65,0,0 ; add %al,(%r8)
16799 DB 0,75,0 ; add %cl,0x0(%rbx)
16800 DB 0,0 ; add %al,(%rax)
16801 DB 75,0,0 ; rex.WXB add %al,(%r8)
16802 DB 0,75,0 ; add %cl,0x0(%rbx)
16803 DB 0,0 ; add %al,(%rax)
16804 DB 75,0,0 ; rex.WXB add %al,(%r8)
Mike Kleinfe560a82017-05-01 12:56:35 -040016805 DB 128,63,0 ; cmpb $0x0,(%rdi)
16806 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16807 DB 63 ; (bad)
16808 DB 0,0 ; add %al,(%rax)
16809 DB 128,63,0 ; cmpb $0x0,(%rdi)
16810 DB 0,0 ; add %al,(%rax)
16811 DB 52,0 ; xor $0x0,%al
Mike Kleinb4bbc642017-04-27 08:59:55 -040016812 DB 0,0 ; add %al,(%rax)
16813 DB 52,0 ; xor $0x0,%al
16814 DB 0,0 ; add %al,(%rax)
16815 DB 52,0 ; xor $0x0,%al
16816 DB 0,0 ; add %al,(%rax)
16817 DB 52,255 ; xor $0xff,%al
16818 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016819 DB 127,0 ; jg 5004 <.literal16+0x754>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016820 DB 255 ; (bad)
16821 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016822 DB 127,0 ; jg 5008 <.literal16+0x758>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016823 DB 255 ; (bad)
16824 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016825 DB 127,0 ; jg 500c <.literal16+0x75c>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016826 DB 255 ; (bad)
16827 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016828 DB 127,0 ; jg 5010 <.literal16+0x760>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016829 DB 0,0 ; add %al,(%rax)
16830 DB 0,63 ; add %bh,(%rdi)
16831 DB 0,0 ; add %al,(%rax)
16832 DB 0,63 ; add %bh,(%rdi)
16833 DB 0,0 ; add %al,(%rax)
16834 DB 0,63 ; add %bh,(%rdi)
16835 DB 0,0 ; add %al,(%rax)
16836 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040016837 DB 119,115 ; ja 5095 <.literal16+0x7e5>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016838 DB 248 ; clc
16839 DB 194,119,115 ; retq $0x7377
16840 DB 248 ; clc
16841 DB 194,119,115 ; retq $0x7377
16842 DB 248 ; clc
16843 DB 194,119,115 ; retq $0x7377
16844 DB 248 ; clc
16845 DB 194,117,191 ; retq $0xbf75
16846 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
16847 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016848 DB 117,191 ; jne 4ff9 <.literal16+0x749>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016849 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
16850 DB 63 ; (bad)
16851 DB 249 ; stc
16852 DB 68,180,62 ; rex.R mov $0x3e,%spl
16853 DB 249 ; stc
16854 DB 68,180,62 ; rex.R mov $0x3e,%spl
16855 DB 249 ; stc
16856 DB 68,180,62 ; rex.R mov $0x3e,%spl
16857 DB 249 ; stc
16858 DB 68,180,62 ; rex.R mov $0x3e,%spl
16859 DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9
Mike Klein8ca33562017-05-23 08:07:43 -040016860 DB 233,220,63,163,233 ; jmpq ffffffffe9a3903a <_sk_callback_sse41+0xffffffffe9a34835>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016861 DB 220,63 ; fdivrl (%rdi)
16862 DB 81 ; push %rcx
16863 DB 140,242 ; mov %?,%edx
16864 DB 66,81 ; rex.X push %rcx
16865 DB 140,242 ; mov %?,%edx
16866 DB 66,81 ; rex.X push %rcx
16867 DB 140,242 ; mov %?,%edx
16868 DB 66,81 ; rex.X push %rcx
16869 DB 140,242 ; mov %?,%edx
16870 DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi
16871 DB 63 ; (bad)
16872 DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi
16873 DB 63 ; (bad)
16874 DB 248 ; clc
16875 DB 245 ; cmc
16876 DB 154 ; (bad)
16877 DB 64,248 ; rex clc
16878 DB 245 ; cmc
16879 DB 154 ; (bad)
16880 DB 64,248 ; rex clc
16881 DB 245 ; cmc
16882 DB 154 ; (bad)
16883 DB 64,248 ; rex clc
16884 DB 245 ; cmc
16885 DB 154 ; (bad)
16886 DB 64,254 ; rex (bad)
16887 DB 210,221 ; rcr %cl,%ch
16888 DB 65,254 ; rex.B (bad)
16889 DB 210,221 ; rcr %cl,%ch
16890 DB 65,254 ; rex.B (bad)
16891 DB 210,221 ; rcr %cl,%ch
16892 DB 65,254 ; rex.B (bad)
16893 DB 210,221 ; rcr %cl,%ch
16894 DB 65,0,0 ; add %al,(%r8)
16895 DB 0,75,0 ; add %cl,0x0(%rbx)
16896 DB 0,0 ; add %al,(%rax)
16897 DB 75,0,0 ; rex.WXB add %al,(%r8)
16898 DB 0,75,0 ; add %cl,0x0(%rbx)
16899 DB 0,0 ; add %al,(%rax)
16900 DB 75,0,0 ; rex.WXB add %al,(%r8)
Mike Kleinfe560a82017-05-01 12:56:35 -040016901 DB 128,63,0 ; cmpb $0x0,(%rdi)
16902 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16903 DB 63 ; (bad)
16904 DB 0,0 ; add %al,(%rax)
16905 DB 128,63,0 ; cmpb $0x0,(%rdi)
16906 DB 0,0 ; add %al,(%rax)
16907 DB 52,0 ; xor $0x0,%al
Mike Kleinb4bbc642017-04-27 08:59:55 -040016908 DB 0,0 ; add %al,(%rax)
16909 DB 52,0 ; xor $0x0,%al
16910 DB 0,0 ; add %al,(%rax)
16911 DB 52,0 ; xor $0x0,%al
16912 DB 0,0 ; add %al,(%rax)
16913 DB 52,255 ; xor $0xff,%al
16914 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016915 DB 127,0 ; jg 50d4 <.literal16+0x824>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016916 DB 255 ; (bad)
16917 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016918 DB 127,0 ; jg 50d8 <.literal16+0x828>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016919 DB 255 ; (bad)
16920 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016921 DB 127,0 ; jg 50dc <.literal16+0x82c>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016922 DB 255 ; (bad)
16923 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016924 DB 127,0 ; jg 50e0 <.literal16+0x830>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016925 DB 0,0 ; add %al,(%rax)
16926 DB 0,63 ; add %bh,(%rdi)
16927 DB 0,0 ; add %al,(%rax)
16928 DB 0,63 ; add %bh,(%rdi)
16929 DB 0,0 ; add %al,(%rax)
16930 DB 0,63 ; add %bh,(%rdi)
16931 DB 0,0 ; add %al,(%rax)
16932 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040016933 DB 119,115 ; ja 5165 <.literal16+0x8b5>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016934 DB 248 ; clc
16935 DB 194,119,115 ; retq $0x7377
16936 DB 248 ; clc
16937 DB 194,119,115 ; retq $0x7377
16938 DB 248 ; clc
16939 DB 194,119,115 ; retq $0x7377
16940 DB 248 ; clc
16941 DB 194,117,191 ; retq $0xbf75
16942 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
16943 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040016944 DB 117,191 ; jne 50c9 <.literal16+0x819>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016945 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
16946 DB 63 ; (bad)
16947 DB 249 ; stc
16948 DB 68,180,62 ; rex.R mov $0x3e,%spl
16949 DB 249 ; stc
16950 DB 68,180,62 ; rex.R mov $0x3e,%spl
16951 DB 249 ; stc
16952 DB 68,180,62 ; rex.R mov $0x3e,%spl
16953 DB 249 ; stc
16954 DB 68,180,62 ; rex.R mov $0x3e,%spl
16955 DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9
Mike Klein8ca33562017-05-23 08:07:43 -040016956 DB 233,220,63,163,233 ; jmpq ffffffffe9a3910a <_sk_callback_sse41+0xffffffffe9a34905>
Mike Kleinb4bbc642017-04-27 08:59:55 -040016957 DB 220,63 ; fdivrl (%rdi)
16958 DB 81 ; push %rcx
16959 DB 140,242 ; mov %?,%edx
16960 DB 66,81 ; rex.X push %rcx
16961 DB 140,242 ; mov %?,%edx
16962 DB 66,81 ; rex.X push %rcx
16963 DB 140,242 ; mov %?,%edx
16964 DB 66,81 ; rex.X push %rcx
16965 DB 140,242 ; mov %?,%edx
16966 DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi
16967 DB 63 ; (bad)
16968 DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi
16969 DB 63 ; (bad)
16970 DB 248 ; clc
16971 DB 245 ; cmc
16972 DB 154 ; (bad)
16973 DB 64,248 ; rex clc
16974 DB 245 ; cmc
16975 DB 154 ; (bad)
16976 DB 64,248 ; rex clc
16977 DB 245 ; cmc
16978 DB 154 ; (bad)
16979 DB 64,248 ; rex clc
16980 DB 245 ; cmc
16981 DB 154 ; (bad)
16982 DB 64,254 ; rex (bad)
16983 DB 210,221 ; rcr %cl,%ch
16984 DB 65,254 ; rex.B (bad)
16985 DB 210,221 ; rcr %cl,%ch
16986 DB 65,254 ; rex.B (bad)
16987 DB 210,221 ; rcr %cl,%ch
16988 DB 65,254 ; rex.B (bad)
16989 DB 210,221 ; rcr %cl,%ch
16990 DB 65,0,0 ; add %al,(%r8)
16991 DB 0,75,0 ; add %cl,0x0(%rbx)
16992 DB 0,0 ; add %al,(%rax)
16993 DB 75,0,0 ; rex.WXB add %al,(%r8)
16994 DB 0,75,0 ; add %cl,0x0(%rbx)
16995 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040016996 DB 75,0,0 ; rex.WXB add %al,(%r8)
16997 DB 128,63,0 ; cmpb $0x0,(%rdi)
16998 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
16999 DB 63 ; (bad)
17000 DB 0,0 ; add %al,(%rax)
17001 DB 128,63,0 ; cmpb $0x0,(%rdi)
17002 DB 0,200 ; add %cl,%al
17003 DB 66,0,0 ; rex.X add %al,(%rax)
17004 DB 200,66,0,0 ; enterq $0x42,$0x0
17005 DB 200,66,0,0 ; enterq $0x42,$0x0
17006 DB 200,66,0,0 ; enterq $0x42,$0x0
Mike Klein8ca33562017-05-23 08:07:43 -040017007 DB 127,67 ; jg 51e7 <.literal16+0x937>
Mike Kleinfe560a82017-05-01 12:56:35 -040017008 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017009 DB 127,67 ; jg 51eb <.literal16+0x93b>
Mike Kleinfe560a82017-05-01 12:56:35 -040017010 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017011 DB 127,67 ; jg 51ef <.literal16+0x93f>
Mike Kleinfe560a82017-05-01 12:56:35 -040017012 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017013 DB 127,67 ; jg 51f3 <.literal16+0x943>
Mike Kleinfe560a82017-05-01 12:56:35 -040017014 DB 0,0 ; add %al,(%rax)
17015 DB 0,195 ; add %al,%bl
17016 DB 0,0 ; add %al,(%rax)
17017 DB 0,195 ; add %al,%bl
17018 DB 0,0 ; add %al,(%rax)
17019 DB 0,195 ; add %al,%bl
17020 DB 0,0 ; add %al,(%rax)
17021 DB 0,195 ; add %al,%bl
17022 DB 0,0 ; add %al,(%rax)
17023 DB 128,65,0,0 ; addb $0x0,0x0(%rcx)
17024 DB 128,65,0,0 ; addb $0x0,0x0(%rcx)
17025 DB 128,65,0,0 ; addb $0x0,0x0(%rcx)
17026 DB 128,65,203,61 ; addb $0x3d,-0x35(%rcx)
17027 DB 13,60,203,61,13 ; or $0xd3dcb3c,%eax
17028 DB 60,203 ; cmp $0xcb,%al
17029 DB 61,13,60,203,61 ; cmp $0x3dcb3c0d,%eax
17030 DB 13,60,111,18,3 ; or $0x3126f3c,%eax
17031 DB 59,111,18 ; cmp 0x12(%rdi),%ebp
17032 DB 3,59 ; add (%rbx),%edi
17033 DB 111 ; outsl %ds:(%rsi),(%dx)
17034 DB 18,3 ; adc (%rbx),%al
17035 DB 59,111,18 ; cmp 0x12(%rdi),%ebp
17036 DB 3,59 ; add (%rbx),%edi
17037 DB 10,215 ; or %bh,%dl
17038 DB 163,59,10,215,163,59,10,215,163 ; movabs %eax,0xa3d70a3ba3d70a3b
17039 DB 59,10 ; cmp (%rdx),%ecx
17040 DB 215 ; xlat %ds:(%rbx)
17041 DB 163,59,194,24,17,60,194,24,17 ; movabs %eax,0x1118c23c1118c23b
17042 DB 60,194 ; cmp $0xc2,%al
17043 DB 24,17 ; sbb %dl,(%rcx)
17044 DB 60,194 ; cmp $0xc2,%al
17045 DB 24,17 ; sbb %dl,(%rcx)
17046 DB 60,203 ; cmp $0xcb,%al
17047 DB 61,13,190,203,61 ; cmp $0x3dcbbe0d,%eax
17048 DB 13,190,203,61,13 ; or $0xd3dcbbe,%eax
17049 DB 190,203,61,13,190 ; mov $0xbe0d3dcb,%esi
17050 DB 80 ; push %rax
17051 DB 128,3,62 ; addb $0x3e,(%rbx)
17052 DB 80 ; push %rax
17053 DB 128,3,62 ; addb $0x3e,(%rbx)
17054 DB 80 ; push %rax
17055 DB 128,3,62 ; addb $0x3e,(%rbx)
17056 DB 80 ; push %rax
17057 DB 128,3,62 ; addb $0x3e,(%rbx)
17058 DB 31 ; (bad)
17059 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040017060 DB 118,63 ; jbe 5273 <.literal16+0x9c3>
Mike Kleinfe560a82017-05-01 12:56:35 -040017061 DB 31 ; (bad)
17062 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040017063 DB 118,63 ; jbe 5277 <.literal16+0x9c7>
Mike Kleinfe560a82017-05-01 12:56:35 -040017064 DB 31 ; (bad)
17065 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040017066 DB 118,63 ; jbe 527b <.literal16+0x9cb>
Mike Kleinfe560a82017-05-01 12:56:35 -040017067 DB 31 ; (bad)
17068 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040017069 DB 118,63 ; jbe 527f <.literal16+0x9cf>
Mike Kleinfe560a82017-05-01 12:56:35 -040017070 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
17071 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
17072 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
17073 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
17074 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
17075 DB 128,59,129 ; cmpb $0x81,(%rbx)
17076 DB 128,128,59,129,128,128,59 ; addb $0x3b,-0x7f7f7ec5(%rax)
17077 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
17078 DB 128,59,0 ; cmpb $0x0,(%rbx)
17079 DB 0,127,67 ; add %bh,0x43(%rdi)
17080 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017081 DB 127,67 ; jg 52bb <.literal16+0xa0b>
Mike Kleinfe560a82017-05-01 12:56:35 -040017082 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017083 DB 127,67 ; jg 52bf <.literal16+0xa0f>
Mike Kleinfe560a82017-05-01 12:56:35 -040017084 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017085 DB 127,67 ; jg 52c3 <.literal16+0xa13>
Mike Kleinfe560a82017-05-01 12:56:35 -040017086 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
17087 DB 128,59,129 ; cmpb $0x81,(%rbx)
17088 DB 128,128,59,0,0,128,63 ; addb $0x3f,-0x7fffffc5(%rax)
17089 DB 0,0 ; add %al,(%rax)
17090 DB 128,63,0 ; cmpb $0x0,(%rdi)
17091 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17092 DB 63 ; (bad)
17093 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
17094 DB 128,59,129 ; cmpb $0x81,(%rbx)
17095 DB 128,128,59,0,0,128,63 ; addb $0x3f,-0x7fffffc5(%rax)
17096 DB 0,0 ; add %al,(%rax)
17097 DB 128,63,0 ; cmpb $0x0,(%rdi)
17098 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17099 DB 63 ; (bad)
17100 DB 255,0 ; incl (%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040017101 DB 0,0 ; add %al,(%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040017102 DB 255,0 ; incl (%rax)
17103 DB 0,0 ; add %al,(%rax)
17104 DB 255,0 ; incl (%rax)
17105 DB 0,0 ; add %al,(%rax)
17106 DB 255,0 ; incl (%rax)
17107 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017108 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
17109 DB 128,59,129 ; cmpb $0x81,(%rbx)
17110 DB 128,128,59,1,255,255,255 ; addb $0xff,-0xfec5(%rax)
17111 DB 5,255,255,255,9 ; add $0x9ffffff,%eax
Mike Klein0aa742f2017-04-27 13:36:57 -040017112 DB 255 ; (bad)
17113 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017114 DB 255,13,255,255,255,2 ; decl 0x2ffffff(%rip) # 30052f0 <_sk_callback_sse41+0x3000aeb>
Mike Klein308e6242017-04-27 13:56:33 -040017115 DB 255 ; (bad)
17116 DB 255 ; (bad)
17117 DB 255,6 ; incl (%rsi)
17118 DB 255 ; (bad)
17119 DB 255 ; (bad)
17120 DB 255,10 ; decl (%rdx)
17121 DB 255 ; (bad)
17122 DB 255 ; (bad)
17123 DB 255,14 ; decl (%rsi)
17124 DB 255 ; (bad)
17125 DB 255 ; (bad)
17126 DB 255,0 ; incl (%rax)
17127 DB 248 ; clc
17128 DB 0,0 ; add %al,(%rax)
17129 DB 0,248 ; add %bh,%al
17130 DB 0,0 ; add %al,(%rax)
17131 DB 0,248 ; add %bh,%al
17132 DB 0,0 ; add %al,(%rax)
17133 DB 0,248 ; add %bh,%al
17134 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017135 DB 8,33 ; or %ah,(%rcx)
17136 DB 132,55 ; test %dh,(%rdi)
17137 DB 8,33 ; or %ah,(%rcx)
17138 DB 132,55 ; test %dh,(%rdi)
17139 DB 8,33 ; or %ah,(%rcx)
17140 DB 132,55 ; test %dh,(%rdi)
17141 DB 8,33 ; or %ah,(%rcx)
17142 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040017143 DB 224,7 ; loopne 5329 <.literal16+0xa79>
Mike Klein308e6242017-04-27 13:56:33 -040017144 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017145 DB 224,7 ; loopne 532d <.literal16+0xa7d>
Mike Klein308e6242017-04-27 13:56:33 -040017146 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017147 DB 224,7 ; loopne 5331 <.literal16+0xa81>
Mike Klein308e6242017-04-27 13:56:33 -040017148 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017149 DB 224,7 ; loopne 5335 <.literal16+0xa85>
Mike Klein308e6242017-04-27 13:56:33 -040017150 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017151 DB 33,8 ; and %ecx,(%rax)
17152 DB 2,58 ; add (%rdx),%bh
17153 DB 33,8 ; and %ecx,(%rax)
17154 DB 2,58 ; add (%rdx),%bh
17155 DB 33,8 ; and %ecx,(%rax)
17156 DB 2,58 ; add (%rdx),%bh
17157 DB 33,8 ; and %ecx,(%rax)
17158 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040017159 DB 31 ; (bad)
17160 DB 0,0 ; add %al,(%rax)
17161 DB 0,31 ; add %bl,(%rdi)
17162 DB 0,0 ; add %al,(%rax)
17163 DB 0,31 ; add %bl,(%rdi)
17164 DB 0,0 ; add %al,(%rax)
17165 DB 0,31 ; add %bl,(%rdi)
17166 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017167 DB 0,8 ; add %cl,(%rax)
17168 DB 33,4,61,8,33,4,61 ; and %eax,0x3d042108(,%rdi,1)
17169 DB 8,33 ; or %ah,(%rcx)
17170 DB 4,61 ; add $0x3d,%al
17171 DB 8,33 ; or %ah,(%rcx)
17172 DB 4,61 ; add $0x3d,%al
Mike Klein308e6242017-04-27 13:56:33 -040017173 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017174 DB 128,63,0 ; cmpb $0x0,(%rdi)
17175 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17176 DB 63 ; (bad)
17177 DB 0,0 ; add %al,(%rax)
17178 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Klein308e6242017-04-27 13:56:33 -040017179 DB 248 ; clc
17180 DB 0,0 ; add %al,(%rax)
17181 DB 0,248 ; add %bh,%al
17182 DB 0,0 ; add %al,(%rax)
17183 DB 0,248 ; add %bh,%al
17184 DB 0,0 ; add %al,(%rax)
17185 DB 0,248 ; add %bh,%al
17186 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017187 DB 8,33 ; or %ah,(%rcx)
17188 DB 132,55 ; test %dh,(%rdi)
17189 DB 8,33 ; or %ah,(%rcx)
17190 DB 132,55 ; test %dh,(%rdi)
17191 DB 8,33 ; or %ah,(%rcx)
17192 DB 132,55 ; test %dh,(%rdi)
17193 DB 8,33 ; or %ah,(%rcx)
17194 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040017195 DB 224,7 ; loopne 5399 <.literal16+0xae9>
Mike Klein308e6242017-04-27 13:56:33 -040017196 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017197 DB 224,7 ; loopne 539d <.literal16+0xaed>
Mike Klein308e6242017-04-27 13:56:33 -040017198 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017199 DB 224,7 ; loopne 53a1 <.literal16+0xaf1>
Mike Klein308e6242017-04-27 13:56:33 -040017200 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017201 DB 224,7 ; loopne 53a5 <.literal16+0xaf5>
Mike Klein308e6242017-04-27 13:56:33 -040017202 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017203 DB 33,8 ; and %ecx,(%rax)
17204 DB 2,58 ; add (%rdx),%bh
17205 DB 33,8 ; and %ecx,(%rax)
17206 DB 2,58 ; add (%rdx),%bh
17207 DB 33,8 ; and %ecx,(%rax)
17208 DB 2,58 ; add (%rdx),%bh
17209 DB 33,8 ; and %ecx,(%rax)
17210 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040017211 DB 31 ; (bad)
17212 DB 0,0 ; add %al,(%rax)
17213 DB 0,31 ; add %bl,(%rdi)
17214 DB 0,0 ; add %al,(%rax)
17215 DB 0,31 ; add %bl,(%rdi)
17216 DB 0,0 ; add %al,(%rax)
17217 DB 0,31 ; add %bl,(%rdi)
17218 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017219 DB 0,8 ; add %cl,(%rax)
17220 DB 33,4,61,8,33,4,61 ; and %eax,0x3d042108(,%rdi,1)
17221 DB 8,33 ; or %ah,(%rcx)
17222 DB 4,61 ; add $0x3d,%al
17223 DB 8,33 ; or %ah,(%rcx)
17224 DB 4,61 ; add $0x3d,%al
Mike Klein308e6242017-04-27 13:56:33 -040017225 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017226 DB 128,63,0 ; cmpb $0x0,(%rdi)
17227 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17228 DB 63 ; (bad)
17229 DB 0,0 ; add %al,(%rax)
17230 DB 128,63,0 ; cmpb $0x0,(%rdi)
17231 DB 0,248 ; add %bh,%al
17232 DB 65,0,0 ; add %al,(%r8)
17233 DB 248 ; clc
17234 DB 65,0,0 ; add %al,(%r8)
17235 DB 248 ; clc
17236 DB 65,0,0 ; add %al,(%r8)
17237 DB 248 ; clc
17238 DB 65,0,0 ; add %al,(%r8)
Mike Klein8ca33562017-05-23 08:07:43 -040017239 DB 124,66 ; jl 5436 <.literal16+0xb86>
Mike Kleinfe560a82017-05-01 12:56:35 -040017240 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017241 DB 124,66 ; jl 543a <.literal16+0xb8a>
Mike Kleinfe560a82017-05-01 12:56:35 -040017242 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017243 DB 124,66 ; jl 543e <.literal16+0xb8e>
Mike Kleinfe560a82017-05-01 12:56:35 -040017244 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017245 DB 124,66 ; jl 5442 <.literal16+0xb92>
Mike Kleinfe560a82017-05-01 12:56:35 -040017246 DB 0,240 ; add %dh,%al
17247 DB 0,0 ; add %al,(%rax)
17248 DB 0,240 ; add %dh,%al
17249 DB 0,0 ; add %al,(%rax)
17250 DB 0,240 ; add %dh,%al
17251 DB 0,0 ; add %al,(%rax)
17252 DB 0,240 ; add %dh,%al
17253 DB 0,0 ; add %al,(%rax)
17254 DB 137,136,136,55,137,136 ; mov %ecx,-0x7776c878(%rax)
17255 DB 136,55 ; mov %dh,(%rdi)
17256 DB 137,136,136,55,137,136 ; mov %ecx,-0x7776c878(%rax)
17257 DB 136,55 ; mov %dh,(%rdi)
17258 DB 0,15 ; add %cl,(%rdi)
17259 DB 0,0 ; add %al,(%rax)
17260 DB 0,15 ; add %cl,(%rdi)
17261 DB 0,0 ; add %al,(%rax)
17262 DB 0,15 ; add %cl,(%rdi)
17263 DB 0,0 ; add %al,(%rax)
17264 DB 0,15 ; add %cl,(%rdi)
17265 DB 0,0 ; add %al,(%rax)
17266 DB 137,136,136,57,137,136 ; mov %ecx,-0x7776c678(%rax)
17267 DB 136,57 ; mov %bh,(%rcx)
17268 DB 137,136,136,57,137,136 ; mov %ecx,-0x7776c678(%rax)
17269 DB 136,57 ; mov %bh,(%rcx)
Mike Klein308e6242017-04-27 13:56:33 -040017270 DB 240,0,0 ; lock add %al,(%rax)
17271 DB 0,240 ; add %dh,%al
17272 DB 0,0 ; add %al,(%rax)
17273 DB 0,240 ; add %dh,%al
17274 DB 0,0 ; add %al,(%rax)
17275 DB 0,240 ; add %dh,%al
17276 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017277 DB 0,137,136,136,59,137 ; add %cl,-0x76c47778(%rcx)
17278 DB 136,136,59,137,136,136 ; mov %cl,-0x777776c5(%rax)
17279 DB 59,137,136,136,59,15 ; cmp 0xf3b8888(%rcx),%ecx
17280 DB 0,0 ; add %al,(%rax)
17281 DB 0,15 ; add %cl,(%rdi)
17282 DB 0,0 ; add %al,(%rax)
17283 DB 0,15 ; add %cl,(%rdi)
17284 DB 0,0 ; add %al,(%rax)
17285 DB 0,15 ; add %cl,(%rdi)
17286 DB 0,0 ; add %al,(%rax)
17287 DB 0,137,136,136,61,137 ; add %cl,-0x76c27778(%rcx)
17288 DB 136,136,61,137,136,136 ; mov %cl,-0x777776c3(%rax)
17289 DB 61,137,136,136,61 ; cmp $0x3d888889,%eax
17290 DB 0,240 ; add %dh,%al
17291 DB 0,0 ; add %al,(%rax)
17292 DB 0,240 ; add %dh,%al
17293 DB 0,0 ; add %al,(%rax)
17294 DB 0,240 ; add %dh,%al
17295 DB 0,0 ; add %al,(%rax)
17296 DB 0,240 ; add %dh,%al
17297 DB 0,0 ; add %al,(%rax)
17298 DB 137,136,136,55,137,136 ; mov %ecx,-0x7776c878(%rax)
17299 DB 136,55 ; mov %dh,(%rdi)
17300 DB 137,136,136,55,137,136 ; mov %ecx,-0x7776c878(%rax)
17301 DB 136,55 ; mov %dh,(%rdi)
Mike Klein308e6242017-04-27 13:56:33 -040017302 DB 0,15 ; add %cl,(%rdi)
17303 DB 0,0 ; add %al,(%rax)
17304 DB 0,15 ; add %cl,(%rdi)
17305 DB 0,0 ; add %al,(%rax)
17306 DB 0,15 ; add %cl,(%rdi)
17307 DB 0,0 ; add %al,(%rax)
17308 DB 0,15 ; add %cl,(%rdi)
17309 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017310 DB 137,136,136,57,137,136 ; mov %ecx,-0x7776c678(%rax)
17311 DB 136,57 ; mov %bh,(%rcx)
17312 DB 137,136,136,57,137,136 ; mov %ecx,-0x7776c678(%rax)
17313 DB 136,57 ; mov %bh,(%rcx)
Mike Klein308e6242017-04-27 13:56:33 -040017314 DB 240,0,0 ; lock add %al,(%rax)
17315 DB 0,240 ; add %dh,%al
17316 DB 0,0 ; add %al,(%rax)
17317 DB 0,240 ; add %dh,%al
17318 DB 0,0 ; add %al,(%rax)
17319 DB 0,240 ; add %dh,%al
17320 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017321 DB 0,137,136,136,59,137 ; add %cl,-0x76c47778(%rcx)
17322 DB 136,136,59,137,136,136 ; mov %cl,-0x777776c5(%rax)
17323 DB 59,137,136,136,59,15 ; cmp 0xf3b8888(%rcx),%ecx
Mike Klein308e6242017-04-27 13:56:33 -040017324 DB 0,0 ; add %al,(%rax)
17325 DB 0,15 ; add %cl,(%rdi)
17326 DB 0,0 ; add %al,(%rax)
17327 DB 0,15 ; add %cl,(%rdi)
17328 DB 0,0 ; add %al,(%rax)
17329 DB 0,15 ; add %cl,(%rdi)
17330 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017331 DB 0,137,136,136,61,137 ; add %cl,-0x76c27778(%rcx)
17332 DB 136,136,61,137,136,136 ; mov %cl,-0x777776c3(%rax)
17333 DB 61,137,136,136,61 ; cmp $0x3d888889,%eax
Mike Klein308e6242017-04-27 13:56:33 -040017334 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017335 DB 112,65 ; jo 5545 <.literal16+0xc95>
Mike Klein308e6242017-04-27 13:56:33 -040017336 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017337 DB 112,65 ; jo 5549 <.literal16+0xc99>
Mike Klein308e6242017-04-27 13:56:33 -040017338 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017339 DB 112,65 ; jo 554d <.literal16+0xc9d>
Mike Klein308e6242017-04-27 13:56:33 -040017340 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017341 DB 112,65 ; jo 5551 <.literal16+0xca1>
Mike Kleinfe560a82017-05-01 12:56:35 -040017342 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040017343 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017344 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040017345 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017346 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040017347 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017348 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040017349 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017350 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
17351 DB 128,59,129 ; cmpb $0x81,(%rbx)
17352 DB 128,128,59,1,255,255,255 ; addb $0xff,-0xfec5(%rax)
17353 DB 5,255,255,255,9 ; add $0x9ffffff,%eax
Mike Klein308e6242017-04-27 13:56:33 -040017354 DB 255 ; (bad)
17355 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017356 DB 255,13,255,255,255,2 ; decl 0x2ffffff(%rip) # 3005540 <_sk_callback_sse41+0x3000d3b>
Mike Klein0aa742f2017-04-27 13:36:57 -040017357 DB 255 ; (bad)
17358 DB 255 ; (bad)
17359 DB 255,6 ; incl (%rsi)
17360 DB 255 ; (bad)
17361 DB 255 ; (bad)
17362 DB 255,10 ; decl (%rdx)
17363 DB 255 ; (bad)
17364 DB 255 ; (bad)
17365 DB 255,14 ; decl (%rsi)
17366 DB 255 ; (bad)
17367 DB 255 ; (bad)
17368 DB 255 ; (bad)
17369 DB 255,0 ; incl (%rax)
17370 DB 0,0 ; add %al,(%rax)
17371 DB 255,0 ; incl (%rax)
17372 DB 0,0 ; add %al,(%rax)
17373 DB 255,0 ; incl (%rax)
17374 DB 0,0 ; add %al,(%rax)
17375 DB 255,0 ; incl (%rax)
17376 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017377 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
17378 DB 128,59,129 ; cmpb $0x81,(%rbx)
17379 DB 128,128,59,1,255,255,255 ; addb $0xff,-0xfec5(%rax)
17380 DB 5,255,255,255,9 ; add $0x9ffffff,%eax
Mike Klein0aa742f2017-04-27 13:36:57 -040017381 DB 255 ; (bad)
17382 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017383 DB 255,13,255,255,255,2 ; decl 0x2ffffff(%rip) # 3005580 <_sk_callback_sse41+0x3000d7b>
Mike Klein0aa742f2017-04-27 13:36:57 -040017384 DB 255 ; (bad)
17385 DB 255 ; (bad)
17386 DB 255,6 ; incl (%rsi)
17387 DB 255 ; (bad)
17388 DB 255 ; (bad)
17389 DB 255,10 ; decl (%rdx)
17390 DB 255 ; (bad)
17391 DB 255 ; (bad)
17392 DB 255,14 ; decl (%rsi)
17393 DB 255 ; (bad)
17394 DB 255 ; (bad)
17395 DB 255,0 ; incl (%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017396 DB 0,127,67 ; add %bh,0x43(%rdi)
17397 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017398 DB 127,67 ; jg 55db <.literal16+0xd2b>
Mike Kleinfe560a82017-05-01 12:56:35 -040017399 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017400 DB 127,67 ; jg 55df <.literal16+0xd2f>
Mike Kleinfe560a82017-05-01 12:56:35 -040017401 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040017402 DB 127,67 ; jg 55e3 <.literal16+0xd33>
Mike Kleinb4bbc642017-04-27 08:59:55 -040017403 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
17404 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017405 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040017406 DB 0,0 ; add %al,(%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040017407 DB 0,4,0 ; add %al,(%rax,%rax,1)
Mike Kleinb4bbc642017-04-27 08:59:55 -040017408 DB 0,0 ; add %al,(%rax)
17409 DB 4,0 ; add $0x0,%al
17410 DB 0,0 ; add %al,(%rax)
17411 DB 4,0 ; add $0x0,%al
17412 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017413 DB 4,0 ; add $0x0,%al
17414 DB 0,0 ; add %al,(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040017415 DB 0,0 ; add %al,(%rax)
17416 DB 56,0 ; cmp %al,(%rax)
17417 DB 0,0 ; add %al,(%rax)
17418 DB 56,0 ; cmp %al,(%rax)
17419 DB 0,0 ; add %al,(%rax)
17420 DB 56,0 ; cmp %al,(%rax)
17421 DB 0,0 ; add %al,(%rax)
17422 DB 56,0 ; cmp %al,(%rax)
17423 DB 128,0,0 ; addb $0x0,(%rax)
17424 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
17425 DB 0,0 ; add %al,(%rax)
17426 DB 0,128,0,0,0,4 ; add %al,0x4000000(%rax)
17427 DB 0,0 ; add %al,(%rax)
17428 DB 0,4,0 ; add %al,(%rax,%rax,1)
17429 DB 0,0 ; add %al,(%rax)
17430 DB 4,0 ; add $0x0,%al
17431 DB 0,0 ; add %al,(%rax)
17432 DB 4,0 ; add $0x0,%al
17433 DB 0,0 ; add %al,(%rax)
17434 DB 0,0 ; add %al,(%rax)
17435 DB 56,0 ; cmp %al,(%rax)
17436 DB 0,0 ; add %al,(%rax)
17437 DB 56,0 ; cmp %al,(%rax)
17438 DB 0,0 ; add %al,(%rax)
17439 DB 56,0 ; cmp %al,(%rax)
17440 DB 0,0 ; add %al,(%rax)
17441 DB 56,0 ; cmp %al,(%rax)
17442 DB 0,0 ; add %al,(%rax)
17443 DB 128,0,0 ; addb $0x0,(%rax)
17444 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
17445 DB 0,0 ; add %al,(%rax)
17446 DB 0,128,0,0,128,56 ; add %al,0x38800000(%rax)
17447 DB 0,0 ; add %al,(%rax)
17448 DB 128,56,0 ; cmpb $0x0,(%rax)
17449 DB 0,128,56,0,0,128 ; add %al,-0x7fffffc8(%rax)
17450 DB 56,0 ; cmp %al,(%rax)
17451 DB 64,254 ; rex (bad)
17452 DB 255,0 ; incl (%rax)
17453 DB 64,254 ; rex (bad)
17454 DB 255,0 ; incl (%rax)
17455 DB 64,254 ; rex (bad)
17456 DB 255,0 ; incl (%rax)
17457 DB 64,254 ; rex (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -040017458 DB 255,128,0,128,55,128 ; incl -0x7fc88000(%rax)
17459 DB 0,128,55,128,0,128 ; add %al,-0x7fff7fc9(%rax)
17460 DB 55 ; (bad)
17461 DB 128,0,128 ; addb $0x80,(%rax)
17462 DB 55 ; (bad)
17463 DB 128,0,128 ; addb $0x80,(%rax)
17464 DB 55 ; (bad)
17465 DB 128,0,128 ; addb $0x80,(%rax)
17466 DB 55 ; (bad)
17467 DB 128,0,128 ; addb $0x80,(%rax)
17468 DB 55 ; (bad)
17469 DB 128,0,128 ; addb $0x80,(%rax)
17470 DB 55 ; (bad)
17471 DB 0,0 ; add %al,(%rax)
17472 DB 128,63,0 ; cmpb $0x0,(%rdi)
17473 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17474 DB 63 ; (bad)
17475 DB 0,0 ; add %al,(%rax)
17476 DB 128,63,0 ; cmpb $0x0,(%rdi)
17477 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017478 DB 127,71 ; jg 56ab <.literal16+0xdfb>
Mike Kleinfe560a82017-05-01 12:56:35 -040017479 DB 0,255 ; add %bh,%bh
Mike Klein8ca33562017-05-23 08:07:43 -040017480 DB 127,71 ; jg 56af <.literal16+0xdff>
Mike Kleinfe560a82017-05-01 12:56:35 -040017481 DB 0,255 ; add %bh,%bh
Mike Klein8ca33562017-05-23 08:07:43 -040017482 DB 127,71 ; jg 56b3 <.literal16+0xe03>
Mike Kleinfe560a82017-05-01 12:56:35 -040017483 DB 0,255 ; add %bh,%bh
Mike Klein8ca33562017-05-23 08:07:43 -040017484 DB 127,71 ; jg 56b7 <.literal16+0xe07>
Mike Klein9f85d682017-05-23 07:52:01 -040017485 DB 0,0 ; add %al,(%rax)
17486 DB 128,63,0 ; cmpb $0x0,(%rdi)
17487 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17488 DB 63 ; (bad)
17489 DB 0,0 ; add %al,(%rax)
17490 DB 128,63,0 ; cmpb $0x0,(%rdi)
17491 DB 0,128,191,0,0,128 ; add %al,-0x7fffff41(%rax)
17492 DB 191,0,0,128,191 ; mov $0xbf800000,%edi
17493 DB 0,0 ; add %al,(%rax)
17494 DB 128,191,0,0,0,63,0 ; cmpb $0x0,0x3f000000(%rdi)
17495 DB 0,0 ; add %al,(%rax)
17496 DB 63 ; (bad)
17497 DB 0,0 ; add %al,(%rax)
17498 DB 0,63 ; add %bh,(%rdi)
17499 DB 0,0 ; add %al,(%rax)
17500 DB 0,63 ; add %bh,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -040017501 DB 208 ; (bad)
17502 DB 179,89 ; mov $0x59,%bl
17503 DB 62,208 ; ds (bad)
17504 DB 179,89 ; mov $0x59,%bl
17505 DB 62,208 ; ds (bad)
17506 DB 179,89 ; mov $0x59,%bl
17507 DB 62,208 ; ds (bad)
17508 DB 179,89 ; mov $0x59,%bl
17509 DB 62,89 ; ds pop %rcx
17510 DB 23 ; (bad)
17511 DB 55 ; (bad)
17512 DB 63 ; (bad)
17513 DB 89 ; pop %rcx
17514 DB 23 ; (bad)
17515 DB 55 ; (bad)
17516 DB 63 ; (bad)
17517 DB 89 ; pop %rcx
17518 DB 23 ; (bad)
17519 DB 55 ; (bad)
17520 DB 63 ; (bad)
17521 DB 89 ; pop %rcx
17522 DB 23 ; (bad)
17523 DB 55 ; (bad)
17524 DB 63 ; (bad)
17525 DB 152 ; cwtl
17526 DB 221,147,61,152,221,147 ; fstl -0x6c2267c3(%rbx)
17527 DB 61,152,221,147,61 ; cmp $0x3d93dd98,%eax
17528 DB 152 ; cwtl
Herb Derby4de13042017-05-15 10:49:39 -040017529 DB 221,147,61,1,0,0 ; fstl 0x13d(%rbx)
17530 DB 0,1 ; add %al,(%rcx)
17531 DB 0,0 ; add %al,(%rax)
17532 DB 0,1 ; add %al,(%rcx)
17533 DB 0,0 ; add %al,(%rax)
17534 DB 0,1 ; add %al,(%rcx)
17535 DB 0,0 ; add %al,(%rax)
17536 DB 0,111,43 ; add %ch,0x2b(%rdi)
17537 DB 231,187 ; out %eax,$0xbb
Herb Derby7eb86982017-05-02 19:04:39 -040017538 DB 111 ; outsl %ds:(%rsi),(%dx)
17539 DB 43,231 ; sub %edi,%esp
17540 DB 187,111,43,231,187 ; mov $0xbbe72b6f,%ebx
Herb Derby4de13042017-05-15 10:49:39 -040017541 DB 111 ; outsl %ds:(%rsi),(%dx)
17542 DB 43,231 ; sub %edi,%esp
17543 DB 187,159,215,202,60 ; mov $0x3ccad79f,%ebx
Herb Derby7eb86982017-05-02 19:04:39 -040017544 DB 159 ; lahf
17545 DB 215 ; xlat %ds:(%rbx)
17546 DB 202,60,159 ; lret $0x9f3c
17547 DB 215 ; xlat %ds:(%rbx)
17548 DB 202,60,159 ; lret $0x9f3c
17549 DB 215 ; xlat %ds:(%rbx)
Herb Derby7eb86982017-05-02 19:04:39 -040017550 DB 202,60,212 ; lret $0xd43c
17551 DB 100,84 ; fs push %rsp
17552 DB 189,212,100,84,189 ; mov $0xbd5464d4,%ebp
17553 DB 212 ; (bad)
17554 DB 100,84 ; fs push %rsp
17555 DB 189,212,100,84,189 ; mov $0xbd5464d4,%ebp
17556 DB 169,240,34,62,169 ; test $0xa93e22f0,%eax
17557 DB 240,34,62 ; lock and (%rsi),%bh
17558 DB 169,240,34,62,169 ; test $0xa93e22f0,%eax
17559 DB 240,34,62 ; lock and (%rsi),%bh
17560 DB 0,0 ; add %al,(%rax)
17561 DB 128,62,0 ; cmpb $0x0,(%rsi)
17562 DB 0,128,62,0,0,128 ; add %al,-0x7fffffc2(%rax)
17563 DB 62,0,0 ; add %al,%ds:(%rax)
17564 DB 128,62,0 ; cmpb $0x0,(%rsi)
17565 DB 0,0 ; add %al,(%rax)
17566 DB 63 ; (bad)
17567 DB 0,0 ; add %al,(%rax)
17568 DB 0,63 ; add %bh,(%rdi)
17569 DB 0,0 ; add %al,(%rax)
17570 DB 0,63 ; add %bh,(%rdi)
17571 DB 0,0 ; add %al,(%rax)
17572 DB 0,63 ; add %bh,(%rdi)
17573 DB 0,0 ; add %al,(%rax)
17574 DB 128,63,0 ; cmpb $0x0,(%rdi)
17575 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17576 DB 63 ; (bad)
17577 DB 0,0 ; add %al,(%rax)
17578 DB 128,63,0 ; cmpb $0x0,(%rdi)
17579 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040017580 DB 63 ; (bad)
17581 DB 0,0 ; add %al,(%rax)
17582 DB 0,63 ; add %bh,(%rdi)
17583 DB 0,0 ; add %al,(%rax)
17584 DB 0,63 ; add %bh,(%rdi)
17585 DB 0,0 ; add %al,(%rax)
17586 DB 0,63 ; add %bh,(%rdi)
17587 DB 0,0 ; add %al,(%rax)
17588 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
17589 DB 0,0 ; add %al,(%rax)
17590 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
17591 DB 0,0 ; add %al,(%rax)
17592 DB 128,63,0 ; cmpb $0x0,(%rdi)
17593 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17594 DB 63 ; (bad)
17595 DB 0,0 ; add %al,(%rax)
17596 DB 128,63,0 ; cmpb $0x0,(%rdi)
17597 DB 0,0 ; add %al,(%rax)
17598 DB 63 ; (bad)
17599 DB 0,0 ; add %al,(%rax)
17600 DB 0,63 ; add %bh,(%rdi)
17601 DB 0,0 ; add %al,(%rax)
17602 DB 0,63 ; add %bh,(%rdi)
17603 DB 0,0 ; add %al,(%rax)
17604 DB 0,63 ; add %bh,(%rdi)
17605 DB 0,0 ; add %al,(%rax)
17606 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
17607 DB 0,0 ; add %al,(%rax)
17608 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
17609 DB 0,0 ; add %al,(%rax)
17610 DB 128,63,0 ; cmpb $0x0,(%rdi)
17611 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17612 DB 63 ; (bad)
17613 DB 0,0 ; add %al,(%rax)
17614 DB 128,63,0 ; cmpb $0x0,(%rdi)
17615 DB 0,0 ; add %al,(%rax)
17616 DB 63 ; (bad)
17617 DB 0,0 ; add %al,(%rax)
17618 DB 0,63 ; add %bh,(%rdi)
17619 DB 0,0 ; add %al,(%rax)
17620 DB 0,63 ; add %bh,(%rdi)
17621 DB 0,0 ; add %al,(%rax)
17622 DB 0,63 ; add %bh,(%rdi)
17623 DB 0,0 ; add %al,(%rax)
17624 DB 192,191,0,0,192,191,0 ; sarb $0x0,-0x40400000(%rdi)
17625 DB 0,192 ; add %al,%al
17626 DB 191,0,0,192,191 ; mov $0xbfc00000,%edi
17627 DB 0,0 ; add %al,(%rax)
17628 DB 128,63,0 ; cmpb $0x0,(%rdi)
17629 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17630 DB 63 ; (bad)
17631 DB 0,0 ; add %al,(%rax)
17632 DB 128,63,114 ; cmpb $0x72,(%rdi)
17633 DB 28,199 ; sbb $0xc7,%al
Mike Klein8ca33562017-05-23 08:07:43 -040017634 DB 62,114,28 ; jb,pt 5802 <.literal16+0xf52>
Mike Kleinfe560a82017-05-01 12:56:35 -040017635 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017636 DB 62,114,28 ; jb,pt 5806 <.literal16+0xf56>
Mike Kleinfe560a82017-05-01 12:56:35 -040017637 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017638 DB 62,114,28 ; jb,pt 580a <.literal16+0xf5a>
Mike Kleinfe560a82017-05-01 12:56:35 -040017639 DB 199 ; (bad)
17640 DB 62,171 ; ds stos %eax,%es:(%rdi)
17641 DB 170 ; stos %al,%es:(%rdi)
17642 DB 170 ; stos %al,%es:(%rdi)
17643 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
17644 DB 171 ; stos %eax,%es:(%rdi)
17645 DB 170 ; stos %al,%es:(%rdi)
17646 DB 170 ; stos %al,%es:(%rdi)
17647 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
17648 DB 0,0 ; add %al,(%rax)
17649 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
17650 DB 0,0 ; add %al,(%rax)
17651 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
17652 DB 0,0 ; add %al,(%rax)
17653 DB 128,63,0 ; cmpb $0x0,(%rdi)
17654 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17655 DB 63 ; (bad)
17656 DB 0,0 ; add %al,(%rax)
17657 DB 128,63,85 ; cmpb $0x55,(%rdi)
17658 DB 85 ; push %rbp
17659 DB 149 ; xchg %eax,%ebp
17660 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
17661 DB 85 ; push %rbp
17662 DB 85 ; push %rbp
17663 DB 149 ; xchg %eax,%ebp
17664 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
17665 DB 0,0 ; add %al,(%rax)
17666 DB 192,63,0 ; sarb $0x0,(%rdi)
17667 DB 0,192 ; add %al,%al
17668 DB 63 ; (bad)
17669 DB 0,0 ; add %al,(%rax)
17670 DB 192,63,0 ; sarb $0x0,(%rdi)
17671 DB 0,192 ; add %al,%al
17672 DB 63 ; (bad)
17673 DB 0,0 ; add %al,(%rax)
17674 DB 0,63 ; add %bh,(%rdi)
17675 DB 0,0 ; add %al,(%rax)
17676 DB 0,63 ; add %bh,(%rdi)
17677 DB 0,0 ; add %al,(%rax)
17678 DB 0,63 ; add %bh,(%rdi)
17679 DB 0,0 ; add %al,(%rax)
17680 DB 0,63 ; add %bh,(%rdi)
17681 DB 57,142,99,61,57,142 ; cmp %ecx,-0x71c6c29d(%rsi)
Mike Klein8ca33562017-05-23 08:07:43 -040017682 DB 99,61,57,142,99,61 ; movslq 0x3d638e39(%rip),%edi # 3d63e695 <_sk_callback_sse41+0x3d639e90>
Mike Kleinfe560a82017-05-01 12:56:35 -040017683 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
17684 DB 0,63 ; add %bh,(%rdi)
17685 DB 0,0 ; add %al,(%rax)
17686 DB 0,63 ; add %bh,(%rdi)
17687 DB 0,0 ; add %al,(%rax)
17688 DB 0,63 ; add %bh,(%rdi)
17689 DB 0,0 ; add %al,(%rax)
17690 DB 0,63 ; add %bh,(%rdi)
17691 DB 85 ; push %rbp
17692 DB 85 ; push %rbp
17693 DB 149 ; xchg %eax,%ebp
17694 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
17695 DB 85 ; push %rbp
17696 DB 85 ; push %rbp
17697 DB 149 ; xchg %eax,%ebp
17698 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
17699 DB 0,0 ; add %al,(%rax)
17700 DB 192,63,0 ; sarb $0x0,(%rdi)
17701 DB 0,192 ; add %al,%al
17702 DB 63 ; (bad)
17703 DB 0,0 ; add %al,(%rax)
17704 DB 192,63,0 ; sarb $0x0,(%rdi)
17705 DB 0,192 ; add %al,%al
17706 DB 63 ; (bad)
17707 DB 57,142,99,61,57,142 ; cmp %ecx,-0x71c6c29d(%rsi)
Mike Klein8ca33562017-05-23 08:07:43 -040017708 DB 99,61,57,142,99,61 ; movslq 0x3d638e39(%rip),%edi # 3d63e6d5 <_sk_callback_sse41+0x3d639ed0>
Mike Kleinfe560a82017-05-01 12:56:35 -040017709 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
17710 DB 192,63,0 ; sarb $0x0,(%rdi)
17711 DB 0,192 ; add %al,%al
17712 DB 63 ; (bad)
17713 DB 0,0 ; add %al,(%rax)
17714 DB 192,63,0 ; sarb $0x0,(%rdi)
17715 DB 0,192 ; add %al,%al
17716 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017717 DB 114,28 ; jb 58ce <.literal16+0x101e>
Mike Kleinfe560a82017-05-01 12:56:35 -040017718 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017719 DB 62,114,28 ; jb,pt 58d2 <.literal16+0x1022>
Mike Kleinfe560a82017-05-01 12:56:35 -040017720 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017721 DB 62,114,28 ; jb,pt 58d6 <.literal16+0x1026>
Mike Kleinfe560a82017-05-01 12:56:35 -040017722 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017723 DB 62,114,28 ; jb,pt 58da <.literal16+0x102a>
Mike Kleinfe560a82017-05-01 12:56:35 -040017724 DB 199 ; (bad)
17725 DB 62,171 ; ds stos %eax,%es:(%rdi)
17726 DB 170 ; stos %al,%es:(%rdi)
17727 DB 170 ; stos %al,%es:(%rdi)
17728 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
17729 DB 171 ; stos %eax,%es:(%rdi)
17730 DB 170 ; stos %al,%es:(%rdi)
17731 DB 170 ; stos %al,%es:(%rdi)
17732 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
17733 DB 0,0 ; add %al,(%rax)
17734 DB 192,191,0,0,192,191,0 ; sarb $0x0,-0x40400000(%rdi)
17735 DB 0,192 ; add %al,%al
17736 DB 191,0,0,192,191 ; mov $0xbfc00000,%edi
17737 DB 0,0 ; add %al,(%rax)
17738 DB 128,63,0 ; cmpb $0x0,(%rdi)
17739 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17740 DB 63 ; (bad)
17741 DB 0,0 ; add %al,(%rax)
17742 DB 128,63,114 ; cmpb $0x72,(%rdi)
17743 DB 28,199 ; sbb $0xc7,%al
Mike Klein8ca33562017-05-23 08:07:43 -040017744 DB 62,114,28 ; jb,pt 5912 <.literal16+0x1062>
Mike Kleinfe560a82017-05-01 12:56:35 -040017745 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017746 DB 62,114,28 ; jb,pt 5916 <.literal16+0x1066>
Mike Kleinfe560a82017-05-01 12:56:35 -040017747 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017748 DB 62,114,28 ; jb,pt 591a <.literal16+0x106a>
Mike Kleinfe560a82017-05-01 12:56:35 -040017749 DB 199 ; (bad)
17750 DB 62,171 ; ds stos %eax,%es:(%rdi)
17751 DB 170 ; stos %al,%es:(%rdi)
17752 DB 170 ; stos %al,%es:(%rdi)
17753 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
17754 DB 171 ; stos %eax,%es:(%rdi)
17755 DB 170 ; stos %al,%es:(%rdi)
17756 DB 170 ; stos %al,%es:(%rdi)
17757 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
17758 DB 0,0 ; add %al,(%rax)
17759 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
17760 DB 0,0 ; add %al,(%rax)
17761 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
17762 DB 0,0 ; add %al,(%rax)
17763 DB 128,63,0 ; cmpb $0x0,(%rdi)
17764 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
17765 DB 63 ; (bad)
17766 DB 0,0 ; add %al,(%rax)
17767 DB 128,63,85 ; cmpb $0x55,(%rdi)
17768 DB 85 ; push %rbp
17769 DB 149 ; xchg %eax,%ebp
17770 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
17771 DB 85 ; push %rbp
17772 DB 85 ; push %rbp
17773 DB 149 ; xchg %eax,%ebp
17774 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
17775 DB 0,0 ; add %al,(%rax)
17776 DB 192,63,0 ; sarb $0x0,(%rdi)
17777 DB 0,192 ; add %al,%al
17778 DB 63 ; (bad)
17779 DB 0,0 ; add %al,(%rax)
17780 DB 192,63,0 ; sarb $0x0,(%rdi)
17781 DB 0,192 ; add %al,%al
17782 DB 63 ; (bad)
17783 DB 0,0 ; add %al,(%rax)
17784 DB 0,63 ; add %bh,(%rdi)
17785 DB 0,0 ; add %al,(%rax)
17786 DB 0,63 ; add %bh,(%rdi)
17787 DB 0,0 ; add %al,(%rax)
17788 DB 0,63 ; add %bh,(%rdi)
17789 DB 0,0 ; add %al,(%rax)
17790 DB 0,63 ; add %bh,(%rdi)
17791 DB 57,142,99,61,57,142 ; cmp %ecx,-0x71c6c29d(%rsi)
Mike Klein8ca33562017-05-23 08:07:43 -040017792 DB 99,61,57,142,99,61 ; movslq 0x3d638e39(%rip),%edi # 3d63e7a5 <_sk_callback_sse41+0x3d639fa0>
Mike Kleinfe560a82017-05-01 12:56:35 -040017793 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
17794 DB 0,63 ; add %bh,(%rdi)
17795 DB 0,0 ; add %al,(%rax)
17796 DB 0,63 ; add %bh,(%rdi)
17797 DB 0,0 ; add %al,(%rax)
17798 DB 0,63 ; add %bh,(%rdi)
17799 DB 0,0 ; add %al,(%rax)
17800 DB 0,63 ; add %bh,(%rdi)
17801 DB 85 ; push %rbp
17802 DB 85 ; push %rbp
17803 DB 149 ; xchg %eax,%ebp
17804 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
17805 DB 85 ; push %rbp
17806 DB 85 ; push %rbp
17807 DB 149 ; xchg %eax,%ebp
17808 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
17809 DB 0,0 ; add %al,(%rax)
17810 DB 192,63,0 ; sarb $0x0,(%rdi)
17811 DB 0,192 ; add %al,%al
17812 DB 63 ; (bad)
17813 DB 0,0 ; add %al,(%rax)
17814 DB 192,63,0 ; sarb $0x0,(%rdi)
17815 DB 0,192 ; add %al,%al
17816 DB 63 ; (bad)
17817 DB 57,142,99,61,57,142 ; cmp %ecx,-0x71c6c29d(%rsi)
Mike Klein8ca33562017-05-23 08:07:43 -040017818 DB 99,61,57,142,99,61 ; movslq 0x3d638e39(%rip),%edi # 3d63e7e5 <_sk_callback_sse41+0x3d639fe0>
Mike Kleinfe560a82017-05-01 12:56:35 -040017819 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
17820 DB 192,63,0 ; sarb $0x0,(%rdi)
17821 DB 0,192 ; add %al,%al
17822 DB 63 ; (bad)
17823 DB 0,0 ; add %al,(%rax)
17824 DB 192,63,0 ; sarb $0x0,(%rdi)
17825 DB 0,192 ; add %al,%al
17826 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017827 DB 114,28 ; jb 59de <.literal16+0x112e>
Mike Kleinfe560a82017-05-01 12:56:35 -040017828 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017829 DB 62,114,28 ; jb,pt 59e2 <_sk_callback_sse41+0x11dd>
Mike Kleinfe560a82017-05-01 12:56:35 -040017830 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017831 DB 62,114,28 ; jb,pt 59e6 <_sk_callback_sse41+0x11e1>
Mike Kleinfe560a82017-05-01 12:56:35 -040017832 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040017833 DB 62,114,28 ; jb,pt 59ea <_sk_callback_sse41+0x11e5>
Mike Kleinfe560a82017-05-01 12:56:35 -040017834 DB 199 ; (bad)
17835 DB 62,171 ; ds stos %eax,%es:(%rdi)
17836 DB 170 ; stos %al,%es:(%rdi)
17837 DB 170 ; stos %al,%es:(%rdi)
17838 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
17839 DB 171 ; stos %eax,%es:(%rdi)
17840 DB 170 ; stos %al,%es:(%rdi)
17841 DB 170 ; stos %al,%es:(%rdi)
17842 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
Mike Klein67e61712017-04-26 09:52:09 -040017843ALIGN 32
Mike Klein2229b572017-04-21 10:30:29 -040017844
Mike Kleind7e06ae2017-03-29 16:33:06 -040017845PUBLIC _sk_start_pipeline_sse2
17846_sk_start_pipeline_sse2 LABEL PROC
17847 DB 65,87 ; push %r15
17848 DB 65,86 ; push %r14
17849 DB 65,85 ; push %r13
17850 DB 65,84 ; push %r12
17851 DB 86 ; push %rsi
17852 DB 87 ; push %rdi
17853 DB 83 ; push %rbx
17854 DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp
17855 DB 68,15,41,188,36,144,0,0,0 ; movaps %xmm15,0x90(%rsp)
17856 DB 68,15,41,180,36,128,0,0,0 ; movaps %xmm14,0x80(%rsp)
17857 DB 68,15,41,108,36,112 ; movaps %xmm13,0x70(%rsp)
17858 DB 68,15,41,100,36,96 ; movaps %xmm12,0x60(%rsp)
17859 DB 68,15,41,92,36,80 ; movaps %xmm11,0x50(%rsp)
17860 DB 68,15,41,84,36,64 ; movaps %xmm10,0x40(%rsp)
17861 DB 68,15,41,76,36,48 ; movaps %xmm9,0x30(%rsp)
17862 DB 68,15,41,68,36,32 ; movaps %xmm8,0x20(%rsp)
17863 DB 15,41,124,36,16 ; movaps %xmm7,0x10(%rsp)
17864 DB 15,41,52,36 ; movaps %xmm6,(%rsp)
17865 DB 77,137,207 ; mov %r9,%r15
17866 DB 77,137,198 ; mov %r8,%r14
17867 DB 72,137,203 ; mov %rcx,%rbx
17868 DB 72,137,214 ; mov %rdx,%rsi
17869 DB 72,173 ; lods %ds:(%rsi),%rax
17870 DB 73,137,196 ; mov %rax,%r12
17871 DB 73,137,245 ; mov %rsi,%r13
17872 DB 72,141,67,4 ; lea 0x4(%rbx),%rax
17873 DB 76,57,248 ; cmp %r15,%rax
17874 DB 118,5 ; jbe 73 <_sk_start_pipeline_sse2+0x73>
17875 DB 72,137,216 ; mov %rbx,%rax
17876 DB 235,52 ; jmp a7 <_sk_start_pipeline_sse2+0xa7>
17877 DB 15,87,192 ; xorps %xmm0,%xmm0
17878 DB 15,87,201 ; xorps %xmm1,%xmm1
17879 DB 15,87,210 ; xorps %xmm2,%xmm2
17880 DB 15,87,219 ; xorps %xmm3,%xmm3
17881 DB 15,87,228 ; xorps %xmm4,%xmm4
17882 DB 15,87,237 ; xorps %xmm5,%xmm5
17883 DB 15,87,246 ; xorps %xmm6,%xmm6
17884 DB 15,87,255 ; xorps %xmm7,%xmm7
17885 DB 72,137,223 ; mov %rbx,%rdi
17886 DB 76,137,238 ; mov %r13,%rsi
17887 DB 76,137,242 ; mov %r14,%rdx
17888 DB 65,255,212 ; callq *%r12
17889 DB 72,141,67,4 ; lea 0x4(%rbx),%rax
17890 DB 72,131,195,8 ; add $0x8,%rbx
17891 DB 76,57,251 ; cmp %r15,%rbx
17892 DB 72,137,195 ; mov %rax,%rbx
17893 DB 118,204 ; jbe 73 <_sk_start_pipeline_sse2+0x73>
17894 DB 15,40,52,36 ; movaps (%rsp),%xmm6
17895 DB 15,40,124,36,16 ; movaps 0x10(%rsp),%xmm7
17896 DB 68,15,40,68,36,32 ; movaps 0x20(%rsp),%xmm8
17897 DB 68,15,40,76,36,48 ; movaps 0x30(%rsp),%xmm9
17898 DB 68,15,40,84,36,64 ; movaps 0x40(%rsp),%xmm10
17899 DB 68,15,40,92,36,80 ; movaps 0x50(%rsp),%xmm11
17900 DB 68,15,40,100,36,96 ; movaps 0x60(%rsp),%xmm12
17901 DB 68,15,40,108,36,112 ; movaps 0x70(%rsp),%xmm13
17902 DB 68,15,40,180,36,128,0,0,0 ; movaps 0x80(%rsp),%xmm14
17903 DB 68,15,40,188,36,144,0,0,0 ; movaps 0x90(%rsp),%xmm15
17904 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp
17905 DB 91 ; pop %rbx
17906 DB 95 ; pop %rdi
17907 DB 94 ; pop %rsi
17908 DB 65,92 ; pop %r12
17909 DB 65,93 ; pop %r13
17910 DB 65,94 ; pop %r14
17911 DB 65,95 ; pop %r15
17912 DB 195 ; retq
17913
17914PUBLIC _sk_just_return_sse2
17915_sk_just_return_sse2 LABEL PROC
17916 DB 195 ; retq
17917
17918PUBLIC _sk_seed_shader_sse2
17919_sk_seed_shader_sse2 LABEL PROC
17920 DB 72,173 ; lods %ds:(%rsi),%rax
17921 DB 102,15,110,199 ; movd %edi,%xmm0
17922 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0
17923 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040017924 DB 15,40,21,65,76,0,0 ; movaps 0x4c41(%rip),%xmm2 # 4d50 <_sk_callback_sse2+0xba>
Mike Kleind7e06ae2017-03-29 16:33:06 -040017925 DB 15,88,202 ; addps %xmm2,%xmm1
17926 DB 15,16,2 ; movups (%rdx),%xmm0
17927 DB 15,88,193 ; addps %xmm1,%xmm0
17928 DB 102,15,110,8 ; movd (%rax),%xmm1
17929 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1
17930 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
17931 DB 15,88,202 ; addps %xmm2,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040017932 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040017933 DB 15,40,21,48,76,0,0 ; movaps 0x4c30(%rip),%xmm2 # 4d60 <_sk_callback_sse2+0xca>
Mike Kleind7e06ae2017-03-29 16:33:06 -040017934 DB 15,87,219 ; xorps %xmm3,%xmm3
17935 DB 15,87,228 ; xorps %xmm4,%xmm4
17936 DB 15,87,237 ; xorps %xmm5,%xmm5
17937 DB 15,87,246 ; xorps %xmm6,%xmm6
17938 DB 15,87,255 ; xorps %xmm7,%xmm7
17939 DB 255,224 ; jmpq *%rax
17940
Mike Klein581e6982017-05-03 13:05:13 -040017941PUBLIC _sk_dither_sse2
17942_sk_dither_sse2 LABEL PROC
17943 DB 72,173 ; lods %ds:(%rsi),%rax
17944 DB 102,68,15,110,199 ; movd %edi,%xmm8
17945 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
Mike Klein5d7f2b52017-05-20 13:21:59 -040017946 DB 243,68,15,111,74,32 ; movdqu 0x20(%rdx),%xmm9
17947 DB 102,69,15,254,200 ; paddd %xmm8,%xmm9
Mike Klein581e6982017-05-03 13:05:13 -040017948 DB 72,139,8 ; mov (%rax),%rcx
17949 DB 102,68,15,110,1 ; movd (%rcx),%xmm8
17950 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
17951 DB 102,69,15,239,193 ; pxor %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040017952 DB 102,68,15,111,21,251,75,0,0 ; movdqa 0x4bfb(%rip),%xmm10 # 4d70 <_sk_callback_sse2+0xda>
Mike Klein581e6982017-05-03 13:05:13 -040017953 DB 102,69,15,111,216 ; movdqa %xmm8,%xmm11
17954 DB 102,69,15,219,218 ; pand %xmm10,%xmm11
17955 DB 102,65,15,114,243,5 ; pslld $0x5,%xmm11
17956 DB 102,69,15,219,209 ; pand %xmm9,%xmm10
17957 DB 102,65,15,114,242,4 ; pslld $0x4,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040017958 DB 102,68,15,111,37,231,75,0,0 ; movdqa 0x4be7(%rip),%xmm12 # 4d80 <_sk_callback_sse2+0xea>
17959 DB 102,68,15,111,45,238,75,0,0 ; movdqa 0x4bee(%rip),%xmm13 # 4d90 <_sk_callback_sse2+0xfa>
Mike Klein581e6982017-05-03 13:05:13 -040017960 DB 102,69,15,111,240 ; movdqa %xmm8,%xmm14
17961 DB 102,69,15,219,245 ; pand %xmm13,%xmm14
17962 DB 102,65,15,114,246,2 ; pslld $0x2,%xmm14
17963 DB 102,69,15,219,233 ; pand %xmm9,%xmm13
17964 DB 102,69,15,254,237 ; paddd %xmm13,%xmm13
17965 DB 102,69,15,219,196 ; pand %xmm12,%xmm8
17966 DB 102,65,15,114,208,1 ; psrld $0x1,%xmm8
17967 DB 102,69,15,219,204 ; pand %xmm12,%xmm9
17968 DB 102,65,15,114,209,2 ; psrld $0x2,%xmm9
17969 DB 102,69,15,235,234 ; por %xmm10,%xmm13
17970 DB 102,69,15,235,233 ; por %xmm9,%xmm13
Mike Klein5d7f2b52017-05-20 13:21:59 -040017971 DB 102,69,15,235,235 ; por %xmm11,%xmm13
17972 DB 102,69,15,235,198 ; por %xmm14,%xmm8
17973 DB 102,69,15,235,197 ; por %xmm13,%xmm8
17974 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040017975 DB 68,15,89,5,169,75,0,0 ; mulps 0x4ba9(%rip),%xmm8 # 4da0 <_sk_callback_sse2+0x10a>
17976 DB 68,15,88,5,177,75,0,0 ; addps 0x4bb1(%rip),%xmm8 # 4db0 <_sk_callback_sse2+0x11a>
Mike Klein7e68bc92017-05-16 12:03:15 -040017977 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
17978 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
17979 DB 69,15,89,208 ; mulps %xmm8,%xmm10
17980 DB 65,15,88,194 ; addps %xmm10,%xmm0
17981 DB 65,15,88,202 ; addps %xmm10,%xmm1
17982 DB 68,15,88,210 ; addps %xmm2,%xmm10
17983 DB 15,93,195 ; minps %xmm3,%xmm0
17984 DB 15,87,210 ; xorps %xmm2,%xmm2
17985 DB 69,15,87,192 ; xorps %xmm8,%xmm8
17986 DB 68,15,95,192 ; maxps %xmm0,%xmm8
17987 DB 15,93,203 ; minps %xmm3,%xmm1
17988 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9
17989 DB 68,15,95,201 ; maxps %xmm1,%xmm9
17990 DB 68,15,93,211 ; minps %xmm3,%xmm10
17991 DB 65,15,95,210 ; maxps %xmm10,%xmm2
Mike Klein581e6982017-05-03 13:05:13 -040017992 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein7e68bc92017-05-16 12:03:15 -040017993 DB 65,15,40,192 ; movaps %xmm8,%xmm0
17994 DB 65,15,40,201 ; movaps %xmm9,%xmm1
Mike Klein581e6982017-05-03 13:05:13 -040017995 DB 255,224 ; jmpq *%rax
17996
Mike Kleind7e06ae2017-03-29 16:33:06 -040017997PUBLIC _sk_constant_color_sse2
17998_sk_constant_color_sse2 LABEL PROC
17999 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8a823fa2017-04-05 17:29:26 -040018000 DB 243,15,16,0 ; movss (%rax),%xmm0
18001 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040018002 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
Mike Klein8a823fa2017-04-05 17:29:26 -040018003 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
18004 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
18005 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
18006 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3
18007 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040018008 DB 72,173 ; lods %ds:(%rsi),%rax
18009 DB 255,224 ; jmpq *%rax
18010
Mike Reed9959f722017-05-15 09:34:22 -040018011PUBLIC _sk_load_rgba_sse2
18012_sk_load_rgba_sse2 LABEL PROC
18013 DB 72,173 ; lods %ds:(%rsi),%rax
18014 DB 15,16,0 ; movups (%rax),%xmm0
18015 DB 15,16,72,16 ; movups 0x10(%rax),%xmm1
18016 DB 15,16,80,32 ; movups 0x20(%rax),%xmm2
18017 DB 15,16,88,48 ; movups 0x30(%rax),%xmm3
18018 DB 72,173 ; lods %ds:(%rsi),%rax
18019 DB 255,224 ; jmpq *%rax
18020
18021PUBLIC _sk_store_rgba_sse2
18022_sk_store_rgba_sse2 LABEL PROC
18023 DB 72,173 ; lods %ds:(%rsi),%rax
18024 DB 15,17,0 ; movups %xmm0,(%rax)
18025 DB 15,17,72,16 ; movups %xmm1,0x10(%rax)
18026 DB 15,17,80,32 ; movups %xmm2,0x20(%rax)
18027 DB 15,17,88,48 ; movups %xmm3,0x30(%rax)
18028 DB 72,173 ; lods %ds:(%rsi),%rax
18029 DB 255,224 ; jmpq *%rax
18030
Mike Kleind7e06ae2017-03-29 16:33:06 -040018031PUBLIC _sk_clear_sse2
18032_sk_clear_sse2 LABEL PROC
18033 DB 72,173 ; lods %ds:(%rsi),%rax
18034 DB 15,87,192 ; xorps %xmm0,%xmm0
18035 DB 15,87,201 ; xorps %xmm1,%xmm1
18036 DB 15,87,210 ; xorps %xmm2,%xmm2
18037 DB 15,87,219 ; xorps %xmm3,%xmm3
18038 DB 255,224 ; jmpq *%rax
18039
Mike Kleinaaca1e42017-03-31 09:29:01 -040018040PUBLIC _sk_srcatop_sse2
18041_sk_srcatop_sse2 LABEL PROC
18042 DB 15,89,199 ; mulps %xmm7,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040018043 DB 68,15,40,5,10,75,0,0 ; movaps 0x4b0a(%rip),%xmm8 # 4dc0 <_sk_callback_sse2+0x12a>
Mike Kleinaaca1e42017-03-31 09:29:01 -040018044 DB 68,15,92,195 ; subps %xmm3,%xmm8
18045 DB 69,15,40,200 ; movaps %xmm8,%xmm9
18046 DB 68,15,89,204 ; mulps %xmm4,%xmm9
18047 DB 65,15,88,193 ; addps %xmm9,%xmm0
18048 DB 15,89,207 ; mulps %xmm7,%xmm1
18049 DB 69,15,40,200 ; movaps %xmm8,%xmm9
18050 DB 68,15,89,205 ; mulps %xmm5,%xmm9
18051 DB 65,15,88,201 ; addps %xmm9,%xmm1
18052 DB 15,89,215 ; mulps %xmm7,%xmm2
18053 DB 69,15,40,200 ; movaps %xmm8,%xmm9
18054 DB 68,15,89,206 ; mulps %xmm6,%xmm9
18055 DB 65,15,88,209 ; addps %xmm9,%xmm2
18056 DB 15,89,223 ; mulps %xmm7,%xmm3
18057 DB 68,15,89,199 ; mulps %xmm7,%xmm8
18058 DB 65,15,88,216 ; addps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040018059 DB 72,173 ; lods %ds:(%rsi),%rax
18060 DB 255,224 ; jmpq *%rax
18061
Mike Kleinaaca1e42017-03-31 09:29:01 -040018062PUBLIC _sk_dstatop_sse2
18063_sk_dstatop_sse2 LABEL PROC
18064 DB 68,15,40,195 ; movaps %xmm3,%xmm8
18065 DB 68,15,89,196 ; mulps %xmm4,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040018066 DB 68,15,40,13,205,74,0,0 ; movaps 0x4acd(%rip),%xmm9 # 4dd0 <_sk_callback_sse2+0x13a>
Mike Kleinaaca1e42017-03-31 09:29:01 -040018067 DB 68,15,92,207 ; subps %xmm7,%xmm9
18068 DB 65,15,89,193 ; mulps %xmm9,%xmm0
18069 DB 65,15,88,192 ; addps %xmm8,%xmm0
18070 DB 68,15,40,195 ; movaps %xmm3,%xmm8
18071 DB 68,15,89,197 ; mulps %xmm5,%xmm8
18072 DB 65,15,89,201 ; mulps %xmm9,%xmm1
18073 DB 65,15,88,200 ; addps %xmm8,%xmm1
18074 DB 68,15,40,195 ; movaps %xmm3,%xmm8
18075 DB 68,15,89,198 ; mulps %xmm6,%xmm8
18076 DB 65,15,89,209 ; mulps %xmm9,%xmm2
18077 DB 65,15,88,208 ; addps %xmm8,%xmm2
18078 DB 68,15,89,203 ; mulps %xmm3,%xmm9
18079 DB 15,89,223 ; mulps %xmm7,%xmm3
18080 DB 65,15,88,217 ; addps %xmm9,%xmm3
18081 DB 72,173 ; lods %ds:(%rsi),%rax
18082 DB 255,224 ; jmpq *%rax
18083
18084PUBLIC _sk_srcin_sse2
18085_sk_srcin_sse2 LABEL PROC
18086 DB 15,89,199 ; mulps %xmm7,%xmm0
18087 DB 15,89,207 ; mulps %xmm7,%xmm1
18088 DB 15,89,215 ; mulps %xmm7,%xmm2
18089 DB 15,89,223 ; mulps %xmm7,%xmm3
18090 DB 72,173 ; lods %ds:(%rsi),%rax
18091 DB 255,224 ; jmpq *%rax
18092
18093PUBLIC _sk_dstin_sse2
18094_sk_dstin_sse2 LABEL PROC
18095 DB 15,40,195 ; movaps %xmm3,%xmm0
18096 DB 15,89,196 ; mulps %xmm4,%xmm0
18097 DB 15,40,203 ; movaps %xmm3,%xmm1
18098 DB 15,89,205 ; mulps %xmm5,%xmm1
18099 DB 15,40,211 ; movaps %xmm3,%xmm2
18100 DB 15,89,214 ; mulps %xmm6,%xmm2
18101 DB 15,89,223 ; mulps %xmm7,%xmm3
18102 DB 72,173 ; lods %ds:(%rsi),%rax
18103 DB 255,224 ; jmpq *%rax
18104
18105PUBLIC _sk_srcout_sse2
18106_sk_srcout_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040018107 DB 68,15,40,5,113,74,0,0 ; movaps 0x4a71(%rip),%xmm8 # 4de0 <_sk_callback_sse2+0x14a>
Mike Kleinaaca1e42017-03-31 09:29:01 -040018108 DB 68,15,92,199 ; subps %xmm7,%xmm8
18109 DB 65,15,89,192 ; mulps %xmm8,%xmm0
18110 DB 65,15,89,200 ; mulps %xmm8,%xmm1
18111 DB 65,15,89,208 ; mulps %xmm8,%xmm2
18112 DB 65,15,89,216 ; mulps %xmm8,%xmm3
18113 DB 72,173 ; lods %ds:(%rsi),%rax
18114 DB 255,224 ; jmpq *%rax
18115
18116PUBLIC _sk_dstout_sse2
18117_sk_dstout_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040018118 DB 68,15,40,5,97,74,0,0 ; movaps 0x4a61(%rip),%xmm8 # 4df0 <_sk_callback_sse2+0x15a>
Mike Kleinaaca1e42017-03-31 09:29:01 -040018119 DB 68,15,92,195 ; subps %xmm3,%xmm8
18120 DB 65,15,40,192 ; movaps %xmm8,%xmm0
18121 DB 15,89,196 ; mulps %xmm4,%xmm0
18122 DB 65,15,40,200 ; movaps %xmm8,%xmm1
18123 DB 15,89,205 ; mulps %xmm5,%xmm1
18124 DB 65,15,40,208 ; movaps %xmm8,%xmm2
18125 DB 15,89,214 ; mulps %xmm6,%xmm2
18126 DB 68,15,89,199 ; mulps %xmm7,%xmm8
18127 DB 72,173 ; lods %ds:(%rsi),%rax
18128 DB 65,15,40,216 ; movaps %xmm8,%xmm3
18129 DB 255,224 ; jmpq *%rax
18130
Mike Kleind7e06ae2017-03-29 16:33:06 -040018131PUBLIC _sk_srcover_sse2
18132_sk_srcover_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040018133 DB 68,15,40,5,68,74,0,0 ; movaps 0x4a44(%rip),%xmm8 # 4e00 <_sk_callback_sse2+0x16a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040018134 DB 68,15,92,195 ; subps %xmm3,%xmm8
18135 DB 69,15,40,200 ; movaps %xmm8,%xmm9
18136 DB 68,15,89,204 ; mulps %xmm4,%xmm9
18137 DB 65,15,88,193 ; addps %xmm9,%xmm0
18138 DB 69,15,40,200 ; movaps %xmm8,%xmm9
18139 DB 68,15,89,205 ; mulps %xmm5,%xmm9
18140 DB 65,15,88,201 ; addps %xmm9,%xmm1
18141 DB 69,15,40,200 ; movaps %xmm8,%xmm9
18142 DB 68,15,89,206 ; mulps %xmm6,%xmm9
18143 DB 65,15,88,209 ; addps %xmm9,%xmm2
18144 DB 68,15,89,199 ; mulps %xmm7,%xmm8
18145 DB 65,15,88,216 ; addps %xmm8,%xmm3
18146 DB 72,173 ; lods %ds:(%rsi),%rax
18147 DB 255,224 ; jmpq *%rax
18148
18149PUBLIC _sk_dstover_sse2
18150_sk_dstover_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040018151 DB 68,15,40,5,24,74,0,0 ; movaps 0x4a18(%rip),%xmm8 # 4e10 <_sk_callback_sse2+0x17a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040018152 DB 68,15,92,199 ; subps %xmm7,%xmm8
18153 DB 65,15,89,192 ; mulps %xmm8,%xmm0
18154 DB 15,88,196 ; addps %xmm4,%xmm0
18155 DB 65,15,89,200 ; mulps %xmm8,%xmm1
18156 DB 15,88,205 ; addps %xmm5,%xmm1
18157 DB 65,15,89,208 ; mulps %xmm8,%xmm2
18158 DB 15,88,214 ; addps %xmm6,%xmm2
18159 DB 65,15,89,216 ; mulps %xmm8,%xmm3
18160 DB 15,88,223 ; addps %xmm7,%xmm3
18161 DB 72,173 ; lods %ds:(%rsi),%rax
18162 DB 255,224 ; jmpq *%rax
18163
Mike Kleinaaca1e42017-03-31 09:29:01 -040018164PUBLIC _sk_modulate_sse2
18165_sk_modulate_sse2 LABEL PROC
18166 DB 15,89,196 ; mulps %xmm4,%xmm0
18167 DB 15,89,205 ; mulps %xmm5,%xmm1
18168 DB 15,89,214 ; mulps %xmm6,%xmm2
18169 DB 15,89,223 ; mulps %xmm7,%xmm3
18170 DB 72,173 ; lods %ds:(%rsi),%rax
18171 DB 255,224 ; jmpq *%rax
18172
18173PUBLIC _sk_multiply_sse2
18174_sk_multiply_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040018175 DB 68,15,40,5,236,73,0,0 ; movaps 0x49ec(%rip),%xmm8 # 4e20 <_sk_callback_sse2+0x18a>
Mike Kleinaaca1e42017-03-31 09:29:01 -040018176 DB 69,15,40,200 ; movaps %xmm8,%xmm9
18177 DB 68,15,92,207 ; subps %xmm7,%xmm9
18178 DB 69,15,40,209 ; movaps %xmm9,%xmm10
18179 DB 68,15,89,208 ; mulps %xmm0,%xmm10
18180 DB 68,15,92,195 ; subps %xmm3,%xmm8
18181 DB 69,15,40,216 ; movaps %xmm8,%xmm11
18182 DB 68,15,89,220 ; mulps %xmm4,%xmm11
18183 DB 69,15,88,218 ; addps %xmm10,%xmm11
18184 DB 15,89,196 ; mulps %xmm4,%xmm0
18185 DB 65,15,88,195 ; addps %xmm11,%xmm0
18186 DB 69,15,40,209 ; movaps %xmm9,%xmm10
18187 DB 68,15,89,209 ; mulps %xmm1,%xmm10
18188 DB 69,15,40,216 ; movaps %xmm8,%xmm11
18189 DB 68,15,89,221 ; mulps %xmm5,%xmm11
18190 DB 69,15,88,218 ; addps %xmm10,%xmm11
18191 DB 15,89,205 ; mulps %xmm5,%xmm1
18192 DB 65,15,88,203 ; addps %xmm11,%xmm1
18193 DB 69,15,40,209 ; movaps %xmm9,%xmm10
18194 DB 68,15,89,210 ; mulps %xmm2,%xmm10
18195 DB 69,15,40,216 ; movaps %xmm8,%xmm11
18196 DB 68,15,89,222 ; mulps %xmm6,%xmm11
18197 DB 69,15,88,218 ; addps %xmm10,%xmm11
18198 DB 15,89,214 ; mulps %xmm6,%xmm2
18199 DB 65,15,88,211 ; addps %xmm11,%xmm2
18200 DB 68,15,89,203 ; mulps %xmm3,%xmm9
18201 DB 68,15,89,199 ; mulps %xmm7,%xmm8
18202 DB 69,15,88,193 ; addps %xmm9,%xmm8
18203 DB 15,89,223 ; mulps %xmm7,%xmm3
18204 DB 65,15,88,216 ; addps %xmm8,%xmm3
18205 DB 72,173 ; lods %ds:(%rsi),%rax
18206 DB 255,224 ; jmpq *%rax
18207
18208PUBLIC _sk_plus__sse2
18209_sk_plus__sse2 LABEL PROC
18210 DB 15,88,196 ; addps %xmm4,%xmm0
18211 DB 15,88,205 ; addps %xmm5,%xmm1
18212 DB 15,88,214 ; addps %xmm6,%xmm2
18213 DB 15,88,223 ; addps %xmm7,%xmm3
18214 DB 72,173 ; lods %ds:(%rsi),%rax
18215 DB 255,224 ; jmpq *%rax
18216
18217PUBLIC _sk_screen_sse2
18218_sk_screen_sse2 LABEL PROC
18219 DB 68,15,40,192 ; movaps %xmm0,%xmm8
18220 DB 68,15,88,196 ; addps %xmm4,%xmm8
18221 DB 15,89,196 ; mulps %xmm4,%xmm0
18222 DB 68,15,92,192 ; subps %xmm0,%xmm8
18223 DB 68,15,40,201 ; movaps %xmm1,%xmm9
18224 DB 68,15,88,205 ; addps %xmm5,%xmm9
18225 DB 15,89,205 ; mulps %xmm5,%xmm1
18226 DB 68,15,92,201 ; subps %xmm1,%xmm9
18227 DB 68,15,40,210 ; movaps %xmm2,%xmm10
18228 DB 68,15,88,214 ; addps %xmm6,%xmm10
18229 DB 15,89,214 ; mulps %xmm6,%xmm2
18230 DB 68,15,92,210 ; subps %xmm2,%xmm10
18231 DB 68,15,40,219 ; movaps %xmm3,%xmm11
18232 DB 68,15,88,223 ; addps %xmm7,%xmm11
18233 DB 15,89,223 ; mulps %xmm7,%xmm3
18234 DB 68,15,92,219 ; subps %xmm3,%xmm11
18235 DB 72,173 ; lods %ds:(%rsi),%rax
18236 DB 65,15,40,192 ; movaps %xmm8,%xmm0
18237 DB 65,15,40,201 ; movaps %xmm9,%xmm1
18238 DB 65,15,40,210 ; movaps %xmm10,%xmm2
18239 DB 65,15,40,219 ; movaps %xmm11,%xmm3
18240 DB 255,224 ; jmpq *%rax
18241
18242PUBLIC _sk_xor__sse2
18243_sk_xor__sse2 LABEL PROC
18244 DB 68,15,40,195 ; movaps %xmm3,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040018245 DB 15,40,29,29,73,0,0 ; movaps 0x491d(%rip),%xmm3 # 4e30 <_sk_callback_sse2+0x19a>
Mike Kleinaaca1e42017-03-31 09:29:01 -040018246 DB 68,15,40,203 ; movaps %xmm3,%xmm9
18247 DB 68,15,92,207 ; subps %xmm7,%xmm9
18248 DB 65,15,89,193 ; mulps %xmm9,%xmm0
18249 DB 65,15,92,216 ; subps %xmm8,%xmm3
18250 DB 68,15,40,211 ; movaps %xmm3,%xmm10
18251 DB 68,15,89,212 ; mulps %xmm4,%xmm10
18252 DB 65,15,88,194 ; addps %xmm10,%xmm0
18253 DB 65,15,89,201 ; mulps %xmm9,%xmm1
18254 DB 68,15,40,211 ; movaps %xmm3,%xmm10
18255 DB 68,15,89,213 ; mulps %xmm5,%xmm10
18256 DB 65,15,88,202 ; addps %xmm10,%xmm1
18257 DB 65,15,89,209 ; mulps %xmm9,%xmm2
18258 DB 68,15,40,211 ; movaps %xmm3,%xmm10
18259 DB 68,15,89,214 ; mulps %xmm6,%xmm10
18260 DB 65,15,88,210 ; addps %xmm10,%xmm2
18261 DB 69,15,89,200 ; mulps %xmm8,%xmm9
18262 DB 15,89,223 ; mulps %xmm7,%xmm3
18263 DB 65,15,88,217 ; addps %xmm9,%xmm3
18264 DB 72,173 ; lods %ds:(%rsi),%rax
18265 DB 255,224 ; jmpq *%rax
18266
Mike Klein66b09ab2017-03-31 10:29:40 -040018267PUBLIC _sk_darken_sse2
18268_sk_darken_sse2 LABEL PROC
18269 DB 68,15,40,193 ; movaps %xmm1,%xmm8
18270 DB 68,15,40,200 ; movaps %xmm0,%xmm9
18271 DB 15,88,196 ; addps %xmm4,%xmm0
18272 DB 68,15,89,207 ; mulps %xmm7,%xmm9
18273 DB 15,40,203 ; movaps %xmm3,%xmm1
18274 DB 15,89,204 ; mulps %xmm4,%xmm1
18275 DB 68,15,95,201 ; maxps %xmm1,%xmm9
18276 DB 65,15,92,193 ; subps %xmm9,%xmm0
18277 DB 65,15,40,200 ; movaps %xmm8,%xmm1
18278 DB 15,88,205 ; addps %xmm5,%xmm1
18279 DB 68,15,89,199 ; mulps %xmm7,%xmm8
18280 DB 68,15,40,203 ; movaps %xmm3,%xmm9
18281 DB 68,15,89,205 ; mulps %xmm5,%xmm9
18282 DB 69,15,95,193 ; maxps %xmm9,%xmm8
18283 DB 65,15,92,200 ; subps %xmm8,%xmm1
18284 DB 68,15,40,194 ; movaps %xmm2,%xmm8
18285 DB 68,15,88,198 ; addps %xmm6,%xmm8
18286 DB 15,89,215 ; mulps %xmm7,%xmm2
18287 DB 68,15,40,203 ; movaps %xmm3,%xmm9
18288 DB 68,15,89,206 ; mulps %xmm6,%xmm9
18289 DB 65,15,95,209 ; maxps %xmm9,%xmm2
18290 DB 68,15,92,194 ; subps %xmm2,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040018291 DB 15,40,21,136,72,0,0 ; movaps 0x4888(%rip),%xmm2 # 4e40 <_sk_callback_sse2+0x1aa>
Mike Klein66b09ab2017-03-31 10:29:40 -040018292 DB 15,92,211 ; subps %xmm3,%xmm2
18293 DB 15,89,215 ; mulps %xmm7,%xmm2
18294 DB 15,88,218 ; addps %xmm2,%xmm3
18295 DB 72,173 ; lods %ds:(%rsi),%rax
18296 DB 65,15,40,208 ; movaps %xmm8,%xmm2
18297 DB 255,224 ; jmpq *%rax
18298
18299PUBLIC _sk_lighten_sse2
18300_sk_lighten_sse2 LABEL PROC
18301 DB 68,15,40,193 ; movaps %xmm1,%xmm8
18302 DB 68,15,40,200 ; movaps %xmm0,%xmm9
18303 DB 15,88,196 ; addps %xmm4,%xmm0
18304 DB 68,15,89,207 ; mulps %xmm7,%xmm9
18305 DB 15,40,203 ; movaps %xmm3,%xmm1
18306 DB 15,89,204 ; mulps %xmm4,%xmm1
18307 DB 68,15,93,201 ; minps %xmm1,%xmm9
18308 DB 65,15,92,193 ; subps %xmm9,%xmm0
18309 DB 65,15,40,200 ; movaps %xmm8,%xmm1
18310 DB 15,88,205 ; addps %xmm5,%xmm1
18311 DB 68,15,89,199 ; mulps %xmm7,%xmm8
18312 DB 68,15,40,203 ; movaps %xmm3,%xmm9
18313 DB 68,15,89,205 ; mulps %xmm5,%xmm9
18314 DB 69,15,93,193 ; minps %xmm9,%xmm8
18315 DB 65,15,92,200 ; subps %xmm8,%xmm1
18316 DB 68,15,40,194 ; movaps %xmm2,%xmm8
18317 DB 68,15,88,198 ; addps %xmm6,%xmm8
18318 DB 15,89,215 ; mulps %xmm7,%xmm2
18319 DB 68,15,40,203 ; movaps %xmm3,%xmm9
18320 DB 68,15,89,206 ; mulps %xmm6,%xmm9
18321 DB 65,15,93,209 ; minps %xmm9,%xmm2
18322 DB 68,15,92,194 ; subps %xmm2,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040018323 DB 15,40,21,45,72,0,0 ; movaps 0x482d(%rip),%xmm2 # 4e50 <_sk_callback_sse2+0x1ba>
Mike Klein66b09ab2017-03-31 10:29:40 -040018324 DB 15,92,211 ; subps %xmm3,%xmm2
18325 DB 15,89,215 ; mulps %xmm7,%xmm2
18326 DB 15,88,218 ; addps %xmm2,%xmm3
18327 DB 72,173 ; lods %ds:(%rsi),%rax
18328 DB 65,15,40,208 ; movaps %xmm8,%xmm2
18329 DB 255,224 ; jmpq *%rax
18330
18331PUBLIC _sk_difference_sse2
18332_sk_difference_sse2 LABEL PROC
18333 DB 68,15,40,193 ; movaps %xmm1,%xmm8
18334 DB 68,15,40,200 ; movaps %xmm0,%xmm9
18335 DB 15,88,196 ; addps %xmm4,%xmm0
18336 DB 68,15,89,207 ; mulps %xmm7,%xmm9
18337 DB 15,40,203 ; movaps %xmm3,%xmm1
18338 DB 15,89,204 ; mulps %xmm4,%xmm1
18339 DB 68,15,93,201 ; minps %xmm1,%xmm9
18340 DB 69,15,88,201 ; addps %xmm9,%xmm9
18341 DB 65,15,92,193 ; subps %xmm9,%xmm0
18342 DB 65,15,40,200 ; movaps %xmm8,%xmm1
18343 DB 15,88,205 ; addps %xmm5,%xmm1
18344 DB 68,15,89,199 ; mulps %xmm7,%xmm8
18345 DB 68,15,40,203 ; movaps %xmm3,%xmm9
18346 DB 68,15,89,205 ; mulps %xmm5,%xmm9
18347 DB 69,15,93,193 ; minps %xmm9,%xmm8
18348 DB 69,15,88,192 ; addps %xmm8,%xmm8
18349 DB 65,15,92,200 ; subps %xmm8,%xmm1
18350 DB 68,15,40,194 ; movaps %xmm2,%xmm8
18351 DB 68,15,88,198 ; addps %xmm6,%xmm8
18352 DB 15,89,215 ; mulps %xmm7,%xmm2
18353 DB 68,15,40,203 ; movaps %xmm3,%xmm9
18354 DB 68,15,89,206 ; mulps %xmm6,%xmm9
18355 DB 65,15,93,209 ; minps %xmm9,%xmm2
18356 DB 15,88,210 ; addps %xmm2,%xmm2
18357 DB 68,15,92,194 ; subps %xmm2,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040018358 DB 15,40,21,199,71,0,0 ; movaps 0x47c7(%rip),%xmm2 # 4e60 <_sk_callback_sse2+0x1ca>
Mike Klein66b09ab2017-03-31 10:29:40 -040018359 DB 15,92,211 ; subps %xmm3,%xmm2
18360 DB 15,89,215 ; mulps %xmm7,%xmm2
18361 DB 15,88,218 ; addps %xmm2,%xmm3
18362 DB 72,173 ; lods %ds:(%rsi),%rax
18363 DB 65,15,40,208 ; movaps %xmm8,%xmm2
18364 DB 255,224 ; jmpq *%rax
18365
18366PUBLIC _sk_exclusion_sse2
18367_sk_exclusion_sse2 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040018368 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Klein66b09ab2017-03-31 10:29:40 -040018369 DB 15,88,196 ; addps %xmm4,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040018370 DB 68,15,89,196 ; mulps %xmm4,%xmm8
Mike Klein66b09ab2017-03-31 10:29:40 -040018371 DB 69,15,88,192 ; addps %xmm8,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040018372 DB 65,15,92,192 ; subps %xmm8,%xmm0
18373 DB 68,15,40,193 ; movaps %xmm1,%xmm8
18374 DB 68,15,88,197 ; addps %xmm5,%xmm8
18375 DB 15,89,205 ; mulps %xmm5,%xmm1
18376 DB 15,88,201 ; addps %xmm1,%xmm1
18377 DB 68,15,92,193 ; subps %xmm1,%xmm8
18378 DB 68,15,40,202 ; movaps %xmm2,%xmm9
18379 DB 68,15,88,206 ; addps %xmm6,%xmm9
Mike Klein66b09ab2017-03-31 10:29:40 -040018380 DB 15,89,214 ; mulps %xmm6,%xmm2
18381 DB 15,88,210 ; addps %xmm2,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040018382 DB 68,15,92,202 ; subps %xmm2,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040018383 DB 15,40,13,136,71,0,0 ; movaps 0x4788(%rip),%xmm1 # 4e70 <_sk_callback_sse2+0x1da>
Mike Kleinfe560a82017-05-01 12:56:35 -040018384 DB 15,92,203 ; subps %xmm3,%xmm1
18385 DB 15,89,207 ; mulps %xmm7,%xmm1
18386 DB 15,88,217 ; addps %xmm1,%xmm3
Mike Klein66b09ab2017-03-31 10:29:40 -040018387 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040018388 DB 65,15,40,200 ; movaps %xmm8,%xmm1
18389 DB 65,15,40,209 ; movaps %xmm9,%xmm2
Mike Klein66b09ab2017-03-31 10:29:40 -040018390 DB 255,224 ; jmpq *%rax
18391
Mike Klein61b84162017-03-31 11:48:14 -040018392PUBLIC _sk_colorburn_sse2
18393_sk_colorburn_sse2 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040018394 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040018395 DB 68,15,40,21,119,71,0,0 ; movaps 0x4777(%rip),%xmm10 # 4e80 <_sk_callback_sse2+0x1ea>
Mike Kleinfe560a82017-05-01 12:56:35 -040018396 DB 69,15,40,202 ; movaps %xmm10,%xmm9
18397 DB 68,15,92,207 ; subps %xmm7,%xmm9
Mike Klein61b84162017-03-31 11:48:14 -040018398 DB 69,15,40,217 ; movaps %xmm9,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -040018399 DB 69,15,89,216 ; mulps %xmm8,%xmm11
18400 DB 15,40,199 ; movaps %xmm7,%xmm0
18401 DB 15,92,196 ; subps %xmm4,%xmm0
18402 DB 15,89,195 ; mulps %xmm3,%xmm0
18403 DB 65,15,94,192 ; divps %xmm8,%xmm0
18404 DB 68,15,40,231 ; movaps %xmm7,%xmm12
18405 DB 68,15,93,224 ; minps %xmm0,%xmm12
Mike Klein61b84162017-03-31 11:48:14 -040018406 DB 68,15,40,239 ; movaps %xmm7,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040018407 DB 69,15,92,236 ; subps %xmm12,%xmm13
18408 DB 68,15,89,235 ; mulps %xmm3,%xmm13
18409 DB 69,15,88,235 ; addps %xmm11,%xmm13
18410 DB 65,15,40,195 ; movaps %xmm11,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040018411 DB 15,88,196 ; addps %xmm4,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040018412 DB 69,15,87,219 ; xorps %xmm11,%xmm11
18413 DB 69,15,40,224 ; movaps %xmm8,%xmm12
18414 DB 69,15,194,227,0 ; cmpeqps %xmm11,%xmm12
18415 DB 68,15,92,211 ; subps %xmm3,%xmm10
18416 DB 69,15,84,196 ; andps %xmm12,%xmm8
18417 DB 69,15,85,229 ; andnps %xmm13,%xmm12
18418 DB 69,15,40,234 ; movaps %xmm10,%xmm13
18419 DB 68,15,89,236 ; mulps %xmm4,%xmm13
18420 DB 69,15,86,224 ; orps %xmm8,%xmm12
18421 DB 68,15,40,196 ; movaps %xmm4,%xmm8
18422 DB 68,15,194,199,0 ; cmpeqps %xmm7,%xmm8
18423 DB 69,15,88,229 ; addps %xmm13,%xmm12
18424 DB 65,15,84,192 ; andps %xmm8,%xmm0
18425 DB 69,15,85,196 ; andnps %xmm12,%xmm8
18426 DB 65,15,86,192 ; orps %xmm8,%xmm0
18427 DB 69,15,40,193 ; movaps %xmm9,%xmm8
18428 DB 68,15,89,193 ; mulps %xmm1,%xmm8
Mike Klein61b84162017-03-31 11:48:14 -040018429 DB 68,15,40,231 ; movaps %xmm7,%xmm12
18430 DB 68,15,92,229 ; subps %xmm5,%xmm12
18431 DB 68,15,89,227 ; mulps %xmm3,%xmm12
Mike Kleinfe560a82017-05-01 12:56:35 -040018432 DB 68,15,94,225 ; divps %xmm1,%xmm12
Mike Klein61b84162017-03-31 11:48:14 -040018433 DB 68,15,40,239 ; movaps %xmm7,%xmm13
18434 DB 69,15,93,236 ; minps %xmm12,%xmm13
18435 DB 68,15,40,231 ; movaps %xmm7,%xmm12
18436 DB 69,15,92,229 ; subps %xmm13,%xmm12
Mike Kleinfe560a82017-05-01 12:56:35 -040018437 DB 68,15,40,233 ; movaps %xmm1,%xmm13
18438 DB 69,15,194,235,0 ; cmpeqps %xmm11,%xmm13
Mike Klein61b84162017-03-31 11:48:14 -040018439 DB 68,15,89,227 ; mulps %xmm3,%xmm12
Mike Kleinfe560a82017-05-01 12:56:35 -040018440 DB 69,15,88,224 ; addps %xmm8,%xmm12
18441 DB 65,15,84,205 ; andps %xmm13,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018442 DB 69,15,85,236 ; andnps %xmm12,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040018443 DB 68,15,88,197 ; addps %xmm5,%xmm8
18444 DB 68,15,86,233 ; orps %xmm1,%xmm13
18445 DB 65,15,40,202 ; movaps %xmm10,%xmm1
18446 DB 15,89,205 ; mulps %xmm5,%xmm1
18447 DB 68,15,88,233 ; addps %xmm1,%xmm13
18448 DB 15,40,205 ; movaps %xmm5,%xmm1
18449 DB 15,194,207,0 ; cmpeqps %xmm7,%xmm1
18450 DB 68,15,84,193 ; andps %xmm1,%xmm8
18451 DB 65,15,85,205 ; andnps %xmm13,%xmm1
18452 DB 68,15,86,193 ; orps %xmm1,%xmm8
18453 DB 15,40,207 ; movaps %xmm7,%xmm1
18454 DB 15,92,206 ; subps %xmm6,%xmm1
18455 DB 15,89,203 ; mulps %xmm3,%xmm1
18456 DB 15,94,202 ; divps %xmm2,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018457 DB 68,15,40,231 ; movaps %xmm7,%xmm12
Mike Kleinfe560a82017-05-01 12:56:35 -040018458 DB 68,15,93,225 ; minps %xmm1,%xmm12
18459 DB 15,40,207 ; movaps %xmm7,%xmm1
18460 DB 65,15,92,204 ; subps %xmm12,%xmm1
18461 DB 68,15,89,202 ; mulps %xmm2,%xmm9
18462 DB 68,15,194,218,0 ; cmpeqps %xmm2,%xmm11
18463 DB 15,89,203 ; mulps %xmm3,%xmm1
18464 DB 65,15,88,201 ; addps %xmm9,%xmm1
18465 DB 65,15,84,211 ; andps %xmm11,%xmm2
18466 DB 68,15,85,217 ; andnps %xmm1,%xmm11
18467 DB 68,15,88,206 ; addps %xmm6,%xmm9
18468 DB 68,15,86,218 ; orps %xmm2,%xmm11
18469 DB 65,15,40,202 ; movaps %xmm10,%xmm1
18470 DB 15,89,206 ; mulps %xmm6,%xmm1
18471 DB 68,15,88,217 ; addps %xmm1,%xmm11
18472 DB 15,40,206 ; movaps %xmm6,%xmm1
18473 DB 15,194,207,0 ; cmpeqps %xmm7,%xmm1
18474 DB 68,15,84,201 ; andps %xmm1,%xmm9
18475 DB 65,15,85,203 ; andnps %xmm11,%xmm1
18476 DB 68,15,86,201 ; orps %xmm1,%xmm9
18477 DB 68,15,89,215 ; mulps %xmm7,%xmm10
18478 DB 65,15,88,218 ; addps %xmm10,%xmm3
Mike Klein61b84162017-03-31 11:48:14 -040018479 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040018480 DB 65,15,40,200 ; movaps %xmm8,%xmm1
18481 DB 65,15,40,209 ; movaps %xmm9,%xmm2
Mike Klein61b84162017-03-31 11:48:14 -040018482 DB 255,224 ; jmpq *%rax
18483
18484PUBLIC _sk_colordodge_sse2
18485_sk_colordodge_sse2 LABEL PROC
18486 DB 68,15,40,200 ; movaps %xmm0,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040018487 DB 68,15,40,21,45,70,0,0 ; movaps 0x462d(%rip),%xmm10 # 4e90 <_sk_callback_sse2+0x1fa>
Mike Klein61b84162017-03-31 11:48:14 -040018488 DB 69,15,40,218 ; movaps %xmm10,%xmm11
18489 DB 68,15,92,223 ; subps %xmm7,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -040018490 DB 69,15,40,227 ; movaps %xmm11,%xmm12
18491 DB 69,15,89,225 ; mulps %xmm9,%xmm12
Mike Klein61b84162017-03-31 11:48:14 -040018492 DB 68,15,40,195 ; movaps %xmm3,%xmm8
18493 DB 68,15,89,196 ; mulps %xmm4,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040018494 DB 15,40,195 ; movaps %xmm3,%xmm0
18495 DB 65,15,92,193 ; subps %xmm9,%xmm0
18496 DB 68,15,94,192 ; divps %xmm0,%xmm8
Mike Klein61b84162017-03-31 11:48:14 -040018497 DB 68,15,40,239 ; movaps %xmm7,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040018498 DB 15,40,199 ; movaps %xmm7,%xmm0
18499 DB 65,15,93,192 ; minps %xmm8,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040018500 DB 69,15,40,241 ; movaps %xmm9,%xmm14
18501 DB 68,15,194,243,0 ; cmpeqps %xmm3,%xmm14
Mike Kleinfe560a82017-05-01 12:56:35 -040018502 DB 15,89,195 ; mulps %xmm3,%xmm0
18503 DB 65,15,88,196 ; addps %xmm12,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040018504 DB 69,15,84,206 ; andps %xmm14,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040018505 DB 68,15,85,240 ; andnps %xmm0,%xmm14
Mike Klein61b84162017-03-31 11:48:14 -040018506 DB 69,15,87,192 ; xorps %xmm8,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040018507 DB 65,15,40,196 ; movaps %xmm12,%xmm0
18508 DB 15,88,196 ; addps %xmm4,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040018509 DB 68,15,92,211 ; subps %xmm3,%xmm10
18510 DB 69,15,86,241 ; orps %xmm9,%xmm14
18511 DB 69,15,40,202 ; movaps %xmm10,%xmm9
18512 DB 68,15,89,204 ; mulps %xmm4,%xmm9
Mike Klein61b84162017-03-31 11:48:14 -040018513 DB 69,15,88,241 ; addps %xmm9,%xmm14
18514 DB 68,15,40,204 ; movaps %xmm4,%xmm9
18515 DB 69,15,194,200,0 ; cmpeqps %xmm8,%xmm9
18516 DB 65,15,84,193 ; andps %xmm9,%xmm0
18517 DB 69,15,85,206 ; andnps %xmm14,%xmm9
18518 DB 65,15,86,193 ; orps %xmm9,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040018519 DB 68,15,40,203 ; movaps %xmm3,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040018520 DB 68,15,89,205 ; mulps %xmm5,%xmm9
18521 DB 68,15,40,227 ; movaps %xmm3,%xmm12
18522 DB 68,15,92,225 ; subps %xmm1,%xmm12
18523 DB 69,15,94,204 ; divps %xmm12,%xmm9
18524 DB 69,15,40,227 ; movaps %xmm11,%xmm12
18525 DB 68,15,89,225 ; mulps %xmm1,%xmm12
18526 DB 69,15,93,233 ; minps %xmm9,%xmm13
18527 DB 68,15,40,241 ; movaps %xmm1,%xmm14
18528 DB 68,15,194,243,0 ; cmpeqps %xmm3,%xmm14
18529 DB 68,15,89,235 ; mulps %xmm3,%xmm13
18530 DB 69,15,88,236 ; addps %xmm12,%xmm13
18531 DB 65,15,84,206 ; andps %xmm14,%xmm1
18532 DB 69,15,85,245 ; andnps %xmm13,%xmm14
18533 DB 69,15,40,204 ; movaps %xmm12,%xmm9
18534 DB 68,15,88,205 ; addps %xmm5,%xmm9
18535 DB 68,15,86,241 ; orps %xmm1,%xmm14
Mike Klein61b84162017-03-31 11:48:14 -040018536 DB 65,15,40,202 ; movaps %xmm10,%xmm1
18537 DB 15,89,205 ; mulps %xmm5,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040018538 DB 68,15,88,241 ; addps %xmm1,%xmm14
Mike Klein61b84162017-03-31 11:48:14 -040018539 DB 15,40,205 ; movaps %xmm5,%xmm1
18540 DB 65,15,194,200,0 ; cmpeqps %xmm8,%xmm1
18541 DB 68,15,84,201 ; andps %xmm1,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040018542 DB 65,15,85,206 ; andnps %xmm14,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018543 DB 68,15,86,201 ; orps %xmm1,%xmm9
18544 DB 68,15,40,227 ; movaps %xmm3,%xmm12
18545 DB 68,15,89,230 ; mulps %xmm6,%xmm12
18546 DB 15,40,203 ; movaps %xmm3,%xmm1
18547 DB 15,92,202 ; subps %xmm2,%xmm1
18548 DB 68,15,94,225 ; divps %xmm1,%xmm12
18549 DB 68,15,40,239 ; movaps %xmm7,%xmm13
18550 DB 68,15,89,218 ; mulps %xmm2,%xmm11
18551 DB 69,15,93,236 ; minps %xmm12,%xmm13
18552 DB 15,40,202 ; movaps %xmm2,%xmm1
18553 DB 15,194,203,0 ; cmpeqps %xmm3,%xmm1
18554 DB 68,15,89,235 ; mulps %xmm3,%xmm13
18555 DB 69,15,88,235 ; addps %xmm11,%xmm13
18556 DB 15,84,209 ; andps %xmm1,%xmm2
18557 DB 65,15,85,205 ; andnps %xmm13,%xmm1
18558 DB 15,86,202 ; orps %xmm2,%xmm1
18559 DB 65,15,40,210 ; movaps %xmm10,%xmm2
18560 DB 15,89,214 ; mulps %xmm6,%xmm2
18561 DB 15,88,202 ; addps %xmm2,%xmm1
18562 DB 68,15,194,198,0 ; cmpeqps %xmm6,%xmm8
18563 DB 68,15,88,222 ; addps %xmm6,%xmm11
18564 DB 69,15,84,216 ; andps %xmm8,%xmm11
18565 DB 68,15,85,193 ; andnps %xmm1,%xmm8
18566 DB 69,15,86,195 ; orps %xmm11,%xmm8
18567 DB 68,15,89,215 ; mulps %xmm7,%xmm10
18568 DB 65,15,88,218 ; addps %xmm10,%xmm3
18569 DB 72,173 ; lods %ds:(%rsi),%rax
18570 DB 65,15,40,201 ; movaps %xmm9,%xmm1
18571 DB 65,15,40,208 ; movaps %xmm8,%xmm2
18572 DB 255,224 ; jmpq *%rax
18573
18574PUBLIC _sk_hardlight_sse2
18575_sk_hardlight_sse2 LABEL PROC
18576 DB 72,131,236,24 ; sub $0x18,%rsp
18577 DB 15,41,52,36 ; movaps %xmm6,(%rsp)
18578 DB 15,40,245 ; movaps %xmm5,%xmm6
18579 DB 15,40,236 ; movaps %xmm4,%xmm5
Mike Klein8ca33562017-05-23 08:07:43 -040018580 DB 68,15,40,29,223,68,0,0 ; movaps 0x44df(%rip),%xmm11 # 4ea0 <_sk_callback_sse2+0x20a>
Mike Klein61b84162017-03-31 11:48:14 -040018581 DB 69,15,40,211 ; movaps %xmm11,%xmm10
18582 DB 68,15,92,215 ; subps %xmm7,%xmm10
18583 DB 69,15,40,194 ; movaps %xmm10,%xmm8
18584 DB 68,15,89,192 ; mulps %xmm0,%xmm8
18585 DB 68,15,92,219 ; subps %xmm3,%xmm11
18586 DB 69,15,40,203 ; movaps %xmm11,%xmm9
18587 DB 68,15,89,205 ; mulps %xmm5,%xmm9
18588 DB 69,15,88,200 ; addps %xmm8,%xmm9
18589 DB 68,15,40,195 ; movaps %xmm3,%xmm8
18590 DB 68,15,92,192 ; subps %xmm0,%xmm8
18591 DB 15,40,227 ; movaps %xmm3,%xmm4
18592 DB 15,89,231 ; mulps %xmm7,%xmm4
18593 DB 68,15,40,239 ; movaps %xmm7,%xmm13
18594 DB 68,15,40,247 ; movaps %xmm7,%xmm14
18595 DB 68,15,40,255 ; movaps %xmm7,%xmm15
18596 DB 68,15,92,253 ; subps %xmm5,%xmm15
18597 DB 69,15,89,248 ; mulps %xmm8,%xmm15
18598 DB 69,15,88,255 ; addps %xmm15,%xmm15
18599 DB 68,15,40,228 ; movaps %xmm4,%xmm12
18600 DB 69,15,92,231 ; subps %xmm15,%xmm12
18601 DB 68,15,40,192 ; movaps %xmm0,%xmm8
18602 DB 69,15,88,192 ; addps %xmm8,%xmm8
18603 DB 68,15,194,195,2 ; cmpleps %xmm3,%xmm8
18604 DB 15,89,197 ; mulps %xmm5,%xmm0
18605 DB 15,88,192 ; addps %xmm0,%xmm0
18606 DB 65,15,84,192 ; andps %xmm8,%xmm0
18607 DB 69,15,85,196 ; andnps %xmm12,%xmm8
18608 DB 68,15,86,192 ; orps %xmm0,%xmm8
18609 DB 69,15,40,251 ; movaps %xmm11,%xmm15
18610 DB 69,15,40,227 ; movaps %xmm11,%xmm12
18611 DB 68,15,89,223 ; mulps %xmm7,%xmm11
18612 DB 69,15,88,193 ; addps %xmm9,%xmm8
18613 DB 65,15,40,194 ; movaps %xmm10,%xmm0
18614 DB 15,89,193 ; mulps %xmm1,%xmm0
18615 DB 68,15,89,254 ; mulps %xmm6,%xmm15
18616 DB 68,15,88,248 ; addps %xmm0,%xmm15
18617 DB 15,40,195 ; movaps %xmm3,%xmm0
18618 DB 15,92,193 ; subps %xmm1,%xmm0
18619 DB 68,15,92,238 ; subps %xmm6,%xmm13
18620 DB 68,15,89,232 ; mulps %xmm0,%xmm13
18621 DB 69,15,88,237 ; addps %xmm13,%xmm13
18622 DB 15,40,196 ; movaps %xmm4,%xmm0
18623 DB 65,15,92,197 ; subps %xmm13,%xmm0
18624 DB 68,15,40,201 ; movaps %xmm1,%xmm9
18625 DB 69,15,88,201 ; addps %xmm9,%xmm9
18626 DB 68,15,194,203,2 ; cmpleps %xmm3,%xmm9
18627 DB 15,89,206 ; mulps %xmm6,%xmm1
18628 DB 15,88,201 ; addps %xmm1,%xmm1
18629 DB 65,15,84,201 ; andps %xmm9,%xmm1
18630 DB 68,15,85,200 ; andnps %xmm0,%xmm9
18631 DB 68,15,86,201 ; orps %xmm1,%xmm9
18632 DB 69,15,88,207 ; addps %xmm15,%xmm9
18633 DB 68,15,89,210 ; mulps %xmm2,%xmm10
18634 DB 68,15,40,44,36 ; movaps (%rsp),%xmm13
18635 DB 69,15,89,229 ; mulps %xmm13,%xmm12
18636 DB 69,15,88,226 ; addps %xmm10,%xmm12
18637 DB 68,15,40,210 ; movaps %xmm2,%xmm10
18638 DB 69,15,88,210 ; addps %xmm10,%xmm10
18639 DB 68,15,194,211,2 ; cmpleps %xmm3,%xmm10
18640 DB 15,40,195 ; movaps %xmm3,%xmm0
18641 DB 15,92,194 ; subps %xmm2,%xmm0
18642 DB 65,15,89,213 ; mulps %xmm13,%xmm2
18643 DB 15,88,210 ; addps %xmm2,%xmm2
18644 DB 69,15,92,245 ; subps %xmm13,%xmm14
18645 DB 68,15,89,240 ; mulps %xmm0,%xmm14
18646 DB 69,15,88,246 ; addps %xmm14,%xmm14
18647 DB 65,15,92,230 ; subps %xmm14,%xmm4
18648 DB 65,15,84,210 ; andps %xmm10,%xmm2
18649 DB 68,15,85,212 ; andnps %xmm4,%xmm10
18650 DB 68,15,86,210 ; orps %xmm2,%xmm10
18651 DB 69,15,88,212 ; addps %xmm12,%xmm10
18652 DB 65,15,88,219 ; addps %xmm11,%xmm3
18653 DB 72,173 ; lods %ds:(%rsi),%rax
18654 DB 65,15,40,192 ; movaps %xmm8,%xmm0
18655 DB 65,15,40,201 ; movaps %xmm9,%xmm1
18656 DB 65,15,40,210 ; movaps %xmm10,%xmm2
18657 DB 15,40,229 ; movaps %xmm5,%xmm4
18658 DB 15,40,238 ; movaps %xmm6,%xmm5
18659 DB 65,15,40,245 ; movaps %xmm13,%xmm6
18660 DB 72,131,196,24 ; add $0x18,%rsp
18661 DB 255,224 ; jmpq *%rax
18662
18663PUBLIC _sk_overlay_sse2
18664_sk_overlay_sse2 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040018665 DB 68,15,40,193 ; movaps %xmm1,%xmm8
18666 DB 68,15,40,232 ; movaps %xmm0,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040018667 DB 68,15,40,13,170,67,0,0 ; movaps 0x43aa(%rip),%xmm9 # 4eb0 <_sk_callback_sse2+0x21a>
Mike Klein61b84162017-03-31 11:48:14 -040018668 DB 69,15,40,209 ; movaps %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040018669 DB 68,15,92,215 ; subps %xmm7,%xmm10
18670 DB 69,15,40,218 ; movaps %xmm10,%xmm11
18671 DB 69,15,89,221 ; mulps %xmm13,%xmm11
18672 DB 68,15,92,203 ; subps %xmm3,%xmm9
18673 DB 65,15,40,193 ; movaps %xmm9,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040018674 DB 15,89,196 ; mulps %xmm4,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040018675 DB 65,15,88,195 ; addps %xmm11,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040018676 DB 68,15,40,227 ; movaps %xmm3,%xmm12
18677 DB 69,15,92,229 ; subps %xmm13,%xmm12
18678 DB 68,15,89,236 ; mulps %xmm4,%xmm13
18679 DB 68,15,40,247 ; movaps %xmm7,%xmm14
18680 DB 68,15,92,244 ; subps %xmm4,%xmm14
18681 DB 15,40,204 ; movaps %xmm4,%xmm1
18682 DB 15,88,201 ; addps %xmm1,%xmm1
18683 DB 15,194,207,2 ; cmpleps %xmm7,%xmm1
18684 DB 69,15,88,237 ; addps %xmm13,%xmm13
Mike Klein61b84162017-03-31 11:48:14 -040018685 DB 68,15,40,219 ; movaps %xmm3,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -040018686 DB 68,15,89,223 ; mulps %xmm7,%xmm11
18687 DB 69,15,89,244 ; mulps %xmm12,%xmm14
18688 DB 69,15,88,246 ; addps %xmm14,%xmm14
18689 DB 69,15,40,227 ; movaps %xmm11,%xmm12
18690 DB 69,15,92,230 ; subps %xmm14,%xmm12
18691 DB 68,15,84,233 ; andps %xmm1,%xmm13
18692 DB 65,15,85,204 ; andnps %xmm12,%xmm1
18693 DB 65,15,86,205 ; orps %xmm13,%xmm1
18694 DB 15,88,193 ; addps %xmm1,%xmm0
18695 DB 69,15,40,226 ; movaps %xmm10,%xmm12
18696 DB 69,15,89,224 ; mulps %xmm8,%xmm12
18697 DB 65,15,40,201 ; movaps %xmm9,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018698 DB 15,89,205 ; mulps %xmm5,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040018699 DB 65,15,88,204 ; addps %xmm12,%xmm1
18700 DB 68,15,40,227 ; movaps %xmm3,%xmm12
18701 DB 69,15,92,224 ; subps %xmm8,%xmm12
18702 DB 68,15,89,197 ; mulps %xmm5,%xmm8
Mike Klein61b84162017-03-31 11:48:14 -040018703 DB 68,15,40,239 ; movaps %xmm7,%xmm13
18704 DB 68,15,92,237 ; subps %xmm5,%xmm13
18705 DB 68,15,40,245 ; movaps %xmm5,%xmm14
18706 DB 69,15,88,246 ; addps %xmm14,%xmm14
18707 DB 68,15,194,247,2 ; cmpleps %xmm7,%xmm14
Mike Kleinfe560a82017-05-01 12:56:35 -040018708 DB 69,15,88,192 ; addps %xmm8,%xmm8
18709 DB 69,15,89,236 ; mulps %xmm12,%xmm13
Mike Klein61b84162017-03-31 11:48:14 -040018710 DB 69,15,88,237 ; addps %xmm13,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040018711 DB 69,15,40,227 ; movaps %xmm11,%xmm12
18712 DB 69,15,92,229 ; subps %xmm13,%xmm12
18713 DB 69,15,84,198 ; andps %xmm14,%xmm8
18714 DB 69,15,85,244 ; andnps %xmm12,%xmm14
18715 DB 69,15,86,240 ; orps %xmm8,%xmm14
18716 DB 65,15,88,206 ; addps %xmm14,%xmm1
18717 DB 68,15,89,210 ; mulps %xmm2,%xmm10
18718 DB 69,15,40,193 ; movaps %xmm9,%xmm8
18719 DB 68,15,89,198 ; mulps %xmm6,%xmm8
18720 DB 69,15,88,194 ; addps %xmm10,%xmm8
18721 DB 68,15,40,211 ; movaps %xmm3,%xmm10
18722 DB 68,15,92,210 ; subps %xmm2,%xmm10
Mike Klein61b84162017-03-31 11:48:14 -040018723 DB 15,89,214 ; mulps %xmm6,%xmm2
18724 DB 68,15,40,231 ; movaps %xmm7,%xmm12
18725 DB 68,15,92,230 ; subps %xmm6,%xmm12
18726 DB 68,15,40,238 ; movaps %xmm6,%xmm13
18727 DB 69,15,88,237 ; addps %xmm13,%xmm13
18728 DB 68,15,194,239,2 ; cmpleps %xmm7,%xmm13
18729 DB 15,88,210 ; addps %xmm2,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040018730 DB 69,15,89,226 ; mulps %xmm10,%xmm12
Mike Klein61b84162017-03-31 11:48:14 -040018731 DB 69,15,88,228 ; addps %xmm12,%xmm12
Mike Kleinfe560a82017-05-01 12:56:35 -040018732 DB 69,15,92,220 ; subps %xmm12,%xmm11
Mike Klein61b84162017-03-31 11:48:14 -040018733 DB 65,15,84,213 ; andps %xmm13,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040018734 DB 69,15,85,235 ; andnps %xmm11,%xmm13
18735 DB 68,15,86,234 ; orps %xmm2,%xmm13
18736 DB 69,15,88,197 ; addps %xmm13,%xmm8
18737 DB 68,15,89,207 ; mulps %xmm7,%xmm9
18738 DB 65,15,88,217 ; addps %xmm9,%xmm3
Mike Klein61b84162017-03-31 11:48:14 -040018739 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040018740 DB 65,15,40,208 ; movaps %xmm8,%xmm2
Mike Klein61b84162017-03-31 11:48:14 -040018741 DB 255,224 ; jmpq *%rax
18742
18743PUBLIC _sk_softlight_sse2
18744_sk_softlight_sse2 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040018745 DB 72,131,236,40 ; sub $0x28,%rsp
18746 DB 15,41,52,36 ; movaps %xmm6,(%rsp)
18747 DB 15,40,245 ; movaps %xmm5,%xmm6
18748 DB 15,40,236 ; movaps %xmm4,%xmm5
18749 DB 15,41,84,36,16 ; movaps %xmm2,0x10(%rsp)
Mike Klein61b84162017-03-31 11:48:14 -040018750 DB 15,40,209 ; movaps %xmm1,%xmm2
18751 DB 68,15,40,192 ; movaps %xmm0,%xmm8
18752 DB 69,15,87,228 ; xorps %xmm12,%xmm12
18753 DB 68,15,194,231,1 ; cmpltps %xmm7,%xmm12
Mike Kleinfe560a82017-05-01 12:56:35 -040018754 DB 68,15,40,213 ; movaps %xmm5,%xmm10
Mike Klein61b84162017-03-31 11:48:14 -040018755 DB 68,15,94,215 ; divps %xmm7,%xmm10
18756 DB 69,15,84,212 ; andps %xmm12,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040018757 DB 68,15,40,13,100,66,0,0 ; movaps 0x4264(%rip),%xmm9 # 4ec0 <_sk_callback_sse2+0x22a>
Mike Kleinfe560a82017-05-01 12:56:35 -040018758 DB 69,15,40,249 ; movaps %xmm9,%xmm15
18759 DB 69,15,92,250 ; subps %xmm10,%xmm15
Mike Klein61b84162017-03-31 11:48:14 -040018760 DB 69,15,40,218 ; movaps %xmm10,%xmm11
18761 DB 69,15,40,234 ; movaps %xmm10,%xmm13
18762 DB 65,15,82,194 ; rsqrtps %xmm10,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040018763 DB 15,83,200 ; rcpps %xmm0,%xmm1
18764 DB 65,15,92,202 ; subps %xmm10,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018765 DB 69,15,88,210 ; addps %xmm10,%xmm10
18766 DB 69,15,88,210 ; addps %xmm10,%xmm10
18767 DB 65,15,40,194 ; movaps %xmm10,%xmm0
18768 DB 15,89,192 ; mulps %xmm0,%xmm0
18769 DB 65,15,88,194 ; addps %xmm10,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040018770 DB 68,15,40,53,62,66,0,0 ; movaps 0x423e(%rip),%xmm14 # 4ed0 <_sk_callback_sse2+0x23a>
Mike Kleinfe560a82017-05-01 12:56:35 -040018771 DB 69,15,88,222 ; addps %xmm14,%xmm11
Mike Klein61b84162017-03-31 11:48:14 -040018772 DB 68,15,89,216 ; mulps %xmm0,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040018773 DB 68,15,40,21,62,66,0,0 ; movaps 0x423e(%rip),%xmm10 # 4ee0 <_sk_callback_sse2+0x24a>
Mike Klein61b84162017-03-31 11:48:14 -040018774 DB 69,15,89,234 ; mulps %xmm10,%xmm13
18775 DB 69,15,88,235 ; addps %xmm11,%xmm13
Mike Klein61b84162017-03-31 11:48:14 -040018776 DB 15,88,228 ; addps %xmm4,%xmm4
18777 DB 15,88,228 ; addps %xmm4,%xmm4
18778 DB 15,194,231,2 ; cmpleps %xmm7,%xmm4
18779 DB 68,15,84,236 ; andps %xmm4,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040018780 DB 15,85,225 ; andnps %xmm1,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040018781 DB 65,15,40,192 ; movaps %xmm8,%xmm0
18782 DB 15,88,192 ; addps %xmm0,%xmm0
18783 DB 65,15,86,229 ; orps %xmm13,%xmm4
Mike Kleinfe560a82017-05-01 12:56:35 -040018784 DB 15,40,200 ; movaps %xmm0,%xmm1
18785 DB 15,92,203 ; subps %xmm3,%xmm1
18786 DB 68,15,89,249 ; mulps %xmm1,%xmm15
18787 DB 15,89,207 ; mulps %xmm7,%xmm1
18788 DB 15,89,225 ; mulps %xmm1,%xmm4
18789 DB 15,40,203 ; movaps %xmm3,%xmm1
18790 DB 15,89,205 ; mulps %xmm5,%xmm1
18791 DB 15,88,225 ; addps %xmm1,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040018792 DB 69,15,40,217 ; movaps %xmm9,%xmm11
18793 DB 68,15,92,219 ; subps %xmm3,%xmm11
Mike Kleinfe560a82017-05-01 12:56:35 -040018794 DB 65,15,40,203 ; movaps %xmm11,%xmm1
18795 DB 15,89,205 ; mulps %xmm5,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018796 DB 69,15,40,233 ; movaps %xmm9,%xmm13
18797 DB 68,15,92,239 ; subps %xmm7,%xmm13
18798 DB 69,15,89,197 ; mulps %xmm13,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040018799 DB 68,15,88,193 ; addps %xmm1,%xmm8
18800 DB 68,15,88,251 ; addps %xmm3,%xmm15
18801 DB 68,15,89,253 ; mulps %xmm5,%xmm15
Mike Klein61b84162017-03-31 11:48:14 -040018802 DB 15,194,195,2 ; cmpleps %xmm3,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040018803 DB 68,15,84,248 ; andps %xmm0,%xmm15
Mike Klein61b84162017-03-31 11:48:14 -040018804 DB 15,85,196 ; andnps %xmm4,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040018805 DB 65,15,86,199 ; orps %xmm15,%xmm0
Mike Klein61b84162017-03-31 11:48:14 -040018806 DB 65,15,88,192 ; addps %xmm8,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040018807 DB 68,15,40,198 ; movaps %xmm6,%xmm8
Mike Klein61b84162017-03-31 11:48:14 -040018808 DB 68,15,94,199 ; divps %xmm7,%xmm8
18809 DB 69,15,84,196 ; andps %xmm12,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040018810 DB 65,15,40,200 ; movaps %xmm8,%xmm1
18811 DB 15,88,201 ; addps %xmm1,%xmm1
18812 DB 15,88,201 ; addps %xmm1,%xmm1
18813 DB 15,40,225 ; movaps %xmm1,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040018814 DB 15,89,228 ; mulps %xmm4,%xmm4
Mike Kleinfe560a82017-05-01 12:56:35 -040018815 DB 15,88,225 ; addps %xmm1,%xmm4
18816 DB 65,15,40,200 ; movaps %xmm8,%xmm1
18817 DB 65,15,88,206 ; addps %xmm14,%xmm1
18818 DB 15,89,204 ; mulps %xmm4,%xmm1
18819 DB 69,15,40,249 ; movaps %xmm9,%xmm15
18820 DB 69,15,92,248 ; subps %xmm8,%xmm15
Mike Klein61b84162017-03-31 11:48:14 -040018821 DB 65,15,82,224 ; rsqrtps %xmm8,%xmm4
18822 DB 15,83,228 ; rcpps %xmm4,%xmm4
18823 DB 65,15,92,224 ; subps %xmm8,%xmm4
18824 DB 69,15,89,194 ; mulps %xmm10,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040018825 DB 68,15,88,193 ; addps %xmm1,%xmm8
18826 DB 15,40,206 ; movaps %xmm6,%xmm1
18827 DB 15,88,201 ; addps %xmm1,%xmm1
18828 DB 15,88,201 ; addps %xmm1,%xmm1
18829 DB 15,194,207,2 ; cmpleps %xmm7,%xmm1
18830 DB 68,15,84,193 ; andps %xmm1,%xmm8
18831 DB 15,85,204 ; andnps %xmm4,%xmm1
18832 DB 65,15,86,200 ; orps %xmm8,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018833 DB 68,15,40,194 ; movaps %xmm2,%xmm8
18834 DB 69,15,88,192 ; addps %xmm8,%xmm8
18835 DB 65,15,40,224 ; movaps %xmm8,%xmm4
18836 DB 15,92,227 ; subps %xmm3,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040018837 DB 68,15,89,252 ; mulps %xmm4,%xmm15
Mike Kleinfe560a82017-05-01 12:56:35 -040018838 DB 15,89,231 ; mulps %xmm7,%xmm4
18839 DB 15,89,204 ; mulps %xmm4,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018840 DB 15,40,227 ; movaps %xmm3,%xmm4
Mike Kleinfe560a82017-05-01 12:56:35 -040018841 DB 15,89,230 ; mulps %xmm6,%xmm4
18842 DB 15,88,204 ; addps %xmm4,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018843 DB 65,15,40,227 ; movaps %xmm11,%xmm4
Mike Kleinfe560a82017-05-01 12:56:35 -040018844 DB 15,89,230 ; mulps %xmm6,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040018845 DB 65,15,89,213 ; mulps %xmm13,%xmm2
18846 DB 15,88,212 ; addps %xmm4,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040018847 DB 68,15,88,251 ; addps %xmm3,%xmm15
18848 DB 68,15,89,254 ; mulps %xmm6,%xmm15
Mike Klein61b84162017-03-31 11:48:14 -040018849 DB 68,15,194,195,2 ; cmpleps %xmm3,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040018850 DB 69,15,84,248 ; andps %xmm8,%xmm15
18851 DB 68,15,85,193 ; andnps %xmm1,%xmm8
18852 DB 69,15,86,199 ; orps %xmm15,%xmm8
Mike Klein61b84162017-03-31 11:48:14 -040018853 DB 68,15,88,194 ; addps %xmm2,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040018854 DB 68,15,40,60,36 ; movaps (%rsp),%xmm15
18855 DB 65,15,40,207 ; movaps %xmm15,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018856 DB 15,94,207 ; divps %xmm7,%xmm1
18857 DB 65,15,84,204 ; andps %xmm12,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018858 DB 68,15,92,201 ; subps %xmm1,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040018859 DB 68,15,88,241 ; addps %xmm1,%xmm14
Mike Klein61b84162017-03-31 11:48:14 -040018860 DB 68,15,89,209 ; mulps %xmm1,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040018861 DB 15,82,209 ; rsqrtps %xmm1,%xmm2
18862 DB 15,83,210 ; rcpps %xmm2,%xmm2
18863 DB 15,92,209 ; subps %xmm1,%xmm2
Mike Klein61b84162017-03-31 11:48:14 -040018864 DB 15,88,201 ; addps %xmm1,%xmm1
18865 DB 15,88,201 ; addps %xmm1,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040018866 DB 15,40,225 ; movaps %xmm1,%xmm4
18867 DB 15,89,228 ; mulps %xmm4,%xmm4
18868 DB 15,88,225 ; addps %xmm1,%xmm4
18869 DB 68,15,89,244 ; mulps %xmm4,%xmm14
18870 DB 69,15,88,214 ; addps %xmm14,%xmm10
18871 DB 65,15,40,207 ; movaps %xmm15,%xmm1
Mike Klein61b84162017-03-31 11:48:14 -040018872 DB 15,88,201 ; addps %xmm1,%xmm1
18873 DB 15,88,201 ; addps %xmm1,%xmm1
18874 DB 15,194,207,2 ; cmpleps %xmm7,%xmm1
18875 DB 68,15,84,209 ; andps %xmm1,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040018876 DB 15,85,202 ; andnps %xmm2,%xmm1
18877 DB 15,40,84,36,16 ; movaps 0x10(%rsp),%xmm2
Mike Klein61b84162017-03-31 11:48:14 -040018878 DB 68,15,89,234 ; mulps %xmm2,%xmm13
18879 DB 15,88,210 ; addps %xmm2,%xmm2
18880 DB 65,15,86,202 ; orps %xmm10,%xmm1
18881 DB 15,40,226 ; movaps %xmm2,%xmm4
18882 DB 15,92,227 ; subps %xmm3,%xmm4
18883 DB 68,15,89,204 ; mulps %xmm4,%xmm9
18884 DB 15,89,231 ; mulps %xmm7,%xmm4
18885 DB 15,89,204 ; mulps %xmm4,%xmm1
18886 DB 15,40,227 ; movaps %xmm3,%xmm4
Mike Kleinfe560a82017-05-01 12:56:35 -040018887 DB 65,15,89,231 ; mulps %xmm15,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040018888 DB 15,88,204 ; addps %xmm4,%xmm1
18889 DB 65,15,40,227 ; movaps %xmm11,%xmm4
Mike Kleinfe560a82017-05-01 12:56:35 -040018890 DB 65,15,89,231 ; mulps %xmm15,%xmm4
Mike Klein61b84162017-03-31 11:48:14 -040018891 DB 65,15,88,229 ; addps %xmm13,%xmm4
18892 DB 68,15,88,203 ; addps %xmm3,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040018893 DB 69,15,89,207 ; mulps %xmm15,%xmm9
18894 DB 69,15,40,215 ; movaps %xmm15,%xmm10
Mike Klein61b84162017-03-31 11:48:14 -040018895 DB 15,194,211,2 ; cmpleps %xmm3,%xmm2
18896 DB 68,15,84,202 ; andps %xmm2,%xmm9
18897 DB 15,85,209 ; andnps %xmm1,%xmm2
18898 DB 65,15,86,209 ; orps %xmm9,%xmm2
18899 DB 15,88,212 ; addps %xmm4,%xmm2
18900 DB 68,15,89,223 ; mulps %xmm7,%xmm11
18901 DB 65,15,88,219 ; addps %xmm11,%xmm3
18902 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040018903 DB 15,40,229 ; movaps %xmm5,%xmm4
18904 DB 15,40,238 ; movaps %xmm6,%xmm5
18905 DB 65,15,40,242 ; movaps %xmm10,%xmm6
Mike Klein61b84162017-03-31 11:48:14 -040018906 DB 65,15,40,200 ; movaps %xmm8,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040018907 DB 72,131,196,40 ; add $0x28,%rsp
Mike Klein61b84162017-03-31 11:48:14 -040018908 DB 255,224 ; jmpq *%rax
18909
Mike Kleinbb338332017-05-04 12:42:52 -040018910PUBLIC _sk_hue_sse2
18911_sk_hue_sse2 LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -040018912 DB 72,131,236,72 ; sub $0x48,%rsp
18913 DB 68,15,40,200 ; movaps %xmm0,%xmm9
18914 DB 68,15,89,203 ; mulps %xmm3,%xmm9
18915 DB 68,15,40,209 ; movaps %xmm1,%xmm10
18916 DB 68,15,40,225 ; movaps %xmm1,%xmm12
18917 DB 68,15,89,211 ; mulps %xmm3,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040018918 DB 68,15,40,5,122,64,0,0 ; movaps 0x407a(%rip),%xmm8 # 4f20 <_sk_callback_sse2+0x28a>
Mike Klein08aa88d2017-05-12 12:59:24 -040018919 DB 69,15,40,216 ; movaps %xmm8,%xmm11
18920 DB 15,40,207 ; movaps %xmm7,%xmm1
18921 DB 68,15,92,217 ; subps %xmm1,%xmm11
18922 DB 65,15,89,195 ; mulps %xmm11,%xmm0
18923 DB 15,41,68,36,48 ; movaps %xmm0,0x30(%rsp)
18924 DB 69,15,89,227 ; mulps %xmm11,%xmm12
18925 DB 68,15,41,100,36,32 ; movaps %xmm12,0x20(%rsp)
18926 DB 68,15,89,218 ; mulps %xmm2,%xmm11
18927 DB 15,89,211 ; mulps %xmm3,%xmm2
18928 DB 68,15,40,229 ; movaps %xmm5,%xmm12
18929 DB 68,15,40,237 ; movaps %xmm5,%xmm13
Mike Kleinbb338332017-05-04 12:42:52 -040018930 DB 15,40,254 ; movaps %xmm6,%xmm7
Mike Klein08aa88d2017-05-12 12:59:24 -040018931 DB 68,15,95,239 ; maxps %xmm7,%xmm13
18932 DB 15,41,100,36,16 ; movaps %xmm4,0x10(%rsp)
18933 DB 68,15,40,244 ; movaps %xmm4,%xmm14
18934 DB 68,15,40,252 ; movaps %xmm4,%xmm15
18935 DB 69,15,95,253 ; maxps %xmm13,%xmm15
18936 DB 68,15,93,231 ; minps %xmm7,%xmm12
18937 DB 69,15,93,244 ; minps %xmm12,%xmm14
18938 DB 69,15,92,254 ; subps %xmm14,%xmm15
18939 DB 69,15,40,226 ; movaps %xmm10,%xmm12
18940 DB 68,15,93,226 ; minps %xmm2,%xmm12
Mike Kleinbb338332017-05-04 12:42:52 -040018941 DB 69,15,40,233 ; movaps %xmm9,%xmm13
Mike Klein08aa88d2017-05-12 12:59:24 -040018942 DB 69,15,93,236 ; minps %xmm12,%xmm13
18943 DB 69,15,40,226 ; movaps %xmm10,%xmm12
18944 DB 68,15,95,226 ; maxps %xmm2,%xmm12
18945 DB 69,15,40,241 ; movaps %xmm9,%xmm14
18946 DB 69,15,95,244 ; maxps %xmm12,%xmm14
18947 DB 69,15,92,245 ; subps %xmm13,%xmm14
18948 DB 69,15,92,205 ; subps %xmm13,%xmm9
18949 DB 69,15,92,213 ; subps %xmm13,%xmm10
18950 DB 65,15,92,213 ; subps %xmm13,%xmm2
18951 DB 15,40,245 ; movaps %xmm5,%xmm6
18952 DB 68,15,89,251 ; mulps %xmm3,%xmm15
18953 DB 69,15,89,207 ; mulps %xmm15,%xmm9
18954 DB 69,15,89,215 ; mulps %xmm15,%xmm10
18955 DB 65,15,89,215 ; mulps %xmm15,%xmm2
18956 DB 15,87,192 ; xorps %xmm0,%xmm0
18957 DB 69,15,94,206 ; divps %xmm14,%xmm9
18958 DB 69,15,94,214 ; divps %xmm14,%xmm10
18959 DB 65,15,94,214 ; divps %xmm14,%xmm2
18960 DB 68,15,194,240,4 ; cmpneqps %xmm0,%xmm14
18961 DB 69,15,84,206 ; andps %xmm14,%xmm9
18962 DB 69,15,84,214 ; andps %xmm14,%xmm10
18963 DB 65,15,84,214 ; andps %xmm14,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040018964 DB 68,15,40,61,142,63,0,0 ; movaps 0x3f8e(%rip),%xmm15 # 4ef0 <_sk_callback_sse2+0x25a>
Mike Klein08aa88d2017-05-12 12:59:24 -040018965 DB 65,15,89,231 ; mulps %xmm15,%xmm4
Mike Klein8ca33562017-05-23 08:07:43 -040018966 DB 15,40,5,147,63,0,0 ; movaps 0x3f93(%rip),%xmm0 # 4f00 <_sk_callback_sse2+0x26a>
Mike Klein08aa88d2017-05-12 12:59:24 -040018967 DB 15,89,240 ; mulps %xmm0,%xmm6
18968 DB 15,88,244 ; addps %xmm4,%xmm6
Mike Klein8ca33562017-05-23 08:07:43 -040018969 DB 68,15,40,53,149,63,0,0 ; movaps 0x3f95(%rip),%xmm14 # 4f10 <_sk_callback_sse2+0x27a>
Mike Klein08aa88d2017-05-12 12:59:24 -040018970 DB 68,15,40,239 ; movaps %xmm7,%xmm13
18971 DB 69,15,89,238 ; mulps %xmm14,%xmm13
18972 DB 68,15,88,238 ; addps %xmm6,%xmm13
18973 DB 65,15,40,225 ; movaps %xmm9,%xmm4
18974 DB 65,15,89,231 ; mulps %xmm15,%xmm4
18975 DB 65,15,40,242 ; movaps %xmm10,%xmm6
18976 DB 15,89,240 ; mulps %xmm0,%xmm6
18977 DB 15,88,244 ; addps %xmm4,%xmm6
18978 DB 15,40,226 ; movaps %xmm2,%xmm4
18979 DB 65,15,89,230 ; mulps %xmm14,%xmm4
18980 DB 15,88,230 ; addps %xmm6,%xmm4
18981 DB 68,15,89,235 ; mulps %xmm3,%xmm13
18982 DB 68,15,92,236 ; subps %xmm4,%xmm13
18983 DB 69,15,88,205 ; addps %xmm13,%xmm9
18984 DB 69,15,88,213 ; addps %xmm13,%xmm10
18985 DB 68,15,88,234 ; addps %xmm2,%xmm13
18986 DB 65,15,40,210 ; movaps %xmm10,%xmm2
18987 DB 65,15,93,213 ; minps %xmm13,%xmm2
18988 DB 65,15,40,241 ; movaps %xmm9,%xmm6
18989 DB 15,93,242 ; minps %xmm2,%xmm6
18990 DB 65,15,40,210 ; movaps %xmm10,%xmm2
18991 DB 65,15,95,213 ; maxps %xmm13,%xmm2
18992 DB 65,15,40,225 ; movaps %xmm9,%xmm4
18993 DB 15,95,226 ; maxps %xmm2,%xmm4
18994 DB 69,15,89,249 ; mulps %xmm9,%xmm15
18995 DB 65,15,89,194 ; mulps %xmm10,%xmm0
18996 DB 65,15,88,199 ; addps %xmm15,%xmm0
18997 DB 69,15,89,245 ; mulps %xmm13,%xmm14
18998 DB 68,15,88,240 ; addps %xmm0,%xmm14
18999 DB 15,87,210 ; xorps %xmm2,%xmm2
19000 DB 15,194,214,2 ; cmpleps %xmm6,%xmm2
19001 DB 69,15,40,254 ; movaps %xmm14,%xmm15
19002 DB 68,15,92,254 ; subps %xmm6,%xmm15
19003 DB 65,15,40,241 ; movaps %xmm9,%xmm6
19004 DB 65,15,92,246 ; subps %xmm14,%xmm6
19005 DB 65,15,89,246 ; mulps %xmm14,%xmm6
19006 DB 65,15,94,247 ; divps %xmm15,%xmm6
19007 DB 65,15,88,246 ; addps %xmm14,%xmm6
19008 DB 15,40,194 ; movaps %xmm2,%xmm0
19009 DB 15,85,198 ; andnps %xmm6,%xmm0
19010 DB 68,15,84,202 ; andps %xmm2,%xmm9
19011 DB 68,15,86,200 ; orps %xmm0,%xmm9
19012 DB 68,15,40,227 ; movaps %xmm3,%xmm12
19013 DB 65,15,40,196 ; movaps %xmm12,%xmm0
19014 DB 15,41,12,36 ; movaps %xmm1,(%rsp)
19015 DB 15,89,193 ; mulps %xmm1,%xmm0
19016 DB 69,15,92,196 ; subps %xmm12,%xmm8
19017 DB 68,15,88,225 ; addps %xmm1,%xmm12
19018 DB 68,15,92,224 ; subps %xmm0,%xmm12
19019 DB 15,40,240 ; movaps %xmm0,%xmm6
19020 DB 15,194,196,1 ; cmpltps %xmm4,%xmm0
19021 DB 15,40,200 ; movaps %xmm0,%xmm1
19022 DB 65,15,85,201 ; andnps %xmm9,%xmm1
19023 DB 69,15,92,206 ; subps %xmm14,%xmm9
19024 DB 65,15,92,246 ; subps %xmm14,%xmm6
19025 DB 68,15,89,206 ; mulps %xmm6,%xmm9
19026 DB 65,15,92,230 ; subps %xmm14,%xmm4
19027 DB 68,15,94,204 ; divps %xmm4,%xmm9
19028 DB 69,15,88,206 ; addps %xmm14,%xmm9
19029 DB 68,15,84,200 ; andps %xmm0,%xmm9
19030 DB 68,15,86,201 ; orps %xmm1,%xmm9
19031 DB 65,15,40,202 ; movaps %xmm10,%xmm1
19032 DB 65,15,92,206 ; subps %xmm14,%xmm1
19033 DB 65,15,89,206 ; mulps %xmm14,%xmm1
19034 DB 65,15,94,207 ; divps %xmm15,%xmm1
19035 DB 65,15,88,206 ; addps %xmm14,%xmm1
19036 DB 15,40,218 ; movaps %xmm2,%xmm3
Mike Kleinbb338332017-05-04 12:42:52 -040019037 DB 15,85,217 ; andnps %xmm1,%xmm3
Mike Klein08aa88d2017-05-12 12:59:24 -040019038 DB 68,15,84,210 ; andps %xmm2,%xmm10
19039 DB 68,15,86,211 ; orps %xmm3,%xmm10
19040 DB 15,40,200 ; movaps %xmm0,%xmm1
19041 DB 65,15,85,202 ; andnps %xmm10,%xmm1
19042 DB 69,15,92,214 ; subps %xmm14,%xmm10
19043 DB 68,15,89,214 ; mulps %xmm6,%xmm10
19044 DB 68,15,94,212 ; divps %xmm4,%xmm10
19045 DB 69,15,88,214 ; addps %xmm14,%xmm10
19046 DB 68,15,84,208 ; andps %xmm0,%xmm10
19047 DB 68,15,86,209 ; orps %xmm1,%xmm10
19048 DB 65,15,40,205 ; movaps %xmm13,%xmm1
19049 DB 65,15,92,206 ; subps %xmm14,%xmm1
19050 DB 65,15,89,206 ; mulps %xmm14,%xmm1
19051 DB 65,15,94,207 ; divps %xmm15,%xmm1
19052 DB 65,15,88,206 ; addps %xmm14,%xmm1
19053 DB 68,15,84,234 ; andps %xmm2,%xmm13
19054 DB 15,85,209 ; andnps %xmm1,%xmm2
19055 DB 65,15,86,213 ; orps %xmm13,%xmm2
19056 DB 15,40,200 ; movaps %xmm0,%xmm1
19057 DB 15,85,202 ; andnps %xmm2,%xmm1
19058 DB 65,15,92,214 ; subps %xmm14,%xmm2
19059 DB 15,89,214 ; mulps %xmm6,%xmm2
19060 DB 15,94,212 ; divps %xmm4,%xmm2
19061 DB 65,15,88,214 ; addps %xmm14,%xmm2
19062 DB 15,84,208 ; andps %xmm0,%xmm2
19063 DB 15,86,209 ; orps %xmm1,%xmm2
19064 DB 15,87,192 ; xorps %xmm0,%xmm0
19065 DB 68,15,95,200 ; maxps %xmm0,%xmm9
19066 DB 68,15,95,208 ; maxps %xmm0,%xmm10
19067 DB 15,95,208 ; maxps %xmm0,%xmm2
19068 DB 65,15,40,192 ; movaps %xmm8,%xmm0
19069 DB 15,40,100,36,16 ; movaps 0x10(%rsp),%xmm4
19070 DB 15,89,196 ; mulps %xmm4,%xmm0
19071 DB 15,40,76,36,48 ; movaps 0x30(%rsp),%xmm1
19072 DB 15,88,200 ; addps %xmm0,%xmm1
19073 DB 65,15,88,201 ; addps %xmm9,%xmm1
19074 DB 15,40,193 ; movaps %xmm1,%xmm0
Mike Kleinbb338332017-05-04 12:42:52 -040019075 DB 65,15,40,216 ; movaps %xmm8,%xmm3
Mike Klein08aa88d2017-05-12 12:59:24 -040019076 DB 15,89,221 ; mulps %xmm5,%xmm3
19077 DB 15,40,76,36,32 ; movaps 0x20(%rsp),%xmm1
19078 DB 15,88,203 ; addps %xmm3,%xmm1
19079 DB 65,15,88,202 ; addps %xmm10,%xmm1
19080 DB 68,15,89,199 ; mulps %xmm7,%xmm8
19081 DB 69,15,88,195 ; addps %xmm11,%xmm8
19082 DB 68,15,88,194 ; addps %xmm2,%xmm8
19083 DB 72,173 ; lods %ds:(%rsi),%rax
19084 DB 15,40,247 ; movaps %xmm7,%xmm6
19085 DB 65,15,40,208 ; movaps %xmm8,%xmm2
19086 DB 65,15,40,220 ; movaps %xmm12,%xmm3
19087 DB 15,40,60,36 ; movaps (%rsp),%xmm7
19088 DB 72,131,196,72 ; add $0x48,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -040019089 DB 255,224 ; jmpq *%rax
19090
19091PUBLIC _sk_saturation_sse2
19092_sk_saturation_sse2 LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -040019093 DB 72,131,236,88 ; sub $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -040019094 DB 68,15,40,231 ; movaps %xmm7,%xmm12
Mike Klein08aa88d2017-05-12 12:59:24 -040019095 DB 68,15,40,198 ; movaps %xmm6,%xmm8
19096 DB 15,40,251 ; movaps %xmm3,%xmm7
19097 DB 68,15,40,216 ; movaps %xmm0,%xmm11
19098 DB 68,15,40,215 ; movaps %xmm7,%xmm10
19099 DB 68,15,89,212 ; mulps %xmm4,%xmm10
19100 DB 15,40,244 ; movaps %xmm4,%xmm6
19101 DB 15,41,116,36,16 ; movaps %xmm6,0x10(%rsp)
19102 DB 68,15,40,207 ; movaps %xmm7,%xmm9
19103 DB 68,15,89,205 ; mulps %xmm5,%xmm9
19104 DB 15,41,108,36,32 ; movaps %xmm5,0x20(%rsp)
19105 DB 15,40,199 ; movaps %xmm7,%xmm0
Mike Kleinbb338332017-05-04 12:42:52 -040019106 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Klein08aa88d2017-05-12 12:59:24 -040019107 DB 69,15,40,232 ; movaps %xmm8,%xmm13
19108 DB 68,15,41,44,36 ; movaps %xmm13,(%rsp)
19109 DB 15,40,225 ; movaps %xmm1,%xmm4
19110 DB 15,41,100,36,48 ; movaps %xmm4,0x30(%rsp)
19111 DB 15,40,220 ; movaps %xmm4,%xmm3
19112 DB 15,41,84,36,64 ; movaps %xmm2,0x40(%rsp)
19113 DB 15,95,218 ; maxps %xmm2,%xmm3
19114 DB 65,15,40,203 ; movaps %xmm11,%xmm1
19115 DB 15,95,203 ; maxps %xmm3,%xmm1
19116 DB 15,40,220 ; movaps %xmm4,%xmm3
19117 DB 15,93,218 ; minps %xmm2,%xmm3
19118 DB 65,15,40,211 ; movaps %xmm11,%xmm2
19119 DB 15,93,211 ; minps %xmm3,%xmm2
19120 DB 15,92,202 ; subps %xmm2,%xmm1
19121 DB 65,15,89,204 ; mulps %xmm12,%xmm1
19122 DB 65,15,40,228 ; movaps %xmm12,%xmm4
19123 DB 65,15,40,209 ; movaps %xmm9,%xmm2
19124 DB 15,93,208 ; minps %xmm0,%xmm2
19125 DB 69,15,40,194 ; movaps %xmm10,%xmm8
19126 DB 68,15,93,194 ; minps %xmm2,%xmm8
19127 DB 65,15,40,209 ; movaps %xmm9,%xmm2
19128 DB 15,95,208 ; maxps %xmm0,%xmm2
19129 DB 65,15,40,218 ; movaps %xmm10,%xmm3
19130 DB 15,95,218 ; maxps %xmm2,%xmm3
19131 DB 65,15,92,216 ; subps %xmm8,%xmm3
19132 DB 15,87,210 ; xorps %xmm2,%xmm2
19133 DB 69,15,92,208 ; subps %xmm8,%xmm10
19134 DB 68,15,89,209 ; mulps %xmm1,%xmm10
19135 DB 68,15,94,211 ; divps %xmm3,%xmm10
19136 DB 69,15,92,200 ; subps %xmm8,%xmm9
19137 DB 68,15,89,201 ; mulps %xmm1,%xmm9
19138 DB 68,15,94,203 ; divps %xmm3,%xmm9
19139 DB 65,15,92,192 ; subps %xmm8,%xmm0
19140 DB 15,89,193 ; mulps %xmm1,%xmm0
19141 DB 15,94,195 ; divps %xmm3,%xmm0
19142 DB 15,194,218,4 ; cmpneqps %xmm2,%xmm3
19143 DB 68,15,84,211 ; andps %xmm3,%xmm10
19144 DB 68,15,84,203 ; andps %xmm3,%xmm9
19145 DB 15,84,195 ; andps %xmm3,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040019146 DB 68,15,40,5,37,61,0,0 ; movaps 0x3d25(%rip),%xmm8 # 4f30 <_sk_callback_sse2+0x29a>
Mike Klein08aa88d2017-05-12 12:59:24 -040019147 DB 15,40,214 ; movaps %xmm6,%xmm2
Mike Kleinbb338332017-05-04 12:42:52 -040019148 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040019149 DB 15,40,13,39,61,0,0 ; movaps 0x3d27(%rip),%xmm1 # 4f40 <_sk_callback_sse2+0x2aa>
Mike Klein08aa88d2017-05-12 12:59:24 -040019150 DB 15,40,221 ; movaps %xmm5,%xmm3
19151 DB 15,89,217 ; mulps %xmm1,%xmm3
19152 DB 15,88,218 ; addps %xmm2,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040019153 DB 68,15,40,37,38,61,0,0 ; movaps 0x3d26(%rip),%xmm12 # 4f50 <_sk_callback_sse2+0x2ba>
Mike Klein08aa88d2017-05-12 12:59:24 -040019154 DB 69,15,89,236 ; mulps %xmm12,%xmm13
19155 DB 68,15,88,235 ; addps %xmm3,%xmm13
19156 DB 65,15,40,210 ; movaps %xmm10,%xmm2
19157 DB 65,15,89,208 ; mulps %xmm8,%xmm2
19158 DB 65,15,40,217 ; movaps %xmm9,%xmm3
19159 DB 15,89,217 ; mulps %xmm1,%xmm3
19160 DB 15,88,218 ; addps %xmm2,%xmm3
19161 DB 15,40,208 ; movaps %xmm0,%xmm2
19162 DB 65,15,89,212 ; mulps %xmm12,%xmm2
19163 DB 15,88,211 ; addps %xmm3,%xmm2
19164 DB 68,15,89,239 ; mulps %xmm7,%xmm13
19165 DB 68,15,92,234 ; subps %xmm2,%xmm13
19166 DB 69,15,88,213 ; addps %xmm13,%xmm10
19167 DB 69,15,88,205 ; addps %xmm13,%xmm9
19168 DB 68,15,88,232 ; addps %xmm0,%xmm13
19169 DB 65,15,40,193 ; movaps %xmm9,%xmm0
19170 DB 65,15,93,197 ; minps %xmm13,%xmm0
19171 DB 65,15,40,218 ; movaps %xmm10,%xmm3
19172 DB 15,93,216 ; minps %xmm0,%xmm3
19173 DB 65,15,40,193 ; movaps %xmm9,%xmm0
19174 DB 65,15,95,197 ; maxps %xmm13,%xmm0
19175 DB 69,15,40,242 ; movaps %xmm10,%xmm14
19176 DB 68,15,95,240 ; maxps %xmm0,%xmm14
19177 DB 69,15,89,194 ; mulps %xmm10,%xmm8
19178 DB 65,15,89,201 ; mulps %xmm9,%xmm1
19179 DB 65,15,88,200 ; addps %xmm8,%xmm1
19180 DB 69,15,89,229 ; mulps %xmm13,%xmm12
19181 DB 68,15,88,225 ; addps %xmm1,%xmm12
19182 DB 15,87,210 ; xorps %xmm2,%xmm2
19183 DB 15,194,211,2 ; cmpleps %xmm3,%xmm2
19184 DB 65,15,40,244 ; movaps %xmm12,%xmm6
19185 DB 15,92,243 ; subps %xmm3,%xmm6
19186 DB 65,15,40,194 ; movaps %xmm10,%xmm0
19187 DB 65,15,92,196 ; subps %xmm12,%xmm0
19188 DB 65,15,89,196 ; mulps %xmm12,%xmm0
19189 DB 15,94,198 ; divps %xmm6,%xmm0
19190 DB 65,15,88,196 ; addps %xmm12,%xmm0
19191 DB 15,40,202 ; movaps %xmm2,%xmm1
19192 DB 15,85,200 ; andnps %xmm0,%xmm1
19193 DB 68,15,84,210 ; andps %xmm2,%xmm10
19194 DB 68,15,86,209 ; orps %xmm1,%xmm10
19195 DB 15,40,223 ; movaps %xmm7,%xmm3
19196 DB 15,40,236 ; movaps %xmm4,%xmm5
19197 DB 15,89,221 ; mulps %xmm5,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040019198 DB 68,15,40,5,139,60,0,0 ; movaps 0x3c8b(%rip),%xmm8 # 4f60 <_sk_callback_sse2+0x2ca>
Mike Klein08aa88d2017-05-12 12:59:24 -040019199 DB 65,15,40,224 ; movaps %xmm8,%xmm4
19200 DB 68,15,92,199 ; subps %xmm7,%xmm8
19201 DB 15,88,253 ; addps %xmm5,%xmm7
19202 DB 15,92,251 ; subps %xmm3,%xmm7
19203 DB 15,40,203 ; movaps %xmm3,%xmm1
19204 DB 65,15,194,222,1 ; cmpltps %xmm14,%xmm3
19205 DB 15,40,195 ; movaps %xmm3,%xmm0
19206 DB 65,15,85,194 ; andnps %xmm10,%xmm0
19207 DB 69,15,92,212 ; subps %xmm12,%xmm10
19208 DB 65,15,92,204 ; subps %xmm12,%xmm1
19209 DB 68,15,89,209 ; mulps %xmm1,%xmm10
19210 DB 69,15,92,244 ; subps %xmm12,%xmm14
19211 DB 69,15,94,214 ; divps %xmm14,%xmm10
19212 DB 69,15,88,212 ; addps %xmm12,%xmm10
19213 DB 68,15,84,211 ; andps %xmm3,%xmm10
19214 DB 68,15,86,208 ; orps %xmm0,%xmm10
19215 DB 65,15,40,193 ; movaps %xmm9,%xmm0
19216 DB 65,15,92,196 ; subps %xmm12,%xmm0
19217 DB 65,15,89,196 ; mulps %xmm12,%xmm0
19218 DB 15,94,198 ; divps %xmm6,%xmm0
19219 DB 65,15,88,196 ; addps %xmm12,%xmm0
19220 DB 68,15,40,250 ; movaps %xmm2,%xmm15
19221 DB 68,15,85,248 ; andnps %xmm0,%xmm15
19222 DB 68,15,84,202 ; andps %xmm2,%xmm9
19223 DB 69,15,86,207 ; orps %xmm15,%xmm9
19224 DB 15,40,195 ; movaps %xmm3,%xmm0
19225 DB 65,15,85,193 ; andnps %xmm9,%xmm0
19226 DB 69,15,92,204 ; subps %xmm12,%xmm9
19227 DB 68,15,89,201 ; mulps %xmm1,%xmm9
19228 DB 69,15,94,206 ; divps %xmm14,%xmm9
19229 DB 69,15,88,204 ; addps %xmm12,%xmm9
19230 DB 68,15,84,203 ; andps %xmm3,%xmm9
19231 DB 68,15,86,200 ; orps %xmm0,%xmm9
19232 DB 65,15,40,197 ; movaps %xmm13,%xmm0
19233 DB 65,15,92,196 ; subps %xmm12,%xmm0
19234 DB 65,15,89,196 ; mulps %xmm12,%xmm0
19235 DB 15,94,198 ; divps %xmm6,%xmm0
19236 DB 65,15,88,196 ; addps %xmm12,%xmm0
19237 DB 68,15,84,234 ; andps %xmm2,%xmm13
19238 DB 15,85,208 ; andnps %xmm0,%xmm2
19239 DB 65,15,86,213 ; orps %xmm13,%xmm2
19240 DB 15,40,195 ; movaps %xmm3,%xmm0
19241 DB 15,85,194 ; andnps %xmm2,%xmm0
19242 DB 65,15,92,212 ; subps %xmm12,%xmm2
19243 DB 15,89,209 ; mulps %xmm1,%xmm2
19244 DB 65,15,94,214 ; divps %xmm14,%xmm2
19245 DB 65,15,88,212 ; addps %xmm12,%xmm2
19246 DB 15,84,211 ; andps %xmm3,%xmm2
19247 DB 15,86,208 ; orps %xmm0,%xmm2
19248 DB 15,87,192 ; xorps %xmm0,%xmm0
19249 DB 68,15,95,208 ; maxps %xmm0,%xmm10
19250 DB 68,15,95,200 ; maxps %xmm0,%xmm9
19251 DB 15,95,208 ; maxps %xmm0,%xmm2
19252 DB 65,15,40,192 ; movaps %xmm8,%xmm0
19253 DB 15,40,92,36,16 ; movaps 0x10(%rsp),%xmm3
19254 DB 15,89,195 ; mulps %xmm3,%xmm0
19255 DB 68,15,40,229 ; movaps %xmm5,%xmm12
19256 DB 65,15,92,228 ; subps %xmm12,%xmm4
19257 DB 68,15,89,220 ; mulps %xmm4,%xmm11
19258 DB 68,15,88,216 ; addps %xmm0,%xmm11
19259 DB 69,15,88,218 ; addps %xmm10,%xmm11
19260 DB 65,15,40,192 ; movaps %xmm8,%xmm0
19261 DB 15,40,108,36,32 ; movaps 0x20(%rsp),%xmm5
19262 DB 15,89,197 ; mulps %xmm5,%xmm0
19263 DB 15,40,76,36,48 ; movaps 0x30(%rsp),%xmm1
19264 DB 15,89,204 ; mulps %xmm4,%xmm1
19265 DB 15,88,200 ; addps %xmm0,%xmm1
19266 DB 65,15,88,201 ; addps %xmm9,%xmm1
19267 DB 15,89,100,36,64 ; mulps 0x40(%rsp),%xmm4
19268 DB 15,40,4,36 ; movaps (%rsp),%xmm0
19269 DB 68,15,89,192 ; mulps %xmm0,%xmm8
19270 DB 68,15,88,196 ; addps %xmm4,%xmm8
19271 DB 68,15,88,194 ; addps %xmm2,%xmm8
Mike Kleinbb338332017-05-04 12:42:52 -040019272 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -040019273 DB 15,40,227 ; movaps %xmm3,%xmm4
19274 DB 15,40,240 ; movaps %xmm0,%xmm6
19275 DB 65,15,40,195 ; movaps %xmm11,%xmm0
19276 DB 65,15,40,208 ; movaps %xmm8,%xmm2
19277 DB 15,40,223 ; movaps %xmm7,%xmm3
19278 DB 65,15,40,252 ; movaps %xmm12,%xmm7
19279 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -040019280 DB 255,224 ; jmpq *%rax
19281
19282PUBLIC _sk_color_sse2
19283_sk_color_sse2 LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -040019284 DB 72,131,236,72 ; sub $0x48,%rsp
19285 DB 68,15,40,199 ; movaps %xmm7,%xmm8
19286 DB 68,15,40,230 ; movaps %xmm6,%xmm12
19287 DB 68,15,41,100,36,32 ; movaps %xmm12,0x20(%rsp)
Mike Kleinbb338332017-05-04 12:42:52 -040019288 DB 68,15,40,221 ; movaps %xmm5,%xmm11
Mike Klein08aa88d2017-05-12 12:59:24 -040019289 DB 68,15,41,92,36,48 ; movaps %xmm11,0x30(%rsp)
19290 DB 15,40,244 ; movaps %xmm4,%xmm6
19291 DB 15,41,20,36 ; movaps %xmm2,(%rsp)
19292 DB 15,40,233 ; movaps %xmm1,%xmm5
19293 DB 15,40,248 ; movaps %xmm0,%xmm7
19294 DB 68,15,40,207 ; movaps %xmm7,%xmm9
19295 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleinbb338332017-05-04 12:42:52 -040019296 DB 68,15,40,213 ; movaps %xmm5,%xmm10
Mike Klein08aa88d2017-05-12 12:59:24 -040019297 DB 69,15,89,208 ; mulps %xmm8,%xmm10
19298 DB 65,15,40,208 ; movaps %xmm8,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040019299 DB 68,15,40,45,35,59,0,0 ; movaps 0x3b23(%rip),%xmm13 # 4f70 <_sk_callback_sse2+0x2da>
Mike Klein08aa88d2017-05-12 12:59:24 -040019300 DB 68,15,40,198 ; movaps %xmm6,%xmm8
19301 DB 69,15,89,197 ; mulps %xmm13,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040019302 DB 68,15,40,53,35,59,0,0 ; movaps 0x3b23(%rip),%xmm14 # 4f80 <_sk_callback_sse2+0x2ea>
Mike Klein08aa88d2017-05-12 12:59:24 -040019303 DB 65,15,40,195 ; movaps %xmm11,%xmm0
19304 DB 65,15,89,198 ; mulps %xmm14,%xmm0
19305 DB 65,15,88,192 ; addps %xmm8,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040019306 DB 68,15,40,29,31,59,0,0 ; movaps 0x3b1f(%rip),%xmm11 # 4f90 <_sk_callback_sse2+0x2fa>
Mike Klein08aa88d2017-05-12 12:59:24 -040019307 DB 69,15,89,227 ; mulps %xmm11,%xmm12
19308 DB 68,15,88,224 ; addps %xmm0,%xmm12
19309 DB 65,15,40,193 ; movaps %xmm9,%xmm0
19310 DB 65,15,89,197 ; mulps %xmm13,%xmm0
19311 DB 69,15,40,250 ; movaps %xmm10,%xmm15
19312 DB 69,15,89,254 ; mulps %xmm14,%xmm15
19313 DB 68,15,88,248 ; addps %xmm0,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040019314 DB 68,15,40,5,11,59,0,0 ; movaps 0x3b0b(%rip),%xmm8 # 4fa0 <_sk_callback_sse2+0x30a>
Mike Klein08aa88d2017-05-12 12:59:24 -040019315 DB 65,15,40,224 ; movaps %xmm8,%xmm4
19316 DB 15,92,226 ; subps %xmm2,%xmm4
19317 DB 15,89,252 ; mulps %xmm4,%xmm7
19318 DB 15,89,236 ; mulps %xmm4,%xmm5
19319 DB 15,40,12,36 ; movaps (%rsp),%xmm1
19320 DB 15,89,225 ; mulps %xmm1,%xmm4
19321 DB 15,89,202 ; mulps %xmm2,%xmm1
19322 DB 15,40,193 ; movaps %xmm1,%xmm0
19323 DB 65,15,89,195 ; mulps %xmm11,%xmm0
19324 DB 65,15,88,199 ; addps %xmm15,%xmm0
19325 DB 68,15,89,227 ; mulps %xmm3,%xmm12
19326 DB 68,15,92,224 ; subps %xmm0,%xmm12
19327 DB 69,15,88,204 ; addps %xmm12,%xmm9
19328 DB 69,15,88,212 ; addps %xmm12,%xmm10
19329 DB 68,15,88,225 ; addps %xmm1,%xmm12
19330 DB 65,15,40,194 ; movaps %xmm10,%xmm0
19331 DB 65,15,93,196 ; minps %xmm12,%xmm0
19332 DB 65,15,40,201 ; movaps %xmm9,%xmm1
19333 DB 15,93,200 ; minps %xmm0,%xmm1
19334 DB 65,15,40,194 ; movaps %xmm10,%xmm0
19335 DB 65,15,95,196 ; maxps %xmm12,%xmm0
19336 DB 69,15,40,249 ; movaps %xmm9,%xmm15
19337 DB 68,15,95,248 ; maxps %xmm0,%xmm15
19338 DB 69,15,89,233 ; mulps %xmm9,%xmm13
19339 DB 69,15,89,242 ; mulps %xmm10,%xmm14
Mike Kleinbb338332017-05-04 12:42:52 -040019340 DB 69,15,88,245 ; addps %xmm13,%xmm14
Mike Klein08aa88d2017-05-12 12:59:24 -040019341 DB 69,15,89,220 ; mulps %xmm12,%xmm11
19342 DB 69,15,88,222 ; addps %xmm14,%xmm11
19343 DB 69,15,87,237 ; xorps %xmm13,%xmm13
19344 DB 68,15,194,233,2 ; cmpleps %xmm1,%xmm13
19345 DB 69,15,40,243 ; movaps %xmm11,%xmm14
19346 DB 68,15,92,241 ; subps %xmm1,%xmm14
19347 DB 65,15,40,201 ; movaps %xmm9,%xmm1
19348 DB 65,15,92,203 ; subps %xmm11,%xmm1
19349 DB 65,15,89,203 ; mulps %xmm11,%xmm1
Mike Kleinbb338332017-05-04 12:42:52 -040019350 DB 65,15,94,206 ; divps %xmm14,%xmm1
Mike Klein08aa88d2017-05-12 12:59:24 -040019351 DB 65,15,88,203 ; addps %xmm11,%xmm1
19352 DB 65,15,40,197 ; movaps %xmm13,%xmm0
19353 DB 15,85,193 ; andnps %xmm1,%xmm0
19354 DB 69,15,84,205 ; andps %xmm13,%xmm9
19355 DB 68,15,86,200 ; orps %xmm0,%xmm9
19356 DB 15,40,195 ; movaps %xmm3,%xmm0
19357 DB 15,41,84,36,16 ; movaps %xmm2,0x10(%rsp)
19358 DB 15,89,194 ; mulps %xmm2,%xmm0
19359 DB 68,15,92,195 ; subps %xmm3,%xmm8
19360 DB 15,88,218 ; addps %xmm2,%xmm3
19361 DB 15,92,216 ; subps %xmm0,%xmm3
19362 DB 15,41,28,36 ; movaps %xmm3,(%rsp)
19363 DB 15,40,216 ; movaps %xmm0,%xmm3
19364 DB 65,15,194,199,1 ; cmpltps %xmm15,%xmm0
19365 DB 15,40,200 ; movaps %xmm0,%xmm1
19366 DB 65,15,85,201 ; andnps %xmm9,%xmm1
19367 DB 69,15,92,203 ; subps %xmm11,%xmm9
19368 DB 65,15,92,219 ; subps %xmm11,%xmm3
19369 DB 68,15,89,203 ; mulps %xmm3,%xmm9
19370 DB 69,15,92,251 ; subps %xmm11,%xmm15
19371 DB 69,15,94,207 ; divps %xmm15,%xmm9
19372 DB 69,15,88,203 ; addps %xmm11,%xmm9
19373 DB 68,15,84,200 ; andps %xmm0,%xmm9
19374 DB 68,15,86,201 ; orps %xmm1,%xmm9
19375 DB 65,15,40,202 ; movaps %xmm10,%xmm1
19376 DB 65,15,92,203 ; subps %xmm11,%xmm1
19377 DB 65,15,89,203 ; mulps %xmm11,%xmm1
19378 DB 65,15,94,206 ; divps %xmm14,%xmm1
19379 DB 65,15,88,203 ; addps %xmm11,%xmm1
19380 DB 65,15,40,213 ; movaps %xmm13,%xmm2
Mike Kleinbb338332017-05-04 12:42:52 -040019381 DB 15,85,209 ; andnps %xmm1,%xmm2
Mike Klein08aa88d2017-05-12 12:59:24 -040019382 DB 69,15,84,213 ; andps %xmm13,%xmm10
19383 DB 68,15,86,210 ; orps %xmm2,%xmm10
19384 DB 15,40,200 ; movaps %xmm0,%xmm1
19385 DB 65,15,85,202 ; andnps %xmm10,%xmm1
19386 DB 69,15,92,211 ; subps %xmm11,%xmm10
19387 DB 68,15,89,211 ; mulps %xmm3,%xmm10
19388 DB 69,15,94,215 ; divps %xmm15,%xmm10
19389 DB 69,15,88,211 ; addps %xmm11,%xmm10
19390 DB 68,15,84,208 ; andps %xmm0,%xmm10
19391 DB 68,15,86,209 ; orps %xmm1,%xmm10
19392 DB 65,15,40,204 ; movaps %xmm12,%xmm1
19393 DB 65,15,92,203 ; subps %xmm11,%xmm1
19394 DB 65,15,89,203 ; mulps %xmm11,%xmm1
19395 DB 65,15,94,206 ; divps %xmm14,%xmm1
19396 DB 65,15,88,203 ; addps %xmm11,%xmm1
19397 DB 69,15,84,229 ; andps %xmm13,%xmm12
19398 DB 68,15,85,233 ; andnps %xmm1,%xmm13
19399 DB 69,15,86,236 ; orps %xmm12,%xmm13
19400 DB 15,40,200 ; movaps %xmm0,%xmm1
19401 DB 65,15,85,205 ; andnps %xmm13,%xmm1
19402 DB 69,15,92,235 ; subps %xmm11,%xmm13
19403 DB 68,15,89,235 ; mulps %xmm3,%xmm13
19404 DB 69,15,94,239 ; divps %xmm15,%xmm13
19405 DB 69,15,88,235 ; addps %xmm11,%xmm13
19406 DB 68,15,84,232 ; andps %xmm0,%xmm13
19407 DB 68,15,86,233 ; orps %xmm1,%xmm13
19408 DB 15,87,192 ; xorps %xmm0,%xmm0
19409 DB 68,15,95,200 ; maxps %xmm0,%xmm9
19410 DB 68,15,95,208 ; maxps %xmm0,%xmm10
19411 DB 68,15,95,232 ; maxps %xmm0,%xmm13
19412 DB 65,15,40,192 ; movaps %xmm8,%xmm0
19413 DB 15,89,198 ; mulps %xmm6,%xmm0
19414 DB 15,88,248 ; addps %xmm0,%xmm7
19415 DB 65,15,88,249 ; addps %xmm9,%xmm7
19416 DB 65,15,40,192 ; movaps %xmm8,%xmm0
19417 DB 15,40,84,36,48 ; movaps 0x30(%rsp),%xmm2
19418 DB 15,89,194 ; mulps %xmm2,%xmm0
19419 DB 15,88,232 ; addps %xmm0,%xmm5
19420 DB 65,15,88,234 ; addps %xmm10,%xmm5
19421 DB 15,40,205 ; movaps %xmm5,%xmm1
19422 DB 15,40,68,36,32 ; movaps 0x20(%rsp),%xmm0
19423 DB 68,15,89,192 ; mulps %xmm0,%xmm8
19424 DB 68,15,88,196 ; addps %xmm4,%xmm8
19425 DB 69,15,88,197 ; addps %xmm13,%xmm8
Mike Kleinbb338332017-05-04 12:42:52 -040019426 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein08aa88d2017-05-12 12:59:24 -040019427 DB 15,40,230 ; movaps %xmm6,%xmm4
19428 DB 15,40,234 ; movaps %xmm2,%xmm5
19429 DB 15,40,240 ; movaps %xmm0,%xmm6
19430 DB 15,40,199 ; movaps %xmm7,%xmm0
19431 DB 65,15,40,208 ; movaps %xmm8,%xmm2
19432 DB 15,40,28,36 ; movaps (%rsp),%xmm3
19433 DB 15,40,124,36,16 ; movaps 0x10(%rsp),%xmm7
19434 DB 72,131,196,72 ; add $0x48,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -040019435 DB 255,224 ; jmpq *%rax
19436
19437PUBLIC _sk_luminosity_sse2
19438_sk_luminosity_sse2 LABEL PROC
Mike Klein08aa88d2017-05-12 12:59:24 -040019439 DB 72,131,236,88 ; sub $0x58,%rsp
19440 DB 68,15,40,215 ; movaps %xmm7,%xmm10
19441 DB 15,41,116,36,32 ; movaps %xmm6,0x20(%rsp)
Mike Kleinbb338332017-05-04 12:42:52 -040019442 DB 15,40,245 ; movaps %xmm5,%xmm6
Mike Klein08aa88d2017-05-12 12:59:24 -040019443 DB 15,41,116,36,64 ; movaps %xmm6,0x40(%rsp)
19444 DB 15,41,100,36,48 ; movaps %xmm4,0x30(%rsp)
19445 DB 15,40,235 ; movaps %xmm3,%xmm5
19446 DB 15,40,248 ; movaps %xmm0,%xmm7
19447 DB 68,15,40,205 ; movaps %xmm5,%xmm9
19448 DB 68,15,89,204 ; mulps %xmm4,%xmm9
19449 DB 15,89,222 ; mulps %xmm6,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040019450 DB 68,15,40,37,29,57,0,0 ; movaps 0x391d(%rip),%xmm12 # 4fb0 <_sk_callback_sse2+0x31a>
Mike Klein08aa88d2017-05-12 12:59:24 -040019451 DB 68,15,40,199 ; movaps %xmm7,%xmm8
19452 DB 69,15,89,196 ; mulps %xmm12,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040019453 DB 68,15,40,45,29,57,0,0 ; movaps 0x391d(%rip),%xmm13 # 4fc0 <_sk_callback_sse2+0x32a>
Mike Klein08aa88d2017-05-12 12:59:24 -040019454 DB 68,15,40,241 ; movaps %xmm1,%xmm14
19455 DB 69,15,89,245 ; mulps %xmm13,%xmm14
19456 DB 69,15,88,240 ; addps %xmm8,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040019457 DB 68,15,40,29,25,57,0,0 ; movaps 0x3919(%rip),%xmm11 # 4fd0 <_sk_callback_sse2+0x33a>
19458 DB 68,15,40,5,33,57,0,0 ; movaps 0x3921(%rip),%xmm8 # 4fe0 <_sk_callback_sse2+0x34a>
Mike Kleinbb338332017-05-04 12:42:52 -040019459 DB 69,15,40,248 ; movaps %xmm8,%xmm15
Mike Klein08aa88d2017-05-12 12:59:24 -040019460 DB 65,15,40,194 ; movaps %xmm10,%xmm0
19461 DB 68,15,92,248 ; subps %xmm0,%xmm15
19462 DB 65,15,89,255 ; mulps %xmm15,%xmm7
19463 DB 65,15,89,207 ; mulps %xmm15,%xmm1
19464 DB 15,41,76,36,16 ; movaps %xmm1,0x10(%rsp)
19465 DB 68,15,89,250 ; mulps %xmm2,%xmm15
19466 DB 65,15,89,211 ; mulps %xmm11,%xmm2
19467 DB 65,15,88,214 ; addps %xmm14,%xmm2
19468 DB 69,15,40,241 ; movaps %xmm9,%xmm14
19469 DB 69,15,89,244 ; mulps %xmm12,%xmm14
19470 DB 68,15,40,211 ; movaps %xmm3,%xmm10
19471 DB 69,15,89,213 ; mulps %xmm13,%xmm10
19472 DB 69,15,88,214 ; addps %xmm14,%xmm10
Mike Kleinbb338332017-05-04 12:42:52 -040019473 DB 15,40,229 ; movaps %xmm5,%xmm4
Mike Klein08aa88d2017-05-12 12:59:24 -040019474 DB 15,40,116,36,32 ; movaps 0x20(%rsp),%xmm6
19475 DB 15,89,230 ; mulps %xmm6,%xmm4
19476 DB 68,15,40,244 ; movaps %xmm4,%xmm14
19477 DB 69,15,89,243 ; mulps %xmm11,%xmm14
19478 DB 69,15,88,242 ; addps %xmm10,%xmm14
19479 DB 15,89,208 ; mulps %xmm0,%xmm2
19480 DB 65,15,92,214 ; subps %xmm14,%xmm2
19481 DB 68,15,88,202 ; addps %xmm2,%xmm9
19482 DB 15,88,218 ; addps %xmm2,%xmm3
19483 DB 15,88,212 ; addps %xmm4,%xmm2
19484 DB 68,15,40,211 ; movaps %xmm3,%xmm10
19485 DB 68,15,93,210 ; minps %xmm2,%xmm10
19486 DB 65,15,40,225 ; movaps %xmm9,%xmm4
19487 DB 65,15,93,226 ; minps %xmm10,%xmm4
19488 DB 68,15,40,211 ; movaps %xmm3,%xmm10
19489 DB 68,15,95,210 ; maxps %xmm2,%xmm10
19490 DB 69,15,40,241 ; movaps %xmm9,%xmm14
19491 DB 69,15,95,242 ; maxps %xmm10,%xmm14
19492 DB 69,15,89,225 ; mulps %xmm9,%xmm12
19493 DB 68,15,89,235 ; mulps %xmm3,%xmm13
19494 DB 69,15,88,236 ; addps %xmm12,%xmm13
19495 DB 68,15,89,218 ; mulps %xmm2,%xmm11
19496 DB 69,15,88,221 ; addps %xmm13,%xmm11
19497 DB 69,15,87,228 ; xorps %xmm12,%xmm12
19498 DB 68,15,194,228,2 ; cmpleps %xmm4,%xmm12
19499 DB 69,15,40,211 ; movaps %xmm11,%xmm10
19500 DB 68,15,92,212 ; subps %xmm4,%xmm10
19501 DB 65,15,40,225 ; movaps %xmm9,%xmm4
19502 DB 65,15,92,227 ; subps %xmm11,%xmm4
19503 DB 65,15,89,227 ; mulps %xmm11,%xmm4
19504 DB 65,15,94,226 ; divps %xmm10,%xmm4
19505 DB 65,15,88,227 ; addps %xmm11,%xmm4
19506 DB 69,15,40,236 ; movaps %xmm12,%xmm13
19507 DB 68,15,85,236 ; andnps %xmm4,%xmm13
19508 DB 69,15,84,204 ; andps %xmm12,%xmm9
19509 DB 69,15,86,205 ; orps %xmm13,%xmm9
19510 DB 15,40,229 ; movaps %xmm5,%xmm4
19511 DB 15,41,4,36 ; movaps %xmm0,(%rsp)
19512 DB 15,89,224 ; mulps %xmm0,%xmm4
19513 DB 68,15,92,197 ; subps %xmm5,%xmm8
19514 DB 15,88,232 ; addps %xmm0,%xmm5
19515 DB 15,92,236 ; subps %xmm4,%xmm5
19516 DB 68,15,40,236 ; movaps %xmm4,%xmm13
19517 DB 65,15,194,230,1 ; cmpltps %xmm14,%xmm4
19518 DB 15,40,196 ; movaps %xmm4,%xmm0
19519 DB 65,15,85,193 ; andnps %xmm9,%xmm0
19520 DB 69,15,92,203 ; subps %xmm11,%xmm9
19521 DB 69,15,92,235 ; subps %xmm11,%xmm13
19522 DB 69,15,89,205 ; mulps %xmm13,%xmm9
19523 DB 69,15,92,243 ; subps %xmm11,%xmm14
19524 DB 69,15,94,206 ; divps %xmm14,%xmm9
19525 DB 69,15,88,203 ; addps %xmm11,%xmm9
19526 DB 68,15,84,204 ; andps %xmm4,%xmm9
19527 DB 68,15,86,200 ; orps %xmm0,%xmm9
19528 DB 15,40,195 ; movaps %xmm3,%xmm0
19529 DB 65,15,92,195 ; subps %xmm11,%xmm0
19530 DB 65,15,89,195 ; mulps %xmm11,%xmm0
19531 DB 65,15,94,194 ; divps %xmm10,%xmm0
19532 DB 65,15,88,195 ; addps %xmm11,%xmm0
19533 DB 65,15,40,204 ; movaps %xmm12,%xmm1
19534 DB 15,85,200 ; andnps %xmm0,%xmm1
19535 DB 65,15,84,220 ; andps %xmm12,%xmm3
19536 DB 15,86,217 ; orps %xmm1,%xmm3
19537 DB 15,40,196 ; movaps %xmm4,%xmm0
19538 DB 15,85,195 ; andnps %xmm3,%xmm0
19539 DB 65,15,92,219 ; subps %xmm11,%xmm3
19540 DB 65,15,89,221 ; mulps %xmm13,%xmm3
19541 DB 65,15,94,222 ; divps %xmm14,%xmm3
19542 DB 65,15,88,219 ; addps %xmm11,%xmm3
19543 DB 15,84,220 ; andps %xmm4,%xmm3
19544 DB 15,86,216 ; orps %xmm0,%xmm3
19545 DB 15,40,194 ; movaps %xmm2,%xmm0
19546 DB 65,15,92,195 ; subps %xmm11,%xmm0
19547 DB 65,15,89,195 ; mulps %xmm11,%xmm0
19548 DB 65,15,94,194 ; divps %xmm10,%xmm0
19549 DB 65,15,88,195 ; addps %xmm11,%xmm0
19550 DB 65,15,84,212 ; andps %xmm12,%xmm2
19551 DB 68,15,85,224 ; andnps %xmm0,%xmm12
19552 DB 68,15,86,226 ; orps %xmm2,%xmm12
19553 DB 15,40,196 ; movaps %xmm4,%xmm0
19554 DB 65,15,85,196 ; andnps %xmm12,%xmm0
19555 DB 69,15,92,227 ; subps %xmm11,%xmm12
19556 DB 69,15,89,229 ; mulps %xmm13,%xmm12
19557 DB 69,15,94,230 ; divps %xmm14,%xmm12
19558 DB 69,15,88,227 ; addps %xmm11,%xmm12
19559 DB 68,15,84,228 ; andps %xmm4,%xmm12
19560 DB 68,15,86,224 ; orps %xmm0,%xmm12
19561 DB 15,87,192 ; xorps %xmm0,%xmm0
19562 DB 68,15,95,200 ; maxps %xmm0,%xmm9
19563 DB 15,95,216 ; maxps %xmm0,%xmm3
19564 DB 68,15,95,224 ; maxps %xmm0,%xmm12
19565 DB 65,15,40,192 ; movaps %xmm8,%xmm0
19566 DB 15,40,100,36,48 ; movaps 0x30(%rsp),%xmm4
19567 DB 15,89,196 ; mulps %xmm4,%xmm0
19568 DB 15,88,248 ; addps %xmm0,%xmm7
19569 DB 65,15,88,249 ; addps %xmm9,%xmm7
19570 DB 65,15,40,192 ; movaps %xmm8,%xmm0
19571 DB 68,15,40,84,36,64 ; movaps 0x40(%rsp),%xmm10
19572 DB 65,15,89,194 ; mulps %xmm10,%xmm0
19573 DB 15,40,76,36,16 ; movaps 0x10(%rsp),%xmm1
19574 DB 15,88,200 ; addps %xmm0,%xmm1
19575 DB 15,88,203 ; addps %xmm3,%xmm1
19576 DB 68,15,89,198 ; mulps %xmm6,%xmm8
19577 DB 69,15,88,199 ; addps %xmm15,%xmm8
19578 DB 69,15,88,196 ; addps %xmm12,%xmm8
19579 DB 72,173 ; lods %ds:(%rsi),%rax
19580 DB 15,40,199 ; movaps %xmm7,%xmm0
19581 DB 65,15,40,208 ; movaps %xmm8,%xmm2
19582 DB 15,40,221 ; movaps %xmm5,%xmm3
19583 DB 65,15,40,234 ; movaps %xmm10,%xmm5
19584 DB 15,40,60,36 ; movaps (%rsp),%xmm7
19585 DB 72,131,196,88 ; add $0x58,%rsp
Mike Kleinbb338332017-05-04 12:42:52 -040019586 DB 255,224 ; jmpq *%rax
19587
Mike Kleind7e06ae2017-03-29 16:33:06 -040019588PUBLIC _sk_clamp_0_sse2
19589_sk_clamp_0_sse2 LABEL PROC
19590 DB 69,15,87,192 ; xorps %xmm8,%xmm8
19591 DB 65,15,95,192 ; maxps %xmm8,%xmm0
19592 DB 65,15,95,200 ; maxps %xmm8,%xmm1
19593 DB 65,15,95,208 ; maxps %xmm8,%xmm2
19594 DB 65,15,95,216 ; maxps %xmm8,%xmm3
19595 DB 72,173 ; lods %ds:(%rsi),%rax
19596 DB 255,224 ; jmpq *%rax
19597
19598PUBLIC _sk_clamp_1_sse2
19599_sk_clamp_1_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040019600 DB 68,15,40,5,40,55,0,0 ; movaps 0x3728(%rip),%xmm8 # 4ff0 <_sk_callback_sse2+0x35a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040019601 DB 65,15,93,192 ; minps %xmm8,%xmm0
19602 DB 65,15,93,200 ; minps %xmm8,%xmm1
19603 DB 65,15,93,208 ; minps %xmm8,%xmm2
19604 DB 65,15,93,216 ; minps %xmm8,%xmm3
19605 DB 72,173 ; lods %ds:(%rsi),%rax
19606 DB 255,224 ; jmpq *%rax
19607
19608PUBLIC _sk_clamp_a_sse2
19609_sk_clamp_a_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040019610 DB 15,93,29,29,55,0,0 ; minps 0x371d(%rip),%xmm3 # 5000 <_sk_callback_sse2+0x36a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040019611 DB 15,93,195 ; minps %xmm3,%xmm0
19612 DB 15,93,203 ; minps %xmm3,%xmm1
19613 DB 15,93,211 ; minps %xmm3,%xmm2
19614 DB 72,173 ; lods %ds:(%rsi),%rax
19615 DB 255,224 ; jmpq *%rax
19616
19617PUBLIC _sk_set_rgb_sse2
19618_sk_set_rgb_sse2 LABEL PROC
19619 DB 72,173 ; lods %ds:(%rsi),%rax
19620 DB 243,15,16,0 ; movss (%rax),%xmm0
19621 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
19622 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
19623 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
19624 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
19625 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
19626 DB 72,173 ; lods %ds:(%rsi),%rax
19627 DB 255,224 ; jmpq *%rax
19628
19629PUBLIC _sk_swap_rb_sse2
19630_sk_swap_rb_sse2 LABEL PROC
19631 DB 68,15,40,192 ; movaps %xmm0,%xmm8
19632 DB 72,173 ; lods %ds:(%rsi),%rax
19633 DB 15,40,194 ; movaps %xmm2,%xmm0
19634 DB 65,15,40,208 ; movaps %xmm8,%xmm2
19635 DB 255,224 ; jmpq *%rax
19636
19637PUBLIC _sk_swap_sse2
19638_sk_swap_sse2 LABEL PROC
19639 DB 68,15,40,195 ; movaps %xmm3,%xmm8
19640 DB 68,15,40,202 ; movaps %xmm2,%xmm9
19641 DB 68,15,40,209 ; movaps %xmm1,%xmm10
19642 DB 68,15,40,216 ; movaps %xmm0,%xmm11
19643 DB 72,173 ; lods %ds:(%rsi),%rax
19644 DB 15,40,196 ; movaps %xmm4,%xmm0
19645 DB 15,40,205 ; movaps %xmm5,%xmm1
19646 DB 15,40,214 ; movaps %xmm6,%xmm2
19647 DB 15,40,223 ; movaps %xmm7,%xmm3
19648 DB 65,15,40,227 ; movaps %xmm11,%xmm4
19649 DB 65,15,40,234 ; movaps %xmm10,%xmm5
19650 DB 65,15,40,241 ; movaps %xmm9,%xmm6
19651 DB 65,15,40,248 ; movaps %xmm8,%xmm7
19652 DB 255,224 ; jmpq *%rax
19653
19654PUBLIC _sk_move_src_dst_sse2
19655_sk_move_src_dst_sse2 LABEL PROC
19656 DB 72,173 ; lods %ds:(%rsi),%rax
19657 DB 15,40,224 ; movaps %xmm0,%xmm4
19658 DB 15,40,233 ; movaps %xmm1,%xmm5
19659 DB 15,40,242 ; movaps %xmm2,%xmm6
19660 DB 15,40,251 ; movaps %xmm3,%xmm7
19661 DB 255,224 ; jmpq *%rax
19662
19663PUBLIC _sk_move_dst_src_sse2
19664_sk_move_dst_src_sse2 LABEL PROC
19665 DB 72,173 ; lods %ds:(%rsi),%rax
19666 DB 15,40,196 ; movaps %xmm4,%xmm0
19667 DB 15,40,205 ; movaps %xmm5,%xmm1
19668 DB 15,40,214 ; movaps %xmm6,%xmm2
19669 DB 15,40,223 ; movaps %xmm7,%xmm3
19670 DB 255,224 ; jmpq *%rax
19671
19672PUBLIC _sk_premul_sse2
19673_sk_premul_sse2 LABEL PROC
19674 DB 15,89,195 ; mulps %xmm3,%xmm0
19675 DB 15,89,203 ; mulps %xmm3,%xmm1
19676 DB 15,89,211 ; mulps %xmm3,%xmm2
19677 DB 72,173 ; lods %ds:(%rsi),%rax
19678 DB 255,224 ; jmpq *%rax
19679
19680PUBLIC _sk_unpremul_sse2
19681_sk_unpremul_sse2 LABEL PROC
19682 DB 69,15,87,192 ; xorps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040019683 DB 68,15,40,13,136,54,0,0 ; movaps 0x3688(%rip),%xmm9 # 5010 <_sk_callback_sse2+0x37a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040019684 DB 68,15,94,203 ; divps %xmm3,%xmm9
19685 DB 68,15,194,195,4 ; cmpneqps %xmm3,%xmm8
19686 DB 69,15,84,193 ; andps %xmm9,%xmm8
19687 DB 65,15,89,192 ; mulps %xmm8,%xmm0
19688 DB 65,15,89,200 ; mulps %xmm8,%xmm1
19689 DB 65,15,89,208 ; mulps %xmm8,%xmm2
19690 DB 72,173 ; lods %ds:(%rsi),%rax
19691 DB 255,224 ; jmpq *%rax
19692
19693PUBLIC _sk_from_srgb_sse2
19694_sk_from_srgb_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040019695 DB 68,15,40,5,115,54,0,0 ; movaps 0x3673(%rip),%xmm8 # 5020 <_sk_callback_sse2+0x38a>
Mike Kleinfe560a82017-05-01 12:56:35 -040019696 DB 68,15,40,232 ; movaps %xmm0,%xmm13
19697 DB 69,15,89,232 ; mulps %xmm8,%xmm13
19698 DB 68,15,40,216 ; movaps %xmm0,%xmm11
19699 DB 69,15,89,219 ; mulps %xmm11,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040019700 DB 68,15,40,13,107,54,0,0 ; movaps 0x366b(%rip),%xmm9 # 5030 <_sk_callback_sse2+0x39a>
Mike Kleinfe560a82017-05-01 12:56:35 -040019701 DB 68,15,40,240 ; movaps %xmm0,%xmm14
19702 DB 69,15,89,241 ; mulps %xmm9,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040019703 DB 68,15,40,21,107,54,0,0 ; movaps 0x366b(%rip),%xmm10 # 5040 <_sk_callback_sse2+0x3aa>
Mike Kleind7e06ae2017-03-29 16:33:06 -040019704 DB 69,15,88,242 ; addps %xmm10,%xmm14
Mike Kleinfe560a82017-05-01 12:56:35 -040019705 DB 69,15,89,243 ; mulps %xmm11,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040019706 DB 68,15,40,29,107,54,0,0 ; movaps 0x366b(%rip),%xmm11 # 5050 <_sk_callback_sse2+0x3ba>
Mike Kleind7e06ae2017-03-29 16:33:06 -040019707 DB 69,15,88,243 ; addps %xmm11,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040019708 DB 68,15,40,37,111,54,0,0 ; movaps 0x366f(%rip),%xmm12 # 5060 <_sk_callback_sse2+0x3ca>
Mike Kleind7e06ae2017-03-29 16:33:06 -040019709 DB 65,15,194,196,1 ; cmpltps %xmm12,%xmm0
19710 DB 68,15,84,232 ; andps %xmm0,%xmm13
19711 DB 65,15,85,198 ; andnps %xmm14,%xmm0
19712 DB 65,15,86,197 ; orps %xmm13,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040019713 DB 68,15,40,233 ; movaps %xmm1,%xmm13
19714 DB 69,15,89,232 ; mulps %xmm8,%xmm13
Mike Kleind7e06ae2017-03-29 16:33:06 -040019715 DB 68,15,40,241 ; movaps %xmm1,%xmm14
19716 DB 69,15,89,246 ; mulps %xmm14,%xmm14
Mike Kleinfe560a82017-05-01 12:56:35 -040019717 DB 68,15,40,249 ; movaps %xmm1,%xmm15
19718 DB 69,15,89,249 ; mulps %xmm9,%xmm15
Mike Kleind7e06ae2017-03-29 16:33:06 -040019719 DB 69,15,88,250 ; addps %xmm10,%xmm15
19720 DB 69,15,89,254 ; mulps %xmm14,%xmm15
19721 DB 69,15,88,251 ; addps %xmm11,%xmm15
19722 DB 65,15,194,204,1 ; cmpltps %xmm12,%xmm1
19723 DB 68,15,84,233 ; andps %xmm1,%xmm13
19724 DB 65,15,85,207 ; andnps %xmm15,%xmm1
19725 DB 65,15,86,205 ; orps %xmm13,%xmm1
19726 DB 68,15,89,194 ; mulps %xmm2,%xmm8
19727 DB 68,15,40,234 ; movaps %xmm2,%xmm13
19728 DB 69,15,89,237 ; mulps %xmm13,%xmm13
19729 DB 68,15,89,202 ; mulps %xmm2,%xmm9
19730 DB 69,15,88,202 ; addps %xmm10,%xmm9
19731 DB 69,15,89,205 ; mulps %xmm13,%xmm9
19732 DB 69,15,88,203 ; addps %xmm11,%xmm9
19733 DB 65,15,194,212,1 ; cmpltps %xmm12,%xmm2
19734 DB 68,15,84,194 ; andps %xmm2,%xmm8
19735 DB 65,15,85,209 ; andnps %xmm9,%xmm2
19736 DB 65,15,86,208 ; orps %xmm8,%xmm2
19737 DB 72,173 ; lods %ds:(%rsi),%rax
19738 DB 255,224 ; jmpq *%rax
19739
19740PUBLIC _sk_to_srgb_sse2
19741_sk_to_srgb_sse2 LABEL PROC
Mike Kleinf45e3d72017-05-15 17:36:59 -040019742 DB 68,15,82,232 ; rsqrtps %xmm0,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040019743 DB 68,15,40,5,252,53,0,0 ; movaps 0x35fc(%rip),%xmm8 # 5070 <_sk_callback_sse2+0x3da>
Mike Kleinfe560a82017-05-01 12:56:35 -040019744 DB 68,15,40,240 ; movaps %xmm0,%xmm14
19745 DB 69,15,89,240 ; mulps %xmm8,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040019746 DB 68,15,40,13,252,53,0,0 ; movaps 0x35fc(%rip),%xmm9 # 5080 <_sk_callback_sse2+0x3ea>
Mike Kleinf45e3d72017-05-15 17:36:59 -040019747 DB 69,15,40,253 ; movaps %xmm13,%xmm15
19748 DB 69,15,89,249 ; mulps %xmm9,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040019749 DB 68,15,40,21,252,53,0,0 ; movaps 0x35fc(%rip),%xmm10 # 5090 <_sk_callback_sse2+0x3fa>
Mike Kleinf45e3d72017-05-15 17:36:59 -040019750 DB 69,15,88,250 ; addps %xmm10,%xmm15
19751 DB 69,15,89,253 ; mulps %xmm13,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040019752 DB 68,15,40,29,252,53,0,0 ; movaps 0x35fc(%rip),%xmm11 # 50a0 <_sk_callback_sse2+0x40a>
Mike Kleinfe560a82017-05-01 12:56:35 -040019753 DB 69,15,88,251 ; addps %xmm11,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040019754 DB 68,15,40,37,0,54,0,0 ; movaps 0x3600(%rip),%xmm12 # 50b0 <_sk_callback_sse2+0x41a>
Mike Kleinf45e3d72017-05-15 17:36:59 -040019755 DB 69,15,88,236 ; addps %xmm12,%xmm13
19756 DB 69,15,83,237 ; rcpps %xmm13,%xmm13
19757 DB 69,15,89,239 ; mulps %xmm15,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040019758 DB 68,15,40,61,252,53,0,0 ; movaps 0x35fc(%rip),%xmm15 # 50c0 <_sk_callback_sse2+0x42a>
Mike Kleinf45e3d72017-05-15 17:36:59 -040019759 DB 65,15,194,199,1 ; cmpltps %xmm15,%xmm0
19760 DB 68,15,84,240 ; andps %xmm0,%xmm14
19761 DB 65,15,85,197 ; andnps %xmm13,%xmm0
19762 DB 65,15,86,198 ; orps %xmm14,%xmm0
19763 DB 68,15,82,233 ; rsqrtps %xmm1,%xmm13
19764 DB 69,15,40,245 ; movaps %xmm13,%xmm14
19765 DB 69,15,89,241 ; mulps %xmm9,%xmm14
19766 DB 69,15,88,242 ; addps %xmm10,%xmm14
19767 DB 69,15,89,245 ; mulps %xmm13,%xmm14
19768 DB 69,15,88,243 ; addps %xmm11,%xmm14
19769 DB 69,15,88,236 ; addps %xmm12,%xmm13
19770 DB 69,15,83,237 ; rcpps %xmm13,%xmm13
19771 DB 69,15,89,238 ; mulps %xmm14,%xmm13
Mike Kleinfe560a82017-05-01 12:56:35 -040019772 DB 68,15,40,241 ; movaps %xmm1,%xmm14
19773 DB 69,15,89,240 ; mulps %xmm8,%xmm14
Mike Kleinf45e3d72017-05-15 17:36:59 -040019774 DB 65,15,194,207,1 ; cmpltps %xmm15,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040019775 DB 68,15,84,241 ; andps %xmm1,%xmm14
Mike Kleinf45e3d72017-05-15 17:36:59 -040019776 DB 65,15,85,205 ; andnps %xmm13,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040019777 DB 65,15,86,206 ; orps %xmm14,%xmm1
Mike Kleinf45e3d72017-05-15 17:36:59 -040019778 DB 68,15,82,234 ; rsqrtps %xmm2,%xmm13
19779 DB 69,15,89,205 ; mulps %xmm13,%xmm9
19780 DB 69,15,88,202 ; addps %xmm10,%xmm9
19781 DB 69,15,89,205 ; mulps %xmm13,%xmm9
19782 DB 69,15,88,203 ; addps %xmm11,%xmm9
19783 DB 69,15,88,236 ; addps %xmm12,%xmm13
19784 DB 69,15,83,213 ; rcpps %xmm13,%xmm10
19785 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040019786 DB 68,15,89,194 ; mulps %xmm2,%xmm8
Mike Kleinf45e3d72017-05-15 17:36:59 -040019787 DB 65,15,194,215,1 ; cmpltps %xmm15,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040019788 DB 68,15,84,194 ; andps %xmm2,%xmm8
Mike Kleinf45e3d72017-05-15 17:36:59 -040019789 DB 65,15,85,210 ; andnps %xmm10,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040019790 DB 65,15,86,208 ; orps %xmm8,%xmm2
19791 DB 72,173 ; lods %ds:(%rsi),%rax
19792 DB 255,224 ; jmpq *%rax
19793
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019794PUBLIC _sk_rgb_to_hsl_sse2
19795_sk_rgb_to_hsl_sse2 LABEL PROC
19796 DB 68,15,40,201 ; movaps %xmm1,%xmm9
19797 DB 68,15,40,192 ; movaps %xmm0,%xmm8
19798 DB 69,15,40,208 ; movaps %xmm8,%xmm10
19799 DB 69,15,95,209 ; maxps %xmm9,%xmm10
19800 DB 68,15,95,210 ; maxps %xmm2,%xmm10
19801 DB 69,15,40,216 ; movaps %xmm8,%xmm11
19802 DB 69,15,93,217 ; minps %xmm9,%xmm11
19803 DB 68,15,93,218 ; minps %xmm2,%xmm11
19804 DB 65,15,40,202 ; movaps %xmm10,%xmm1
19805 DB 65,15,92,203 ; subps %xmm11,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040019806 DB 68,15,40,45,85,53,0,0 ; movaps 0x3555(%rip),%xmm13 # 50d0 <_sk_callback_sse2+0x43a>
Mike Kleinfe560a82017-05-01 12:56:35 -040019807 DB 68,15,94,233 ; divps %xmm1,%xmm13
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019808 DB 65,15,40,194 ; movaps %xmm10,%xmm0
19809 DB 65,15,194,192,0 ; cmpeqps %xmm8,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040019810 DB 69,15,40,225 ; movaps %xmm9,%xmm12
19811 DB 68,15,92,226 ; subps %xmm2,%xmm12
19812 DB 69,15,89,229 ; mulps %xmm13,%xmm12
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019813 DB 69,15,40,241 ; movaps %xmm9,%xmm14
19814 DB 68,15,194,242,1 ; cmpltps %xmm2,%xmm14
Mike Klein8ca33562017-05-23 08:07:43 -040019815 DB 68,15,84,53,59,53,0,0 ; andps 0x353b(%rip),%xmm14 # 50e0 <_sk_callback_sse2+0x44a>
Mike Kleinfe560a82017-05-01 12:56:35 -040019816 DB 69,15,88,244 ; addps %xmm12,%xmm14
19817 DB 69,15,40,250 ; movaps %xmm10,%xmm15
19818 DB 69,15,194,249,0 ; cmpeqps %xmm9,%xmm15
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019819 DB 65,15,92,208 ; subps %xmm8,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040019820 DB 65,15,89,213 ; mulps %xmm13,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040019821 DB 68,15,40,37,46,53,0,0 ; movaps 0x352e(%rip),%xmm12 # 50f0 <_sk_callback_sse2+0x45a>
Mike Kleinfe560a82017-05-01 12:56:35 -040019822 DB 65,15,88,212 ; addps %xmm12,%xmm2
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019823 DB 69,15,92,193 ; subps %xmm9,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040019824 DB 69,15,89,197 ; mulps %xmm13,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040019825 DB 68,15,88,5,42,53,0,0 ; addps 0x352a(%rip),%xmm8 # 5100 <_sk_callback_sse2+0x46a>
Mike Kleinfe560a82017-05-01 12:56:35 -040019826 DB 65,15,84,215 ; andps %xmm15,%xmm2
19827 DB 69,15,85,248 ; andnps %xmm8,%xmm15
19828 DB 68,15,86,250 ; orps %xmm2,%xmm15
19829 DB 68,15,84,240 ; andps %xmm0,%xmm14
19830 DB 65,15,85,199 ; andnps %xmm15,%xmm0
19831 DB 65,15,86,198 ; orps %xmm14,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040019832 DB 15,89,5,27,53,0,0 ; mulps 0x351b(%rip),%xmm0 # 5110 <_sk_callback_sse2+0x47a>
Mike Kleinfe560a82017-05-01 12:56:35 -040019833 DB 69,15,40,194 ; movaps %xmm10,%xmm8
19834 DB 69,15,194,195,4 ; cmpneqps %xmm11,%xmm8
19835 DB 65,15,84,192 ; andps %xmm8,%xmm0
19836 DB 69,15,92,226 ; subps %xmm10,%xmm12
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019837 DB 69,15,88,211 ; addps %xmm11,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040019838 DB 68,15,40,13,14,53,0,0 ; movaps 0x350e(%rip),%xmm9 # 5120 <_sk_callback_sse2+0x48a>
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019839 DB 65,15,40,210 ; movaps %xmm10,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040019840 DB 65,15,89,209 ; mulps %xmm9,%xmm2
19841 DB 68,15,194,202,1 ; cmpltps %xmm2,%xmm9
19842 DB 69,15,92,227 ; subps %xmm11,%xmm12
19843 DB 69,15,84,225 ; andps %xmm9,%xmm12
19844 DB 69,15,85,202 ; andnps %xmm10,%xmm9
19845 DB 69,15,86,204 ; orps %xmm12,%xmm9
19846 DB 65,15,94,201 ; divps %xmm9,%xmm1
19847 DB 65,15,84,200 ; andps %xmm8,%xmm1
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019848 DB 72,173 ; lods %ds:(%rsi),%rax
19849 DB 255,224 ; jmpq *%rax
19850
19851PUBLIC _sk_hsl_to_rgb_sse2
19852_sk_hsl_to_rgb_sse2 LABEL PROC
Mike Klein879a08a2017-05-01 15:34:01 -040019853 DB 72,131,236,120 ; sub $0x78,%rsp
19854 DB 15,41,124,36,96 ; movaps %xmm7,0x60(%rsp)
19855 DB 15,41,116,36,80 ; movaps %xmm6,0x50(%rsp)
19856 DB 15,41,108,36,64 ; movaps %xmm5,0x40(%rsp)
19857 DB 15,41,100,36,48 ; movaps %xmm4,0x30(%rsp)
19858 DB 15,41,92,36,32 ; movaps %xmm3,0x20(%rsp)
Mike Klein5664e652017-05-01 16:01:38 -040019859 DB 68,15,40,218 ; movaps %xmm2,%xmm11
19860 DB 15,40,240 ; movaps %xmm0,%xmm6
Mike Klein8ca33562017-05-23 08:07:43 -040019861 DB 68,15,40,13,201,52,0,0 ; movaps 0x34c9(%rip),%xmm9 # 5130 <_sk_callback_sse2+0x49a>
Mike Klein5664e652017-05-01 16:01:38 -040019862 DB 69,15,40,209 ; movaps %xmm9,%xmm10
19863 DB 69,15,194,211,2 ; cmpleps %xmm11,%xmm10
19864 DB 15,40,193 ; movaps %xmm1,%xmm0
19865 DB 15,87,219 ; xorps %xmm3,%xmm3
19866 DB 15,194,217,0 ; cmpeqps %xmm1,%xmm3
19867 DB 15,40,251 ; movaps %xmm3,%xmm7
19868 DB 15,41,60,36 ; movaps %xmm7,(%rsp)
19869 DB 65,15,89,203 ; mulps %xmm11,%xmm1
Mike Klein879a08a2017-05-01 15:34:01 -040019870 DB 15,92,193 ; subps %xmm1,%xmm0
Mike Klein5664e652017-05-01 16:01:38 -040019871 DB 65,15,84,194 ; andps %xmm10,%xmm0
19872 DB 68,15,85,209 ; andnps %xmm1,%xmm10
19873 DB 68,15,86,208 ; orps %xmm0,%xmm10
19874 DB 68,15,41,92,36,16 ; movaps %xmm11,0x10(%rsp)
19875 DB 69,15,88,211 ; addps %xmm11,%xmm10
19876 DB 69,15,88,219 ; addps %xmm11,%xmm11
19877 DB 69,15,92,218 ; subps %xmm10,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040019878 DB 15,40,5,147,52,0,0 ; movaps 0x3493(%rip),%xmm0 # 5140 <_sk_callback_sse2+0x4aa>
Mike Klein5664e652017-05-01 16:01:38 -040019879 DB 15,88,198 ; addps %xmm6,%xmm0
19880 DB 243,15,91,200 ; cvttps2dq %xmm0,%xmm1
19881 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
19882 DB 15,40,216 ; movaps %xmm0,%xmm3
19883 DB 15,194,217,1 ; cmpltps %xmm1,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040019884 DB 15,84,29,139,52,0,0 ; andps 0x348b(%rip),%xmm3 # 5150 <_sk_callback_sse2+0x4ba>
Mike Klein5664e652017-05-01 16:01:38 -040019885 DB 15,92,203 ; subps %xmm3,%xmm1
19886 DB 15,92,193 ; subps %xmm1,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040019887 DB 68,15,40,45,141,52,0,0 ; movaps 0x348d(%rip),%xmm13 # 5160 <_sk_callback_sse2+0x4ca>
Mike Klein5664e652017-05-01 16:01:38 -040019888 DB 69,15,40,197 ; movaps %xmm13,%xmm8
19889 DB 68,15,194,192,2 ; cmpleps %xmm0,%xmm8
19890 DB 69,15,40,242 ; movaps %xmm10,%xmm14
19891 DB 69,15,92,243 ; subps %xmm11,%xmm14
Mike Klein879a08a2017-05-01 15:34:01 -040019892 DB 65,15,40,217 ; movaps %xmm9,%xmm3
Mike Klein5664e652017-05-01 16:01:38 -040019893 DB 15,194,216,2 ; cmpleps %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040019894 DB 15,40,21,157,52,0,0 ; movaps 0x349d(%rip),%xmm2 # 5190 <_sk_callback_sse2+0x4fa>
Mike Klein5664e652017-05-01 16:01:38 -040019895 DB 68,15,40,250 ; movaps %xmm2,%xmm15
19896 DB 68,15,194,248,2 ; cmpleps %xmm0,%xmm15
Mike Klein8ca33562017-05-23 08:07:43 -040019897 DB 15,40,13,109,52,0,0 ; movaps 0x346d(%rip),%xmm1 # 5170 <_sk_callback_sse2+0x4da>
Mike Klein5664e652017-05-01 16:01:38 -040019898 DB 15,89,193 ; mulps %xmm1,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040019899 DB 15,40,45,115,52,0,0 ; movaps 0x3473(%rip),%xmm5 # 5180 <_sk_callback_sse2+0x4ea>
Mike Klein5664e652017-05-01 16:01:38 -040019900 DB 15,40,229 ; movaps %xmm5,%xmm4
Mike Klein879a08a2017-05-01 15:34:01 -040019901 DB 15,92,224 ; subps %xmm0,%xmm4
Mike Klein5664e652017-05-01 16:01:38 -040019902 DB 65,15,89,230 ; mulps %xmm14,%xmm4
19903 DB 65,15,88,227 ; addps %xmm11,%xmm4
19904 DB 69,15,40,227 ; movaps %xmm11,%xmm12
19905 DB 69,15,84,224 ; andps %xmm8,%xmm12
19906 DB 68,15,85,196 ; andnps %xmm4,%xmm8
19907 DB 69,15,86,196 ; orps %xmm12,%xmm8
19908 DB 68,15,84,195 ; andps %xmm3,%xmm8
19909 DB 65,15,85,218 ; andnps %xmm10,%xmm3
19910 DB 65,15,86,216 ; orps %xmm8,%xmm3
19911 DB 65,15,89,198 ; mulps %xmm14,%xmm0
19912 DB 65,15,88,195 ; addps %xmm11,%xmm0
19913 DB 65,15,84,223 ; andps %xmm15,%xmm3
19914 DB 68,15,85,248 ; andnps %xmm0,%xmm15
19915 DB 68,15,86,251 ; orps %xmm3,%xmm15
19916 DB 68,15,40,199 ; movaps %xmm7,%xmm8
19917 DB 69,15,85,199 ; andnps %xmm15,%xmm8
19918 DB 243,15,91,198 ; cvttps2dq %xmm6,%xmm0
19919 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
19920 DB 15,40,222 ; movaps %xmm6,%xmm3
19921 DB 15,194,216,1 ; cmpltps %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040019922 DB 15,84,29,232,51,0,0 ; andps 0x33e8(%rip),%xmm3 # 5150 <_sk_callback_sse2+0x4ba>
Mike Klein5664e652017-05-01 16:01:38 -040019923 DB 15,92,195 ; subps %xmm3,%xmm0
19924 DB 68,15,40,230 ; movaps %xmm6,%xmm12
19925 DB 68,15,92,224 ; subps %xmm0,%xmm12
19926 DB 69,15,40,253 ; movaps %xmm13,%xmm15
19927 DB 69,15,194,252,2 ; cmpleps %xmm12,%xmm15
19928 DB 65,15,40,225 ; movaps %xmm9,%xmm4
19929 DB 65,15,194,228,2 ; cmpleps %xmm12,%xmm4
19930 DB 15,40,218 ; movaps %xmm2,%xmm3
19931 DB 65,15,194,220,2 ; cmpleps %xmm12,%xmm3
19932 DB 68,15,89,225 ; mulps %xmm1,%xmm12
19933 DB 15,40,197 ; movaps %xmm5,%xmm0
19934 DB 65,15,92,196 ; subps %xmm12,%xmm0
19935 DB 65,15,89,198 ; mulps %xmm14,%xmm0
19936 DB 65,15,88,195 ; addps %xmm11,%xmm0
19937 DB 65,15,40,251 ; movaps %xmm11,%xmm7
Mike Klein879a08a2017-05-01 15:34:01 -040019938 DB 65,15,84,255 ; andps %xmm15,%xmm7
19939 DB 68,15,85,248 ; andnps %xmm0,%xmm15
19940 DB 68,15,86,255 ; orps %xmm7,%xmm15
Mike Klein5664e652017-05-01 16:01:38 -040019941 DB 68,15,84,252 ; andps %xmm4,%xmm15
19942 DB 65,15,85,226 ; andnps %xmm10,%xmm4
19943 DB 65,15,86,231 ; orps %xmm15,%xmm4
19944 DB 69,15,89,230 ; mulps %xmm14,%xmm12
19945 DB 69,15,88,227 ; addps %xmm11,%xmm12
19946 DB 15,84,227 ; andps %xmm3,%xmm4
19947 DB 65,15,85,220 ; andnps %xmm12,%xmm3
19948 DB 15,86,220 ; orps %xmm4,%xmm3
19949 DB 15,40,60,36 ; movaps (%rsp),%xmm7
19950 DB 15,40,231 ; movaps %xmm7,%xmm4
19951 DB 15,85,227 ; andnps %xmm3,%xmm4
Mike Klein8ca33562017-05-23 08:07:43 -040019952 DB 15,88,53,193,51,0,0 ; addps 0x33c1(%rip),%xmm6 # 51a0 <_sk_callback_sse2+0x50a>
Mike Klein5664e652017-05-01 16:01:38 -040019953 DB 243,15,91,198 ; cvttps2dq %xmm6,%xmm0
19954 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
19955 DB 15,40,222 ; movaps %xmm6,%xmm3
19956 DB 15,194,216,1 ; cmpltps %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040019957 DB 15,84,29,92,51,0,0 ; andps 0x335c(%rip),%xmm3 # 5150 <_sk_callback_sse2+0x4ba>
Mike Klein5664e652017-05-01 16:01:38 -040019958 DB 15,92,195 ; subps %xmm3,%xmm0
19959 DB 15,92,240 ; subps %xmm0,%xmm6
19960 DB 15,89,206 ; mulps %xmm6,%xmm1
19961 DB 15,92,233 ; subps %xmm1,%xmm5
19962 DB 65,15,89,238 ; mulps %xmm14,%xmm5
19963 DB 65,15,89,206 ; mulps %xmm14,%xmm1
19964 DB 65,15,88,235 ; addps %xmm11,%xmm5
19965 DB 65,15,88,203 ; addps %xmm11,%xmm1
19966 DB 68,15,194,238,2 ; cmpleps %xmm6,%xmm13
19967 DB 69,15,84,221 ; andps %xmm13,%xmm11
19968 DB 68,15,85,237 ; andnps %xmm5,%xmm13
19969 DB 69,15,86,235 ; orps %xmm11,%xmm13
19970 DB 68,15,194,206,2 ; cmpleps %xmm6,%xmm9
19971 DB 69,15,84,233 ; andps %xmm9,%xmm13
19972 DB 69,15,85,202 ; andnps %xmm10,%xmm9
19973 DB 69,15,86,205 ; orps %xmm13,%xmm9
19974 DB 15,194,214,2 ; cmpleps %xmm6,%xmm2
19975 DB 68,15,84,202 ; andps %xmm2,%xmm9
19976 DB 15,85,209 ; andnps %xmm1,%xmm2
19977 DB 65,15,86,209 ; orps %xmm9,%xmm2
19978 DB 15,40,68,36,16 ; movaps 0x10(%rsp),%xmm0
19979 DB 15,40,207 ; movaps %xmm7,%xmm1
19980 DB 15,84,193 ; andps %xmm1,%xmm0
19981 DB 15,85,202 ; andnps %xmm2,%xmm1
19982 DB 68,15,86,192 ; orps %xmm0,%xmm8
19983 DB 15,86,224 ; orps %xmm0,%xmm4
19984 DB 15,86,193 ; orps %xmm1,%xmm0
19985 DB 15,40,208 ; movaps %xmm0,%xmm2
Mike Klein879a08a2017-05-01 15:34:01 -040019986 DB 72,173 ; lods %ds:(%rsi),%rax
19987 DB 65,15,40,192 ; movaps %xmm8,%xmm0
Mike Klein5664e652017-05-01 16:01:38 -040019988 DB 15,40,204 ; movaps %xmm4,%xmm1
Mike Klein879a08a2017-05-01 15:34:01 -040019989 DB 15,40,92,36,32 ; movaps 0x20(%rsp),%xmm3
19990 DB 15,40,100,36,48 ; movaps 0x30(%rsp),%xmm4
19991 DB 15,40,108,36,64 ; movaps 0x40(%rsp),%xmm5
19992 DB 15,40,116,36,80 ; movaps 0x50(%rsp),%xmm6
19993 DB 15,40,124,36,96 ; movaps 0x60(%rsp),%xmm7
19994 DB 72,131,196,120 ; add $0x78,%rsp
Mike Kleindb1cbcb2017-04-12 08:35:41 -040019995 DB 255,224 ; jmpq *%rax
19996
Mike Kleind7e06ae2017-03-29 16:33:06 -040019997PUBLIC _sk_scale_1_float_sse2
19998_sk_scale_1_float_sse2 LABEL PROC
19999 DB 72,173 ; lods %ds:(%rsi),%rax
20000 DB 243,68,15,16,0 ; movss (%rax),%xmm8
20001 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
20002 DB 65,15,89,192 ; mulps %xmm8,%xmm0
20003 DB 65,15,89,200 ; mulps %xmm8,%xmm1
20004 DB 65,15,89,208 ; mulps %xmm8,%xmm2
20005 DB 65,15,89,216 ; mulps %xmm8,%xmm3
20006 DB 72,173 ; lods %ds:(%rsi),%rax
20007 DB 255,224 ; jmpq *%rax
20008
20009PUBLIC _sk_scale_u8_sse2
20010_sk_scale_u8_sse2 LABEL PROC
20011 DB 72,173 ; lods %ds:(%rsi),%rax
20012 DB 72,139,0 ; mov (%rax),%rax
20013 DB 102,68,15,110,4,56 ; movd (%rax,%rdi,1),%xmm8
20014 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9
20015 DB 102,69,15,96,193 ; punpcklbw %xmm9,%xmm8
20016 DB 102,69,15,97,193 ; punpcklwd %xmm9,%xmm8
20017 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040020018 DB 68,15,89,5,230,50,0,0 ; mulps 0x32e6(%rip),%xmm8 # 51b0 <_sk_callback_sse2+0x51a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020019 DB 65,15,89,192 ; mulps %xmm8,%xmm0
20020 DB 65,15,89,200 ; mulps %xmm8,%xmm1
20021 DB 65,15,89,208 ; mulps %xmm8,%xmm2
20022 DB 65,15,89,216 ; mulps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040020023 DB 72,173 ; lods %ds:(%rsi),%rax
20024 DB 255,224 ; jmpq *%rax
20025
20026PUBLIC _sk_lerp_1_float_sse2
20027_sk_lerp_1_float_sse2 LABEL PROC
20028 DB 72,173 ; lods %ds:(%rsi),%rax
20029 DB 243,68,15,16,0 ; movss (%rax),%xmm8
20030 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
20031 DB 15,92,196 ; subps %xmm4,%xmm0
20032 DB 65,15,89,192 ; mulps %xmm8,%xmm0
20033 DB 15,88,196 ; addps %xmm4,%xmm0
20034 DB 15,92,205 ; subps %xmm5,%xmm1
20035 DB 65,15,89,200 ; mulps %xmm8,%xmm1
20036 DB 15,88,205 ; addps %xmm5,%xmm1
20037 DB 15,92,214 ; subps %xmm6,%xmm2
20038 DB 65,15,89,208 ; mulps %xmm8,%xmm2
20039 DB 15,88,214 ; addps %xmm6,%xmm2
20040 DB 15,92,223 ; subps %xmm7,%xmm3
20041 DB 65,15,89,216 ; mulps %xmm8,%xmm3
20042 DB 15,88,223 ; addps %xmm7,%xmm3
20043 DB 72,173 ; lods %ds:(%rsi),%rax
20044 DB 255,224 ; jmpq *%rax
20045
20046PUBLIC _sk_lerp_u8_sse2
20047_sk_lerp_u8_sse2 LABEL PROC
20048 DB 72,173 ; lods %ds:(%rsi),%rax
20049 DB 72,139,0 ; mov (%rax),%rax
20050 DB 102,68,15,110,4,56 ; movd (%rax,%rdi,1),%xmm8
20051 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9
20052 DB 102,69,15,96,193 ; punpcklbw %xmm9,%xmm8
20053 DB 102,69,15,97,193 ; punpcklwd %xmm9,%xmm8
20054 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040020055 DB 68,15,89,5,132,50,0,0 ; mulps 0x3284(%rip),%xmm8 # 51c0 <_sk_callback_sse2+0x52a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040020056 DB 15,92,196 ; subps %xmm4,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040020057 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040020058 DB 15,88,196 ; addps %xmm4,%xmm0
20059 DB 15,92,205 ; subps %xmm5,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040020060 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040020061 DB 15,88,205 ; addps %xmm5,%xmm1
20062 DB 15,92,214 ; subps %xmm6,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040020063 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040020064 DB 15,88,214 ; addps %xmm6,%xmm2
20065 DB 15,92,223 ; subps %xmm7,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -040020066 DB 65,15,89,216 ; mulps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040020067 DB 15,88,223 ; addps %xmm7,%xmm3
20068 DB 72,173 ; lods %ds:(%rsi),%rax
20069 DB 255,224 ; jmpq *%rax
20070
20071PUBLIC _sk_lerp_565_sse2
20072_sk_lerp_565_sse2 LABEL PROC
20073 DB 72,173 ; lods %ds:(%rsi),%rax
20074 DB 72,139,0 ; mov (%rax),%rax
bungeman6f9f2592017-05-10 13:50:12 -040020075 DB 243,68,15,126,20,120 ; movq (%rax,%rdi,2),%xmm10
20076 DB 102,69,15,239,192 ; pxor %xmm8,%xmm8
20077 DB 102,69,15,97,208 ; punpcklwd %xmm8,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040020078 DB 102,68,15,111,5,74,50,0,0 ; movdqa 0x324a(%rip),%xmm8 # 51d0 <_sk_callback_sse2+0x53a>
bungeman6f9f2592017-05-10 13:50:12 -040020079 DB 102,69,15,219,194 ; pand %xmm10,%xmm8
Mike Klein308e6242017-04-27 13:56:33 -040020080 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040020081 DB 68,15,89,5,73,50,0,0 ; mulps 0x3249(%rip),%xmm8 # 51e0 <_sk_callback_sse2+0x54a>
20082 DB 102,68,15,111,13,80,50,0,0 ; movdqa 0x3250(%rip),%xmm9 # 51f0 <_sk_callback_sse2+0x55a>
bungeman6f9f2592017-05-10 13:50:12 -040020083 DB 102,69,15,219,202 ; pand %xmm10,%xmm9
20084 DB 69,15,91,201 ; cvtdq2ps %xmm9,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020085 DB 68,15,89,13,79,50,0,0 ; mulps 0x324f(%rip),%xmm9 # 5200 <_sk_callback_sse2+0x56a>
20086 DB 102,68,15,219,21,86,50,0,0 ; pand 0x3256(%rip),%xmm10 # 5210 <_sk_callback_sse2+0x57a>
bungeman6f9f2592017-05-10 13:50:12 -040020087 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040020088 DB 68,15,89,21,90,50,0,0 ; mulps 0x325a(%rip),%xmm10 # 5220 <_sk_callback_sse2+0x58a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040020089 DB 15,92,196 ; subps %xmm4,%xmm0
bungeman6f9f2592017-05-10 13:50:12 -040020090 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040020091 DB 15,88,196 ; addps %xmm4,%xmm0
20092 DB 15,92,205 ; subps %xmm5,%xmm1
bungeman6f9f2592017-05-10 13:50:12 -040020093 DB 65,15,89,201 ; mulps %xmm9,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040020094 DB 15,88,205 ; addps %xmm5,%xmm1
20095 DB 15,92,214 ; subps %xmm6,%xmm2
bungeman6f9f2592017-05-10 13:50:12 -040020096 DB 65,15,89,210 ; mulps %xmm10,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040020097 DB 15,88,214 ; addps %xmm6,%xmm2
bungeman6f9f2592017-05-10 13:50:12 -040020098 DB 15,92,223 ; subps %xmm7,%xmm3
20099 DB 68,15,89,195 ; mulps %xmm3,%xmm8
20100 DB 68,15,88,199 ; addps %xmm7,%xmm8
20101 DB 68,15,89,203 ; mulps %xmm3,%xmm9
20102 DB 68,15,88,207 ; addps %xmm7,%xmm9
20103 DB 65,15,89,218 ; mulps %xmm10,%xmm3
20104 DB 15,88,223 ; addps %xmm7,%xmm3
20105 DB 68,15,95,203 ; maxps %xmm3,%xmm9
20106 DB 69,15,95,193 ; maxps %xmm9,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -040020107 DB 72,173 ; lods %ds:(%rsi),%rax
bungeman6f9f2592017-05-10 13:50:12 -040020108 DB 65,15,40,216 ; movaps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040020109 DB 255,224 ; jmpq *%rax
20110
20111PUBLIC _sk_load_tables_sse2
20112_sk_load_tables_sse2 LABEL PROC
20113 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040020114 DB 76,139,0 ; mov (%rax),%r8
20115 DB 76,139,72,8 ; mov 0x8(%rax),%r9
20116 DB 243,69,15,111,12,184 ; movdqu (%r8,%rdi,4),%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020117 DB 102,68,15,111,5,10,50,0,0 ; movdqa 0x320a(%rip),%xmm8 # 5230 <_sk_callback_sse2+0x59a>
Mike Klein0aa742f2017-04-27 13:36:57 -040020118 DB 102,65,15,111,193 ; movdqa %xmm9,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040020119 DB 102,65,15,219,192 ; pand %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040020120 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1
20121 DB 102,73,15,126,200 ; movq %xmm1,%r8
20122 DB 102,72,15,126,193 ; movq %xmm0,%rcx
20123 DB 68,15,182,209 ; movzbl %cl,%r10d
Mike Kleind7e06ae2017-03-29 16:33:06 -040020124 DB 72,193,233,30 ; shr $0x1e,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040020125 DB 69,15,182,216 ; movzbl %r8b,%r11d
20126 DB 73,193,232,30 ; shr $0x1e,%r8
20127 DB 243,65,15,16,12,9 ; movss (%r9,%rcx,1),%xmm1
20128 DB 243,67,15,16,4,1 ; movss (%r9,%r8,1),%xmm0
20129 DB 15,20,200 ; unpcklps %xmm0,%xmm1
20130 DB 243,67,15,16,4,145 ; movss (%r9,%r10,4),%xmm0
20131 DB 243,67,15,16,20,153 ; movss (%r9,%r11,4),%xmm2
20132 DB 15,20,194 ; unpcklps %xmm2,%xmm0
20133 DB 15,20,193 ; unpcklps %xmm1,%xmm0
20134 DB 76,139,64,16 ; mov 0x10(%rax),%r8
20135 DB 102,65,15,111,201 ; movdqa %xmm9,%xmm1
20136 DB 102,15,114,209,8 ; psrld $0x8,%xmm1
20137 DB 102,65,15,219,200 ; pand %xmm8,%xmm1
20138 DB 102,15,112,209,78 ; pshufd $0x4e,%xmm1,%xmm2
20139 DB 102,73,15,126,209 ; movq %xmm2,%r9
20140 DB 102,72,15,126,201 ; movq %xmm1,%rcx
20141 DB 68,15,182,209 ; movzbl %cl,%r10d
20142 DB 72,193,233,30 ; shr $0x1e,%rcx
20143 DB 69,15,182,217 ; movzbl %r9b,%r11d
20144 DB 73,193,233,30 ; shr $0x1e,%r9
20145 DB 243,65,15,16,20,8 ; movss (%r8,%rcx,1),%xmm2
20146 DB 243,67,15,16,12,8 ; movss (%r8,%r9,1),%xmm1
20147 DB 15,20,209 ; unpcklps %xmm1,%xmm2
20148 DB 243,67,15,16,12,144 ; movss (%r8,%r10,4),%xmm1
20149 DB 243,67,15,16,28,152 ; movss (%r8,%r11,4),%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040020150 DB 15,20,203 ; unpcklps %xmm3,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040020151 DB 15,20,202 ; unpcklps %xmm2,%xmm1
20152 DB 76,139,64,24 ; mov 0x18(%rax),%r8
20153 DB 102,65,15,111,209 ; movdqa %xmm9,%xmm2
20154 DB 102,15,114,210,16 ; psrld $0x10,%xmm2
20155 DB 102,65,15,219,208 ; pand %xmm8,%xmm2
20156 DB 102,15,112,218,78 ; pshufd $0x4e,%xmm2,%xmm3
20157 DB 102,72,15,126,217 ; movq %xmm3,%rcx
20158 DB 102,72,15,126,208 ; movq %xmm2,%rax
20159 DB 68,15,182,200 ; movzbl %al,%r9d
Mike Kleind7e06ae2017-03-29 16:33:06 -040020160 DB 72,193,232,30 ; shr $0x1e,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040020161 DB 68,15,182,209 ; movzbl %cl,%r10d
20162 DB 72,193,233,30 ; shr $0x1e,%rcx
20163 DB 243,69,15,16,4,0 ; movss (%r8,%rax,1),%xmm8
20164 DB 243,65,15,16,20,8 ; movss (%r8,%rcx,1),%xmm2
20165 DB 68,15,20,194 ; unpcklps %xmm2,%xmm8
20166 DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2
20167 DB 243,67,15,16,28,144 ; movss (%r8,%r10,4),%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040020168 DB 15,20,211 ; unpcklps %xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040020169 DB 65,15,20,208 ; unpcklps %xmm8,%xmm2
20170 DB 102,65,15,114,209,24 ; psrld $0x18,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040020171 DB 65,15,91,217 ; cvtdq2ps %xmm9,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040020172 DB 15,89,29,23,49,0,0 ; mulps 0x3117(%rip),%xmm3 # 5240 <_sk_callback_sse2+0x5aa>
Mike Kleind7e06ae2017-03-29 16:33:06 -040020173 DB 72,173 ; lods %ds:(%rsi),%rax
20174 DB 255,224 ; jmpq *%rax
20175
Mike Kleina3735cd2017-04-17 13:19:05 -040020176PUBLIC _sk_load_tables_u16_be_sse2
20177_sk_load_tables_u16_be_sse2 LABEL PROC
20178 DB 72,173 ; lods %ds:(%rsi),%rax
20179 DB 72,139,8 ; mov (%rax),%rcx
20180 DB 76,139,64,8 ; mov 0x8(%rax),%r8
20181 DB 243,15,111,4,249 ; movdqu (%rcx,%rdi,8),%xmm0
20182 DB 243,15,111,76,249,16 ; movdqu 0x10(%rcx,%rdi,8),%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040020183 DB 102,68,15,111,200 ; movdqa %xmm0,%xmm9
20184 DB 102,68,15,97,201 ; punpcklwd %xmm1,%xmm9
Mike Kleina3735cd2017-04-17 13:19:05 -040020185 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040020186 DB 102,65,15,111,201 ; movdqa %xmm9,%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -040020187 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040020188 DB 102,68,15,105,200 ; punpckhwd %xmm0,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020189 DB 102,68,15,111,21,234,48,0,0 ; movdqa 0x30ea(%rip),%xmm10 # 5250 <_sk_callback_sse2+0x5ba>
Mike Kleina3735cd2017-04-17 13:19:05 -040020190 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040020191 DB 102,65,15,219,194 ; pand %xmm10,%xmm0
20192 DB 102,69,15,239,192 ; pxor %xmm8,%xmm8
Mike Kleina3735cd2017-04-17 13:19:05 -040020193 DB 102,65,15,97,192 ; punpcklwd %xmm8,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040020194 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3
20195 DB 102,72,15,126,217 ; movq %xmm3,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040020196 DB 68,15,182,201 ; movzbl %cl,%r9d
Mike Kleina3735cd2017-04-17 13:19:05 -040020197 DB 72,193,233,32 ; shr $0x20,%rcx
20198 DB 102,73,15,126,194 ; movq %xmm0,%r10
Mike Klein0aa742f2017-04-27 13:36:57 -040020199 DB 69,15,182,218 ; movzbl %r10b,%r11d
Mike Kleina3735cd2017-04-17 13:19:05 -040020200 DB 73,193,234,30 ; shr $0x1e,%r10
20201 DB 243,67,15,16,28,16 ; movss (%r8,%r10,1),%xmm3
20202 DB 243,65,15,16,4,136 ; movss (%r8,%rcx,4),%xmm0
20203 DB 15,20,216 ; unpcklps %xmm0,%xmm3
20204 DB 243,67,15,16,4,152 ; movss (%r8,%r11,4),%xmm0
20205 DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2
20206 DB 15,20,194 ; unpcklps %xmm2,%xmm0
20207 DB 15,20,195 ; unpcklps %xmm3,%xmm0
20208 DB 76,139,80,16 ; mov 0x10(%rax),%r10
20209 DB 102,15,115,217,8 ; psrldq $0x8,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040020210 DB 102,65,15,219,202 ; pand %xmm10,%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -040020211 DB 102,65,15,97,200 ; punpcklwd %xmm8,%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -040020212 DB 102,15,112,209,78 ; pshufd $0x4e,%xmm1,%xmm2
20213 DB 102,73,15,126,208 ; movq %xmm2,%r8
Mike Klein0aa742f2017-04-27 13:36:57 -040020214 DB 69,15,182,200 ; movzbl %r8b,%r9d
Mike Kleina3735cd2017-04-17 13:19:05 -040020215 DB 73,193,232,32 ; shr $0x20,%r8
20216 DB 102,72,15,126,201 ; movq %xmm1,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040020217 DB 68,15,182,217 ; movzbl %cl,%r11d
Mike Kleina3735cd2017-04-17 13:19:05 -040020218 DB 72,193,233,30 ; shr $0x1e,%rcx
20219 DB 243,65,15,16,20,10 ; movss (%r10,%rcx,1),%xmm2
20220 DB 243,67,15,16,12,130 ; movss (%r10,%r8,4),%xmm1
20221 DB 15,20,209 ; unpcklps %xmm1,%xmm2
20222 DB 243,67,15,16,12,154 ; movss (%r10,%r11,4),%xmm1
20223 DB 243,67,15,16,28,138 ; movss (%r10,%r9,4),%xmm3
20224 DB 15,20,203 ; unpcklps %xmm3,%xmm1
20225 DB 15,20,202 ; unpcklps %xmm2,%xmm1
20226 DB 76,139,72,24 ; mov 0x18(%rax),%r9
Mike Kleina3735cd2017-04-17 13:19:05 -040020227 DB 102,69,15,219,209 ; pand %xmm9,%xmm10
Mike Klein0aa742f2017-04-27 13:36:57 -040020228 DB 102,69,15,97,208 ; punpcklwd %xmm8,%xmm10
Mike Kleina3735cd2017-04-17 13:19:05 -040020229 DB 102,65,15,112,210,78 ; pshufd $0x4e,%xmm10,%xmm2
20230 DB 102,72,15,126,209 ; movq %xmm2,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040020231 DB 68,15,182,193 ; movzbl %cl,%r8d
Mike Kleina3735cd2017-04-17 13:19:05 -040020232 DB 72,193,233,32 ; shr $0x20,%rcx
20233 DB 102,76,15,126,208 ; movq %xmm10,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040020234 DB 68,15,182,208 ; movzbl %al,%r10d
Mike Kleina3735cd2017-04-17 13:19:05 -040020235 DB 72,193,232,30 ; shr $0x1e,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040020236 DB 243,69,15,16,20,1 ; movss (%r9,%rax,1),%xmm10
Mike Kleina3735cd2017-04-17 13:19:05 -040020237 DB 243,65,15,16,20,137 ; movss (%r9,%rcx,4),%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040020238 DB 68,15,20,210 ; unpcklps %xmm2,%xmm10
Mike Kleina3735cd2017-04-17 13:19:05 -040020239 DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2
20240 DB 243,67,15,16,28,129 ; movss (%r9,%r8,4),%xmm3
20241 DB 15,20,211 ; unpcklps %xmm3,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040020242 DB 65,15,20,210 ; unpcklps %xmm10,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040020243 DB 102,65,15,112,217,78 ; pshufd $0x4e,%xmm9,%xmm3
20244 DB 102,68,15,111,203 ; movdqa %xmm3,%xmm9
20245 DB 102,65,15,113,241,8 ; psllw $0x8,%xmm9
20246 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3
20247 DB 102,65,15,235,217 ; por %xmm9,%xmm3
20248 DB 102,65,15,97,216 ; punpcklwd %xmm8,%xmm3
20249 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040020250 DB 15,89,29,217,47,0,0 ; mulps 0x2fd9(%rip),%xmm3 # 5260 <_sk_callback_sse2+0x5ca>
Mike Kleina3735cd2017-04-17 13:19:05 -040020251 DB 72,173 ; lods %ds:(%rsi),%rax
20252 DB 255,224 ; jmpq *%rax
20253
20254PUBLIC _sk_load_tables_rgb_u16_be_sse2
20255_sk_load_tables_rgb_u16_be_sse2 LABEL PROC
20256 DB 72,173 ; lods %ds:(%rsi),%rax
20257 DB 76,141,12,127 ; lea (%rdi,%rdi,2),%r9
20258 DB 72,139,8 ; mov (%rax),%rcx
20259 DB 76,139,64,8 ; mov 0x8(%rax),%r8
20260 DB 243,70,15,111,28,73 ; movdqu (%rcx,%r9,2),%xmm11
20261 DB 243,66,15,111,68,73,8 ; movdqu 0x8(%rcx,%r9,2),%xmm0
20262 DB 102,15,115,216,4 ; psrldq $0x4,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040020263 DB 102,69,15,111,211 ; movdqa %xmm11,%xmm10
20264 DB 102,65,15,115,218,6 ; psrldq $0x6,%xmm10
Mike Kleina3735cd2017-04-17 13:19:05 -040020265 DB 102,68,15,97,216 ; punpcklwd %xmm0,%xmm11
20266 DB 102,15,115,216,6 ; psrldq $0x6,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040020267 DB 102,68,15,97,208 ; punpcklwd %xmm0,%xmm10
Mike Kleina3735cd2017-04-17 13:19:05 -040020268 DB 102,65,15,111,195 ; movdqa %xmm11,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040020269 DB 102,65,15,97,194 ; punpcklwd %xmm10,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040020270 DB 102,68,15,111,5,153,47,0,0 ; movdqa 0x2f99(%rip),%xmm8 # 5270 <_sk_callback_sse2+0x5da>
Mike Klein0aa742f2017-04-27 13:36:57 -040020271 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1
20272 DB 102,65,15,219,192 ; pand %xmm8,%xmm0
20273 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9
20274 DB 102,65,15,97,193 ; punpcklwd %xmm9,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040020275 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3
20276 DB 102,72,15,126,217 ; movq %xmm3,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040020277 DB 68,15,182,201 ; movzbl %cl,%r9d
Mike Kleina3735cd2017-04-17 13:19:05 -040020278 DB 72,193,233,32 ; shr $0x20,%rcx
20279 DB 102,73,15,126,194 ; movq %xmm0,%r10
Mike Klein0aa742f2017-04-27 13:36:57 -040020280 DB 69,15,182,218 ; movzbl %r10b,%r11d
Mike Kleina3735cd2017-04-17 13:19:05 -040020281 DB 73,193,234,30 ; shr $0x1e,%r10
20282 DB 243,67,15,16,28,16 ; movss (%r8,%r10,1),%xmm3
20283 DB 243,65,15,16,4,136 ; movss (%r8,%rcx,4),%xmm0
20284 DB 15,20,216 ; unpcklps %xmm0,%xmm3
20285 DB 243,67,15,16,4,152 ; movss (%r8,%r11,4),%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040020286 DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2
20287 DB 15,20,194 ; unpcklps %xmm2,%xmm0
Mike Kleina3735cd2017-04-17 13:19:05 -040020288 DB 15,20,195 ; unpcklps %xmm3,%xmm0
20289 DB 76,139,80,16 ; mov 0x10(%rax),%r10
Mike Klein0aa742f2017-04-27 13:36:57 -040020290 DB 102,65,15,219,200 ; pand %xmm8,%xmm1
20291 DB 102,65,15,97,201 ; punpcklwd %xmm9,%xmm1
20292 DB 102,15,112,209,78 ; pshufd $0x4e,%xmm1,%xmm2
20293 DB 102,73,15,126,208 ; movq %xmm2,%r8
20294 DB 69,15,182,200 ; movzbl %r8b,%r9d
Mike Kleina3735cd2017-04-17 13:19:05 -040020295 DB 73,193,232,32 ; shr $0x20,%r8
Mike Klein0aa742f2017-04-27 13:36:57 -040020296 DB 102,72,15,126,201 ; movq %xmm1,%rcx
20297 DB 68,15,182,217 ; movzbl %cl,%r11d
Mike Kleina3735cd2017-04-17 13:19:05 -040020298 DB 72,193,233,30 ; shr $0x1e,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040020299 DB 243,65,15,16,20,10 ; movss (%r10,%rcx,1),%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -040020300 DB 243,67,15,16,12,130 ; movss (%r10,%r8,4),%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040020301 DB 15,20,209 ; unpcklps %xmm1,%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -040020302 DB 243,67,15,16,12,154 ; movss (%r10,%r11,4),%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040020303 DB 243,67,15,16,28,138 ; movss (%r10,%r9,4),%xmm3
Mike Kleina3735cd2017-04-17 13:19:05 -040020304 DB 15,20,203 ; unpcklps %xmm3,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040020305 DB 15,20,202 ; unpcklps %xmm2,%xmm1
Mike Kleina3735cd2017-04-17 13:19:05 -040020306 DB 76,139,72,24 ; mov 0x18(%rax),%r9
Mike Klein0aa742f2017-04-27 13:36:57 -040020307 DB 102,69,15,105,218 ; punpckhwd %xmm10,%xmm11
20308 DB 102,69,15,219,216 ; pand %xmm8,%xmm11
20309 DB 102,69,15,97,217 ; punpcklwd %xmm9,%xmm11
Mike Kleina3735cd2017-04-17 13:19:05 -040020310 DB 102,65,15,112,211,78 ; pshufd $0x4e,%xmm11,%xmm2
20311 DB 102,72,15,126,209 ; movq %xmm2,%rcx
Mike Klein0aa742f2017-04-27 13:36:57 -040020312 DB 68,15,182,193 ; movzbl %cl,%r8d
Mike Kleina3735cd2017-04-17 13:19:05 -040020313 DB 72,193,233,32 ; shr $0x20,%rcx
20314 DB 102,76,15,126,216 ; movq %xmm11,%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040020315 DB 68,15,182,208 ; movzbl %al,%r10d
Mike Kleina3735cd2017-04-17 13:19:05 -040020316 DB 72,193,232,30 ; shr $0x1e,%rax
20317 DB 243,69,15,16,4,1 ; movss (%r9,%rax,1),%xmm8
20318 DB 243,65,15,16,20,137 ; movss (%r9,%rcx,4),%xmm2
20319 DB 68,15,20,194 ; unpcklps %xmm2,%xmm8
20320 DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2
20321 DB 243,67,15,16,28,129 ; movss (%r9,%r8,4),%xmm3
20322 DB 15,20,211 ; unpcklps %xmm3,%xmm2
20323 DB 65,15,20,208 ; unpcklps %xmm8,%xmm2
Mike Kleina3735cd2017-04-17 13:19:05 -040020324 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040020325 DB 15,40,29,168,46,0,0 ; movaps 0x2ea8(%rip),%xmm3 # 5280 <_sk_callback_sse2+0x5ea>
Mike Kleina3735cd2017-04-17 13:19:05 -040020326 DB 255,224 ; jmpq *%rax
20327
Mike Klein40de6da2017-04-07 13:09:29 -040020328PUBLIC _sk_byte_tables_sse2
20329_sk_byte_tables_sse2 LABEL PROC
20330 DB 65,86 ; push %r14
20331 DB 83 ; push %rbx
20332 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040020333 DB 68,15,40,5,169,46,0,0 ; movaps 0x2ea9(%rip),%xmm8 # 5290 <_sk_callback_sse2+0x5fa>
Mike Klein40de6da2017-04-07 13:09:29 -040020334 DB 65,15,89,192 ; mulps %xmm8,%xmm0
20335 DB 102,15,91,192 ; cvtps2dq %xmm0,%xmm0
20336 DB 102,72,15,126,193 ; movq %xmm0,%rcx
20337 DB 65,137,200 ; mov %ecx,%r8d
20338 DB 72,193,233,32 ; shr $0x20,%rcx
20339 DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0
20340 DB 102,73,15,126,193 ; movq %xmm0,%r9
20341 DB 69,137,202 ; mov %r9d,%r10d
20342 DB 77,137,203 ; mov %r9,%r11
20343 DB 73,193,235,32 ; shr $0x20,%r11
20344 DB 76,139,48 ; mov (%rax),%r14
20345 DB 76,139,72,8 ; mov 0x8(%rax),%r9
20346 DB 71,15,182,20,22 ; movzbl (%r14,%r10,1),%r10d
20347 DB 67,15,182,28,30 ; movzbl (%r14,%r11,1),%ebx
20348 DB 193,227,8 ; shl $0x8,%ebx
20349 DB 68,9,211 ; or %r10d,%ebx
20350 DB 71,15,182,4,6 ; movzbl (%r14,%r8,1),%r8d
20351 DB 65,15,182,12,14 ; movzbl (%r14,%rcx,1),%ecx
20352 DB 193,225,8 ; shl $0x8,%ecx
20353 DB 68,9,193 ; or %r8d,%ecx
20354 DB 102,15,196,193,0 ; pinsrw $0x0,%ecx,%xmm0
20355 DB 102,15,196,195,1 ; pinsrw $0x1,%ebx,%xmm0
20356 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9
20357 DB 102,65,15,96,193 ; punpcklbw %xmm9,%xmm0
20358 DB 102,65,15,97,193 ; punpcklwd %xmm9,%xmm0
20359 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040020360 DB 68,15,40,21,70,46,0,0 ; movaps 0x2e46(%rip),%xmm10 # 52a0 <_sk_callback_sse2+0x60a>
Mike Klein40de6da2017-04-07 13:09:29 -040020361 DB 65,15,89,194 ; mulps %xmm10,%xmm0
20362 DB 65,15,89,200 ; mulps %xmm8,%xmm1
20363 DB 102,15,91,201 ; cvtps2dq %xmm1,%xmm1
20364 DB 102,72,15,126,201 ; movq %xmm1,%rcx
20365 DB 65,137,200 ; mov %ecx,%r8d
20366 DB 72,193,233,32 ; shr $0x20,%rcx
20367 DB 102,15,112,201,78 ; pshufd $0x4e,%xmm1,%xmm1
20368 DB 102,72,15,126,203 ; movq %xmm1,%rbx
20369 DB 65,137,218 ; mov %ebx,%r10d
20370 DB 72,193,235,32 ; shr $0x20,%rbx
20371 DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d
20372 DB 65,15,182,28,25 ; movzbl (%r9,%rbx,1),%ebx
20373 DB 193,227,8 ; shl $0x8,%ebx
20374 DB 68,9,211 ; or %r10d,%ebx
20375 DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d
20376 DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx
20377 DB 193,225,8 ; shl $0x8,%ecx
20378 DB 68,9,193 ; or %r8d,%ecx
20379 DB 102,15,196,201,0 ; pinsrw $0x0,%ecx,%xmm1
20380 DB 102,15,196,203,1 ; pinsrw $0x1,%ebx,%xmm1
20381 DB 102,65,15,96,201 ; punpcklbw %xmm9,%xmm1
20382 DB 102,65,15,97,201 ; punpcklwd %xmm9,%xmm1
20383 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
20384 DB 65,15,89,202 ; mulps %xmm10,%xmm1
20385 DB 76,139,72,16 ; mov 0x10(%rax),%r9
20386 DB 65,15,89,208 ; mulps %xmm8,%xmm2
20387 DB 102,15,91,210 ; cvtps2dq %xmm2,%xmm2
20388 DB 102,72,15,126,211 ; movq %xmm2,%rbx
20389 DB 65,137,216 ; mov %ebx,%r8d
20390 DB 72,193,235,32 ; shr $0x20,%rbx
20391 DB 102,15,112,210,78 ; pshufd $0x4e,%xmm2,%xmm2
20392 DB 102,72,15,126,209 ; movq %xmm2,%rcx
20393 DB 65,137,202 ; mov %ecx,%r10d
20394 DB 72,193,233,32 ; shr $0x20,%rcx
20395 DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d
20396 DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx
20397 DB 193,225,8 ; shl $0x8,%ecx
20398 DB 68,9,209 ; or %r10d,%ecx
20399 DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d
20400 DB 65,15,182,28,25 ; movzbl (%r9,%rbx,1),%ebx
20401 DB 193,227,8 ; shl $0x8,%ebx
20402 DB 68,9,195 ; or %r8d,%ebx
20403 DB 102,15,196,211,0 ; pinsrw $0x0,%ebx,%xmm2
20404 DB 102,15,196,209,1 ; pinsrw $0x1,%ecx,%xmm2
20405 DB 102,65,15,96,209 ; punpcklbw %xmm9,%xmm2
20406 DB 102,65,15,97,209 ; punpcklwd %xmm9,%xmm2
20407 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
20408 DB 65,15,89,210 ; mulps %xmm10,%xmm2
20409 DB 72,139,64,24 ; mov 0x18(%rax),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040020410 DB 65,15,89,216 ; mulps %xmm8,%xmm3
20411 DB 102,15,91,219 ; cvtps2dq %xmm3,%xmm3
Mike Klein40de6da2017-04-07 13:09:29 -040020412 DB 102,72,15,126,217 ; movq %xmm3,%rcx
20413 DB 65,137,200 ; mov %ecx,%r8d
20414 DB 72,193,233,32 ; shr $0x20,%rcx
20415 DB 102,15,112,219,78 ; pshufd $0x4e,%xmm3,%xmm3
20416 DB 102,72,15,126,219 ; movq %xmm3,%rbx
20417 DB 65,137,217 ; mov %ebx,%r9d
20418 DB 72,193,235,32 ; shr $0x20,%rbx
20419 DB 70,15,182,12,8 ; movzbl (%rax,%r9,1),%r9d
20420 DB 15,182,28,24 ; movzbl (%rax,%rbx,1),%ebx
20421 DB 193,227,8 ; shl $0x8,%ebx
20422 DB 68,9,203 ; or %r9d,%ebx
20423 DB 70,15,182,4,0 ; movzbl (%rax,%r8,1),%r8d
20424 DB 15,182,4,8 ; movzbl (%rax,%rcx,1),%eax
20425 DB 193,224,8 ; shl $0x8,%eax
20426 DB 68,9,192 ; or %r8d,%eax
20427 DB 102,15,196,216,0 ; pinsrw $0x0,%eax,%xmm3
20428 DB 102,15,196,219,1 ; pinsrw $0x1,%ebx,%xmm3
20429 DB 102,65,15,96,217 ; punpcklbw %xmm9,%xmm3
20430 DB 102,65,15,97,217 ; punpcklwd %xmm9,%xmm3
20431 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
20432 DB 65,15,89,218 ; mulps %xmm10,%xmm3
20433 DB 72,173 ; lods %ds:(%rsi),%rax
20434 DB 91 ; pop %rbx
20435 DB 65,94 ; pop %r14
20436 DB 255,224 ; jmpq *%rax
20437
20438PUBLIC _sk_byte_tables_rgb_sse2
20439_sk_byte_tables_rgb_sse2 LABEL PROC
20440 DB 65,86 ; push %r14
20441 DB 83 ; push %rbx
20442 DB 72,173 ; lods %ds:(%rsi),%rax
20443 DB 139,72,24 ; mov 0x18(%rax),%ecx
20444 DB 255,201 ; dec %ecx
20445 DB 102,68,15,110,193 ; movd %ecx,%xmm8
20446 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
20447 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
20448 DB 65,15,89,192 ; mulps %xmm8,%xmm0
20449 DB 102,15,91,192 ; cvtps2dq %xmm0,%xmm0
20450 DB 102,72,15,126,193 ; movq %xmm0,%rcx
20451 DB 65,137,200 ; mov %ecx,%r8d
20452 DB 72,193,233,32 ; shr $0x20,%rcx
20453 DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0
20454 DB 102,73,15,126,193 ; movq %xmm0,%r9
20455 DB 69,137,202 ; mov %r9d,%r10d
20456 DB 77,137,203 ; mov %r9,%r11
20457 DB 73,193,235,32 ; shr $0x20,%r11
20458 DB 76,139,48 ; mov (%rax),%r14
20459 DB 76,139,72,8 ; mov 0x8(%rax),%r9
20460 DB 71,15,182,20,22 ; movzbl (%r14,%r10,1),%r10d
20461 DB 67,15,182,28,30 ; movzbl (%r14,%r11,1),%ebx
20462 DB 193,227,8 ; shl $0x8,%ebx
20463 DB 68,9,211 ; or %r10d,%ebx
20464 DB 71,15,182,4,6 ; movzbl (%r14,%r8,1),%r8d
20465 DB 65,15,182,12,14 ; movzbl (%r14,%rcx,1),%ecx
20466 DB 193,225,8 ; shl $0x8,%ecx
20467 DB 68,9,193 ; or %r8d,%ecx
20468 DB 102,15,196,193,0 ; pinsrw $0x0,%ecx,%xmm0
20469 DB 102,15,196,195,1 ; pinsrw $0x1,%ebx,%xmm0
20470 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9
20471 DB 102,65,15,96,193 ; punpcklbw %xmm9,%xmm0
20472 DB 102,65,15,97,193 ; punpcklwd %xmm9,%xmm0
20473 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040020474 DB 68,15,40,21,153,44,0,0 ; movaps 0x2c99(%rip),%xmm10 # 52b0 <_sk_callback_sse2+0x61a>
Mike Klein40de6da2017-04-07 13:09:29 -040020475 DB 65,15,89,194 ; mulps %xmm10,%xmm0
20476 DB 65,15,89,200 ; mulps %xmm8,%xmm1
20477 DB 102,15,91,201 ; cvtps2dq %xmm1,%xmm1
20478 DB 102,72,15,126,201 ; movq %xmm1,%rcx
20479 DB 65,137,200 ; mov %ecx,%r8d
20480 DB 72,193,233,32 ; shr $0x20,%rcx
20481 DB 102,15,112,201,78 ; pshufd $0x4e,%xmm1,%xmm1
20482 DB 102,72,15,126,203 ; movq %xmm1,%rbx
20483 DB 65,137,218 ; mov %ebx,%r10d
20484 DB 72,193,235,32 ; shr $0x20,%rbx
20485 DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d
20486 DB 65,15,182,28,25 ; movzbl (%r9,%rbx,1),%ebx
20487 DB 193,227,8 ; shl $0x8,%ebx
20488 DB 68,9,211 ; or %r10d,%ebx
20489 DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d
20490 DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx
20491 DB 193,225,8 ; shl $0x8,%ecx
20492 DB 68,9,193 ; or %r8d,%ecx
20493 DB 102,15,196,201,0 ; pinsrw $0x0,%ecx,%xmm1
20494 DB 102,15,196,203,1 ; pinsrw $0x1,%ebx,%xmm1
20495 DB 102,65,15,96,201 ; punpcklbw %xmm9,%xmm1
20496 DB 102,65,15,97,201 ; punpcklwd %xmm9,%xmm1
20497 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
20498 DB 65,15,89,202 ; mulps %xmm10,%xmm1
20499 DB 72,139,64,16 ; mov 0x10(%rax),%rax
20500 DB 65,15,89,208 ; mulps %xmm8,%xmm2
20501 DB 102,15,91,210 ; cvtps2dq %xmm2,%xmm2
20502 DB 102,72,15,126,209 ; movq %xmm2,%rcx
20503 DB 65,137,200 ; mov %ecx,%r8d
20504 DB 72,193,233,32 ; shr $0x20,%rcx
20505 DB 102,15,112,210,78 ; pshufd $0x4e,%xmm2,%xmm2
20506 DB 102,72,15,126,211 ; movq %xmm2,%rbx
20507 DB 65,137,217 ; mov %ebx,%r9d
20508 DB 72,193,235,32 ; shr $0x20,%rbx
20509 DB 70,15,182,12,8 ; movzbl (%rax,%r9,1),%r9d
20510 DB 15,182,28,24 ; movzbl (%rax,%rbx,1),%ebx
20511 DB 193,227,8 ; shl $0x8,%ebx
20512 DB 68,9,203 ; or %r9d,%ebx
20513 DB 70,15,182,4,0 ; movzbl (%rax,%r8,1),%r8d
20514 DB 15,182,4,8 ; movzbl (%rax,%rcx,1),%eax
20515 DB 193,224,8 ; shl $0x8,%eax
20516 DB 68,9,192 ; or %r8d,%eax
20517 DB 102,15,196,208,0 ; pinsrw $0x0,%eax,%xmm2
20518 DB 102,15,196,211,1 ; pinsrw $0x1,%ebx,%xmm2
20519 DB 102,65,15,96,209 ; punpcklbw %xmm9,%xmm2
20520 DB 102,65,15,97,209 ; punpcklwd %xmm9,%xmm2
20521 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
20522 DB 65,15,89,210 ; mulps %xmm10,%xmm2
20523 DB 72,173 ; lods %ds:(%rsi),%rax
20524 DB 91 ; pop %rbx
20525 DB 65,94 ; pop %r14
20526 DB 255,224 ; jmpq *%rax
20527
Mike Kleinc7d9c0b2017-04-17 14:43:59 -040020528PUBLIC _sk_table_r_sse2
20529_sk_table_r_sse2 LABEL PROC
20530 DB 72,173 ; lods %ds:(%rsi),%rax
20531 DB 76,139,8 ; mov (%rax),%r9
20532 DB 139,64,8 ; mov 0x8(%rax),%eax
20533 DB 255,200 ; dec %eax
20534 DB 102,68,15,110,192 ; movd %eax,%xmm8
20535 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
20536 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
20537 DB 68,15,89,192 ; mulps %xmm0,%xmm8
20538 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
20539 DB 102,65,15,112,192,78 ; pshufd $0x4e,%xmm8,%xmm0
20540 DB 102,72,15,126,192 ; movq %xmm0,%rax
20541 DB 65,137,192 ; mov %eax,%r8d
20542 DB 72,193,232,32 ; shr $0x20,%rax
20543 DB 102,76,15,126,193 ; movq %xmm8,%rcx
20544 DB 65,137,202 ; mov %ecx,%r10d
20545 DB 72,193,233,32 ; shr $0x20,%rcx
20546 DB 243,69,15,16,4,137 ; movss (%r9,%rcx,4),%xmm8
20547 DB 243,65,15,16,4,129 ; movss (%r9,%rax,4),%xmm0
20548 DB 68,15,20,192 ; unpcklps %xmm0,%xmm8
20549 DB 243,67,15,16,4,145 ; movss (%r9,%r10,4),%xmm0
20550 DB 243,71,15,16,12,129 ; movss (%r9,%r8,4),%xmm9
20551 DB 65,15,20,193 ; unpcklps %xmm9,%xmm0
20552 DB 65,15,20,192 ; unpcklps %xmm8,%xmm0
20553 DB 72,173 ; lods %ds:(%rsi),%rax
20554 DB 255,224 ; jmpq *%rax
20555
20556PUBLIC _sk_table_g_sse2
20557_sk_table_g_sse2 LABEL PROC
20558 DB 72,173 ; lods %ds:(%rsi),%rax
20559 DB 76,139,8 ; mov (%rax),%r9
20560 DB 139,64,8 ; mov 0x8(%rax),%eax
20561 DB 255,200 ; dec %eax
20562 DB 102,68,15,110,192 ; movd %eax,%xmm8
20563 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
20564 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
20565 DB 68,15,89,193 ; mulps %xmm1,%xmm8
20566 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
20567 DB 102,65,15,112,200,78 ; pshufd $0x4e,%xmm8,%xmm1
20568 DB 102,72,15,126,200 ; movq %xmm1,%rax
20569 DB 65,137,192 ; mov %eax,%r8d
20570 DB 72,193,232,32 ; shr $0x20,%rax
20571 DB 102,76,15,126,193 ; movq %xmm8,%rcx
20572 DB 65,137,202 ; mov %ecx,%r10d
20573 DB 72,193,233,32 ; shr $0x20,%rcx
20574 DB 243,69,15,16,4,137 ; movss (%r9,%rcx,4),%xmm8
20575 DB 243,65,15,16,12,129 ; movss (%r9,%rax,4),%xmm1
20576 DB 68,15,20,193 ; unpcklps %xmm1,%xmm8
20577 DB 243,67,15,16,12,145 ; movss (%r9,%r10,4),%xmm1
20578 DB 243,71,15,16,12,129 ; movss (%r9,%r8,4),%xmm9
20579 DB 65,15,20,201 ; unpcklps %xmm9,%xmm1
20580 DB 65,15,20,200 ; unpcklps %xmm8,%xmm1
20581 DB 72,173 ; lods %ds:(%rsi),%rax
20582 DB 255,224 ; jmpq *%rax
20583
20584PUBLIC _sk_table_b_sse2
20585_sk_table_b_sse2 LABEL PROC
20586 DB 72,173 ; lods %ds:(%rsi),%rax
20587 DB 76,139,8 ; mov (%rax),%r9
20588 DB 139,64,8 ; mov 0x8(%rax),%eax
20589 DB 255,200 ; dec %eax
20590 DB 102,68,15,110,192 ; movd %eax,%xmm8
20591 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
20592 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
20593 DB 68,15,89,194 ; mulps %xmm2,%xmm8
20594 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
20595 DB 102,65,15,112,208,78 ; pshufd $0x4e,%xmm8,%xmm2
20596 DB 102,72,15,126,208 ; movq %xmm2,%rax
20597 DB 65,137,192 ; mov %eax,%r8d
20598 DB 72,193,232,32 ; shr $0x20,%rax
20599 DB 102,76,15,126,193 ; movq %xmm8,%rcx
20600 DB 65,137,202 ; mov %ecx,%r10d
20601 DB 72,193,233,32 ; shr $0x20,%rcx
20602 DB 243,69,15,16,4,137 ; movss (%r9,%rcx,4),%xmm8
20603 DB 243,65,15,16,20,129 ; movss (%r9,%rax,4),%xmm2
20604 DB 68,15,20,194 ; unpcklps %xmm2,%xmm8
20605 DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2
20606 DB 243,71,15,16,12,129 ; movss (%r9,%r8,4),%xmm9
20607 DB 65,15,20,209 ; unpcklps %xmm9,%xmm2
20608 DB 65,15,20,208 ; unpcklps %xmm8,%xmm2
20609 DB 72,173 ; lods %ds:(%rsi),%rax
20610 DB 255,224 ; jmpq *%rax
20611
20612PUBLIC _sk_table_a_sse2
20613_sk_table_a_sse2 LABEL PROC
20614 DB 72,173 ; lods %ds:(%rsi),%rax
20615 DB 76,139,8 ; mov (%rax),%r9
20616 DB 139,64,8 ; mov 0x8(%rax),%eax
20617 DB 255,200 ; dec %eax
20618 DB 102,68,15,110,192 ; movd %eax,%xmm8
20619 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8
20620 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
20621 DB 68,15,89,195 ; mulps %xmm3,%xmm8
20622 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
20623 DB 102,65,15,112,216,78 ; pshufd $0x4e,%xmm8,%xmm3
20624 DB 102,72,15,126,216 ; movq %xmm3,%rax
20625 DB 65,137,192 ; mov %eax,%r8d
20626 DB 72,193,232,32 ; shr $0x20,%rax
20627 DB 102,76,15,126,193 ; movq %xmm8,%rcx
20628 DB 65,137,202 ; mov %ecx,%r10d
20629 DB 72,193,233,32 ; shr $0x20,%rcx
20630 DB 243,69,15,16,4,137 ; movss (%r9,%rcx,4),%xmm8
20631 DB 243,65,15,16,28,129 ; movss (%r9,%rax,4),%xmm3
20632 DB 68,15,20,195 ; unpcklps %xmm3,%xmm8
20633 DB 243,67,15,16,28,145 ; movss (%r9,%r10,4),%xmm3
20634 DB 243,71,15,16,12,129 ; movss (%r9,%r8,4),%xmm9
20635 DB 65,15,20,217 ; unpcklps %xmm9,%xmm3
20636 DB 65,15,20,216 ; unpcklps %xmm8,%xmm3
20637 DB 72,173 ; lods %ds:(%rsi),%rax
20638 DB 255,224 ; jmpq *%rax
20639
Mike Klein44375172017-04-17 19:32:05 -040020640PUBLIC _sk_parametric_r_sse2
20641_sk_parametric_r_sse2 LABEL PROC
20642 DB 72,173 ; lods %ds:(%rsi),%rax
20643 DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9
20644 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
20645 DB 243,68,15,16,64,12 ; movss 0xc(%rax),%xmm8
20646 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
20647 DB 68,15,89,192 ; mulps %xmm0,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040020648 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10
20649 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
20650 DB 68,15,89,208 ; mulps %xmm0,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040020651 DB 65,15,194,193,2 ; cmpleps %xmm9,%xmm0
20652 DB 243,68,15,16,72,24 ; movss 0x18(%rax),%xmm9
20653 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
20654 DB 69,15,88,193 ; addps %xmm9,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040020655 DB 243,68,15,16,24 ; movss (%rax),%xmm11
20656 DB 243,68,15,16,72,8 ; movss 0x8(%rax),%xmm9
Mike Kleinda164342017-04-19 14:33:58 -040020657 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040020658 DB 69,15,88,209 ; addps %xmm9,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040020659 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
Mike Kleinb4bbc642017-04-27 08:59:55 -040020660 DB 69,15,91,202 ; cvtdq2ps %xmm10,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020661 DB 68,15,89,13,216,41,0,0 ; mulps 0x29d8(%rip),%xmm9 # 52c0 <_sk_callback_sse2+0x62a>
20662 DB 68,15,84,21,224,41,0,0 ; andps 0x29e0(%rip),%xmm10 # 52d0 <_sk_callback_sse2+0x63a>
20663 DB 68,15,86,21,232,41,0,0 ; orps 0x29e8(%rip),%xmm10 # 52e0 <_sk_callback_sse2+0x64a>
20664 DB 68,15,88,13,240,41,0,0 ; addps 0x29f0(%rip),%xmm9 # 52f0 <_sk_callback_sse2+0x65a>
20665 DB 68,15,40,37,248,41,0,0 ; movaps 0x29f8(%rip),%xmm12 # 5300 <_sk_callback_sse2+0x66a>
Mike Kleinda164342017-04-19 14:33:58 -040020666 DB 69,15,89,226 ; mulps %xmm10,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040020667 DB 69,15,92,204 ; subps %xmm12,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020668 DB 68,15,88,21,248,41,0,0 ; addps 0x29f8(%rip),%xmm10 # 5310 <_sk_callback_sse2+0x67a>
20669 DB 68,15,40,37,0,42,0,0 ; movaps 0x2a00(%rip),%xmm12 # 5320 <_sk_callback_sse2+0x68a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040020670 DB 69,15,94,226 ; divps %xmm10,%xmm12
20671 DB 69,15,92,204 ; subps %xmm12,%xmm9
20672 DB 69,15,89,203 ; mulps %xmm11,%xmm9
20673 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040020674 DB 69,15,91,226 ; cvtdq2ps %xmm10,%xmm12
20675 DB 69,15,40,233 ; movaps %xmm9,%xmm13
20676 DB 69,15,194,236,1 ; cmpltps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020677 DB 68,15,40,21,234,41,0,0 ; movaps 0x29ea(%rip),%xmm10 # 5330 <_sk_callback_sse2+0x69a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020678 DB 69,15,84,234 ; andps %xmm10,%xmm13
20679 DB 69,15,87,219 ; xorps %xmm11,%xmm11
20680 DB 69,15,92,229 ; subps %xmm13,%xmm12
20681 DB 69,15,40,233 ; movaps %xmm9,%xmm13
20682 DB 69,15,92,236 ; subps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020683 DB 68,15,88,13,222,41,0,0 ; addps 0x29de(%rip),%xmm9 # 5340 <_sk_callback_sse2+0x6aa>
20684 DB 68,15,40,37,230,41,0,0 ; movaps 0x29e6(%rip),%xmm12 # 5350 <_sk_callback_sse2+0x6ba>
Mike Kleinfe560a82017-05-01 12:56:35 -040020685 DB 69,15,89,229 ; mulps %xmm13,%xmm12
20686 DB 69,15,92,204 ; subps %xmm12,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020687 DB 68,15,40,37,230,41,0,0 ; movaps 0x29e6(%rip),%xmm12 # 5360 <_sk_callback_sse2+0x6ca>
Mike Kleinfe560a82017-05-01 12:56:35 -040020688 DB 69,15,92,229 ; subps %xmm13,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040020689 DB 68,15,40,45,234,41,0,0 ; movaps 0x29ea(%rip),%xmm13 # 5370 <_sk_callback_sse2+0x6da>
Mike Kleinfe560a82017-05-01 12:56:35 -040020690 DB 69,15,94,236 ; divps %xmm12,%xmm13
20691 DB 69,15,88,233 ; addps %xmm9,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020692 DB 68,15,89,45,234,41,0,0 ; mulps 0x29ea(%rip),%xmm13 # 5380 <_sk_callback_sse2+0x6ea>
Mike Kleinfe560a82017-05-01 12:56:35 -040020693 DB 102,69,15,91,205 ; cvtps2dq %xmm13,%xmm9
20694 DB 243,68,15,16,96,20 ; movss 0x14(%rax),%xmm12
20695 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040020696 DB 69,15,88,225 ; addps %xmm9,%xmm12
Mike Klein44375172017-04-17 19:32:05 -040020697 DB 68,15,84,192 ; andps %xmm0,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040020698 DB 65,15,85,196 ; andnps %xmm12,%xmm0
Mike Klein44375172017-04-17 19:32:05 -040020699 DB 65,15,86,192 ; orps %xmm8,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040020700 DB 65,15,95,195 ; maxps %xmm11,%xmm0
20701 DB 65,15,93,194 ; minps %xmm10,%xmm0
Mike Klein44375172017-04-17 19:32:05 -040020702 DB 72,173 ; lods %ds:(%rsi),%rax
20703 DB 255,224 ; jmpq *%rax
20704
20705PUBLIC _sk_parametric_g_sse2
20706_sk_parametric_g_sse2 LABEL PROC
20707 DB 72,173 ; lods %ds:(%rsi),%rax
20708 DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9
20709 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
20710 DB 243,68,15,16,64,12 ; movss 0xc(%rax),%xmm8
20711 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
20712 DB 68,15,89,193 ; mulps %xmm1,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040020713 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10
20714 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
20715 DB 68,15,89,209 ; mulps %xmm1,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040020716 DB 65,15,194,201,2 ; cmpleps %xmm9,%xmm1
20717 DB 243,68,15,16,72,24 ; movss 0x18(%rax),%xmm9
20718 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
20719 DB 69,15,88,193 ; addps %xmm9,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040020720 DB 243,68,15,16,24 ; movss (%rax),%xmm11
20721 DB 243,68,15,16,72,8 ; movss 0x8(%rax),%xmm9
Mike Kleinda164342017-04-19 14:33:58 -040020722 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040020723 DB 69,15,88,209 ; addps %xmm9,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040020724 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
Mike Kleinb4bbc642017-04-27 08:59:55 -040020725 DB 69,15,91,202 ; cvtdq2ps %xmm10,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020726 DB 68,15,89,13,106,41,0,0 ; mulps 0x296a(%rip),%xmm9 # 5390 <_sk_callback_sse2+0x6fa>
20727 DB 68,15,84,21,114,41,0,0 ; andps 0x2972(%rip),%xmm10 # 53a0 <_sk_callback_sse2+0x70a>
20728 DB 68,15,86,21,122,41,0,0 ; orps 0x297a(%rip),%xmm10 # 53b0 <_sk_callback_sse2+0x71a>
20729 DB 68,15,88,13,130,41,0,0 ; addps 0x2982(%rip),%xmm9 # 53c0 <_sk_callback_sse2+0x72a>
20730 DB 68,15,40,37,138,41,0,0 ; movaps 0x298a(%rip),%xmm12 # 53d0 <_sk_callback_sse2+0x73a>
Mike Kleinda164342017-04-19 14:33:58 -040020731 DB 69,15,89,226 ; mulps %xmm10,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040020732 DB 69,15,92,204 ; subps %xmm12,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020733 DB 68,15,88,21,138,41,0,0 ; addps 0x298a(%rip),%xmm10 # 53e0 <_sk_callback_sse2+0x74a>
20734 DB 68,15,40,37,146,41,0,0 ; movaps 0x2992(%rip),%xmm12 # 53f0 <_sk_callback_sse2+0x75a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040020735 DB 69,15,94,226 ; divps %xmm10,%xmm12
20736 DB 69,15,92,204 ; subps %xmm12,%xmm9
20737 DB 69,15,89,203 ; mulps %xmm11,%xmm9
20738 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040020739 DB 69,15,91,226 ; cvtdq2ps %xmm10,%xmm12
20740 DB 69,15,40,233 ; movaps %xmm9,%xmm13
20741 DB 69,15,194,236,1 ; cmpltps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020742 DB 68,15,40,21,124,41,0,0 ; movaps 0x297c(%rip),%xmm10 # 5400 <_sk_callback_sse2+0x76a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020743 DB 69,15,84,234 ; andps %xmm10,%xmm13
20744 DB 69,15,87,219 ; xorps %xmm11,%xmm11
20745 DB 69,15,92,229 ; subps %xmm13,%xmm12
20746 DB 69,15,40,233 ; movaps %xmm9,%xmm13
20747 DB 69,15,92,236 ; subps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020748 DB 68,15,88,13,112,41,0,0 ; addps 0x2970(%rip),%xmm9 # 5410 <_sk_callback_sse2+0x77a>
20749 DB 68,15,40,37,120,41,0,0 ; movaps 0x2978(%rip),%xmm12 # 5420 <_sk_callback_sse2+0x78a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020750 DB 69,15,89,229 ; mulps %xmm13,%xmm12
20751 DB 69,15,92,204 ; subps %xmm12,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020752 DB 68,15,40,37,120,41,0,0 ; movaps 0x2978(%rip),%xmm12 # 5430 <_sk_callback_sse2+0x79a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020753 DB 69,15,92,229 ; subps %xmm13,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040020754 DB 68,15,40,45,124,41,0,0 ; movaps 0x297c(%rip),%xmm13 # 5440 <_sk_callback_sse2+0x7aa>
Mike Kleinfe560a82017-05-01 12:56:35 -040020755 DB 69,15,94,236 ; divps %xmm12,%xmm13
20756 DB 69,15,88,233 ; addps %xmm9,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020757 DB 68,15,89,45,124,41,0,0 ; mulps 0x297c(%rip),%xmm13 # 5450 <_sk_callback_sse2+0x7ba>
Mike Kleinfe560a82017-05-01 12:56:35 -040020758 DB 102,69,15,91,205 ; cvtps2dq %xmm13,%xmm9
20759 DB 243,68,15,16,96,20 ; movss 0x14(%rax),%xmm12
20760 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040020761 DB 69,15,88,225 ; addps %xmm9,%xmm12
Mike Klein44375172017-04-17 19:32:05 -040020762 DB 68,15,84,193 ; andps %xmm1,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040020763 DB 65,15,85,204 ; andnps %xmm12,%xmm1
Mike Klein44375172017-04-17 19:32:05 -040020764 DB 65,15,86,200 ; orps %xmm8,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040020765 DB 65,15,95,203 ; maxps %xmm11,%xmm1
20766 DB 65,15,93,202 ; minps %xmm10,%xmm1
Mike Klein44375172017-04-17 19:32:05 -040020767 DB 72,173 ; lods %ds:(%rsi),%rax
20768 DB 255,224 ; jmpq *%rax
20769
20770PUBLIC _sk_parametric_b_sse2
20771_sk_parametric_b_sse2 LABEL PROC
20772 DB 72,173 ; lods %ds:(%rsi),%rax
20773 DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9
20774 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
20775 DB 243,68,15,16,64,12 ; movss 0xc(%rax),%xmm8
20776 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
20777 DB 68,15,89,194 ; mulps %xmm2,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040020778 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10
20779 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
20780 DB 68,15,89,210 ; mulps %xmm2,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040020781 DB 65,15,194,209,2 ; cmpleps %xmm9,%xmm2
20782 DB 243,68,15,16,72,24 ; movss 0x18(%rax),%xmm9
20783 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
20784 DB 69,15,88,193 ; addps %xmm9,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040020785 DB 243,68,15,16,24 ; movss (%rax),%xmm11
20786 DB 243,68,15,16,72,8 ; movss 0x8(%rax),%xmm9
Mike Kleinda164342017-04-19 14:33:58 -040020787 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040020788 DB 69,15,88,209 ; addps %xmm9,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040020789 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
Mike Kleinb4bbc642017-04-27 08:59:55 -040020790 DB 69,15,91,202 ; cvtdq2ps %xmm10,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020791 DB 68,15,89,13,252,40,0,0 ; mulps 0x28fc(%rip),%xmm9 # 5460 <_sk_callback_sse2+0x7ca>
20792 DB 68,15,84,21,4,41,0,0 ; andps 0x2904(%rip),%xmm10 # 5470 <_sk_callback_sse2+0x7da>
20793 DB 68,15,86,21,12,41,0,0 ; orps 0x290c(%rip),%xmm10 # 5480 <_sk_callback_sse2+0x7ea>
20794 DB 68,15,88,13,20,41,0,0 ; addps 0x2914(%rip),%xmm9 # 5490 <_sk_callback_sse2+0x7fa>
20795 DB 68,15,40,37,28,41,0,0 ; movaps 0x291c(%rip),%xmm12 # 54a0 <_sk_callback_sse2+0x80a>
Mike Kleinda164342017-04-19 14:33:58 -040020796 DB 69,15,89,226 ; mulps %xmm10,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040020797 DB 69,15,92,204 ; subps %xmm12,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020798 DB 68,15,88,21,28,41,0,0 ; addps 0x291c(%rip),%xmm10 # 54b0 <_sk_callback_sse2+0x81a>
20799 DB 68,15,40,37,36,41,0,0 ; movaps 0x2924(%rip),%xmm12 # 54c0 <_sk_callback_sse2+0x82a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040020800 DB 69,15,94,226 ; divps %xmm10,%xmm12
20801 DB 69,15,92,204 ; subps %xmm12,%xmm9
20802 DB 69,15,89,203 ; mulps %xmm11,%xmm9
20803 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040020804 DB 69,15,91,226 ; cvtdq2ps %xmm10,%xmm12
20805 DB 69,15,40,233 ; movaps %xmm9,%xmm13
20806 DB 69,15,194,236,1 ; cmpltps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020807 DB 68,15,40,21,14,41,0,0 ; movaps 0x290e(%rip),%xmm10 # 54d0 <_sk_callback_sse2+0x83a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020808 DB 69,15,84,234 ; andps %xmm10,%xmm13
20809 DB 69,15,87,219 ; xorps %xmm11,%xmm11
20810 DB 69,15,92,229 ; subps %xmm13,%xmm12
20811 DB 69,15,40,233 ; movaps %xmm9,%xmm13
20812 DB 69,15,92,236 ; subps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020813 DB 68,15,88,13,2,41,0,0 ; addps 0x2902(%rip),%xmm9 # 54e0 <_sk_callback_sse2+0x84a>
20814 DB 68,15,40,37,10,41,0,0 ; movaps 0x290a(%rip),%xmm12 # 54f0 <_sk_callback_sse2+0x85a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020815 DB 69,15,89,229 ; mulps %xmm13,%xmm12
20816 DB 69,15,92,204 ; subps %xmm12,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020817 DB 68,15,40,37,10,41,0,0 ; movaps 0x290a(%rip),%xmm12 # 5500 <_sk_callback_sse2+0x86a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020818 DB 69,15,92,229 ; subps %xmm13,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040020819 DB 68,15,40,45,14,41,0,0 ; movaps 0x290e(%rip),%xmm13 # 5510 <_sk_callback_sse2+0x87a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020820 DB 69,15,94,236 ; divps %xmm12,%xmm13
20821 DB 69,15,88,233 ; addps %xmm9,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020822 DB 68,15,89,45,14,41,0,0 ; mulps 0x290e(%rip),%xmm13 # 5520 <_sk_callback_sse2+0x88a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020823 DB 102,69,15,91,205 ; cvtps2dq %xmm13,%xmm9
20824 DB 243,68,15,16,96,20 ; movss 0x14(%rax),%xmm12
20825 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040020826 DB 69,15,88,225 ; addps %xmm9,%xmm12
Mike Klein44375172017-04-17 19:32:05 -040020827 DB 68,15,84,194 ; andps %xmm2,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040020828 DB 65,15,85,212 ; andnps %xmm12,%xmm2
Mike Klein44375172017-04-17 19:32:05 -040020829 DB 65,15,86,208 ; orps %xmm8,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040020830 DB 65,15,95,211 ; maxps %xmm11,%xmm2
20831 DB 65,15,93,210 ; minps %xmm10,%xmm2
Mike Klein44375172017-04-17 19:32:05 -040020832 DB 72,173 ; lods %ds:(%rsi),%rax
20833 DB 255,224 ; jmpq *%rax
20834
20835PUBLIC _sk_parametric_a_sse2
20836_sk_parametric_a_sse2 LABEL PROC
20837 DB 72,173 ; lods %ds:(%rsi),%rax
20838 DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9
20839 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
20840 DB 243,68,15,16,64,12 ; movss 0xc(%rax),%xmm8
20841 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
20842 DB 68,15,89,195 ; mulps %xmm3,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040020843 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10
20844 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
20845 DB 68,15,89,211 ; mulps %xmm3,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040020846 DB 65,15,194,217,2 ; cmpleps %xmm9,%xmm3
20847 DB 243,68,15,16,72,24 ; movss 0x18(%rax),%xmm9
20848 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
20849 DB 69,15,88,193 ; addps %xmm9,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040020850 DB 243,68,15,16,24 ; movss (%rax),%xmm11
20851 DB 243,68,15,16,72,8 ; movss 0x8(%rax),%xmm9
Mike Kleinda164342017-04-19 14:33:58 -040020852 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040020853 DB 69,15,88,209 ; addps %xmm9,%xmm10
Mike Klein44375172017-04-17 19:32:05 -040020854 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
Mike Kleinb4bbc642017-04-27 08:59:55 -040020855 DB 69,15,91,202 ; cvtdq2ps %xmm10,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020856 DB 68,15,89,13,142,40,0,0 ; mulps 0x288e(%rip),%xmm9 # 5530 <_sk_callback_sse2+0x89a>
20857 DB 68,15,84,21,150,40,0,0 ; andps 0x2896(%rip),%xmm10 # 5540 <_sk_callback_sse2+0x8aa>
20858 DB 68,15,86,21,158,40,0,0 ; orps 0x289e(%rip),%xmm10 # 5550 <_sk_callback_sse2+0x8ba>
20859 DB 68,15,88,13,166,40,0,0 ; addps 0x28a6(%rip),%xmm9 # 5560 <_sk_callback_sse2+0x8ca>
20860 DB 68,15,40,37,174,40,0,0 ; movaps 0x28ae(%rip),%xmm12 # 5570 <_sk_callback_sse2+0x8da>
Mike Kleinda164342017-04-19 14:33:58 -040020861 DB 69,15,89,226 ; mulps %xmm10,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040020862 DB 69,15,92,204 ; subps %xmm12,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020863 DB 68,15,88,21,174,40,0,0 ; addps 0x28ae(%rip),%xmm10 # 5580 <_sk_callback_sse2+0x8ea>
20864 DB 68,15,40,37,182,40,0,0 ; movaps 0x28b6(%rip),%xmm12 # 5590 <_sk_callback_sse2+0x8fa>
Mike Kleinb4bbc642017-04-27 08:59:55 -040020865 DB 69,15,94,226 ; divps %xmm10,%xmm12
20866 DB 69,15,92,204 ; subps %xmm12,%xmm9
20867 DB 69,15,89,203 ; mulps %xmm11,%xmm9
20868 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040020869 DB 69,15,91,226 ; cvtdq2ps %xmm10,%xmm12
20870 DB 69,15,40,233 ; movaps %xmm9,%xmm13
20871 DB 69,15,194,236,1 ; cmpltps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020872 DB 68,15,40,21,160,40,0,0 ; movaps 0x28a0(%rip),%xmm10 # 55a0 <_sk_callback_sse2+0x90a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020873 DB 69,15,84,234 ; andps %xmm10,%xmm13
20874 DB 69,15,87,219 ; xorps %xmm11,%xmm11
20875 DB 69,15,92,229 ; subps %xmm13,%xmm12
20876 DB 69,15,40,233 ; movaps %xmm9,%xmm13
20877 DB 69,15,92,236 ; subps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020878 DB 68,15,88,13,148,40,0,0 ; addps 0x2894(%rip),%xmm9 # 55b0 <_sk_callback_sse2+0x91a>
20879 DB 68,15,40,37,156,40,0,0 ; movaps 0x289c(%rip),%xmm12 # 55c0 <_sk_callback_sse2+0x92a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020880 DB 69,15,89,229 ; mulps %xmm13,%xmm12
20881 DB 69,15,92,204 ; subps %xmm12,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040020882 DB 68,15,40,37,156,40,0,0 ; movaps 0x289c(%rip),%xmm12 # 55d0 <_sk_callback_sse2+0x93a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020883 DB 69,15,92,229 ; subps %xmm13,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040020884 DB 68,15,40,45,160,40,0,0 ; movaps 0x28a0(%rip),%xmm13 # 55e0 <_sk_callback_sse2+0x94a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020885 DB 69,15,94,236 ; divps %xmm12,%xmm13
20886 DB 69,15,88,233 ; addps %xmm9,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040020887 DB 68,15,89,45,160,40,0,0 ; mulps 0x28a0(%rip),%xmm13 # 55f0 <_sk_callback_sse2+0x95a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020888 DB 102,69,15,91,205 ; cvtps2dq %xmm13,%xmm9
20889 DB 243,68,15,16,96,20 ; movss 0x14(%rax),%xmm12
20890 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
Mike Kleinb4bbc642017-04-27 08:59:55 -040020891 DB 69,15,88,225 ; addps %xmm9,%xmm12
Mike Klein44375172017-04-17 19:32:05 -040020892 DB 68,15,84,195 ; andps %xmm3,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040020893 DB 65,15,85,220 ; andnps %xmm12,%xmm3
Mike Klein44375172017-04-17 19:32:05 -040020894 DB 65,15,86,216 ; orps %xmm8,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -040020895 DB 65,15,95,219 ; maxps %xmm11,%xmm3
20896 DB 65,15,93,218 ; minps %xmm10,%xmm3
Mike Klein44375172017-04-17 19:32:05 -040020897 DB 72,173 ; lods %ds:(%rsi),%rax
20898 DB 255,224 ; jmpq *%rax
20899
Mike Klein4e3e9f82017-04-20 11:04:29 -040020900PUBLIC _sk_lab_to_xyz_sse2
20901_sk_lab_to_xyz_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040020902 DB 15,89,5,125,40,0,0 ; mulps 0x287d(%rip),%xmm0 # 5600 <_sk_callback_sse2+0x96a>
20903 DB 68,15,40,5,133,40,0,0 ; movaps 0x2885(%rip),%xmm8 # 5610 <_sk_callback_sse2+0x97a>
Mike Klein4e3e9f82017-04-20 11:04:29 -040020904 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040020905 DB 68,15,40,13,137,40,0,0 ; movaps 0x2889(%rip),%xmm9 # 5620 <_sk_callback_sse2+0x98a>
Mike Kleinfe560a82017-05-01 12:56:35 -040020906 DB 65,15,88,201 ; addps %xmm9,%xmm1
Mike Klein4e3e9f82017-04-20 11:04:29 -040020907 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040020908 DB 65,15,88,209 ; addps %xmm9,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040020909 DB 15,88,5,134,40,0,0 ; addps 0x2886(%rip),%xmm0 # 5630 <_sk_callback_sse2+0x99a>
20910 DB 15,89,5,143,40,0,0 ; mulps 0x288f(%rip),%xmm0 # 5640 <_sk_callback_sse2+0x9aa>
20911 DB 15,89,13,152,40,0,0 ; mulps 0x2898(%rip),%xmm1 # 5650 <_sk_callback_sse2+0x9ba>
Mike Kleinfe560a82017-05-01 12:56:35 -040020912 DB 15,88,200 ; addps %xmm0,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040020913 DB 15,89,21,158,40,0,0 ; mulps 0x289e(%rip),%xmm2 # 5660 <_sk_callback_sse2+0x9ca>
Mike Kleinfe560a82017-05-01 12:56:35 -040020914 DB 68,15,40,200 ; movaps %xmm0,%xmm9
20915 DB 68,15,92,202 ; subps %xmm2,%xmm9
20916 DB 68,15,40,225 ; movaps %xmm1,%xmm12
20917 DB 69,15,89,228 ; mulps %xmm12,%xmm12
20918 DB 68,15,89,225 ; mulps %xmm1,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040020919 DB 15,40,21,147,40,0,0 ; movaps 0x2893(%rip),%xmm2 # 5670 <_sk_callback_sse2+0x9da>
Mike Kleinfe560a82017-05-01 12:56:35 -040020920 DB 68,15,40,194 ; movaps %xmm2,%xmm8
20921 DB 69,15,194,196,1 ; cmpltps %xmm12,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040020922 DB 68,15,40,21,146,40,0,0 ; movaps 0x2892(%rip),%xmm10 # 5680 <_sk_callback_sse2+0x9ea>
Mike Kleinfe560a82017-05-01 12:56:35 -040020923 DB 65,15,88,202 ; addps %xmm10,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040020924 DB 68,15,40,29,150,40,0,0 ; movaps 0x2896(%rip),%xmm11 # 5690 <_sk_callback_sse2+0x9fa>
Mike Kleinfe560a82017-05-01 12:56:35 -040020925 DB 65,15,89,203 ; mulps %xmm11,%xmm1
20926 DB 69,15,84,224 ; andps %xmm8,%xmm12
20927 DB 68,15,85,193 ; andnps %xmm1,%xmm8
20928 DB 69,15,86,196 ; orps %xmm12,%xmm8
20929 DB 68,15,40,224 ; movaps %xmm0,%xmm12
20930 DB 69,15,89,228 ; mulps %xmm12,%xmm12
20931 DB 68,15,89,224 ; mulps %xmm0,%xmm12
20932 DB 15,40,202 ; movaps %xmm2,%xmm1
20933 DB 65,15,194,204,1 ; cmpltps %xmm12,%xmm1
20934 DB 65,15,88,194 ; addps %xmm10,%xmm0
20935 DB 65,15,89,195 ; mulps %xmm11,%xmm0
20936 DB 68,15,84,225 ; andps %xmm1,%xmm12
20937 DB 15,85,200 ; andnps %xmm0,%xmm1
20938 DB 65,15,86,204 ; orps %xmm12,%xmm1
20939 DB 65,15,40,193 ; movaps %xmm9,%xmm0
20940 DB 15,89,192 ; mulps %xmm0,%xmm0
20941 DB 65,15,89,193 ; mulps %xmm9,%xmm0
20942 DB 15,194,208,1 ; cmpltps %xmm0,%xmm2
20943 DB 69,15,88,202 ; addps %xmm10,%xmm9
20944 DB 69,15,89,203 ; mulps %xmm11,%xmm9
20945 DB 15,84,194 ; andps %xmm2,%xmm0
20946 DB 65,15,85,209 ; andnps %xmm9,%xmm2
20947 DB 15,86,208 ; orps %xmm0,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040020948 DB 68,15,89,5,70,40,0,0 ; mulps 0x2846(%rip),%xmm8 # 56a0 <_sk_callback_sse2+0xa0a>
20949 DB 15,89,21,79,40,0,0 ; mulps 0x284f(%rip),%xmm2 # 56b0 <_sk_callback_sse2+0xa1a>
Mike Klein4e3e9f82017-04-20 11:04:29 -040020950 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinfe560a82017-05-01 12:56:35 -040020951 DB 65,15,40,192 ; movaps %xmm8,%xmm0
Mike Klein4e3e9f82017-04-20 11:04:29 -040020952 DB 255,224 ; jmpq *%rax
20953
Mike Kleind7e06ae2017-03-29 16:33:06 -040020954PUBLIC _sk_load_a8_sse2
20955_sk_load_a8_sse2 LABEL PROC
20956 DB 72,173 ; lods %ds:(%rsi),%rax
20957 DB 72,139,0 ; mov (%rax),%rax
20958 DB 102,15,110,4,56 ; movd (%rax,%rdi,1),%xmm0
20959 DB 102,15,239,201 ; pxor %xmm1,%xmm1
20960 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0
20961 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040020962 DB 15,91,216 ; cvtdq2ps %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040020963 DB 15,89,29,55,40,0,0 ; mulps 0x2837(%rip),%xmm3 # 56c0 <_sk_callback_sse2+0xa2a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040020964 DB 72,173 ; lods %ds:(%rsi),%rax
20965 DB 15,87,192 ; xorps %xmm0,%xmm0
20966 DB 102,15,239,201 ; pxor %xmm1,%xmm1
20967 DB 15,87,210 ; xorps %xmm2,%xmm2
20968 DB 255,224 ; jmpq *%rax
20969
Mike Klein21bd3e42017-04-06 16:32:29 -040020970PUBLIC _sk_gather_a8_sse2
20971_sk_gather_a8_sse2 LABEL PROC
20972 DB 72,173 ; lods %ds:(%rsi),%rax
20973 DB 76,139,8 ; mov (%rax),%r9
20974 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
20975 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
20976 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
20977 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3
20978 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3
20979 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3
20980 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2
20981 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1
20982 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1
20983 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
20984 DB 102,15,254,193 ; paddd %xmm1,%xmm0
20985 DB 102,72,15,126,192 ; movq %xmm0,%rax
20986 DB 65,137,192 ; mov %eax,%r8d
20987 DB 72,193,232,32 ; shr $0x20,%rax
20988 DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0
20989 DB 102,72,15,126,193 ; movq %xmm0,%rcx
20990 DB 65,137,202 ; mov %ecx,%r10d
20991 DB 72,193,233,32 ; shr $0x20,%rcx
20992 DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d
20993 DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx
20994 DB 193,225,8 ; shl $0x8,%ecx
20995 DB 68,9,209 ; or %r10d,%ecx
20996 DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d
20997 DB 65,15,182,4,1 ; movzbl (%r9,%rax,1),%eax
20998 DB 193,224,8 ; shl $0x8,%eax
20999 DB 68,9,192 ; or %r8d,%eax
21000 DB 102,15,196,192,0 ; pinsrw $0x0,%eax,%xmm0
21001 DB 102,15,196,193,1 ; pinsrw $0x1,%ecx,%xmm0
21002 DB 102,15,239,201 ; pxor %xmm1,%xmm1
21003 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0
21004 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040021005 DB 15,91,216 ; cvtdq2ps %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040021006 DB 15,89,29,166,39,0,0 ; mulps 0x27a6(%rip),%xmm3 # 56d0 <_sk_callback_sse2+0xa3a>
Mike Klein21bd3e42017-04-06 16:32:29 -040021007 DB 72,173 ; lods %ds:(%rsi),%rax
21008 DB 15,87,192 ; xorps %xmm0,%xmm0
21009 DB 102,15,239,201 ; pxor %xmm1,%xmm1
21010 DB 102,15,239,210 ; pxor %xmm2,%xmm2
21011 DB 255,224 ; jmpq *%rax
21012
Mike Kleind7e06ae2017-03-29 16:33:06 -040021013PUBLIC _sk_store_a8_sse2
21014_sk_store_a8_sse2 LABEL PROC
21015 DB 72,173 ; lods %ds:(%rsi),%rax
21016 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021017 DB 68,15,40,5,154,39,0,0 ; movaps 0x279a(%rip),%xmm8 # 56e0 <_sk_callback_sse2+0xa4a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040021018 DB 68,15,89,195 ; mulps %xmm3,%xmm8
21019 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
21020 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8
21021 DB 102,65,15,114,224,16 ; psrad $0x10,%xmm8
21022 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8
21023 DB 102,69,15,103,192 ; packuswb %xmm8,%xmm8
21024 DB 102,68,15,126,4,56 ; movd %xmm8,(%rax,%rdi,1)
21025 DB 72,173 ; lods %ds:(%rsi),%rax
21026 DB 255,224 ; jmpq *%rax
21027
Mike Kleinf809fef2017-03-31 13:52:45 -040021028PUBLIC _sk_load_g8_sse2
21029_sk_load_g8_sse2 LABEL PROC
21030 DB 72,173 ; lods %ds:(%rsi),%rax
21031 DB 72,139,0 ; mov (%rax),%rax
21032 DB 102,15,110,4,56 ; movd (%rax,%rdi,1),%xmm0
21033 DB 102,15,239,201 ; pxor %xmm1,%xmm1
21034 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0
21035 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040021036 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021037 DB 15,89,5,97,39,0,0 ; mulps 0x2761(%rip),%xmm0 # 56f0 <_sk_callback_sse2+0xa5a>
Mike Kleinf809fef2017-03-31 13:52:45 -040021038 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021039 DB 15,40,29,104,39,0,0 ; movaps 0x2768(%rip),%xmm3 # 5700 <_sk_callback_sse2+0xa6a>
Mike Kleinf809fef2017-03-31 13:52:45 -040021040 DB 15,40,200 ; movaps %xmm0,%xmm1
21041 DB 15,40,208 ; movaps %xmm0,%xmm2
21042 DB 255,224 ; jmpq *%rax
21043
Mike Klein21bd3e42017-04-06 16:32:29 -040021044PUBLIC _sk_gather_g8_sse2
21045_sk_gather_g8_sse2 LABEL PROC
21046 DB 72,173 ; lods %ds:(%rsi),%rax
21047 DB 76,139,8 ; mov (%rax),%r9
21048 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
21049 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
21050 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
21051 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3
21052 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3
21053 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3
21054 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2
21055 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1
21056 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1
21057 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
21058 DB 102,15,254,193 ; paddd %xmm1,%xmm0
21059 DB 102,72,15,126,192 ; movq %xmm0,%rax
21060 DB 65,137,192 ; mov %eax,%r8d
21061 DB 72,193,232,32 ; shr $0x20,%rax
21062 DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0
21063 DB 102,72,15,126,193 ; movq %xmm0,%rcx
21064 DB 65,137,202 ; mov %ecx,%r10d
21065 DB 72,193,233,32 ; shr $0x20,%rcx
21066 DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d
21067 DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx
21068 DB 193,225,8 ; shl $0x8,%ecx
21069 DB 68,9,209 ; or %r10d,%ecx
21070 DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d
21071 DB 65,15,182,4,1 ; movzbl (%r9,%rax,1),%eax
21072 DB 193,224,8 ; shl $0x8,%eax
21073 DB 68,9,192 ; or %r8d,%eax
21074 DB 102,15,196,192,0 ; pinsrw $0x0,%eax,%xmm0
21075 DB 102,15,196,193,1 ; pinsrw $0x1,%ecx,%xmm0
21076 DB 102,15,239,201 ; pxor %xmm1,%xmm1
21077 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0
21078 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040021079 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021080 DB 15,89,5,221,38,0,0 ; mulps 0x26dd(%rip),%xmm0 # 5710 <_sk_callback_sse2+0xa7a>
Mike Klein21bd3e42017-04-06 16:32:29 -040021081 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021082 DB 15,40,29,228,38,0,0 ; movaps 0x26e4(%rip),%xmm3 # 5720 <_sk_callback_sse2+0xa8a>
Mike Klein21bd3e42017-04-06 16:32:29 -040021083 DB 15,40,200 ; movaps %xmm0,%xmm1
21084 DB 15,40,208 ; movaps %xmm0,%xmm2
21085 DB 255,224 ; jmpq *%rax
21086
Mike Klein7d3d8722017-04-06 17:53:18 -040021087PUBLIC _sk_gather_i8_sse2
21088_sk_gather_i8_sse2 LABEL PROC
21089 DB 72,173 ; lods %ds:(%rsi),%rax
21090 DB 73,137,192 ; mov %rax,%r8
21091 DB 77,133,192 ; test %r8,%r8
Mike Klein5d7f2b52017-05-20 13:21:59 -040021092 DB 116,5 ; je 3053 <_sk_gather_i8_sse2+0xf>
Mike Klein7d3d8722017-04-06 17:53:18 -040021093 DB 76,137,192 ; mov %r8,%rax
Mike Klein5d7f2b52017-05-20 13:21:59 -040021094 DB 235,2 ; jmp 3055 <_sk_gather_i8_sse2+0x11>
Mike Klein7d3d8722017-04-06 17:53:18 -040021095 DB 72,173 ; lods %ds:(%rsi),%rax
21096 DB 76,139,16 ; mov (%rax),%r10
21097 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
21098 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
21099 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
21100 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3
21101 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3
21102 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3
21103 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2
21104 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1
21105 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1
21106 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
21107 DB 102,15,254,193 ; paddd %xmm1,%xmm0
21108 DB 102,72,15,126,192 ; movq %xmm0,%rax
21109 DB 65,137,193 ; mov %eax,%r9d
21110 DB 72,193,232,32 ; shr $0x20,%rax
21111 DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0
21112 DB 102,72,15,126,193 ; movq %xmm0,%rcx
21113 DB 65,137,203 ; mov %ecx,%r11d
21114 DB 72,193,233,32 ; shr $0x20,%rcx
21115 DB 71,15,182,28,26 ; movzbl (%r10,%r11,1),%r11d
21116 DB 65,15,182,12,10 ; movzbl (%r10,%rcx,1),%ecx
21117 DB 193,225,8 ; shl $0x8,%ecx
21118 DB 68,9,217 ; or %r11d,%ecx
21119 DB 71,15,182,12,10 ; movzbl (%r10,%r9,1),%r9d
21120 DB 65,15,182,4,2 ; movzbl (%r10,%rax,1),%eax
21121 DB 193,224,8 ; shl $0x8,%eax
21122 DB 68,9,200 ; or %r9d,%eax
21123 DB 102,15,196,192,0 ; pinsrw $0x0,%eax,%xmm0
21124 DB 102,15,196,193,1 ; pinsrw $0x1,%ecx,%xmm0
21125 DB 102,15,239,201 ; pxor %xmm1,%xmm1
21126 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0
21127 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0
21128 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1
21129 DB 102,72,15,126,200 ; movq %xmm1,%rax
21130 DB 68,15,182,200 ; movzbl %al,%r9d
21131 DB 72,193,232,32 ; shr $0x20,%rax
21132 DB 102,72,15,126,193 ; movq %xmm0,%rcx
21133 DB 77,139,64,8 ; mov 0x8(%r8),%r8
21134 DB 68,15,182,209 ; movzbl %cl,%r10d
21135 DB 72,193,233,30 ; shr $0x1e,%rcx
21136 DB 102,65,15,110,4,8 ; movd (%r8,%rcx,1),%xmm0
21137 DB 102,65,15,110,12,128 ; movd (%r8,%rax,4),%xmm1
21138 DB 102,15,98,193 ; punpckldq %xmm1,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040021139 DB 102,71,15,110,12,144 ; movd (%r8,%r10,4),%xmm9
Mike Klein7d3d8722017-04-06 17:53:18 -040021140 DB 102,67,15,110,12,136 ; movd (%r8,%r9,4),%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040021141 DB 102,68,15,98,201 ; punpckldq %xmm1,%xmm9
21142 DB 102,68,15,98,200 ; punpckldq %xmm0,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040021143 DB 102,15,111,21,3,38,0,0 ; movdqa 0x2603(%rip),%xmm2 # 5730 <_sk_callback_sse2+0xa9a>
Mike Klein0aa742f2017-04-27 13:36:57 -040021144 DB 102,65,15,111,193 ; movdqa %xmm9,%xmm0
21145 DB 102,15,219,194 ; pand %xmm2,%xmm0
Mike Klein7d3d8722017-04-06 17:53:18 -040021146 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021147 DB 68,15,40,5,255,37,0,0 ; movaps 0x25ff(%rip),%xmm8 # 5740 <_sk_callback_sse2+0xaaa>
Mike Klein7d3d8722017-04-06 17:53:18 -040021148 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040021149 DB 102,65,15,111,201 ; movdqa %xmm9,%xmm1
21150 DB 102,15,114,209,8 ; psrld $0x8,%xmm1
21151 DB 102,15,219,202 ; pand %xmm2,%xmm1
Mike Klein7d3d8722017-04-06 17:53:18 -040021152 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
21153 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040021154 DB 102,65,15,111,217 ; movdqa %xmm9,%xmm3
21155 DB 102,15,114,211,16 ; psrld $0x10,%xmm3
21156 DB 102,15,219,218 ; pand %xmm2,%xmm3
21157 DB 15,91,211 ; cvtdq2ps %xmm3,%xmm2
Mike Klein7d3d8722017-04-06 17:53:18 -040021158 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040021159 DB 102,65,15,114,209,24 ; psrld $0x18,%xmm9
21160 DB 65,15,91,217 ; cvtdq2ps %xmm9,%xmm3
Mike Klein7d3d8722017-04-06 17:53:18 -040021161 DB 65,15,89,216 ; mulps %xmm8,%xmm3
21162 DB 72,173 ; lods %ds:(%rsi),%rax
21163 DB 255,224 ; jmpq *%rax
21164
Mike Kleind7e06ae2017-03-29 16:33:06 -040021165PUBLIC _sk_load_565_sse2
21166_sk_load_565_sse2 LABEL PROC
21167 DB 72,173 ; lods %ds:(%rsi),%rax
21168 DB 72,139,0 ; mov (%rax),%rax
21169 DB 243,15,126,20,120 ; movq (%rax,%rdi,2),%xmm2
21170 DB 102,15,239,192 ; pxor %xmm0,%xmm0
21171 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040021172 DB 102,15,111,5,181,37,0,0 ; movdqa 0x25b5(%rip),%xmm0 # 5750 <_sk_callback_sse2+0xaba>
Mike Kleind7e06ae2017-03-29 16:33:06 -040021173 DB 102,15,219,194 ; pand %xmm2,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040021174 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021175 DB 15,89,5,183,37,0,0 ; mulps 0x25b7(%rip),%xmm0 # 5760 <_sk_callback_sse2+0xaca>
21176 DB 102,15,111,13,191,37,0,0 ; movdqa 0x25bf(%rip),%xmm1 # 5770 <_sk_callback_sse2+0xada>
Mike Kleind7e06ae2017-03-29 16:33:06 -040021177 DB 102,15,219,202 ; pand %xmm2,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040021178 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040021179 DB 15,89,13,193,37,0,0 ; mulps 0x25c1(%rip),%xmm1 # 5780 <_sk_callback_sse2+0xaea>
21180 DB 102,15,219,21,201,37,0,0 ; pand 0x25c9(%rip),%xmm2 # 5790 <_sk_callback_sse2+0xafa>
Mike Kleinfe560a82017-05-01 12:56:35 -040021181 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040021182 DB 15,89,21,207,37,0,0 ; mulps 0x25cf(%rip),%xmm2 # 57a0 <_sk_callback_sse2+0xb0a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040021183 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021184 DB 15,40,29,214,37,0,0 ; movaps 0x25d6(%rip),%xmm3 # 57b0 <_sk_callback_sse2+0xb1a>
Mike Kleind7e06ae2017-03-29 16:33:06 -040021185 DB 255,224 ; jmpq *%rax
21186
Mike Klein21bd3e42017-04-06 16:32:29 -040021187PUBLIC _sk_gather_565_sse2
21188_sk_gather_565_sse2 LABEL PROC
21189 DB 72,173 ; lods %ds:(%rsi),%rax
21190 DB 76,139,8 ; mov (%rax),%r9
21191 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
21192 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
21193 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
21194 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3
21195 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3
21196 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3
21197 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2
21198 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1
21199 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1
21200 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
21201 DB 102,15,254,193 ; paddd %xmm1,%xmm0
21202 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1
21203 DB 102,72,15,126,200 ; movq %xmm1,%rax
21204 DB 65,137,192 ; mov %eax,%r8d
21205 DB 72,193,232,32 ; shr $0x20,%rax
21206 DB 102,72,15,126,193 ; movq %xmm0,%rcx
21207 DB 65,137,202 ; mov %ecx,%r10d
21208 DB 72,193,233,32 ; shr $0x20,%rcx
21209 DB 102,67,15,196,20,81,0 ; pinsrw $0x0,(%r9,%r10,2),%xmm2
21210 DB 102,65,15,196,20,73,1 ; pinsrw $0x1,(%r9,%rcx,2),%xmm2
21211 DB 67,15,183,12,65 ; movzwl (%r9,%r8,2),%ecx
21212 DB 102,15,196,209,2 ; pinsrw $0x2,%ecx,%xmm2
21213 DB 65,15,183,4,65 ; movzwl (%r9,%rax,2),%eax
21214 DB 102,15,196,208,3 ; pinsrw $0x3,%eax,%xmm2
21215 DB 102,15,239,192 ; pxor %xmm0,%xmm0
21216 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040021217 DB 102,15,111,5,95,37,0,0 ; movdqa 0x255f(%rip),%xmm0 # 57c0 <_sk_callback_sse2+0xb2a>
Mike Klein21bd3e42017-04-06 16:32:29 -040021218 DB 102,15,219,194 ; pand %xmm2,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040021219 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021220 DB 15,89,5,97,37,0,0 ; mulps 0x2561(%rip),%xmm0 # 57d0 <_sk_callback_sse2+0xb3a>
21221 DB 102,15,111,13,105,37,0,0 ; movdqa 0x2569(%rip),%xmm1 # 57e0 <_sk_callback_sse2+0xb4a>
Mike Klein21bd3e42017-04-06 16:32:29 -040021222 DB 102,15,219,202 ; pand %xmm2,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040021223 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040021224 DB 15,89,13,107,37,0,0 ; mulps 0x256b(%rip),%xmm1 # 57f0 <_sk_callback_sse2+0xb5a>
21225 DB 102,15,219,21,115,37,0,0 ; pand 0x2573(%rip),%xmm2 # 5800 <_sk_callback_sse2+0xb6a>
Mike Kleinfe560a82017-05-01 12:56:35 -040021226 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040021227 DB 15,89,21,121,37,0,0 ; mulps 0x2579(%rip),%xmm2 # 5810 <_sk_callback_sse2+0xb7a>
Mike Klein21bd3e42017-04-06 16:32:29 -040021228 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021229 DB 15,40,29,128,37,0,0 ; movaps 0x2580(%rip),%xmm3 # 5820 <_sk_callback_sse2+0xb8a>
Mike Klein21bd3e42017-04-06 16:32:29 -040021230 DB 255,224 ; jmpq *%rax
21231
Mike Kleind7e06ae2017-03-29 16:33:06 -040021232PUBLIC _sk_store_565_sse2
21233_sk_store_565_sse2 LABEL PROC
21234 DB 72,173 ; lods %ds:(%rsi),%rax
21235 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021236 DB 68,15,40,5,129,37,0,0 ; movaps 0x2581(%rip),%xmm8 # 5830 <_sk_callback_sse2+0xb9a>
Mike Kleinfe560a82017-05-01 12:56:35 -040021237 DB 68,15,40,200 ; movaps %xmm0,%xmm9
21238 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040021239 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
21240 DB 102,65,15,114,241,11 ; pslld $0xb,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040021241 DB 68,15,40,21,118,37,0,0 ; movaps 0x2576(%rip),%xmm10 # 5840 <_sk_callback_sse2+0xbaa>
Mike Kleind7e06ae2017-03-29 16:33:06 -040021242 DB 68,15,89,209 ; mulps %xmm1,%xmm10
21243 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10
21244 DB 102,65,15,114,242,5 ; pslld $0x5,%xmm10
21245 DB 102,69,15,235,209 ; por %xmm9,%xmm10
21246 DB 68,15,89,194 ; mulps %xmm2,%xmm8
21247 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
21248 DB 102,69,15,86,194 ; orpd %xmm10,%xmm8
21249 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8
21250 DB 102,65,15,114,224,16 ; psrad $0x10,%xmm8
21251 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8
21252 DB 102,68,15,214,4,120 ; movq %xmm8,(%rax,%rdi,2)
21253 DB 72,173 ; lods %ds:(%rsi),%rax
21254 DB 255,224 ; jmpq *%rax
21255
Mike Kleinf809fef2017-03-31 13:52:45 -040021256PUBLIC _sk_load_4444_sse2
21257_sk_load_4444_sse2 LABEL PROC
21258 DB 72,173 ; lods %ds:(%rsi),%rax
21259 DB 72,139,0 ; mov (%rax),%rax
Mike Klein308e6242017-04-27 13:56:33 -040021260 DB 243,15,126,28,120 ; movq (%rax,%rdi,2),%xmm3
Mike Kleinf809fef2017-03-31 13:52:45 -040021261 DB 102,15,239,192 ; pxor %xmm0,%xmm0
Mike Klein308e6242017-04-27 13:56:33 -040021262 DB 102,15,97,216 ; punpcklwd %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040021263 DB 102,15,111,5,47,37,0,0 ; movdqa 0x252f(%rip),%xmm0 # 5850 <_sk_callback_sse2+0xbba>
Mike Klein308e6242017-04-27 13:56:33 -040021264 DB 102,15,219,195 ; pand %xmm3,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040021265 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021266 DB 15,89,5,49,37,0,0 ; mulps 0x2531(%rip),%xmm0 # 5860 <_sk_callback_sse2+0xbca>
21267 DB 102,15,111,13,57,37,0,0 ; movdqa 0x2539(%rip),%xmm1 # 5870 <_sk_callback_sse2+0xbda>
Mike Klein308e6242017-04-27 13:56:33 -040021268 DB 102,15,219,203 ; pand %xmm3,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040021269 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040021270 DB 15,89,13,59,37,0,0 ; mulps 0x253b(%rip),%xmm1 # 5880 <_sk_callback_sse2+0xbea>
21271 DB 102,15,111,21,67,37,0,0 ; movdqa 0x2543(%rip),%xmm2 # 5890 <_sk_callback_sse2+0xbfa>
Mike Klein308e6242017-04-27 13:56:33 -040021272 DB 102,15,219,211 ; pand %xmm3,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040021273 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040021274 DB 15,89,21,69,37,0,0 ; mulps 0x2545(%rip),%xmm2 # 58a0 <_sk_callback_sse2+0xc0a>
21275 DB 102,15,219,29,77,37,0,0 ; pand 0x254d(%rip),%xmm3 # 58b0 <_sk_callback_sse2+0xc1a>
Mike Kleinfe560a82017-05-01 12:56:35 -040021276 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040021277 DB 15,89,29,83,37,0,0 ; mulps 0x2553(%rip),%xmm3 # 58c0 <_sk_callback_sse2+0xc2a>
Mike Kleinf809fef2017-03-31 13:52:45 -040021278 DB 72,173 ; lods %ds:(%rsi),%rax
21279 DB 255,224 ; jmpq *%rax
21280
Mike Klein21bd3e42017-04-06 16:32:29 -040021281PUBLIC _sk_gather_4444_sse2
21282_sk_gather_4444_sse2 LABEL PROC
21283 DB 72,173 ; lods %ds:(%rsi),%rax
21284 DB 76,139,8 ; mov (%rax),%r9
21285 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
21286 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
21287 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
21288 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3
21289 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3
21290 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3
21291 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2
21292 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1
21293 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1
21294 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
21295 DB 102,15,254,193 ; paddd %xmm1,%xmm0
21296 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1
21297 DB 102,72,15,126,200 ; movq %xmm1,%rax
21298 DB 65,137,192 ; mov %eax,%r8d
21299 DB 72,193,232,32 ; shr $0x20,%rax
21300 DB 102,72,15,126,193 ; movq %xmm0,%rcx
21301 DB 65,137,202 ; mov %ecx,%r10d
21302 DB 72,193,233,32 ; shr $0x20,%rcx
Mike Klein308e6242017-04-27 13:56:33 -040021303 DB 102,67,15,196,28,81,0 ; pinsrw $0x0,(%r9,%r10,2),%xmm3
21304 DB 102,65,15,196,28,73,1 ; pinsrw $0x1,(%r9,%rcx,2),%xmm3
Mike Klein21bd3e42017-04-06 16:32:29 -040021305 DB 67,15,183,12,65 ; movzwl (%r9,%r8,2),%ecx
Mike Klein308e6242017-04-27 13:56:33 -040021306 DB 102,15,196,217,2 ; pinsrw $0x2,%ecx,%xmm3
Mike Klein21bd3e42017-04-06 16:32:29 -040021307 DB 65,15,183,4,65 ; movzwl (%r9,%rax,2),%eax
Mike Klein308e6242017-04-27 13:56:33 -040021308 DB 102,15,196,216,3 ; pinsrw $0x3,%eax,%xmm3
Mike Klein21bd3e42017-04-06 16:32:29 -040021309 DB 102,15,239,192 ; pxor %xmm0,%xmm0
Mike Klein308e6242017-04-27 13:56:33 -040021310 DB 102,15,97,216 ; punpcklwd %xmm0,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040021311 DB 102,15,111,5,218,36,0,0 ; movdqa 0x24da(%rip),%xmm0 # 58d0 <_sk_callback_sse2+0xc3a>
Mike Klein308e6242017-04-27 13:56:33 -040021312 DB 102,15,219,195 ; pand %xmm3,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040021313 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021314 DB 15,89,5,220,36,0,0 ; mulps 0x24dc(%rip),%xmm0 # 58e0 <_sk_callback_sse2+0xc4a>
21315 DB 102,15,111,13,228,36,0,0 ; movdqa 0x24e4(%rip),%xmm1 # 58f0 <_sk_callback_sse2+0xc5a>
Mike Klein308e6242017-04-27 13:56:33 -040021316 DB 102,15,219,203 ; pand %xmm3,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040021317 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040021318 DB 15,89,13,230,36,0,0 ; mulps 0x24e6(%rip),%xmm1 # 5900 <_sk_callback_sse2+0xc6a>
21319 DB 102,15,111,21,238,36,0,0 ; movdqa 0x24ee(%rip),%xmm2 # 5910 <_sk_callback_sse2+0xc7a>
Mike Klein308e6242017-04-27 13:56:33 -040021320 DB 102,15,219,211 ; pand %xmm3,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040021321 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Klein8ca33562017-05-23 08:07:43 -040021322 DB 15,89,21,240,36,0,0 ; mulps 0x24f0(%rip),%xmm2 # 5920 <_sk_callback_sse2+0xc8a>
21323 DB 102,15,219,29,248,36,0,0 ; pand 0x24f8(%rip),%xmm3 # 5930 <_sk_callback_sse2+0xc9a>
Mike Kleinfe560a82017-05-01 12:56:35 -040021324 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040021325 DB 15,89,29,254,36,0,0 ; mulps 0x24fe(%rip),%xmm3 # 5940 <_sk_callback_sse2+0xcaa>
Mike Klein21bd3e42017-04-06 16:32:29 -040021326 DB 72,173 ; lods %ds:(%rsi),%rax
21327 DB 255,224 ; jmpq *%rax
21328
Mike Kleinf809fef2017-03-31 13:52:45 -040021329PUBLIC _sk_store_4444_sse2
21330_sk_store_4444_sse2 LABEL PROC
21331 DB 72,173 ; lods %ds:(%rsi),%rax
21332 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021333 DB 68,15,40,5,253,36,0,0 ; movaps 0x24fd(%rip),%xmm8 # 5950 <_sk_callback_sse2+0xcba>
Mike Kleinfe560a82017-05-01 12:56:35 -040021334 DB 68,15,40,200 ; movaps %xmm0,%xmm9
21335 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleinf809fef2017-03-31 13:52:45 -040021336 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
21337 DB 102,65,15,114,241,12 ; pslld $0xc,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040021338 DB 68,15,40,209 ; movaps %xmm1,%xmm10
21339 DB 69,15,89,208 ; mulps %xmm8,%xmm10
Mike Kleinf809fef2017-03-31 13:52:45 -040021340 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10
21341 DB 102,65,15,114,242,8 ; pslld $0x8,%xmm10
21342 DB 102,69,15,235,209 ; por %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040021343 DB 68,15,40,202 ; movaps %xmm2,%xmm9
21344 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleinf809fef2017-03-31 13:52:45 -040021345 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
21346 DB 102,65,15,114,241,4 ; pslld $0x4,%xmm9
21347 DB 68,15,89,195 ; mulps %xmm3,%xmm8
21348 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
21349 DB 102,69,15,86,193 ; orpd %xmm9,%xmm8
21350 DB 102,69,15,86,194 ; orpd %xmm10,%xmm8
21351 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8
21352 DB 102,65,15,114,224,16 ; psrad $0x10,%xmm8
21353 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8
21354 DB 102,68,15,214,4,120 ; movq %xmm8,(%rax,%rdi,2)
21355 DB 72,173 ; lods %ds:(%rsi),%rax
21356 DB 255,224 ; jmpq *%rax
21357
Mike Kleind7e06ae2017-03-29 16:33:06 -040021358PUBLIC _sk_load_8888_sse2
21359_sk_load_8888_sse2 LABEL PROC
21360 DB 72,173 ; lods %ds:(%rsi),%rax
21361 DB 72,139,0 ; mov (%rax),%rax
Mike Klein0aa742f2017-04-27 13:36:57 -040021362 DB 68,15,16,12,184 ; movups (%rax,%rdi,4),%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040021363 DB 15,40,21,144,36,0,0 ; movaps 0x2490(%rip),%xmm2 # 5960 <_sk_callback_sse2+0xcca>
Mike Klein0aa742f2017-04-27 13:36:57 -040021364 DB 65,15,40,193 ; movaps %xmm9,%xmm0
21365 DB 15,84,194 ; andps %xmm2,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040021366 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021367 DB 68,15,40,5,142,36,0,0 ; movaps 0x248e(%rip),%xmm8 # 5970 <_sk_callback_sse2+0xcda>
Mike Kleind7e06ae2017-03-29 16:33:06 -040021368 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040021369 DB 65,15,40,201 ; movaps %xmm9,%xmm1
21370 DB 102,15,114,209,8 ; psrld $0x8,%xmm1
21371 DB 102,15,219,202 ; pand %xmm2,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040021372 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
21373 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040021374 DB 65,15,40,217 ; movaps %xmm9,%xmm3
21375 DB 102,15,114,211,16 ; psrld $0x10,%xmm3
21376 DB 102,15,219,218 ; pand %xmm2,%xmm3
21377 DB 15,91,211 ; cvtdq2ps %xmm3,%xmm2
Mike Kleind7e06ae2017-03-29 16:33:06 -040021378 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040021379 DB 102,65,15,114,209,24 ; psrld $0x18,%xmm9
21380 DB 65,15,91,217 ; cvtdq2ps %xmm9,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040021381 DB 65,15,89,216 ; mulps %xmm8,%xmm3
21382 DB 72,173 ; lods %ds:(%rsi),%rax
21383 DB 255,224 ; jmpq *%rax
21384
Mike Kleindec4ea82017-04-06 15:04:05 -040021385PUBLIC _sk_gather_8888_sse2
21386_sk_gather_8888_sse2 LABEL PROC
21387 DB 72,173 ; lods %ds:(%rsi),%rax
21388 DB 76,139,8 ; mov (%rax),%r9
21389 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
21390 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
21391 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
21392 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3
21393 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3
21394 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3
21395 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2
21396 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1
21397 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1
21398 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
21399 DB 102,15,254,193 ; paddd %xmm1,%xmm0
21400 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1
21401 DB 102,72,15,126,200 ; movq %xmm1,%rax
21402 DB 65,137,192 ; mov %eax,%r8d
21403 DB 72,193,232,32 ; shr $0x20,%rax
21404 DB 102,72,15,126,193 ; movq %xmm0,%rcx
21405 DB 65,137,202 ; mov %ecx,%r10d
21406 DB 72,193,233,32 ; shr $0x20,%rcx
21407 DB 102,65,15,110,4,137 ; movd (%r9,%rcx,4),%xmm0
21408 DB 102,65,15,110,12,129 ; movd (%r9,%rax,4),%xmm1
21409 DB 102,15,98,193 ; punpckldq %xmm1,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040021410 DB 102,71,15,110,12,145 ; movd (%r9,%r10,4),%xmm9
Mike Kleindec4ea82017-04-06 15:04:05 -040021411 DB 102,67,15,110,12,129 ; movd (%r9,%r8,4),%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040021412 DB 102,68,15,98,201 ; punpckldq %xmm1,%xmm9
21413 DB 102,68,15,98,200 ; punpckldq %xmm0,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040021414 DB 102,15,111,21,223,35,0,0 ; movdqa 0x23df(%rip),%xmm2 # 5980 <_sk_callback_sse2+0xcea>
Mike Klein0aa742f2017-04-27 13:36:57 -040021415 DB 102,65,15,111,193 ; movdqa %xmm9,%xmm0
21416 DB 102,15,219,194 ; pand %xmm2,%xmm0
Mike Kleindec4ea82017-04-06 15:04:05 -040021417 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021418 DB 68,15,40,5,219,35,0,0 ; movaps 0x23db(%rip),%xmm8 # 5990 <_sk_callback_sse2+0xcfa>
Mike Kleindec4ea82017-04-06 15:04:05 -040021419 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Mike Klein0aa742f2017-04-27 13:36:57 -040021420 DB 102,65,15,111,201 ; movdqa %xmm9,%xmm1
21421 DB 102,15,114,209,8 ; psrld $0x8,%xmm1
21422 DB 102,15,219,202 ; pand %xmm2,%xmm1
Mike Kleindec4ea82017-04-06 15:04:05 -040021423 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1
21424 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Klein0aa742f2017-04-27 13:36:57 -040021425 DB 102,65,15,111,217 ; movdqa %xmm9,%xmm3
21426 DB 102,15,114,211,16 ; psrld $0x10,%xmm3
21427 DB 102,15,219,218 ; pand %xmm2,%xmm3
21428 DB 15,91,211 ; cvtdq2ps %xmm3,%xmm2
Mike Kleindec4ea82017-04-06 15:04:05 -040021429 DB 65,15,89,208 ; mulps %xmm8,%xmm2
Mike Klein0aa742f2017-04-27 13:36:57 -040021430 DB 102,65,15,114,209,24 ; psrld $0x18,%xmm9
21431 DB 65,15,91,217 ; cvtdq2ps %xmm9,%xmm3
Mike Kleindec4ea82017-04-06 15:04:05 -040021432 DB 65,15,89,216 ; mulps %xmm8,%xmm3
21433 DB 72,173 ; lods %ds:(%rsi),%rax
21434 DB 255,224 ; jmpq *%rax
21435
Mike Kleind7e06ae2017-03-29 16:33:06 -040021436PUBLIC _sk_store_8888_sse2
21437_sk_store_8888_sse2 LABEL PROC
21438 DB 72,173 ; lods %ds:(%rsi),%rax
21439 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021440 DB 68,15,40,5,158,35,0,0 ; movaps 0x239e(%rip),%xmm8 # 59a0 <_sk_callback_sse2+0xd0a>
Mike Kleinfe560a82017-05-01 12:56:35 -040021441 DB 68,15,40,200 ; movaps %xmm0,%xmm9
21442 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040021443 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
Mike Kleinfe560a82017-05-01 12:56:35 -040021444 DB 68,15,40,209 ; movaps %xmm1,%xmm10
21445 DB 69,15,89,208 ; mulps %xmm8,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040021446 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10
21447 DB 102,65,15,114,242,8 ; pslld $0x8,%xmm10
21448 DB 102,69,15,235,209 ; por %xmm9,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040021449 DB 68,15,40,202 ; movaps %xmm2,%xmm9
21450 DB 69,15,89,200 ; mulps %xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040021451 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
21452 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9
21453 DB 68,15,89,195 ; mulps %xmm3,%xmm8
21454 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
21455 DB 102,65,15,114,240,24 ; pslld $0x18,%xmm8
21456 DB 102,69,15,235,193 ; por %xmm9,%xmm8
21457 DB 102,69,15,235,194 ; por %xmm10,%xmm8
21458 DB 243,68,15,127,4,184 ; movdqu %xmm8,(%rax,%rdi,4)
21459 DB 72,173 ; lods %ds:(%rsi),%rax
21460 DB 255,224 ; jmpq *%rax
21461
21462PUBLIC _sk_load_f16_sse2
21463_sk_load_f16_sse2 LABEL PROC
21464 DB 72,173 ; lods %ds:(%rsi),%rax
21465 DB 72,139,0 ; mov (%rax),%rax
21466 DB 243,15,111,4,248 ; movdqu (%rax,%rdi,8),%xmm0
21467 DB 243,15,111,76,248,16 ; movdqu 0x10(%rax,%rdi,8),%xmm1
Mike Klein114e6b32017-04-03 22:21:15 -040021468 DB 102,68,15,111,192 ; movdqa %xmm0,%xmm8
21469 DB 102,68,15,97,193 ; punpcklwd %xmm1,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -040021470 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0
Mike Kleinb4bbc642017-04-27 08:59:55 -040021471 DB 102,69,15,111,240 ; movdqa %xmm8,%xmm14
21472 DB 102,68,15,97,240 ; punpcklwd %xmm0,%xmm14
Mike Klein114e6b32017-04-03 22:21:15 -040021473 DB 102,68,15,105,192 ; punpckhwd %xmm0,%xmm8
Mike Klein097d0932017-04-20 09:11:53 -040021474 DB 102,69,15,239,210 ; pxor %xmm10,%xmm10
Mike Kleinb4bbc642017-04-27 08:59:55 -040021475 DB 102,65,15,111,206 ; movdqa %xmm14,%xmm1
21476 DB 102,65,15,97,202 ; punpcklwd %xmm10,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040021477 DB 102,68,15,111,13,14,35,0,0 ; movdqa 0x230e(%rip),%xmm9 # 59b0 <_sk_callback_sse2+0xd1a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021478 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
21479 DB 102,65,15,219,193 ; pand %xmm9,%xmm0
21480 DB 102,15,239,200 ; pxor %xmm0,%xmm1
21481 DB 102,15,114,240,16 ; pslld $0x10,%xmm0
21482 DB 102,68,15,111,233 ; movdqa %xmm1,%xmm13
Mike Kleind0ce1482017-04-19 17:19:30 -040021483 DB 102,65,15,114,245,13 ; pslld $0xd,%xmm13
Mike Kleinb4bbc642017-04-27 08:59:55 -040021484 DB 102,68,15,235,232 ; por %xmm0,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040021485 DB 102,68,15,111,29,243,34,0,0 ; movdqa 0x22f3(%rip),%xmm11 # 59c0 <_sk_callback_sse2+0xd2a>
Mike Kleind0ce1482017-04-19 17:19:30 -040021486 DB 102,69,15,254,235 ; paddd %xmm11,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040021487 DB 102,68,15,111,37,245,34,0,0 ; movdqa 0x22f5(%rip),%xmm12 # 59d0 <_sk_callback_sse2+0xd3a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021488 DB 102,65,15,239,204 ; pxor %xmm12,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040021489 DB 102,15,111,29,248,34,0,0 ; movdqa 0x22f8(%rip),%xmm3 # 59e0 <_sk_callback_sse2+0xd4a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021490 DB 102,15,111,195 ; movdqa %xmm3,%xmm0
21491 DB 102,15,102,193 ; pcmpgtd %xmm1,%xmm0
21492 DB 102,65,15,223,197 ; pandn %xmm13,%xmm0
21493 DB 102,65,15,115,222,8 ; psrldq $0x8,%xmm14
21494 DB 102,69,15,97,242 ; punpcklwd %xmm10,%xmm14
21495 DB 102,65,15,111,206 ; movdqa %xmm14,%xmm1
21496 DB 102,65,15,219,201 ; pand %xmm9,%xmm1
21497 DB 102,68,15,239,241 ; pxor %xmm1,%xmm14
21498 DB 102,15,114,241,16 ; pslld $0x10,%xmm1
21499 DB 102,65,15,111,214 ; movdqa %xmm14,%xmm2
21500 DB 102,15,114,242,13 ; pslld $0xd,%xmm2
21501 DB 102,15,235,209 ; por %xmm1,%xmm2
21502 DB 102,65,15,254,211 ; paddd %xmm11,%xmm2
21503 DB 102,69,15,239,244 ; pxor %xmm12,%xmm14
21504 DB 102,15,111,203 ; movdqa %xmm3,%xmm1
21505 DB 102,65,15,102,206 ; pcmpgtd %xmm14,%xmm1
21506 DB 102,15,223,202 ; pandn %xmm2,%xmm1
21507 DB 102,69,15,111,232 ; movdqa %xmm8,%xmm13
21508 DB 102,69,15,97,234 ; punpcklwd %xmm10,%xmm13
21509 DB 102,65,15,111,213 ; movdqa %xmm13,%xmm2
21510 DB 102,65,15,219,209 ; pand %xmm9,%xmm2
21511 DB 102,68,15,239,234 ; pxor %xmm2,%xmm13
21512 DB 102,15,114,242,16 ; pslld $0x10,%xmm2
21513 DB 102,69,15,111,245 ; movdqa %xmm13,%xmm14
21514 DB 102,65,15,114,246,13 ; pslld $0xd,%xmm14
21515 DB 102,68,15,235,242 ; por %xmm2,%xmm14
21516 DB 102,69,15,254,243 ; paddd %xmm11,%xmm14
21517 DB 102,69,15,239,236 ; pxor %xmm12,%xmm13
21518 DB 102,15,111,211 ; movdqa %xmm3,%xmm2
21519 DB 102,65,15,102,213 ; pcmpgtd %xmm13,%xmm2
21520 DB 102,65,15,223,214 ; pandn %xmm14,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -040021521 DB 102,65,15,115,216,8 ; psrldq $0x8,%xmm8
Mike Klein097d0932017-04-20 09:11:53 -040021522 DB 102,69,15,97,194 ; punpcklwd %xmm10,%xmm8
21523 DB 102,69,15,219,200 ; pand %xmm8,%xmm9
21524 DB 102,69,15,239,193 ; pxor %xmm9,%xmm8
21525 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040021526 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10
21527 DB 102,65,15,114,242,13 ; pslld $0xd,%xmm10
21528 DB 102,69,15,235,209 ; por %xmm9,%xmm10
21529 DB 102,69,15,254,211 ; paddd %xmm11,%xmm10
21530 DB 102,69,15,239,196 ; pxor %xmm12,%xmm8
Mike Klein097d0932017-04-20 09:11:53 -040021531 DB 102,65,15,102,216 ; pcmpgtd %xmm8,%xmm3
Mike Kleinb4bbc642017-04-27 08:59:55 -040021532 DB 102,65,15,223,218 ; pandn %xmm10,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040021533 DB 72,173 ; lods %ds:(%rsi),%rax
21534 DB 255,224 ; jmpq *%rax
21535
Mike Klein5f055f02017-04-06 20:02:11 -040021536PUBLIC _sk_gather_f16_sse2
21537_sk_gather_f16_sse2 LABEL PROC
21538 DB 72,173 ; lods %ds:(%rsi),%rax
21539 DB 76,139,8 ; mov (%rax),%r9
21540 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
21541 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2
21542 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2
21543 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3
21544 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3
21545 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3
21546 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2
21547 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1
21548 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1
21549 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0
21550 DB 102,15,254,193 ; paddd %xmm1,%xmm0
21551 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1
21552 DB 102,72,15,126,200 ; movq %xmm1,%rax
21553 DB 65,137,192 ; mov %eax,%r8d
21554 DB 72,193,232,32 ; shr $0x20,%rax
21555 DB 102,72,15,126,193 ; movq %xmm0,%rcx
21556 DB 65,137,202 ; mov %ecx,%r10d
21557 DB 72,193,233,32 ; shr $0x20,%rcx
21558 DB 243,65,15,126,4,201 ; movq (%r9,%rcx,8),%xmm0
21559 DB 243,67,15,126,12,209 ; movq (%r9,%r10,8),%xmm1
21560 DB 102,15,108,200 ; punpcklqdq %xmm0,%xmm1
21561 DB 243,65,15,126,4,193 ; movq (%r9,%rax,8),%xmm0
21562 DB 243,67,15,126,20,193 ; movq (%r9,%r8,8),%xmm2
21563 DB 102,15,108,208 ; punpcklqdq %xmm0,%xmm2
21564 DB 102,68,15,111,193 ; movdqa %xmm1,%xmm8
21565 DB 102,68,15,97,194 ; punpcklwd %xmm2,%xmm8
21566 DB 102,15,105,202 ; punpckhwd %xmm2,%xmm1
Mike Kleinb4bbc642017-04-27 08:59:55 -040021567 DB 102,69,15,111,240 ; movdqa %xmm8,%xmm14
21568 DB 102,68,15,97,241 ; punpcklwd %xmm1,%xmm14
Mike Klein5f055f02017-04-06 20:02:11 -040021569 DB 102,68,15,105,193 ; punpckhwd %xmm1,%xmm8
Mike Klein097d0932017-04-20 09:11:53 -040021570 DB 102,69,15,239,210 ; pxor %xmm10,%xmm10
Mike Kleinb4bbc642017-04-27 08:59:55 -040021571 DB 102,65,15,111,206 ; movdqa %xmm14,%xmm1
21572 DB 102,65,15,97,202 ; punpcklwd %xmm10,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040021573 DB 102,68,15,111,13,134,33,0,0 ; movdqa 0x2186(%rip),%xmm9 # 59f0 <_sk_callback_sse2+0xd5a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021574 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
21575 DB 102,65,15,219,193 ; pand %xmm9,%xmm0
21576 DB 102,15,239,200 ; pxor %xmm0,%xmm1
21577 DB 102,15,114,240,16 ; pslld $0x10,%xmm0
21578 DB 102,68,15,111,233 ; movdqa %xmm1,%xmm13
Mike Kleind0ce1482017-04-19 17:19:30 -040021579 DB 102,65,15,114,245,13 ; pslld $0xd,%xmm13
Mike Kleinb4bbc642017-04-27 08:59:55 -040021580 DB 102,68,15,235,232 ; por %xmm0,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040021581 DB 102,68,15,111,29,107,33,0,0 ; movdqa 0x216b(%rip),%xmm11 # 5a00 <_sk_callback_sse2+0xd6a>
Mike Kleind0ce1482017-04-19 17:19:30 -040021582 DB 102,69,15,254,235 ; paddd %xmm11,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040021583 DB 102,68,15,111,37,109,33,0,0 ; movdqa 0x216d(%rip),%xmm12 # 5a10 <_sk_callback_sse2+0xd7a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021584 DB 102,65,15,239,204 ; pxor %xmm12,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040021585 DB 102,15,111,29,112,33,0,0 ; movdqa 0x2170(%rip),%xmm3 # 5a20 <_sk_callback_sse2+0xd8a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021586 DB 102,15,111,195 ; movdqa %xmm3,%xmm0
21587 DB 102,15,102,193 ; pcmpgtd %xmm1,%xmm0
21588 DB 102,65,15,223,197 ; pandn %xmm13,%xmm0
21589 DB 102,65,15,115,222,8 ; psrldq $0x8,%xmm14
21590 DB 102,69,15,97,242 ; punpcklwd %xmm10,%xmm14
21591 DB 102,65,15,111,206 ; movdqa %xmm14,%xmm1
21592 DB 102,65,15,219,201 ; pand %xmm9,%xmm1
21593 DB 102,68,15,239,241 ; pxor %xmm1,%xmm14
21594 DB 102,15,114,241,16 ; pslld $0x10,%xmm1
21595 DB 102,65,15,111,214 ; movdqa %xmm14,%xmm2
21596 DB 102,15,114,242,13 ; pslld $0xd,%xmm2
21597 DB 102,15,235,209 ; por %xmm1,%xmm2
21598 DB 102,65,15,254,211 ; paddd %xmm11,%xmm2
21599 DB 102,69,15,239,244 ; pxor %xmm12,%xmm14
21600 DB 102,15,111,203 ; movdqa %xmm3,%xmm1
21601 DB 102,65,15,102,206 ; pcmpgtd %xmm14,%xmm1
21602 DB 102,15,223,202 ; pandn %xmm2,%xmm1
21603 DB 102,69,15,111,232 ; movdqa %xmm8,%xmm13
21604 DB 102,69,15,97,234 ; punpcklwd %xmm10,%xmm13
21605 DB 102,65,15,111,213 ; movdqa %xmm13,%xmm2
21606 DB 102,65,15,219,209 ; pand %xmm9,%xmm2
21607 DB 102,68,15,239,234 ; pxor %xmm2,%xmm13
21608 DB 102,15,114,242,16 ; pslld $0x10,%xmm2
21609 DB 102,69,15,111,245 ; movdqa %xmm13,%xmm14
21610 DB 102,65,15,114,246,13 ; pslld $0xd,%xmm14
21611 DB 102,68,15,235,242 ; por %xmm2,%xmm14
21612 DB 102,69,15,254,243 ; paddd %xmm11,%xmm14
21613 DB 102,69,15,239,236 ; pxor %xmm12,%xmm13
21614 DB 102,15,111,211 ; movdqa %xmm3,%xmm2
21615 DB 102,65,15,102,213 ; pcmpgtd %xmm13,%xmm2
21616 DB 102,65,15,223,214 ; pandn %xmm14,%xmm2
Mike Kleind0ce1482017-04-19 17:19:30 -040021617 DB 102,65,15,115,216,8 ; psrldq $0x8,%xmm8
Mike Klein097d0932017-04-20 09:11:53 -040021618 DB 102,69,15,97,194 ; punpcklwd %xmm10,%xmm8
21619 DB 102,69,15,219,200 ; pand %xmm8,%xmm9
21620 DB 102,69,15,239,193 ; pxor %xmm9,%xmm8
21621 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040021622 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10
21623 DB 102,65,15,114,242,13 ; pslld $0xd,%xmm10
21624 DB 102,69,15,235,209 ; por %xmm9,%xmm10
21625 DB 102,69,15,254,211 ; paddd %xmm11,%xmm10
21626 DB 102,69,15,239,196 ; pxor %xmm12,%xmm8
Mike Klein097d0932017-04-20 09:11:53 -040021627 DB 102,65,15,102,216 ; pcmpgtd %xmm8,%xmm3
Mike Kleinb4bbc642017-04-27 08:59:55 -040021628 DB 102,65,15,223,218 ; pandn %xmm10,%xmm3
Mike Klein5f055f02017-04-06 20:02:11 -040021629 DB 72,173 ; lods %ds:(%rsi),%rax
21630 DB 255,224 ; jmpq *%rax
21631
Mike Kleind7e06ae2017-03-29 16:33:06 -040021632PUBLIC _sk_store_f16_sse2
21633_sk_store_f16_sse2 LABEL PROC
21634 DB 72,173 ; lods %ds:(%rsi),%rax
21635 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021636 DB 102,68,15,111,21,152,32,0,0 ; movdqa 0x2098(%rip),%xmm10 # 5a30 <_sk_callback_sse2+0xd9a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021637 DB 102,68,15,111,224 ; movdqa %xmm0,%xmm12
Mike Klein097d0932017-04-20 09:11:53 -040021638 DB 102,68,15,111,232 ; movdqa %xmm0,%xmm13
Mike Kleinb4bbc642017-04-27 08:59:55 -040021639 DB 102,69,15,219,234 ; pand %xmm10,%xmm13
21640 DB 102,69,15,239,229 ; pxor %xmm13,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040021641 DB 102,68,15,111,13,139,32,0,0 ; movdqa 0x208b(%rip),%xmm9 # 5a40 <_sk_callback_sse2+0xdaa>
Mike Kleind0ce1482017-04-19 17:19:30 -040021642 DB 102,65,15,114,213,16 ; psrld $0x10,%xmm13
Mike Kleinb4bbc642017-04-27 08:59:55 -040021643 DB 102,69,15,111,193 ; movdqa %xmm9,%xmm8
21644 DB 102,69,15,102,196 ; pcmpgtd %xmm12,%xmm8
21645 DB 102,65,15,114,212,13 ; psrld $0xd,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040021646 DB 102,68,15,111,29,124,32,0,0 ; movdqa 0x207c(%rip),%xmm11 # 5a50 <_sk_callback_sse2+0xdba>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021647 DB 102,69,15,235,235 ; por %xmm11,%xmm13
21648 DB 102,69,15,254,236 ; paddd %xmm12,%xmm13
Mike Kleind0ce1482017-04-19 17:19:30 -040021649 DB 102,65,15,114,245,16 ; pslld $0x10,%xmm13
21650 DB 102,65,15,114,229,16 ; psrad $0x10,%xmm13
Mike Kleinb4bbc642017-04-27 08:59:55 -040021651 DB 102,69,15,223,197 ; pandn %xmm13,%xmm8
21652 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8
21653 DB 102,68,15,111,233 ; movdqa %xmm1,%xmm13
21654 DB 102,68,15,111,241 ; movdqa %xmm1,%xmm14
21655 DB 102,69,15,219,242 ; pand %xmm10,%xmm14
21656 DB 102,69,15,239,238 ; pxor %xmm14,%xmm13
Mike Kleind0ce1482017-04-19 17:19:30 -040021657 DB 102,65,15,114,214,16 ; psrld $0x10,%xmm14
Mike Kleinb4bbc642017-04-27 08:59:55 -040021658 DB 102,69,15,111,225 ; movdqa %xmm9,%xmm12
21659 DB 102,69,15,102,229 ; pcmpgtd %xmm13,%xmm12
21660 DB 102,65,15,114,213,13 ; psrld $0xd,%xmm13
21661 DB 102,69,15,235,243 ; por %xmm11,%xmm14
21662 DB 102,69,15,254,245 ; paddd %xmm13,%xmm14
Mike Kleind0ce1482017-04-19 17:19:30 -040021663 DB 102,65,15,114,246,16 ; pslld $0x10,%xmm14
21664 DB 102,65,15,114,230,16 ; psrad $0x10,%xmm14
Mike Kleinb4bbc642017-04-27 08:59:55 -040021665 DB 102,69,15,223,230 ; pandn %xmm14,%xmm12
21666 DB 102,69,15,107,228 ; packssdw %xmm12,%xmm12
21667 DB 102,68,15,111,242 ; movdqa %xmm2,%xmm14
21668 DB 102,68,15,111,250 ; movdqa %xmm2,%xmm15
21669 DB 102,69,15,219,250 ; pand %xmm10,%xmm15
21670 DB 102,69,15,239,247 ; pxor %xmm15,%xmm14
21671 DB 102,65,15,114,215,16 ; psrld $0x10,%xmm15
21672 DB 102,69,15,111,233 ; movdqa %xmm9,%xmm13
21673 DB 102,69,15,102,238 ; pcmpgtd %xmm14,%xmm13
Mike Klein097d0932017-04-20 09:11:53 -040021674 DB 102,65,15,114,214,13 ; psrld $0xd,%xmm14
Mike Kleinb4bbc642017-04-27 08:59:55 -040021675 DB 102,69,15,235,251 ; por %xmm11,%xmm15
21676 DB 102,69,15,254,254 ; paddd %xmm14,%xmm15
21677 DB 102,65,15,114,247,16 ; pslld $0x10,%xmm15
21678 DB 102,65,15,114,231,16 ; psrad $0x10,%xmm15
21679 DB 102,69,15,223,239 ; pandn %xmm15,%xmm13
21680 DB 102,69,15,107,237 ; packssdw %xmm13,%xmm13
21681 DB 102,68,15,219,211 ; pand %xmm3,%xmm10
21682 DB 102,68,15,111,243 ; movdqa %xmm3,%xmm14
21683 DB 102,69,15,239,242 ; pxor %xmm10,%xmm14
21684 DB 102,65,15,114,210,16 ; psrld $0x10,%xmm10
21685 DB 102,69,15,102,206 ; pcmpgtd %xmm14,%xmm9
21686 DB 102,65,15,114,214,13 ; psrld $0xd,%xmm14
21687 DB 102,69,15,235,211 ; por %xmm11,%xmm10
21688 DB 102,69,15,254,214 ; paddd %xmm14,%xmm10
21689 DB 102,65,15,114,242,16 ; pslld $0x10,%xmm10
21690 DB 102,65,15,114,226,16 ; psrad $0x10,%xmm10
21691 DB 102,69,15,223,202 ; pandn %xmm10,%xmm9
21692 DB 102,69,15,107,201 ; packssdw %xmm9,%xmm9
Mike Kleind0ce1482017-04-19 17:19:30 -040021693 DB 102,69,15,97,196 ; punpcklwd %xmm12,%xmm8
Mike Kleinb4bbc642017-04-27 08:59:55 -040021694 DB 102,69,15,97,233 ; punpcklwd %xmm9,%xmm13
Mike Klein95f53be2017-04-04 10:24:56 -040021695 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9
Mike Kleind0ce1482017-04-19 17:19:30 -040021696 DB 102,69,15,98,205 ; punpckldq %xmm13,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040021697 DB 243,68,15,127,12,248 ; movdqu %xmm9,(%rax,%rdi,8)
Mike Kleind0ce1482017-04-19 17:19:30 -040021698 DB 102,69,15,106,197 ; punpckhdq %xmm13,%xmm8
Mike Klein95f53be2017-04-04 10:24:56 -040021699 DB 243,68,15,127,68,248,16 ; movdqu %xmm8,0x10(%rax,%rdi,8)
Mike Kleind7e06ae2017-03-29 16:33:06 -040021700 DB 72,173 ; lods %ds:(%rsi),%rax
21701 DB 255,224 ; jmpq *%rax
21702
Mike Klein3146bb92017-04-05 14:45:02 -040021703PUBLIC _sk_load_u16_be_sse2
21704_sk_load_u16_be_sse2 LABEL PROC
21705 DB 72,173 ; lods %ds:(%rsi),%rax
21706 DB 72,139,0 ; mov (%rax),%rax
21707 DB 243,15,111,4,248 ; movdqu (%rax,%rdi,8),%xmm0
21708 DB 243,15,111,76,248,16 ; movdqu 0x10(%rax,%rdi,8),%xmm1
21709 DB 102,15,111,208 ; movdqa %xmm0,%xmm2
21710 DB 102,15,97,209 ; punpcklwd %xmm1,%xmm2
21711 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0
21712 DB 102,15,111,202 ; movdqa %xmm2,%xmm1
21713 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1
21714 DB 102,15,105,208 ; punpckhwd %xmm0,%xmm2
Mike Klein3146bb92017-04-05 14:45:02 -040021715 DB 102,15,111,193 ; movdqa %xmm1,%xmm0
21716 DB 102,15,113,240,8 ; psllw $0x8,%xmm0
21717 DB 102,15,112,217,78 ; pshufd $0x4e,%xmm1,%xmm3
21718 DB 102,15,113,209,8 ; psrlw $0x8,%xmm1
21719 DB 102,15,235,200 ; por %xmm0,%xmm1
21720 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9
21721 DB 102,65,15,97,201 ; punpcklwd %xmm9,%xmm1
21722 DB 15,91,193 ; cvtdq2ps %xmm1,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021723 DB 68,15,40,5,26,31,0,0 ; movaps 0x1f1a(%rip),%xmm8 # 5a60 <_sk_callback_sse2+0xdca>
Mike Klein3146bb92017-04-05 14:45:02 -040021724 DB 65,15,89,192 ; mulps %xmm8,%xmm0
21725 DB 102,15,111,203 ; movdqa %xmm3,%xmm1
21726 DB 102,15,113,241,8 ; psllw $0x8,%xmm1
21727 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3
21728 DB 102,15,235,217 ; por %xmm1,%xmm3
21729 DB 102,65,15,97,217 ; punpcklwd %xmm9,%xmm3
21730 DB 15,91,203 ; cvtdq2ps %xmm3,%xmm1
21731 DB 65,15,89,200 ; mulps %xmm8,%xmm1
21732 DB 102,68,15,111,210 ; movdqa %xmm2,%xmm10
21733 DB 102,65,15,113,242,8 ; psllw $0x8,%xmm10
21734 DB 102,15,112,218,78 ; pshufd $0x4e,%xmm2,%xmm3
21735 DB 102,15,113,210,8 ; psrlw $0x8,%xmm2
21736 DB 102,65,15,235,210 ; por %xmm10,%xmm2
21737 DB 102,65,15,97,209 ; punpcklwd %xmm9,%xmm2
21738 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
21739 DB 65,15,89,208 ; mulps %xmm8,%xmm2
21740 DB 102,68,15,111,211 ; movdqa %xmm3,%xmm10
21741 DB 102,65,15,113,242,8 ; psllw $0x8,%xmm10
21742 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3
21743 DB 102,65,15,235,218 ; por %xmm10,%xmm3
21744 DB 102,65,15,97,217 ; punpcklwd %xmm9,%xmm3
21745 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3
21746 DB 65,15,89,216 ; mulps %xmm8,%xmm3
21747 DB 72,173 ; lods %ds:(%rsi),%rax
21748 DB 255,224 ; jmpq *%rax
21749
Mike Kleinb3821732017-04-17 10:58:05 -040021750PUBLIC _sk_load_rgb_u16_be_sse2
21751_sk_load_rgb_u16_be_sse2 LABEL PROC
21752 DB 72,173 ; lods %ds:(%rsi),%rax
21753 DB 72,139,0 ; mov (%rax),%rax
21754 DB 72,141,12,127 ; lea (%rdi,%rdi,2),%rcx
21755 DB 243,15,111,20,72 ; movdqu (%rax,%rcx,2),%xmm2
21756 DB 243,15,111,68,72,8 ; movdqu 0x8(%rax,%rcx,2),%xmm0
21757 DB 102,15,115,216,4 ; psrldq $0x4,%xmm0
21758 DB 102,15,111,202 ; movdqa %xmm2,%xmm1
21759 DB 102,15,115,217,6 ; psrldq $0x6,%xmm1
21760 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2
21761 DB 102,15,115,216,6 ; psrldq $0x6,%xmm0
21762 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1
21763 DB 102,15,111,194 ; movdqa %xmm2,%xmm0
21764 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0
21765 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3
21766 DB 102,15,105,209 ; punpckhwd %xmm1,%xmm2
Mike Kleinb3821732017-04-17 10:58:05 -040021767 DB 102,15,111,200 ; movdqa %xmm0,%xmm1
21768 DB 102,15,113,241,8 ; psllw $0x8,%xmm1
21769 DB 102,15,113,208,8 ; psrlw $0x8,%xmm0
21770 DB 102,15,235,193 ; por %xmm1,%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040021771 DB 102,69,15,239,192 ; pxor %xmm8,%xmm8
21772 DB 102,65,15,97,192 ; punpcklwd %xmm8,%xmm0
Mike Kleinb3821732017-04-17 10:58:05 -040021773 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040021774 DB 68,15,40,13,86,30,0,0 ; movaps 0x1e56(%rip),%xmm9 # 5a70 <_sk_callback_sse2+0xdda>
Mike Kleinfe560a82017-05-01 12:56:35 -040021775 DB 65,15,89,193 ; mulps %xmm9,%xmm0
Mike Kleinb3821732017-04-17 10:58:05 -040021776 DB 102,15,111,203 ; movdqa %xmm3,%xmm1
21777 DB 102,15,113,241,8 ; psllw $0x8,%xmm1
21778 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3
21779 DB 102,15,235,217 ; por %xmm1,%xmm3
Mike Kleinfe560a82017-05-01 12:56:35 -040021780 DB 102,65,15,97,216 ; punpcklwd %xmm8,%xmm3
Mike Kleinb3821732017-04-17 10:58:05 -040021781 DB 15,91,203 ; cvtdq2ps %xmm3,%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040021782 DB 65,15,89,201 ; mulps %xmm9,%xmm1
Mike Kleinb3821732017-04-17 10:58:05 -040021783 DB 102,15,111,218 ; movdqa %xmm2,%xmm3
21784 DB 102,15,113,243,8 ; psllw $0x8,%xmm3
21785 DB 102,15,113,210,8 ; psrlw $0x8,%xmm2
21786 DB 102,15,235,211 ; por %xmm3,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040021787 DB 102,65,15,97,208 ; punpcklwd %xmm8,%xmm2
Mike Kleinb3821732017-04-17 10:58:05 -040021788 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2
Mike Kleinfe560a82017-05-01 12:56:35 -040021789 DB 65,15,89,209 ; mulps %xmm9,%xmm2
Mike Kleinb3821732017-04-17 10:58:05 -040021790 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021791 DB 15,40,29,29,30,0,0 ; movaps 0x1e1d(%rip),%xmm3 # 5a80 <_sk_callback_sse2+0xdea>
Mike Kleinb3821732017-04-17 10:58:05 -040021792 DB 255,224 ; jmpq *%rax
21793
Mike Klein3146bb92017-04-05 14:45:02 -040021794PUBLIC _sk_store_u16_be_sse2
21795_sk_store_u16_be_sse2 LABEL PROC
21796 DB 72,173 ; lods %ds:(%rsi),%rax
21797 DB 72,139,0 ; mov (%rax),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040021798 DB 68,15,40,13,30,30,0,0 ; movaps 0x1e1e(%rip),%xmm9 # 5a90 <_sk_callback_sse2+0xdfa>
Mike Kleinfe560a82017-05-01 12:56:35 -040021799 DB 68,15,40,192 ; movaps %xmm0,%xmm8
21800 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein3146bb92017-04-05 14:45:02 -040021801 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8
21802 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8
21803 DB 102,65,15,114,224,16 ; psrad $0x10,%xmm8
21804 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8
21805 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10
21806 DB 102,65,15,113,242,8 ; psllw $0x8,%xmm10
21807 DB 102,65,15,113,208,8 ; psrlw $0x8,%xmm8
21808 DB 102,69,15,235,194 ; por %xmm10,%xmm8
Mike Kleinfe560a82017-05-01 12:56:35 -040021809 DB 68,15,40,209 ; movaps %xmm1,%xmm10
21810 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein3146bb92017-04-05 14:45:02 -040021811 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10
21812 DB 102,65,15,114,242,16 ; pslld $0x10,%xmm10
21813 DB 102,65,15,114,226,16 ; psrad $0x10,%xmm10
21814 DB 102,69,15,107,210 ; packssdw %xmm10,%xmm10
21815 DB 102,69,15,111,218 ; movdqa %xmm10,%xmm11
21816 DB 102,65,15,113,243,8 ; psllw $0x8,%xmm11
21817 DB 102,65,15,113,210,8 ; psrlw $0x8,%xmm10
21818 DB 102,69,15,235,211 ; por %xmm11,%xmm10
Mike Kleinfe560a82017-05-01 12:56:35 -040021819 DB 68,15,40,218 ; movaps %xmm2,%xmm11
21820 DB 69,15,89,217 ; mulps %xmm9,%xmm11
Mike Klein3146bb92017-04-05 14:45:02 -040021821 DB 102,69,15,91,219 ; cvtps2dq %xmm11,%xmm11
21822 DB 102,65,15,114,243,16 ; pslld $0x10,%xmm11
21823 DB 102,65,15,114,227,16 ; psrad $0x10,%xmm11
21824 DB 102,69,15,107,219 ; packssdw %xmm11,%xmm11
21825 DB 102,69,15,111,227 ; movdqa %xmm11,%xmm12
21826 DB 102,65,15,113,244,8 ; psllw $0x8,%xmm12
21827 DB 102,65,15,113,211,8 ; psrlw $0x8,%xmm11
21828 DB 102,69,15,235,220 ; por %xmm12,%xmm11
21829 DB 68,15,89,203 ; mulps %xmm3,%xmm9
21830 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9
21831 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9
21832 DB 102,65,15,114,225,16 ; psrad $0x10,%xmm9
21833 DB 102,69,15,107,201 ; packssdw %xmm9,%xmm9
21834 DB 102,69,15,111,225 ; movdqa %xmm9,%xmm12
21835 DB 102,65,15,113,244,8 ; psllw $0x8,%xmm12
21836 DB 102,65,15,113,209,8 ; psrlw $0x8,%xmm9
21837 DB 102,69,15,235,204 ; por %xmm12,%xmm9
21838 DB 102,69,15,97,194 ; punpcklwd %xmm10,%xmm8
21839 DB 102,69,15,97,217 ; punpcklwd %xmm9,%xmm11
21840 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9
21841 DB 102,69,15,98,203 ; punpckldq %xmm11,%xmm9
21842 DB 243,68,15,127,12,248 ; movdqu %xmm9,(%rax,%rdi,8)
21843 DB 102,69,15,106,195 ; punpckhdq %xmm11,%xmm8
21844 DB 243,68,15,127,68,248,16 ; movdqu %xmm8,0x10(%rax,%rdi,8)
21845 DB 72,173 ; lods %ds:(%rsi),%rax
21846 DB 255,224 ; jmpq *%rax
21847
Mike Klein14987eb2017-04-06 10:22:26 -040021848PUBLIC _sk_load_f32_sse2
21849_sk_load_f32_sse2 LABEL PROC
21850 DB 72,173 ; lods %ds:(%rsi),%rax
21851 DB 72,139,0 ; mov (%rax),%rax
21852 DB 72,137,249 ; mov %rdi,%rcx
21853 DB 72,193,225,4 ; shl $0x4,%rcx
21854 DB 68,15,16,4,8 ; movups (%rax,%rcx,1),%xmm8
21855 DB 15,16,68,8,16 ; movups 0x10(%rax,%rcx,1),%xmm0
21856 DB 15,16,92,8,32 ; movups 0x20(%rax,%rcx,1),%xmm3
21857 DB 68,15,16,76,8,48 ; movups 0x30(%rax,%rcx,1),%xmm9
21858 DB 65,15,40,208 ; movaps %xmm8,%xmm2
21859 DB 15,20,208 ; unpcklps %xmm0,%xmm2
21860 DB 15,40,203 ; movaps %xmm3,%xmm1
21861 DB 65,15,20,201 ; unpcklps %xmm9,%xmm1
21862 DB 68,15,21,192 ; unpckhps %xmm0,%xmm8
21863 DB 65,15,21,217 ; unpckhps %xmm9,%xmm3
21864 DB 15,40,194 ; movaps %xmm2,%xmm0
21865 DB 102,15,20,193 ; unpcklpd %xmm1,%xmm0
21866 DB 15,18,202 ; movhlps %xmm2,%xmm1
21867 DB 65,15,40,208 ; movaps %xmm8,%xmm2
21868 DB 102,15,20,211 ; unpcklpd %xmm3,%xmm2
21869 DB 65,15,18,216 ; movhlps %xmm8,%xmm3
21870 DB 72,173 ; lods %ds:(%rsi),%rax
21871 DB 255,224 ; jmpq *%rax
21872
Mike Kleind7e06ae2017-03-29 16:33:06 -040021873PUBLIC _sk_store_f32_sse2
21874_sk_store_f32_sse2 LABEL PROC
21875 DB 72,173 ; lods %ds:(%rsi),%rax
21876 DB 72,139,0 ; mov (%rax),%rax
21877 DB 72,137,249 ; mov %rdi,%rcx
21878 DB 72,193,225,4 ; shl $0x4,%rcx
21879 DB 68,15,40,192 ; movaps %xmm0,%xmm8
21880 DB 68,15,40,200 ; movaps %xmm0,%xmm9
21881 DB 68,15,20,201 ; unpcklps %xmm1,%xmm9
21882 DB 68,15,40,210 ; movaps %xmm2,%xmm10
21883 DB 68,15,40,218 ; movaps %xmm2,%xmm11
21884 DB 68,15,20,219 ; unpcklps %xmm3,%xmm11
21885 DB 68,15,21,193 ; unpckhps %xmm1,%xmm8
21886 DB 68,15,21,211 ; unpckhps %xmm3,%xmm10
21887 DB 69,15,40,225 ; movaps %xmm9,%xmm12
21888 DB 102,69,15,20,227 ; unpcklpd %xmm11,%xmm12
21889 DB 69,15,18,217 ; movhlps %xmm9,%xmm11
21890 DB 69,15,40,200 ; movaps %xmm8,%xmm9
21891 DB 102,69,15,20,202 ; unpcklpd %xmm10,%xmm9
21892 DB 69,15,18,208 ; movhlps %xmm8,%xmm10
21893 DB 102,68,15,17,36,8 ; movupd %xmm12,(%rax,%rcx,1)
21894 DB 68,15,17,92,8,16 ; movups %xmm11,0x10(%rax,%rcx,1)
21895 DB 102,68,15,17,76,8,32 ; movupd %xmm9,0x20(%rax,%rcx,1)
21896 DB 68,15,17,84,8,48 ; movups %xmm10,0x30(%rax,%rcx,1)
21897 DB 72,173 ; lods %ds:(%rsi),%rax
21898 DB 255,224 ; jmpq *%rax
21899
21900PUBLIC _sk_clamp_x_sse2
21901_sk_clamp_x_sse2 LABEL PROC
21902 DB 72,173 ; lods %ds:(%rsi),%rax
21903 DB 69,15,87,192 ; xorps %xmm8,%xmm8
21904 DB 68,15,95,192 ; maxps %xmm0,%xmm8
Mike Kleinfc84dc52017-05-11 15:29:31 -040021905 DB 243,15,16,0 ; movss (%rax),%xmm0
21906 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040021907 DB 68,15,93,192 ; minps %xmm0,%xmm8
21908 DB 72,173 ; lods %ds:(%rsi),%rax
21909 DB 65,15,40,192 ; movaps %xmm8,%xmm0
21910 DB 255,224 ; jmpq *%rax
21911
21912PUBLIC _sk_clamp_y_sse2
21913_sk_clamp_y_sse2 LABEL PROC
21914 DB 72,173 ; lods %ds:(%rsi),%rax
21915 DB 69,15,87,192 ; xorps %xmm8,%xmm8
21916 DB 68,15,95,193 ; maxps %xmm1,%xmm8
Mike Kleinfc84dc52017-05-11 15:29:31 -040021917 DB 243,15,16,8 ; movss (%rax),%xmm1
21918 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040021919 DB 68,15,93,193 ; minps %xmm1,%xmm8
21920 DB 72,173 ; lods %ds:(%rsi),%rax
21921 DB 65,15,40,200 ; movaps %xmm8,%xmm1
21922 DB 255,224 ; jmpq *%rax
21923
21924PUBLIC _sk_repeat_x_sse2
21925_sk_repeat_x_sse2 LABEL PROC
21926 DB 72,173 ; lods %ds:(%rsi),%rax
21927 DB 243,68,15,16,0 ; movss (%rax),%xmm8
21928 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
21929 DB 68,15,40,200 ; movaps %xmm0,%xmm9
21930 DB 69,15,94,200 ; divps %xmm8,%xmm9
21931 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10
21932 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10
21933 DB 69,15,194,202,1 ; cmpltps %xmm10,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040021934 DB 68,15,84,13,30,28,0,0 ; andps 0x1c1e(%rip),%xmm9 # 5aa0 <_sk_callback_sse2+0xe0a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021935 DB 69,15,92,209 ; subps %xmm9,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040021936 DB 69,15,89,208 ; mulps %xmm8,%xmm10
21937 DB 65,15,92,194 ; subps %xmm10,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040021938 DB 72,173 ; lods %ds:(%rsi),%rax
21939 DB 255,224 ; jmpq *%rax
21940
21941PUBLIC _sk_repeat_y_sse2
21942_sk_repeat_y_sse2 LABEL PROC
21943 DB 72,173 ; lods %ds:(%rsi),%rax
21944 DB 243,68,15,16,0 ; movss (%rax),%xmm8
21945 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
21946 DB 68,15,40,201 ; movaps %xmm1,%xmm9
21947 DB 69,15,94,200 ; divps %xmm8,%xmm9
21948 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10
21949 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10
21950 DB 69,15,194,202,1 ; cmpltps %xmm10,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040021951 DB 68,15,84,13,244,27,0,0 ; andps 0x1bf4(%rip),%xmm9 # 5ab0 <_sk_callback_sse2+0xe1a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021952 DB 69,15,92,209 ; subps %xmm9,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040021953 DB 69,15,89,208 ; mulps %xmm8,%xmm10
21954 DB 65,15,92,202 ; subps %xmm10,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040021955 DB 72,173 ; lods %ds:(%rsi),%rax
21956 DB 255,224 ; jmpq *%rax
21957
21958PUBLIC _sk_mirror_x_sse2
21959_sk_mirror_x_sse2 LABEL PROC
21960 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinb4bbc642017-04-27 08:59:55 -040021961 DB 243,68,15,16,0 ; movss (%rax),%xmm8
21962 DB 69,15,40,200 ; movaps %xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040021963 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040021964 DB 65,15,92,193 ; subps %xmm9,%xmm0
21965 DB 243,69,15,88,192 ; addss %xmm8,%xmm8
21966 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -040021967 DB 68,15,40,208 ; movaps %xmm0,%xmm10
Mike Kleinb4bbc642017-04-27 08:59:55 -040021968 DB 69,15,94,208 ; divps %xmm8,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040021969 DB 243,69,15,91,218 ; cvttps2dq %xmm10,%xmm11
21970 DB 69,15,91,219 ; cvtdq2ps %xmm11,%xmm11
21971 DB 69,15,194,211,1 ; cmpltps %xmm11,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040021972 DB 68,15,84,21,184,27,0,0 ; andps 0x1bb8(%rip),%xmm10 # 5ac0 <_sk_callback_sse2+0xe2a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021973 DB 69,15,87,228 ; xorps %xmm12,%xmm12
21974 DB 69,15,92,218 ; subps %xmm10,%xmm11
21975 DB 69,15,89,216 ; mulps %xmm8,%xmm11
Mike Kleind7e06ae2017-03-29 16:33:06 -040021976 DB 65,15,92,195 ; subps %xmm11,%xmm0
Mike Kleinb4bbc642017-04-27 08:59:55 -040021977 DB 65,15,92,193 ; subps %xmm9,%xmm0
21978 DB 68,15,92,224 ; subps %xmm0,%xmm12
21979 DB 65,15,84,196 ; andps %xmm12,%xmm0
Mike Kleind7e06ae2017-03-29 16:33:06 -040021980 DB 72,173 ; lods %ds:(%rsi),%rax
21981 DB 255,224 ; jmpq *%rax
21982
21983PUBLIC _sk_mirror_y_sse2
21984_sk_mirror_y_sse2 LABEL PROC
21985 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinb4bbc642017-04-27 08:59:55 -040021986 DB 243,68,15,16,0 ; movss (%rax),%xmm8
21987 DB 69,15,40,200 ; movaps %xmm8,%xmm9
Mike Kleind7e06ae2017-03-29 16:33:06 -040021988 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
Mike Kleinb4bbc642017-04-27 08:59:55 -040021989 DB 65,15,92,201 ; subps %xmm9,%xmm1
21990 DB 243,69,15,88,192 ; addss %xmm8,%xmm8
21991 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -040021992 DB 68,15,40,209 ; movaps %xmm1,%xmm10
Mike Kleinb4bbc642017-04-27 08:59:55 -040021993 DB 69,15,94,208 ; divps %xmm8,%xmm10
Mike Kleind7e06ae2017-03-29 16:33:06 -040021994 DB 243,69,15,91,218 ; cvttps2dq %xmm10,%xmm11
21995 DB 69,15,91,219 ; cvtdq2ps %xmm11,%xmm11
21996 DB 69,15,194,211,1 ; cmpltps %xmm11,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040021997 DB 68,15,84,21,108,27,0,0 ; andps 0x1b6c(%rip),%xmm10 # 5ad0 <_sk_callback_sse2+0xe3a>
Mike Kleinb4bbc642017-04-27 08:59:55 -040021998 DB 69,15,87,228 ; xorps %xmm12,%xmm12
21999 DB 69,15,92,218 ; subps %xmm10,%xmm11
22000 DB 69,15,89,216 ; mulps %xmm8,%xmm11
Mike Kleind7e06ae2017-03-29 16:33:06 -040022001 DB 65,15,92,203 ; subps %xmm11,%xmm1
Mike Kleinb4bbc642017-04-27 08:59:55 -040022002 DB 65,15,92,201 ; subps %xmm9,%xmm1
22003 DB 68,15,92,225 ; subps %xmm1,%xmm12
22004 DB 65,15,84,204 ; andps %xmm12,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040022005 DB 72,173 ; lods %ds:(%rsi),%rax
22006 DB 255,224 ; jmpq *%rax
22007
Mike Klein9f85d682017-05-23 07:52:01 -040022008PUBLIC _sk_clamp_x_1_sse2
22009_sk_clamp_x_1_sse2 LABEL PROC
22010 DB 69,15,87,192 ; xorps %xmm8,%xmm8
22011 DB 68,15,95,192 ; maxps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022012 DB 68,15,93,5,76,27,0,0 ; minps 0x1b4c(%rip),%xmm8 # 5ae0 <_sk_callback_sse2+0xe4a>
Mike Klein9f85d682017-05-23 07:52:01 -040022013 DB 72,173 ; lods %ds:(%rsi),%rax
22014 DB 65,15,40,192 ; movaps %xmm8,%xmm0
22015 DB 255,224 ; jmpq *%rax
22016
22017PUBLIC _sk_repeat_x_1_sse2
22018_sk_repeat_x_1_sse2 LABEL PROC
22019 DB 243,68,15,91,192 ; cvttps2dq %xmm0,%xmm8
22020 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8
22021 DB 68,15,40,200 ; movaps %xmm0,%xmm9
22022 DB 69,15,194,200,1 ; cmpltps %xmm8,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040022023 DB 68,15,84,13,58,27,0,0 ; andps 0x1b3a(%rip),%xmm9 # 5af0 <_sk_callback_sse2+0xe5a>
Mike Klein9f85d682017-05-23 07:52:01 -040022024 DB 69,15,92,193 ; subps %xmm9,%xmm8
22025 DB 65,15,92,192 ; subps %xmm8,%xmm0
22026 DB 72,173 ; lods %ds:(%rsi),%rax
22027 DB 255,224 ; jmpq *%rax
22028
22029PUBLIC _sk_mirror_x_1_sse2
22030_sk_mirror_x_1_sse2 LABEL PROC
Mike Klein8ca33562017-05-23 08:07:43 -040022031 DB 68,15,40,5,54,27,0,0 ; movaps 0x1b36(%rip),%xmm8 # 5b00 <_sk_callback_sse2+0xe6a>
Mike Klein9f85d682017-05-23 07:52:01 -040022032 DB 65,15,88,192 ; addps %xmm8,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040022033 DB 68,15,40,13,58,27,0,0 ; movaps 0x1b3a(%rip),%xmm9 # 5b10 <_sk_callback_sse2+0xe7a>
Mike Klein9f85d682017-05-23 07:52:01 -040022034 DB 68,15,89,200 ; mulps %xmm0,%xmm9
22035 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10
22036 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10
22037 DB 69,15,194,202,1 ; cmpltps %xmm10,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040022038 DB 68,15,84,13,48,27,0,0 ; andps 0x1b30(%rip),%xmm9 # 5b20 <_sk_callback_sse2+0xe8a>
Mike Klein9f85d682017-05-23 07:52:01 -040022039 DB 69,15,87,219 ; xorps %xmm11,%xmm11
22040 DB 69,15,92,209 ; subps %xmm9,%xmm10
22041 DB 69,15,88,210 ; addps %xmm10,%xmm10
22042 DB 65,15,92,194 ; subps %xmm10,%xmm0
22043 DB 65,15,88,192 ; addps %xmm8,%xmm0
22044 DB 68,15,92,216 ; subps %xmm0,%xmm11
22045 DB 65,15,84,195 ; andps %xmm11,%xmm0
22046 DB 72,173 ; lods %ds:(%rsi),%rax
22047 DB 255,224 ; jmpq *%rax
22048
Mike Kleind7e06ae2017-03-29 16:33:06 -040022049PUBLIC _sk_luminance_to_alpha_sse2
22050_sk_luminance_to_alpha_sse2 LABEL PROC
Mike Kleinfe560a82017-05-01 12:56:35 -040022051 DB 15,40,218 ; movaps %xmm2,%xmm3
Mike Klein8ca33562017-05-23 08:07:43 -040022052 DB 15,89,5,22,27,0,0 ; mulps 0x1b16(%rip),%xmm0 # 5b30 <_sk_callback_sse2+0xe9a>
22053 DB 15,89,13,31,27,0,0 ; mulps 0x1b1f(%rip),%xmm1 # 5b40 <_sk_callback_sse2+0xeaa>
Mike Kleinfe560a82017-05-01 12:56:35 -040022054 DB 15,88,200 ; addps %xmm0,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040022055 DB 15,89,29,37,27,0,0 ; mulps 0x1b25(%rip),%xmm3 # 5b50 <_sk_callback_sse2+0xeba>
Mike Kleinfe560a82017-05-01 12:56:35 -040022056 DB 15,88,217 ; addps %xmm1,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040022057 DB 72,173 ; lods %ds:(%rsi),%rax
22058 DB 15,87,192 ; xorps %xmm0,%xmm0
22059 DB 15,87,201 ; xorps %xmm1,%xmm1
22060 DB 15,87,210 ; xorps %xmm2,%xmm2
22061 DB 255,224 ; jmpq *%rax
22062
22063PUBLIC _sk_matrix_2x3_sse2
22064_sk_matrix_2x3_sse2 LABEL PROC
22065 DB 68,15,40,201 ; movaps %xmm1,%xmm9
22066 DB 68,15,40,192 ; movaps %xmm0,%xmm8
22067 DB 72,173 ; lods %ds:(%rsi),%rax
22068 DB 243,15,16,0 ; movss (%rax),%xmm0
22069 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
22070 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
22071 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
22072 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22073 DB 243,68,15,16,88,16 ; movss 0x10(%rax),%xmm11
22074 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22075 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22076 DB 69,15,88,211 ; addps %xmm11,%xmm10
22077 DB 65,15,89,192 ; mulps %xmm8,%xmm0
22078 DB 65,15,88,194 ; addps %xmm10,%xmm0
22079 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
22080 DB 243,68,15,16,80,12 ; movss 0xc(%rax),%xmm10
22081 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22082 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11
22083 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22084 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22085 DB 69,15,88,211 ; addps %xmm11,%xmm10
22086 DB 65,15,89,200 ; mulps %xmm8,%xmm1
22087 DB 65,15,88,202 ; addps %xmm10,%xmm1
22088 DB 72,173 ; lods %ds:(%rsi),%rax
22089 DB 255,224 ; jmpq *%rax
22090
22091PUBLIC _sk_matrix_3x4_sse2
22092_sk_matrix_3x4_sse2 LABEL PROC
22093 DB 68,15,40,201 ; movaps %xmm1,%xmm9
22094 DB 68,15,40,192 ; movaps %xmm0,%xmm8
22095 DB 72,173 ; lods %ds:(%rsi),%rax
22096 DB 243,15,16,0 ; movss (%rax),%xmm0
22097 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
22098 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
22099 DB 243,68,15,16,80,12 ; movss 0xc(%rax),%xmm10
22100 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22101 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11
22102 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22103 DB 243,68,15,16,96,36 ; movss 0x24(%rax),%xmm12
22104 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
22105 DB 68,15,89,218 ; mulps %xmm2,%xmm11
22106 DB 69,15,88,220 ; addps %xmm12,%xmm11
22107 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22108 DB 69,15,88,211 ; addps %xmm11,%xmm10
22109 DB 65,15,89,192 ; mulps %xmm8,%xmm0
22110 DB 65,15,88,194 ; addps %xmm10,%xmm0
22111 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
22112 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
22113 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22114 DB 243,68,15,16,88,28 ; movss 0x1c(%rax),%xmm11
22115 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22116 DB 243,68,15,16,96,40 ; movss 0x28(%rax),%xmm12
22117 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
22118 DB 68,15,89,218 ; mulps %xmm2,%xmm11
22119 DB 69,15,88,220 ; addps %xmm12,%xmm11
22120 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22121 DB 69,15,88,211 ; addps %xmm11,%xmm10
22122 DB 65,15,89,200 ; mulps %xmm8,%xmm1
22123 DB 65,15,88,202 ; addps %xmm10,%xmm1
22124 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
22125 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22126 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11
22127 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22128 DB 243,68,15,16,96,32 ; movss 0x20(%rax),%xmm12
22129 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
22130 DB 243,68,15,16,104,44 ; movss 0x2c(%rax),%xmm13
22131 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
22132 DB 68,15,89,226 ; mulps %xmm2,%xmm12
22133 DB 69,15,88,229 ; addps %xmm13,%xmm12
22134 DB 69,15,89,217 ; mulps %xmm9,%xmm11
22135 DB 69,15,88,220 ; addps %xmm12,%xmm11
22136 DB 69,15,89,208 ; mulps %xmm8,%xmm10
22137 DB 69,15,88,211 ; addps %xmm11,%xmm10
22138 DB 72,173 ; lods %ds:(%rsi),%rax
22139 DB 65,15,40,210 ; movaps %xmm10,%xmm2
22140 DB 255,224 ; jmpq *%rax
22141
22142PUBLIC _sk_matrix_4x5_sse2
22143_sk_matrix_4x5_sse2 LABEL PROC
22144 DB 68,15,40,201 ; movaps %xmm1,%xmm9
22145 DB 68,15,40,192 ; movaps %xmm0,%xmm8
22146 DB 72,173 ; lods %ds:(%rsi),%rax
22147 DB 243,15,16,0 ; movss (%rax),%xmm0
22148 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
22149 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
22150 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
22151 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22152 DB 243,68,15,16,88,32 ; movss 0x20(%rax),%xmm11
22153 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22154 DB 243,68,15,16,96,48 ; movss 0x30(%rax),%xmm12
22155 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
22156 DB 243,68,15,16,104,64 ; movss 0x40(%rax),%xmm13
22157 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
22158 DB 68,15,89,227 ; mulps %xmm3,%xmm12
22159 DB 69,15,88,229 ; addps %xmm13,%xmm12
22160 DB 68,15,89,218 ; mulps %xmm2,%xmm11
22161 DB 69,15,88,220 ; addps %xmm12,%xmm11
22162 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22163 DB 69,15,88,211 ; addps %xmm11,%xmm10
22164 DB 65,15,89,192 ; mulps %xmm8,%xmm0
22165 DB 65,15,88,194 ; addps %xmm10,%xmm0
22166 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
22167 DB 243,68,15,16,80,20 ; movss 0x14(%rax),%xmm10
22168 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22169 DB 243,68,15,16,88,36 ; movss 0x24(%rax),%xmm11
22170 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22171 DB 243,68,15,16,96,52 ; movss 0x34(%rax),%xmm12
22172 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
22173 DB 243,68,15,16,104,68 ; movss 0x44(%rax),%xmm13
22174 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
22175 DB 68,15,89,227 ; mulps %xmm3,%xmm12
22176 DB 69,15,88,229 ; addps %xmm13,%xmm12
22177 DB 68,15,89,218 ; mulps %xmm2,%xmm11
22178 DB 69,15,88,220 ; addps %xmm12,%xmm11
22179 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22180 DB 69,15,88,211 ; addps %xmm11,%xmm10
22181 DB 65,15,89,200 ; mulps %xmm8,%xmm1
22182 DB 65,15,88,202 ; addps %xmm10,%xmm1
22183 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
22184 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22185 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11
22186 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22187 DB 243,68,15,16,96,40 ; movss 0x28(%rax),%xmm12
22188 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
22189 DB 243,68,15,16,104,56 ; movss 0x38(%rax),%xmm13
22190 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
22191 DB 243,68,15,16,112,72 ; movss 0x48(%rax),%xmm14
22192 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14
22193 DB 68,15,89,235 ; mulps %xmm3,%xmm13
22194 DB 69,15,88,238 ; addps %xmm14,%xmm13
22195 DB 68,15,89,226 ; mulps %xmm2,%xmm12
22196 DB 69,15,88,229 ; addps %xmm13,%xmm12
22197 DB 69,15,89,217 ; mulps %xmm9,%xmm11
22198 DB 69,15,88,220 ; addps %xmm12,%xmm11
22199 DB 69,15,89,208 ; mulps %xmm8,%xmm10
22200 DB 69,15,88,211 ; addps %xmm11,%xmm10
22201 DB 243,68,15,16,88,12 ; movss 0xc(%rax),%xmm11
22202 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22203 DB 243,68,15,16,96,28 ; movss 0x1c(%rax),%xmm12
22204 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
22205 DB 243,68,15,16,104,44 ; movss 0x2c(%rax),%xmm13
22206 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13
22207 DB 243,68,15,16,112,60 ; movss 0x3c(%rax),%xmm14
22208 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14
22209 DB 243,68,15,16,120,76 ; movss 0x4c(%rax),%xmm15
22210 DB 69,15,198,255,0 ; shufps $0x0,%xmm15,%xmm15
22211 DB 68,15,89,243 ; mulps %xmm3,%xmm14
22212 DB 69,15,88,247 ; addps %xmm15,%xmm14
22213 DB 68,15,89,234 ; mulps %xmm2,%xmm13
22214 DB 69,15,88,238 ; addps %xmm14,%xmm13
22215 DB 69,15,89,225 ; mulps %xmm9,%xmm12
22216 DB 69,15,88,229 ; addps %xmm13,%xmm12
22217 DB 69,15,89,216 ; mulps %xmm8,%xmm11
22218 DB 69,15,88,220 ; addps %xmm12,%xmm11
22219 DB 72,173 ; lods %ds:(%rsi),%rax
22220 DB 65,15,40,210 ; movaps %xmm10,%xmm2
22221 DB 65,15,40,219 ; movaps %xmm11,%xmm3
22222 DB 255,224 ; jmpq *%rax
22223
Mike Reed02640952017-05-19 15:32:13 -040022224PUBLIC _sk_matrix_4x3_sse2
22225_sk_matrix_4x3_sse2 LABEL PROC
22226 DB 68,15,40,201 ; movaps %xmm1,%xmm9
22227 DB 68,15,40,192 ; movaps %xmm0,%xmm8
22228 DB 72,173 ; lods %ds:(%rsi),%rax
22229 DB 243,15,16,0 ; movss (%rax),%xmm0
22230 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
22231 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
22232 DB 243,15,16,80,16 ; movss 0x10(%rax),%xmm2
22233 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
22234 DB 243,15,16,88,32 ; movss 0x20(%rax),%xmm3
22235 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
22236 DB 65,15,89,209 ; mulps %xmm9,%xmm2
22237 DB 15,88,211 ; addps %xmm3,%xmm2
22238 DB 65,15,89,192 ; mulps %xmm8,%xmm0
22239 DB 15,88,194 ; addps %xmm2,%xmm0
22240 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
22241 DB 243,15,16,80,20 ; movss 0x14(%rax),%xmm2
22242 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
22243 DB 243,15,16,88,36 ; movss 0x24(%rax),%xmm3
22244 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
22245 DB 65,15,89,209 ; mulps %xmm9,%xmm2
22246 DB 15,88,211 ; addps %xmm3,%xmm2
22247 DB 65,15,89,200 ; mulps %xmm8,%xmm1
22248 DB 15,88,202 ; addps %xmm2,%xmm1
22249 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
22250 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
22251 DB 243,15,16,88,24 ; movss 0x18(%rax),%xmm3
22252 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
22253 DB 243,68,15,16,80,40 ; movss 0x28(%rax),%xmm10
22254 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22255 DB 65,15,89,217 ; mulps %xmm9,%xmm3
22256 DB 65,15,88,218 ; addps %xmm10,%xmm3
22257 DB 65,15,89,208 ; mulps %xmm8,%xmm2
22258 DB 15,88,211 ; addps %xmm3,%xmm2
22259 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3
22260 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
22261 DB 243,68,15,16,80,28 ; movss 0x1c(%rax),%xmm10
22262 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22263 DB 243,68,15,16,88,44 ; movss 0x2c(%rax),%xmm11
22264 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22265 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22266 DB 69,15,88,211 ; addps %xmm11,%xmm10
22267 DB 65,15,89,216 ; mulps %xmm8,%xmm3
22268 DB 65,15,88,218 ; addps %xmm10,%xmm3
22269 DB 72,173 ; lods %ds:(%rsi),%rax
22270 DB 255,224 ; jmpq *%rax
22271
Mike Kleind7e06ae2017-03-29 16:33:06 -040022272PUBLIC _sk_matrix_perspective_sse2
22273_sk_matrix_perspective_sse2 LABEL PROC
22274 DB 68,15,40,192 ; movaps %xmm0,%xmm8
22275 DB 72,173 ; lods %ds:(%rsi),%rax
22276 DB 243,15,16,0 ; movss (%rax),%xmm0
22277 DB 243,68,15,16,72,4 ; movss 0x4(%rax),%xmm9
22278 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
22279 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
22280 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10
22281 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22282 DB 68,15,89,201 ; mulps %xmm1,%xmm9
22283 DB 69,15,88,202 ; addps %xmm10,%xmm9
22284 DB 65,15,89,192 ; mulps %xmm8,%xmm0
22285 DB 65,15,88,193 ; addps %xmm9,%xmm0
22286 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9
22287 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
22288 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10
22289 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22290 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11
22291 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22292 DB 68,15,89,209 ; mulps %xmm1,%xmm10
22293 DB 69,15,88,211 ; addps %xmm11,%xmm10
22294 DB 69,15,89,200 ; mulps %xmm8,%xmm9
22295 DB 69,15,88,202 ; addps %xmm10,%xmm9
22296 DB 243,68,15,16,80,24 ; movss 0x18(%rax),%xmm10
22297 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10
22298 DB 243,68,15,16,88,28 ; movss 0x1c(%rax),%xmm11
22299 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11
22300 DB 243,68,15,16,96,32 ; movss 0x20(%rax),%xmm12
22301 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12
22302 DB 68,15,89,217 ; mulps %xmm1,%xmm11
22303 DB 69,15,88,220 ; addps %xmm12,%xmm11
22304 DB 69,15,89,208 ; mulps %xmm8,%xmm10
22305 DB 69,15,88,211 ; addps %xmm11,%xmm10
22306 DB 65,15,83,202 ; rcpps %xmm10,%xmm1
22307 DB 15,89,193 ; mulps %xmm1,%xmm0
22308 DB 68,15,89,201 ; mulps %xmm1,%xmm9
22309 DB 72,173 ; lods %ds:(%rsi),%rax
22310 DB 65,15,40,201 ; movaps %xmm9,%xmm1
22311 DB 255,224 ; jmpq *%rax
22312
Herb Derby4de13042017-05-15 10:49:39 -040022313PUBLIC _sk_evenly_spaced_gradient_sse2
22314_sk_evenly_spaced_gradient_sse2 LABEL PROC
Herb Derby7b4202d2017-04-10 10:52:34 -040022315 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby7b4202d2017-04-10 10:52:34 -040022316 DB 72,139,8 ; mov (%rax),%rcx
Herb Derby4de13042017-05-15 10:49:39 -040022317 DB 76,139,88,8 ; mov 0x8(%rax),%r11
Herb Derby7b4202d2017-04-10 10:52:34 -040022318 DB 72,255,201 ; dec %rcx
Mike Klein8ca33562017-05-23 08:07:43 -040022319 DB 120,7 ; js 4464 <_sk_evenly_spaced_gradient_sse2+0x15>
Herb Derby4de13042017-05-15 10:49:39 -040022320 DB 243,72,15,42,201 ; cvtsi2ss %rcx,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040022321 DB 235,21 ; jmp 4479 <_sk_evenly_spaced_gradient_sse2+0x2a>
Herb Derby4de13042017-05-15 10:49:39 -040022322 DB 73,137,200 ; mov %rcx,%r8
22323 DB 73,209,232 ; shr %r8
22324 DB 131,225,1 ; and $0x1,%ecx
22325 DB 76,9,193 ; or %r8,%rcx
22326 DB 243,72,15,42,201 ; cvtsi2ss %rcx,%xmm1
22327 DB 243,15,88,201 ; addss %xmm1,%xmm1
22328 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
22329 DB 15,89,200 ; mulps %xmm0,%xmm1
22330 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1
22331 DB 102,15,112,209,78 ; pshufd $0x4e,%xmm1,%xmm2
22332 DB 102,73,15,126,210 ; movq %xmm2,%r10
22333 DB 69,137,208 ; mov %r10d,%r8d
22334 DB 73,193,234,32 ; shr $0x20,%r10
22335 DB 102,72,15,126,201 ; movq %xmm1,%rcx
22336 DB 65,137,201 ; mov %ecx,%r9d
22337 DB 72,193,233,32 ; shr $0x20,%rcx
22338 DB 243,65,15,16,12,139 ; movss (%r11,%rcx,4),%xmm1
22339 DB 243,67,15,16,20,147 ; movss (%r11,%r10,4),%xmm2
22340 DB 15,20,202 ; unpcklps %xmm2,%xmm1
22341 DB 243,71,15,16,4,139 ; movss (%r11,%r9,4),%xmm8
22342 DB 243,67,15,16,20,131 ; movss (%r11,%r8,4),%xmm2
22343 DB 68,15,20,194 ; unpcklps %xmm2,%xmm8
22344 DB 68,15,20,193 ; unpcklps %xmm1,%xmm8
22345 DB 76,139,88,40 ; mov 0x28(%rax),%r11
22346 DB 243,65,15,16,12,139 ; movss (%r11,%rcx,4),%xmm1
22347 DB 243,67,15,16,20,147 ; movss (%r11,%r10,4),%xmm2
22348 DB 15,20,202 ; unpcklps %xmm2,%xmm1
22349 DB 243,71,15,16,12,139 ; movss (%r11,%r9,4),%xmm9
22350 DB 243,67,15,16,20,131 ; movss (%r11,%r8,4),%xmm2
22351 DB 68,15,20,202 ; unpcklps %xmm2,%xmm9
22352 DB 68,15,20,201 ; unpcklps %xmm1,%xmm9
22353 DB 76,139,88,16 ; mov 0x10(%rax),%r11
22354 DB 243,65,15,16,20,139 ; movss (%r11,%rcx,4),%xmm2
22355 DB 243,67,15,16,12,147 ; movss (%r11,%r10,4),%xmm1
22356 DB 15,20,209 ; unpcklps %xmm1,%xmm2
22357 DB 243,67,15,16,12,139 ; movss (%r11,%r9,4),%xmm1
22358 DB 243,67,15,16,28,131 ; movss (%r11,%r8,4),%xmm3
22359 DB 15,20,203 ; unpcklps %xmm3,%xmm1
22360 DB 15,20,202 ; unpcklps %xmm2,%xmm1
22361 DB 76,139,88,48 ; mov 0x30(%rax),%r11
22362 DB 243,65,15,16,20,139 ; movss (%r11,%rcx,4),%xmm2
22363 DB 243,67,15,16,28,147 ; movss (%r11,%r10,4),%xmm3
22364 DB 15,20,211 ; unpcklps %xmm3,%xmm2
22365 DB 243,71,15,16,20,139 ; movss (%r11,%r9,4),%xmm10
22366 DB 243,67,15,16,28,131 ; movss (%r11,%r8,4),%xmm3
22367 DB 68,15,20,211 ; unpcklps %xmm3,%xmm10
22368 DB 68,15,20,210 ; unpcklps %xmm2,%xmm10
22369 DB 76,139,88,24 ; mov 0x18(%rax),%r11
22370 DB 243,69,15,16,28,139 ; movss (%r11,%rcx,4),%xmm11
22371 DB 243,67,15,16,20,147 ; movss (%r11,%r10,4),%xmm2
22372 DB 68,15,20,218 ; unpcklps %xmm2,%xmm11
22373 DB 243,67,15,16,20,139 ; movss (%r11,%r9,4),%xmm2
22374 DB 243,67,15,16,28,131 ; movss (%r11,%r8,4),%xmm3
22375 DB 15,20,211 ; unpcklps %xmm3,%xmm2
22376 DB 65,15,20,211 ; unpcklps %xmm11,%xmm2
22377 DB 76,139,88,56 ; mov 0x38(%rax),%r11
22378 DB 243,69,15,16,36,139 ; movss (%r11,%rcx,4),%xmm12
22379 DB 243,67,15,16,28,147 ; movss (%r11,%r10,4),%xmm3
22380 DB 68,15,20,227 ; unpcklps %xmm3,%xmm12
22381 DB 243,71,15,16,28,139 ; movss (%r11,%r9,4),%xmm11
22382 DB 243,67,15,16,28,131 ; movss (%r11,%r8,4),%xmm3
22383 DB 68,15,20,219 ; unpcklps %xmm3,%xmm11
22384 DB 69,15,20,220 ; unpcklps %xmm12,%xmm11
22385 DB 76,139,88,32 ; mov 0x20(%rax),%r11
22386 DB 243,69,15,16,36,139 ; movss (%r11,%rcx,4),%xmm12
22387 DB 243,67,15,16,28,147 ; movss (%r11,%r10,4),%xmm3
22388 DB 68,15,20,227 ; unpcklps %xmm3,%xmm12
22389 DB 243,67,15,16,28,139 ; movss (%r11,%r9,4),%xmm3
22390 DB 243,71,15,16,44,131 ; movss (%r11,%r8,4),%xmm13
22391 DB 65,15,20,221 ; unpcklps %xmm13,%xmm3
22392 DB 65,15,20,220 ; unpcklps %xmm12,%xmm3
22393 DB 72,139,64,64 ; mov 0x40(%rax),%rax
22394 DB 243,68,15,16,36,136 ; movss (%rax,%rcx,4),%xmm12
22395 DB 243,70,15,16,44,144 ; movss (%rax,%r10,4),%xmm13
22396 DB 69,15,20,229 ; unpcklps %xmm13,%xmm12
22397 DB 243,70,15,16,44,136 ; movss (%rax,%r9,4),%xmm13
22398 DB 243,70,15,16,52,128 ; movss (%rax,%r8,4),%xmm14
22399 DB 69,15,20,238 ; unpcklps %xmm14,%xmm13
22400 DB 69,15,20,236 ; unpcklps %xmm12,%xmm13
Herb Derby7b4202d2017-04-10 10:52:34 -040022401 DB 68,15,89,192 ; mulps %xmm0,%xmm8
22402 DB 69,15,88,193 ; addps %xmm9,%xmm8
22403 DB 15,89,200 ; mulps %xmm0,%xmm1
22404 DB 65,15,88,202 ; addps %xmm10,%xmm1
22405 DB 15,89,208 ; mulps %xmm0,%xmm2
22406 DB 65,15,88,211 ; addps %xmm11,%xmm2
22407 DB 15,89,216 ; mulps %xmm0,%xmm3
Herb Derby4de13042017-05-15 10:49:39 -040022408 DB 65,15,88,221 ; addps %xmm13,%xmm3
Herb Derby7b4202d2017-04-10 10:52:34 -040022409 DB 72,173 ; lods %ds:(%rsi),%rax
22410 DB 65,15,40,192 ; movaps %xmm8,%xmm0
22411 DB 255,224 ; jmpq *%rax
22412
Herb Derby4de13042017-05-15 10:49:39 -040022413PUBLIC _sk_gradient_sse2
22414_sk_gradient_sse2 LABEL PROC
22415 DB 72,173 ; lods %ds:(%rsi),%rax
22416 DB 76,139,0 ; mov (%rax),%r8
22417 DB 102,15,239,201 ; pxor %xmm1,%xmm1
22418 DB 73,131,248,2 ; cmp $0x2,%r8
Mike Klein8ca33562017-05-23 08:07:43 -040022419 DB 114,50 ; jb 463c <_sk_gradient_sse2+0x41>
Herb Derby4de13042017-05-15 10:49:39 -040022420 DB 72,139,72,72 ; mov 0x48(%rax),%rcx
22421 DB 73,255,200 ; dec %r8
22422 DB 72,131,193,4 ; add $0x4,%rcx
22423 DB 102,15,239,201 ; pxor %xmm1,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040022424 DB 15,40,21,64,21,0,0 ; movaps 0x1540(%rip),%xmm2 # 5b60 <_sk_callback_sse2+0xeca>
Herb Derby4de13042017-05-15 10:49:39 -040022425 DB 243,15,16,25 ; movss (%rcx),%xmm3
22426 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
22427 DB 15,194,216,2 ; cmpleps %xmm0,%xmm3
22428 DB 15,84,218 ; andps %xmm2,%xmm3
22429 DB 102,15,254,203 ; paddd %xmm3,%xmm1
22430 DB 72,131,193,4 ; add $0x4,%rcx
22431 DB 73,255,200 ; dec %r8
Mike Klein8ca33562017-05-23 08:07:43 -040022432 DB 117,228 ; jne 4620 <_sk_gradient_sse2+0x25>
Herb Derby4de13042017-05-15 10:49:39 -040022433 DB 65,86 ; push %r14
22434 DB 83 ; push %rbx
22435 DB 102,15,112,209,78 ; pshufd $0x4e,%xmm1,%xmm2
22436 DB 102,73,15,126,210 ; movq %xmm2,%r10
22437 DB 69,137,208 ; mov %r10d,%r8d
22438 DB 73,193,234,32 ; shr $0x20,%r10
22439 DB 102,72,15,126,201 ; movq %xmm1,%rcx
22440 DB 65,137,201 ; mov %ecx,%r9d
22441 DB 72,193,233,32 ; shr $0x20,%rcx
22442 DB 76,139,88,8 ; mov 0x8(%rax),%r11
22443 DB 76,139,112,16 ; mov 0x10(%rax),%r14
22444 DB 243,65,15,16,12,139 ; movss (%r11,%rcx,4),%xmm1
22445 DB 243,67,15,16,20,147 ; movss (%r11,%r10,4),%xmm2
22446 DB 15,20,202 ; unpcklps %xmm2,%xmm1
22447 DB 243,71,15,16,4,139 ; movss (%r11,%r9,4),%xmm8
22448 DB 243,67,15,16,20,131 ; movss (%r11,%r8,4),%xmm2
22449 DB 68,15,20,194 ; unpcklps %xmm2,%xmm8
22450 DB 68,15,20,193 ; unpcklps %xmm1,%xmm8
22451 DB 72,139,88,40 ; mov 0x28(%rax),%rbx
22452 DB 243,15,16,12,139 ; movss (%rbx,%rcx,4),%xmm1
22453 DB 243,66,15,16,20,147 ; movss (%rbx,%r10,4),%xmm2
22454 DB 15,20,202 ; unpcklps %xmm2,%xmm1
22455 DB 243,70,15,16,12,139 ; movss (%rbx,%r9,4),%xmm9
22456 DB 243,66,15,16,20,131 ; movss (%rbx,%r8,4),%xmm2
22457 DB 68,15,20,202 ; unpcklps %xmm2,%xmm9
22458 DB 68,15,20,201 ; unpcklps %xmm1,%xmm9
22459 DB 243,65,15,16,20,142 ; movss (%r14,%rcx,4),%xmm2
22460 DB 243,67,15,16,12,150 ; movss (%r14,%r10,4),%xmm1
22461 DB 15,20,209 ; unpcklps %xmm1,%xmm2
22462 DB 243,67,15,16,12,142 ; movss (%r14,%r9,4),%xmm1
22463 DB 243,67,15,16,28,134 ; movss (%r14,%r8,4),%xmm3
22464 DB 15,20,203 ; unpcklps %xmm3,%xmm1
22465 DB 15,20,202 ; unpcklps %xmm2,%xmm1
22466 DB 72,139,88,48 ; mov 0x30(%rax),%rbx
22467 DB 243,15,16,20,139 ; movss (%rbx,%rcx,4),%xmm2
22468 DB 243,66,15,16,28,147 ; movss (%rbx,%r10,4),%xmm3
22469 DB 15,20,211 ; unpcklps %xmm3,%xmm2
22470 DB 243,70,15,16,20,139 ; movss (%rbx,%r9,4),%xmm10
22471 DB 243,66,15,16,28,131 ; movss (%rbx,%r8,4),%xmm3
22472 DB 68,15,20,211 ; unpcklps %xmm3,%xmm10
22473 DB 68,15,20,210 ; unpcklps %xmm2,%xmm10
22474 DB 72,139,88,24 ; mov 0x18(%rax),%rbx
22475 DB 243,68,15,16,28,139 ; movss (%rbx,%rcx,4),%xmm11
22476 DB 243,66,15,16,20,147 ; movss (%rbx,%r10,4),%xmm2
22477 DB 68,15,20,218 ; unpcklps %xmm2,%xmm11
22478 DB 243,66,15,16,20,139 ; movss (%rbx,%r9,4),%xmm2
22479 DB 243,66,15,16,28,131 ; movss (%rbx,%r8,4),%xmm3
22480 DB 15,20,211 ; unpcklps %xmm3,%xmm2
22481 DB 65,15,20,211 ; unpcklps %xmm11,%xmm2
22482 DB 72,139,88,56 ; mov 0x38(%rax),%rbx
22483 DB 243,68,15,16,36,139 ; movss (%rbx,%rcx,4),%xmm12
22484 DB 243,66,15,16,28,147 ; movss (%rbx,%r10,4),%xmm3
22485 DB 68,15,20,227 ; unpcklps %xmm3,%xmm12
22486 DB 243,70,15,16,28,139 ; movss (%rbx,%r9,4),%xmm11
22487 DB 243,66,15,16,28,131 ; movss (%rbx,%r8,4),%xmm3
22488 DB 68,15,20,219 ; unpcklps %xmm3,%xmm11
22489 DB 69,15,20,220 ; unpcklps %xmm12,%xmm11
22490 DB 72,139,88,32 ; mov 0x20(%rax),%rbx
22491 DB 243,68,15,16,36,139 ; movss (%rbx,%rcx,4),%xmm12
22492 DB 243,66,15,16,28,147 ; movss (%rbx,%r10,4),%xmm3
22493 DB 68,15,20,227 ; unpcklps %xmm3,%xmm12
22494 DB 243,66,15,16,28,139 ; movss (%rbx,%r9,4),%xmm3
22495 DB 243,70,15,16,44,131 ; movss (%rbx,%r8,4),%xmm13
22496 DB 65,15,20,221 ; unpcklps %xmm13,%xmm3
22497 DB 65,15,20,220 ; unpcklps %xmm12,%xmm3
22498 DB 72,139,64,64 ; mov 0x40(%rax),%rax
22499 DB 243,68,15,16,36,136 ; movss (%rax,%rcx,4),%xmm12
22500 DB 243,70,15,16,44,144 ; movss (%rax,%r10,4),%xmm13
22501 DB 69,15,20,229 ; unpcklps %xmm13,%xmm12
22502 DB 243,70,15,16,44,136 ; movss (%rax,%r9,4),%xmm13
22503 DB 243,70,15,16,52,128 ; movss (%rax,%r8,4),%xmm14
22504 DB 69,15,20,238 ; unpcklps %xmm14,%xmm13
22505 DB 69,15,20,236 ; unpcklps %xmm12,%xmm13
22506 DB 68,15,89,192 ; mulps %xmm0,%xmm8
22507 DB 69,15,88,193 ; addps %xmm9,%xmm8
22508 DB 15,89,200 ; mulps %xmm0,%xmm1
22509 DB 65,15,88,202 ; addps %xmm10,%xmm1
22510 DB 15,89,208 ; mulps %xmm0,%xmm2
22511 DB 65,15,88,211 ; addps %xmm11,%xmm2
22512 DB 15,89,216 ; mulps %xmm0,%xmm3
22513 DB 65,15,88,221 ; addps %xmm13,%xmm3
22514 DB 72,173 ; lods %ds:(%rsi),%rax
22515 DB 65,15,40,192 ; movaps %xmm8,%xmm0
22516 DB 91 ; pop %rbx
22517 DB 65,94 ; pop %r14
22518 DB 255,224 ; jmpq *%rax
22519
Mike Klein5c7960b2017-05-11 10:59:22 -040022520PUBLIC _sk_evenly_spaced_2_stop_gradient_sse2
22521_sk_evenly_spaced_2_stop_gradient_sse2 LABEL PROC
Mike Klein8a823fa2017-04-05 17:29:26 -040022522 DB 68,15,40,192 ; movaps %xmm0,%xmm8
Mike Kleind7e06ae2017-03-29 16:33:06 -040022523 DB 72,173 ; lods %ds:(%rsi),%rax
Herb Derby7b4202d2017-04-10 10:52:34 -040022524 DB 243,15,16,0 ; movss (%rax),%xmm0
22525 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1
Mike Klein8a823fa2017-04-05 17:29:26 -040022526 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0
Herb Derby7b4202d2017-04-10 10:52:34 -040022527 DB 243,15,16,80,16 ; movss 0x10(%rax),%xmm2
22528 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
Mike Klein8a823fa2017-04-05 17:29:26 -040022529 DB 65,15,89,192 ; mulps %xmm8,%xmm0
Herb Derby7b4202d2017-04-10 10:52:34 -040022530 DB 15,88,194 ; addps %xmm2,%xmm0
Mike Klein8a823fa2017-04-05 17:29:26 -040022531 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1
Herb Derby7b4202d2017-04-10 10:52:34 -040022532 DB 243,15,16,80,20 ; movss 0x14(%rax),%xmm2
Mike Klein8a823fa2017-04-05 17:29:26 -040022533 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
22534 DB 65,15,89,200 ; mulps %xmm8,%xmm1
Mike Kleind7e06ae2017-03-29 16:33:06 -040022535 DB 15,88,202 ; addps %xmm2,%xmm1
Herb Derby7b4202d2017-04-10 10:52:34 -040022536 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2
Mike Klein8a823fa2017-04-05 17:29:26 -040022537 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2
Herb Derby7b4202d2017-04-10 10:52:34 -040022538 DB 243,15,16,88,24 ; movss 0x18(%rax),%xmm3
Mike Klein8a823fa2017-04-05 17:29:26 -040022539 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
22540 DB 65,15,89,208 ; mulps %xmm8,%xmm2
22541 DB 15,88,211 ; addps %xmm3,%xmm2
Herb Derby7b4202d2017-04-10 10:52:34 -040022542 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3
Mike Klein8a823fa2017-04-05 17:29:26 -040022543 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3
Herb Derby7b4202d2017-04-10 10:52:34 -040022544 DB 243,68,15,16,72,28 ; movss 0x1c(%rax),%xmm9
Mike Klein8a823fa2017-04-05 17:29:26 -040022545 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9
22546 DB 65,15,89,216 ; mulps %xmm8,%xmm3
Mike Kleind7e06ae2017-03-29 16:33:06 -040022547 DB 65,15,88,217 ; addps %xmm9,%xmm3
22548 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleind7e06ae2017-03-29 16:33:06 -040022549 DB 255,224 ; jmpq *%rax
Mike Klein0a904492017-04-12 12:52:48 -040022550
Mike Klein5c7960b2017-05-11 10:59:22 -040022551PUBLIC _sk_xy_to_unit_angle_sse2
22552_sk_xy_to_unit_angle_sse2 LABEL PROC
Herb Derby7eb86982017-05-02 19:04:39 -040022553 DB 68,15,40,192 ; movaps %xmm0,%xmm8
22554 DB 15,87,192 ; xorps %xmm0,%xmm0
22555 DB 69,15,87,201 ; xorps %xmm9,%xmm9
22556 DB 69,15,92,200 ; subps %xmm8,%xmm9
22557 DB 69,15,84,200 ; andps %xmm8,%xmm9
22558 DB 69,15,87,210 ; xorps %xmm10,%xmm10
22559 DB 68,15,92,209 ; subps %xmm1,%xmm10
22560 DB 68,15,84,209 ; andps %xmm1,%xmm10
22561 DB 69,15,40,217 ; movaps %xmm9,%xmm11
22562 DB 69,15,93,218 ; minps %xmm10,%xmm11
22563 DB 69,15,40,225 ; movaps %xmm9,%xmm12
22564 DB 69,15,95,226 ; maxps %xmm10,%xmm12
22565 DB 69,15,94,220 ; divps %xmm12,%xmm11
22566 DB 69,15,40,227 ; movaps %xmm11,%xmm12
22567 DB 69,15,89,228 ; mulps %xmm12,%xmm12
Mike Klein8ca33562017-05-23 08:07:43 -040022568 DB 68,15,40,45,2,19,0,0 ; movaps 0x1302(%rip),%xmm13 # 5b70 <_sk_callback_sse2+0xeda>
Herb Derby7eb86982017-05-02 19:04:39 -040022569 DB 69,15,89,236 ; mulps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040022570 DB 68,15,88,45,6,19,0,0 ; addps 0x1306(%rip),%xmm13 # 5b80 <_sk_callback_sse2+0xeea>
Herb Derby7eb86982017-05-02 19:04:39 -040022571 DB 69,15,89,236 ; mulps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040022572 DB 68,15,88,45,10,19,0,0 ; addps 0x130a(%rip),%xmm13 # 5b90 <_sk_callback_sse2+0xefa>
Herb Derby7eb86982017-05-02 19:04:39 -040022573 DB 69,15,89,236 ; mulps %xmm12,%xmm13
Mike Klein8ca33562017-05-23 08:07:43 -040022574 DB 68,15,88,45,14,19,0,0 ; addps 0x130e(%rip),%xmm13 # 5ba0 <_sk_callback_sse2+0xf0a>
Herb Derby7eb86982017-05-02 19:04:39 -040022575 DB 69,15,89,235 ; mulps %xmm11,%xmm13
22576 DB 69,15,194,202,1 ; cmpltps %xmm10,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040022577 DB 68,15,40,21,13,19,0,0 ; movaps 0x130d(%rip),%xmm10 # 5bb0 <_sk_callback_sse2+0xf1a>
Herb Derby7eb86982017-05-02 19:04:39 -040022578 DB 69,15,92,213 ; subps %xmm13,%xmm10
22579 DB 69,15,84,209 ; andps %xmm9,%xmm10
22580 DB 69,15,85,205 ; andnps %xmm13,%xmm9
22581 DB 69,15,86,202 ; orps %xmm10,%xmm9
22582 DB 68,15,194,192,1 ; cmpltps %xmm0,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022583 DB 68,15,40,21,0,19,0,0 ; movaps 0x1300(%rip),%xmm10 # 5bc0 <_sk_callback_sse2+0xf2a>
Herb Derby7eb86982017-05-02 19:04:39 -040022584 DB 69,15,92,209 ; subps %xmm9,%xmm10
22585 DB 69,15,84,208 ; andps %xmm8,%xmm10
22586 DB 69,15,85,193 ; andnps %xmm9,%xmm8
22587 DB 69,15,86,194 ; orps %xmm10,%xmm8
22588 DB 68,15,40,201 ; movaps %xmm1,%xmm9
22589 DB 68,15,194,200,1 ; cmpltps %xmm0,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040022590 DB 68,15,40,21,239,18,0,0 ; movaps 0x12ef(%rip),%xmm10 # 5bd0 <_sk_callback_sse2+0xf3a>
Herb Derby7eb86982017-05-02 19:04:39 -040022591 DB 69,15,92,208 ; subps %xmm8,%xmm10
22592 DB 69,15,84,209 ; andps %xmm9,%xmm10
22593 DB 69,15,85,200 ; andnps %xmm8,%xmm9
22594 DB 69,15,86,202 ; orps %xmm10,%xmm9
22595 DB 65,15,194,193,7 ; cmpordps %xmm9,%xmm0
22596 DB 65,15,84,193 ; andps %xmm9,%xmm0
22597 DB 72,173 ; lods %ds:(%rsi),%rax
22598 DB 255,224 ; jmpq *%rax
22599
Herb Derby090fbf82017-05-08 15:10:36 -040022600PUBLIC _sk_xy_to_radius_sse2
22601_sk_xy_to_radius_sse2 LABEL PROC
22602 DB 15,89,192 ; mulps %xmm0,%xmm0
22603 DB 68,15,40,193 ; movaps %xmm1,%xmm8
22604 DB 69,15,89,192 ; mulps %xmm8,%xmm8
22605 DB 68,15,88,192 ; addps %xmm0,%xmm8
Mike Kleinfd35c742017-05-15 15:55:54 -040022606 DB 65,15,81,192 ; sqrtps %xmm8,%xmm0
Herb Derby090fbf82017-05-08 15:10:36 -040022607 DB 72,173 ; lods %ds:(%rsi),%rax
22608 DB 255,224 ; jmpq *%rax
22609
Mike Klein0a904492017-04-12 12:52:48 -040022610PUBLIC _sk_save_xy_sse2
22611_sk_save_xy_sse2 LABEL PROC
22612 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040022613 DB 68,15,40,5,193,18,0,0 ; movaps 0x12c1(%rip),%xmm8 # 5be0 <_sk_callback_sse2+0xf4a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022614 DB 15,17,0 ; movups %xmm0,(%rax)
22615 DB 68,15,40,200 ; movaps %xmm0,%xmm9
22616 DB 69,15,88,200 ; addps %xmm8,%xmm9
Mike Klein0a904492017-04-12 12:52:48 -040022617 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10
22618 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10
22619 DB 69,15,40,217 ; movaps %xmm9,%xmm11
22620 DB 69,15,194,218,1 ; cmpltps %xmm10,%xmm11
Mike Klein8ca33562017-05-23 08:07:43 -040022621 DB 68,15,40,37,172,18,0,0 ; movaps 0x12ac(%rip),%xmm12 # 5bf0 <_sk_callback_sse2+0xf5a>
Mike Klein0a904492017-04-12 12:52:48 -040022622 DB 69,15,84,220 ; andps %xmm12,%xmm11
22623 DB 69,15,92,211 ; subps %xmm11,%xmm10
22624 DB 69,15,92,202 ; subps %xmm10,%xmm9
22625 DB 68,15,88,193 ; addps %xmm1,%xmm8
22626 DB 243,69,15,91,208 ; cvttps2dq %xmm8,%xmm10
22627 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10
22628 DB 69,15,40,216 ; movaps %xmm8,%xmm11
22629 DB 69,15,194,218,1 ; cmpltps %xmm10,%xmm11
22630 DB 69,15,84,220 ; andps %xmm12,%xmm11
22631 DB 69,15,92,211 ; subps %xmm11,%xmm10
22632 DB 69,15,92,194 ; subps %xmm10,%xmm8
Mike Klein0a904492017-04-12 12:52:48 -040022633 DB 15,17,72,32 ; movups %xmm1,0x20(%rax)
22634 DB 68,15,17,72,64 ; movups %xmm9,0x40(%rax)
22635 DB 68,15,17,64,96 ; movups %xmm8,0x60(%rax)
22636 DB 72,173 ; lods %ds:(%rsi),%rax
22637 DB 255,224 ; jmpq *%rax
22638
22639PUBLIC _sk_accumulate_sse2
22640_sk_accumulate_sse2 LABEL PROC
22641 DB 72,173 ; lods %ds:(%rsi),%rax
22642 DB 68,15,16,128,128,0,0,0 ; movups 0x80(%rax),%xmm8
22643 DB 68,15,16,136,160,0,0,0 ; movups 0xa0(%rax),%xmm9
22644 DB 69,15,89,200 ; mulps %xmm8,%xmm9
22645 DB 69,15,40,193 ; movaps %xmm9,%xmm8
22646 DB 68,15,89,192 ; mulps %xmm0,%xmm8
22647 DB 65,15,88,224 ; addps %xmm8,%xmm4
22648 DB 69,15,40,193 ; movaps %xmm9,%xmm8
22649 DB 68,15,89,193 ; mulps %xmm1,%xmm8
22650 DB 65,15,88,232 ; addps %xmm8,%xmm5
22651 DB 69,15,40,193 ; movaps %xmm9,%xmm8
22652 DB 68,15,89,194 ; mulps %xmm2,%xmm8
22653 DB 65,15,88,240 ; addps %xmm8,%xmm6
22654 DB 68,15,89,203 ; mulps %xmm3,%xmm9
22655 DB 65,15,88,249 ; addps %xmm9,%xmm7
22656 DB 72,173 ; lods %ds:(%rsi),%rax
22657 DB 255,224 ; jmpq *%rax
22658
22659PUBLIC _sk_bilinear_nx_sse2
22660_sk_bilinear_nx_sse2 LABEL PROC
22661 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022662 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040022663 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022664 DB 15,88,5,37,18,0,0 ; addps 0x1225(%rip),%xmm0 # 5c00 <_sk_callback_sse2+0xf6a>
22665 DB 68,15,40,13,45,18,0,0 ; movaps 0x122d(%rip),%xmm9 # 5c10 <_sk_callback_sse2+0xf7a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022666 DB 69,15,92,200 ; subps %xmm8,%xmm9
22667 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040022668 DB 72,173 ; lods %ds:(%rsi),%rax
22669 DB 255,224 ; jmpq *%rax
22670
22671PUBLIC _sk_bilinear_px_sse2
22672_sk_bilinear_px_sse2 LABEL PROC
22673 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022674 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040022675 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022676 DB 15,88,5,28,18,0,0 ; addps 0x121c(%rip),%xmm0 # 5c20 <_sk_callback_sse2+0xf8a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022677 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040022678 DB 72,173 ; lods %ds:(%rsi),%rax
22679 DB 255,224 ; jmpq *%rax
22680
22681PUBLIC _sk_bilinear_ny_sse2
22682_sk_bilinear_ny_sse2 LABEL PROC
22683 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022684 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040022685 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022686 DB 15,88,13,14,18,0,0 ; addps 0x120e(%rip),%xmm1 # 5c30 <_sk_callback_sse2+0xf9a>
22687 DB 68,15,40,13,22,18,0,0 ; movaps 0x1216(%rip),%xmm9 # 5c40 <_sk_callback_sse2+0xfaa>
Mike Kleinfe560a82017-05-01 12:56:35 -040022688 DB 69,15,92,200 ; subps %xmm8,%xmm9
22689 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040022690 DB 72,173 ; lods %ds:(%rsi),%rax
22691 DB 255,224 ; jmpq *%rax
22692
22693PUBLIC _sk_bilinear_py_sse2
22694_sk_bilinear_py_sse2 LABEL PROC
22695 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022696 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040022697 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022698 DB 15,88,13,4,18,0,0 ; addps 0x1204(%rip),%xmm1 # 5c50 <_sk_callback_sse2+0xfba>
Mike Kleinfe560a82017-05-01 12:56:35 -040022699 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040022700 DB 72,173 ; lods %ds:(%rsi),%rax
22701 DB 255,224 ; jmpq *%rax
22702
22703PUBLIC _sk_bicubic_n3x_sse2
22704_sk_bicubic_n3x_sse2 LABEL PROC
22705 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022706 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040022707 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022708 DB 15,88,5,247,17,0,0 ; addps 0x11f7(%rip),%xmm0 # 5c60 <_sk_callback_sse2+0xfca>
22709 DB 68,15,40,13,255,17,0,0 ; movaps 0x11ff(%rip),%xmm9 # 5c70 <_sk_callback_sse2+0xfda>
Mike Kleinfe560a82017-05-01 12:56:35 -040022710 DB 69,15,92,200 ; subps %xmm8,%xmm9
22711 DB 69,15,40,193 ; movaps %xmm9,%xmm8
Mike Klein0a904492017-04-12 12:52:48 -040022712 DB 69,15,89,192 ; mulps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022713 DB 68,15,89,13,251,17,0,0 ; mulps 0x11fb(%rip),%xmm9 # 5c80 <_sk_callback_sse2+0xfea>
22714 DB 68,15,88,13,3,18,0,0 ; addps 0x1203(%rip),%xmm9 # 5c90 <_sk_callback_sse2+0xffa>
Mike Klein0a904492017-04-12 12:52:48 -040022715 DB 69,15,89,200 ; mulps %xmm8,%xmm9
22716 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax)
22717 DB 72,173 ; lods %ds:(%rsi),%rax
22718 DB 255,224 ; jmpq *%rax
22719
22720PUBLIC _sk_bicubic_n1x_sse2
22721_sk_bicubic_n1x_sse2 LABEL PROC
22722 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022723 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040022724 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022725 DB 15,88,5,242,17,0,0 ; addps 0x11f2(%rip),%xmm0 # 5ca0 <_sk_callback_sse2+0x100a>
22726 DB 68,15,40,13,250,17,0,0 ; movaps 0x11fa(%rip),%xmm9 # 5cb0 <_sk_callback_sse2+0x101a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022727 DB 69,15,92,200 ; subps %xmm8,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040022728 DB 68,15,40,5,254,17,0,0 ; movaps 0x11fe(%rip),%xmm8 # 5cc0 <_sk_callback_sse2+0x102a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022729 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022730 DB 68,15,88,5,2,18,0,0 ; addps 0x1202(%rip),%xmm8 # 5cd0 <_sk_callback_sse2+0x103a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022731 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022732 DB 68,15,88,5,6,18,0,0 ; addps 0x1206(%rip),%xmm8 # 5ce0 <_sk_callback_sse2+0x104a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022733 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022734 DB 68,15,88,5,10,18,0,0 ; addps 0x120a(%rip),%xmm8 # 5cf0 <_sk_callback_sse2+0x105a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022735 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040022736 DB 72,173 ; lods %ds:(%rsi),%rax
22737 DB 255,224 ; jmpq *%rax
22738
22739PUBLIC _sk_bicubic_p1x_sse2
22740_sk_bicubic_p1x_sse2 LABEL PROC
22741 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040022742 DB 68,15,40,5,4,18,0,0 ; movaps 0x1204(%rip),%xmm8 # 5d00 <_sk_callback_sse2+0x106a>
Mike Klein0a904492017-04-12 12:52:48 -040022743 DB 15,16,0 ; movups (%rax),%xmm0
22744 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9
22745 DB 65,15,88,192 ; addps %xmm8,%xmm0
Mike Klein8ca33562017-05-23 08:07:43 -040022746 DB 68,15,40,21,0,18,0,0 ; movaps 0x1200(%rip),%xmm10 # 5d10 <_sk_callback_sse2+0x107a>
Mike Klein0a904492017-04-12 12:52:48 -040022747 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040022748 DB 68,15,88,21,4,18,0,0 ; addps 0x1204(%rip),%xmm10 # 5d20 <_sk_callback_sse2+0x108a>
Mike Klein0a904492017-04-12 12:52:48 -040022749 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22750 DB 69,15,88,208 ; addps %xmm8,%xmm10
Mike Klein0a904492017-04-12 12:52:48 -040022751 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040022752 DB 68,15,88,21,0,18,0,0 ; addps 0x1200(%rip),%xmm10 # 5d30 <_sk_callback_sse2+0x109a>
Mike Klein0a904492017-04-12 12:52:48 -040022753 DB 68,15,17,144,128,0,0,0 ; movups %xmm10,0x80(%rax)
22754 DB 72,173 ; lods %ds:(%rsi),%rax
22755 DB 255,224 ; jmpq *%rax
22756
22757PUBLIC _sk_bicubic_p3x_sse2
22758_sk_bicubic_p3x_sse2 LABEL PROC
22759 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022760 DB 15,16,0 ; movups (%rax),%xmm0
Mike Kleinfe560a82017-05-01 12:56:35 -040022761 DB 68,15,16,64,64 ; movups 0x40(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022762 DB 15,88,5,243,17,0,0 ; addps 0x11f3(%rip),%xmm0 # 5d40 <_sk_callback_sse2+0x10aa>
Mike Kleinfe560a82017-05-01 12:56:35 -040022763 DB 69,15,40,200 ; movaps %xmm8,%xmm9
Mike Klein0a904492017-04-12 12:52:48 -040022764 DB 69,15,89,201 ; mulps %xmm9,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040022765 DB 68,15,89,5,243,17,0,0 ; mulps 0x11f3(%rip),%xmm8 # 5d50 <_sk_callback_sse2+0x10ba>
22766 DB 68,15,88,5,251,17,0,0 ; addps 0x11fb(%rip),%xmm8 # 5d60 <_sk_callback_sse2+0x10ca>
Mike Klein0a904492017-04-12 12:52:48 -040022767 DB 69,15,89,193 ; mulps %xmm9,%xmm8
22768 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax)
22769 DB 72,173 ; lods %ds:(%rsi),%rax
22770 DB 255,224 ; jmpq *%rax
22771
22772PUBLIC _sk_bicubic_n3y_sse2
22773_sk_bicubic_n3y_sse2 LABEL PROC
22774 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022775 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040022776 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022777 DB 15,88,13,233,17,0,0 ; addps 0x11e9(%rip),%xmm1 # 5d70 <_sk_callback_sse2+0x10da>
22778 DB 68,15,40,13,241,17,0,0 ; movaps 0x11f1(%rip),%xmm9 # 5d80 <_sk_callback_sse2+0x10ea>
Mike Kleinfe560a82017-05-01 12:56:35 -040022779 DB 69,15,92,200 ; subps %xmm8,%xmm9
22780 DB 69,15,40,193 ; movaps %xmm9,%xmm8
Mike Klein0a904492017-04-12 12:52:48 -040022781 DB 69,15,89,192 ; mulps %xmm8,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022782 DB 68,15,89,13,237,17,0,0 ; mulps 0x11ed(%rip),%xmm9 # 5d90 <_sk_callback_sse2+0x10fa>
22783 DB 68,15,88,13,245,17,0,0 ; addps 0x11f5(%rip),%xmm9 # 5da0 <_sk_callback_sse2+0x110a>
Mike Klein0a904492017-04-12 12:52:48 -040022784 DB 69,15,89,200 ; mulps %xmm8,%xmm9
22785 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax)
22786 DB 72,173 ; lods %ds:(%rsi),%rax
22787 DB 255,224 ; jmpq *%rax
22788
22789PUBLIC _sk_bicubic_n1y_sse2
22790_sk_bicubic_n1y_sse2 LABEL PROC
22791 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022792 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040022793 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022794 DB 15,88,13,227,17,0,0 ; addps 0x11e3(%rip),%xmm1 # 5db0 <_sk_callback_sse2+0x111a>
22795 DB 68,15,40,13,235,17,0,0 ; movaps 0x11eb(%rip),%xmm9 # 5dc0 <_sk_callback_sse2+0x112a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022796 DB 69,15,92,200 ; subps %xmm8,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040022797 DB 68,15,40,5,239,17,0,0 ; movaps 0x11ef(%rip),%xmm8 # 5dd0 <_sk_callback_sse2+0x113a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022798 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022799 DB 68,15,88,5,243,17,0,0 ; addps 0x11f3(%rip),%xmm8 # 5de0 <_sk_callback_sse2+0x114a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022800 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022801 DB 68,15,88,5,247,17,0,0 ; addps 0x11f7(%rip),%xmm8 # 5df0 <_sk_callback_sse2+0x115a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022802 DB 69,15,89,193 ; mulps %xmm9,%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022803 DB 68,15,88,5,251,17,0,0 ; addps 0x11fb(%rip),%xmm8 # 5e00 <_sk_callback_sse2+0x116a>
Mike Kleinfe560a82017-05-01 12:56:35 -040022804 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax)
Mike Klein0a904492017-04-12 12:52:48 -040022805 DB 72,173 ; lods %ds:(%rsi),%rax
22806 DB 255,224 ; jmpq *%rax
22807
22808PUBLIC _sk_bicubic_p1y_sse2
22809_sk_bicubic_p1y_sse2 LABEL PROC
22810 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein8ca33562017-05-23 08:07:43 -040022811 DB 68,15,40,5,245,17,0,0 ; movaps 0x11f5(%rip),%xmm8 # 5e10 <_sk_callback_sse2+0x117a>
Mike Klein0a904492017-04-12 12:52:48 -040022812 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
22813 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9
22814 DB 65,15,88,200 ; addps %xmm8,%xmm1
Mike Klein8ca33562017-05-23 08:07:43 -040022815 DB 68,15,40,21,240,17,0,0 ; movaps 0x11f0(%rip),%xmm10 # 5e20 <_sk_callback_sse2+0x118a>
Mike Klein0a904492017-04-12 12:52:48 -040022816 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040022817 DB 68,15,88,21,244,17,0,0 ; addps 0x11f4(%rip),%xmm10 # 5e30 <_sk_callback_sse2+0x119a>
Mike Klein0a904492017-04-12 12:52:48 -040022818 DB 69,15,89,209 ; mulps %xmm9,%xmm10
22819 DB 69,15,88,208 ; addps %xmm8,%xmm10
Mike Klein0a904492017-04-12 12:52:48 -040022820 DB 69,15,89,209 ; mulps %xmm9,%xmm10
Mike Klein8ca33562017-05-23 08:07:43 -040022821 DB 68,15,88,21,240,17,0,0 ; addps 0x11f0(%rip),%xmm10 # 5e40 <_sk_callback_sse2+0x11aa>
Mike Klein0a904492017-04-12 12:52:48 -040022822 DB 68,15,17,144,160,0,0,0 ; movups %xmm10,0xa0(%rax)
22823 DB 72,173 ; lods %ds:(%rsi),%rax
22824 DB 255,224 ; jmpq *%rax
22825
22826PUBLIC _sk_bicubic_p3y_sse2
22827_sk_bicubic_p3y_sse2 LABEL PROC
22828 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Klein0a904492017-04-12 12:52:48 -040022829 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1
Mike Kleinfe560a82017-05-01 12:56:35 -040022830 DB 68,15,16,64,96 ; movups 0x60(%rax),%xmm8
Mike Klein8ca33562017-05-23 08:07:43 -040022831 DB 15,88,13,226,17,0,0 ; addps 0x11e2(%rip),%xmm1 # 5e50 <_sk_callback_sse2+0x11ba>
Mike Kleinfe560a82017-05-01 12:56:35 -040022832 DB 69,15,40,200 ; movaps %xmm8,%xmm9
Mike Klein0a904492017-04-12 12:52:48 -040022833 DB 69,15,89,201 ; mulps %xmm9,%xmm9
Mike Klein8ca33562017-05-23 08:07:43 -040022834 DB 68,15,89,5,226,17,0,0 ; mulps 0x11e2(%rip),%xmm8 # 5e60 <_sk_callback_sse2+0x11ca>
22835 DB 68,15,88,5,234,17,0,0 ; addps 0x11ea(%rip),%xmm8 # 5e70 <_sk_callback_sse2+0x11da>
Mike Klein0a904492017-04-12 12:52:48 -040022836 DB 69,15,89,193 ; mulps %xmm9,%xmm8
22837 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax)
22838 DB 72,173 ; lods %ds:(%rsi),%rax
22839 DB 255,224 ; jmpq *%rax
Mike Klein7fee90c2017-04-07 16:55:09 -040022840
22841PUBLIC _sk_callback_sse2
22842_sk_callback_sse2 LABEL PROC
Mike Kleinc17dc242017-04-20 16:21:57 -040022843 DB 65,86 ; push %r14
Mike Klein7fee90c2017-04-07 16:55:09 -040022844 DB 83 ; push %rbx
Mike Kleinc17dc242017-04-20 16:21:57 -040022845 DB 72,131,236,40 ; sub $0x28,%rsp
Mike Klein7fee90c2017-04-07 16:55:09 -040022846 DB 68,15,40,197 ; movaps %xmm5,%xmm8
22847 DB 68,15,40,204 ; movaps %xmm4,%xmm9
Mike Kleinc17dc242017-04-20 16:21:57 -040022848 DB 73,137,214 ; mov %rdx,%r14
Mike Klein7fee90c2017-04-07 16:55:09 -040022849 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinc17dc242017-04-20 16:21:57 -040022850 DB 72,137,195 ; mov %rax,%rbx
22851 DB 15,40,224 ; movaps %xmm0,%xmm4
22852 DB 15,20,225 ; unpcklps %xmm1,%xmm4
22853 DB 15,40,234 ; movaps %xmm2,%xmm5
22854 DB 15,20,235 ; unpcklps %xmm3,%xmm5
22855 DB 15,21,193 ; unpckhps %xmm1,%xmm0
22856 DB 15,21,211 ; unpckhps %xmm3,%xmm2
22857 DB 15,40,204 ; movaps %xmm4,%xmm1
22858 DB 102,15,20,205 ; unpcklpd %xmm5,%xmm1
22859 DB 15,18,236 ; movhlps %xmm4,%xmm5
22860 DB 15,40,216 ; movaps %xmm0,%xmm3
22861 DB 102,15,20,218 ; unpcklpd %xmm2,%xmm3
22862 DB 15,18,208 ; movhlps %xmm0,%xmm2
22863 DB 102,15,17,75,8 ; movupd %xmm1,0x8(%rbx)
22864 DB 15,17,107,24 ; movups %xmm5,0x18(%rbx)
22865 DB 102,15,17,91,40 ; movupd %xmm3,0x28(%rbx)
22866 DB 15,17,83,56 ; movups %xmm2,0x38(%rbx)
Mike Klein7fee90c2017-04-07 16:55:09 -040022867 DB 186,4,0,0,0 ; mov $0x4,%edx
Mike Kleinc17dc242017-04-20 16:21:57 -040022868 DB 72,137,217 ; mov %rbx,%rcx
22869 DB 255,19 ; callq *(%rbx)
22870 DB 72,139,131,136,0,0,0 ; mov 0x88(%rbx),%rax
22871 DB 15,16,32 ; movups (%rax),%xmm4
22872 DB 15,16,64,16 ; movups 0x10(%rax),%xmm0
22873 DB 15,16,88,32 ; movups 0x20(%rax),%xmm3
22874 DB 15,16,80,48 ; movups 0x30(%rax),%xmm2
22875 DB 15,40,236 ; movaps %xmm4,%xmm5
22876 DB 15,20,232 ; unpcklps %xmm0,%xmm5
22877 DB 15,40,203 ; movaps %xmm3,%xmm1
22878 DB 15,20,202 ; unpcklps %xmm2,%xmm1
22879 DB 15,21,224 ; unpckhps %xmm0,%xmm4
22880 DB 15,21,218 ; unpckhps %xmm2,%xmm3
22881 DB 15,40,197 ; movaps %xmm5,%xmm0
22882 DB 102,15,20,193 ; unpcklpd %xmm1,%xmm0
22883 DB 15,18,205 ; movhlps %xmm5,%xmm1
22884 DB 15,40,212 ; movaps %xmm4,%xmm2
22885 DB 102,15,20,211 ; unpcklpd %xmm3,%xmm2
22886 DB 15,18,220 ; movhlps %xmm4,%xmm3
Mike Klein7fee90c2017-04-07 16:55:09 -040022887 DB 72,173 ; lods %ds:(%rsi),%rax
Mike Kleinc17dc242017-04-20 16:21:57 -040022888 DB 76,137,242 ; mov %r14,%rdx
Mike Klein7fee90c2017-04-07 16:55:09 -040022889 DB 65,15,40,225 ; movaps %xmm9,%xmm4
22890 DB 65,15,40,232 ; movaps %xmm8,%xmm5
Mike Kleinc17dc242017-04-20 16:21:57 -040022891 DB 72,131,196,40 ; add $0x28,%rsp
Mike Klein7fee90c2017-04-07 16:55:09 -040022892 DB 91 ; pop %rbx
Mike Kleinc17dc242017-04-20 16:21:57 -040022893 DB 65,94 ; pop %r14
Mike Klein7fee90c2017-04-07 16:55:09 -040022894 DB 255,224 ; jmpq *%rax
Mike Klein2229b572017-04-21 10:30:29 -040022895
22896ALIGN 16
22897 DB 0,0 ; add %al,(%rax)
22898 DB 0,63 ; add %bh,(%rdi)
22899 DB 0,0 ; add %al,(%rax)
22900 DB 0,63 ; add %bh,(%rdi)
22901 DB 0,0 ; add %al,(%rax)
22902 DB 0,63 ; add %bh,(%rdi)
22903 DB 0,0 ; add %al,(%rax)
22904 DB 0,63 ; add %bh,(%rdi)
22905 DB 0,0 ; add %al,(%rax)
22906 DB 128,63,0 ; cmpb $0x0,(%rdi)
22907 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22908 DB 63 ; (bad)
22909 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040022910 DB 128,63,1 ; cmpb $0x1,(%rdi)
22911 DB 0,0 ; add %al,(%rax)
22912 DB 0,1 ; add %al,(%rcx)
22913 DB 0,0 ; add %al,(%rax)
22914 DB 0,1 ; add %al,(%rcx)
22915 DB 0,0 ; add %al,(%rax)
22916 DB 0,1 ; add %al,(%rcx)
22917 DB 0,0 ; add %al,(%rax)
22918 DB 0,4,0 ; add %al,(%rax,%rax,1)
22919 DB 0,0 ; add %al,(%rax)
22920 DB 4,0 ; add $0x0,%al
22921 DB 0,0 ; add %al,(%rax)
22922 DB 4,0 ; add $0x0,%al
22923 DB 0,0 ; add %al,(%rax)
22924 DB 4,0 ; add $0x0,%al
22925 DB 0,0 ; add %al,(%rax)
22926 DB 2,0 ; add (%rax),%al
22927 DB 0,0 ; add %al,(%rax)
22928 DB 2,0 ; add (%rax),%al
22929 DB 0,0 ; add %al,(%rax)
22930 DB 2,0 ; add (%rax),%al
22931 DB 0,0 ; add %al,(%rax)
22932 DB 2,0 ; add (%rax),%al
22933 DB 0,0 ; add %al,(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040022934 DB 0,0 ; add %al,(%rax)
Mike Kleindb711c92017-05-03 17:57:48 -040022935 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
22936 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
22937 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
22938 DB 128,60,0,0 ; cmpb $0x0,(%rax,%rax,1)
22939 DB 252 ; cld
22940 DB 190,0,0,252,190 ; mov $0xbefc0000,%esi
22941 DB 0,0 ; add %al,(%rax)
22942 DB 252 ; cld
22943 DB 190,0,0,252,190 ; mov $0xbefc0000,%esi
Mike Klein581e6982017-05-03 13:05:13 -040022944 DB 0,0 ; add %al,(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040022945 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -040022946 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22947 DB 63 ; (bad)
22948 DB 0,0 ; add %al,(%rax)
22949 DB 128,63,0 ; cmpb $0x0,(%rdi)
22950 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22951 DB 63 ; (bad)
22952 DB 0,0 ; add %al,(%rax)
22953 DB 128,63,0 ; cmpb $0x0,(%rdi)
22954 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22955 DB 63 ; (bad)
22956 DB 0,0 ; add %al,(%rax)
22957 DB 128,63,0 ; cmpb $0x0,(%rdi)
22958 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22959 DB 63 ; (bad)
22960 DB 0,0 ; add %al,(%rax)
22961 DB 128,63,0 ; cmpb $0x0,(%rdi)
22962 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22963 DB 63 ; (bad)
22964 DB 0,0 ; add %al,(%rax)
22965 DB 128,63,0 ; cmpb $0x0,(%rdi)
22966 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22967 DB 63 ; (bad)
22968 DB 0,0 ; add %al,(%rax)
22969 DB 128,63,0 ; cmpb $0x0,(%rdi)
22970 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22971 DB 63 ; (bad)
22972 DB 0,0 ; add %al,(%rax)
22973 DB 128,63,0 ; cmpb $0x0,(%rdi)
22974 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22975 DB 63 ; (bad)
22976 DB 0,0 ; add %al,(%rax)
22977 DB 128,63,0 ; cmpb $0x0,(%rdi)
22978 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22979 DB 63 ; (bad)
22980 DB 0,0 ; add %al,(%rax)
22981 DB 128,63,0 ; cmpb $0x0,(%rdi)
22982 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22983 DB 63 ; (bad)
22984 DB 0,0 ; add %al,(%rax)
22985 DB 128,63,0 ; cmpb $0x0,(%rdi)
22986 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22987 DB 63 ; (bad)
22988 DB 0,0 ; add %al,(%rax)
22989 DB 128,63,0 ; cmpb $0x0,(%rdi)
22990 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22991 DB 63 ; (bad)
22992 DB 0,0 ; add %al,(%rax)
22993 DB 128,63,0 ; cmpb $0x0,(%rdi)
22994 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22995 DB 63 ; (bad)
22996 DB 0,0 ; add %al,(%rax)
22997 DB 128,63,0 ; cmpb $0x0,(%rdi)
22998 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
22999 DB 63 ; (bad)
23000 DB 0,0 ; add %al,(%rax)
23001 DB 128,63,0 ; cmpb $0x0,(%rdi)
23002 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23003 DB 63 ; (bad)
23004 DB 0,0 ; add %al,(%rax)
23005 DB 128,63,0 ; cmpb $0x0,(%rdi)
23006 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23007 DB 63 ; (bad)
23008 DB 0,0 ; add %al,(%rax)
23009 DB 128,63,0 ; cmpb $0x0,(%rdi)
23010 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23011 DB 63 ; (bad)
23012 DB 0,0 ; add %al,(%rax)
23013 DB 128,63,0 ; cmpb $0x0,(%rdi)
23014 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23015 DB 63 ; (bad)
23016 DB 0,0 ; add %al,(%rax)
23017 DB 128,63,0 ; cmpb $0x0,(%rdi)
23018 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23019 DB 63 ; (bad)
23020 DB 0,0 ; add %al,(%rax)
23021 DB 128,63,0 ; cmpb $0x0,(%rdi)
23022 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23023 DB 63 ; (bad)
23024 DB 0,0 ; add %al,(%rax)
23025 DB 128,63,0 ; cmpb $0x0,(%rdi)
23026 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23027 DB 63 ; (bad)
23028 DB 0,0 ; add %al,(%rax)
23029 DB 128,63,0 ; cmpb $0x0,(%rdi)
23030 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23031 DB 63 ; (bad)
23032 DB 0,0 ; add %al,(%rax)
23033 DB 128,63,0 ; cmpb $0x0,(%rdi)
23034 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
Mike Klein581e6982017-05-03 13:05:13 -040023035 DB 191,0,0,128,191 ; mov $0xbf800000,%edi
Mike Kleinfe560a82017-05-01 12:56:35 -040023036 DB 0,0 ; add %al,(%rax)
23037 DB 128,191,0,0,128,191,0 ; cmpb $0x0,-0x40800000(%rdi)
Mike Klein581e6982017-05-03 13:05:13 -040023038 DB 0,224 ; add %ah,%al
23039 DB 64,0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023040 DB 224,64 ; loopne 4f28 <.literal16+0x1d8>
Mike Kleinfe560a82017-05-01 12:56:35 -040023041 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023042 DB 224,64 ; loopne 4f2c <.literal16+0x1dc>
Mike Kleinfe560a82017-05-01 12:56:35 -040023043 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023044 DB 224,64 ; loopne 4f30 <.literal16+0x1e0>
Mike Klein08aa88d2017-05-12 12:59:24 -040023045 DB 154 ; (bad)
23046 DB 153 ; cltd
23047 DB 153 ; cltd
23048 DB 62,154 ; ds (bad)
23049 DB 153 ; cltd
23050 DB 153 ; cltd
23051 DB 62,154 ; ds (bad)
23052 DB 153 ; cltd
23053 DB 153 ; cltd
23054 DB 62,154 ; ds (bad)
23055 DB 153 ; cltd
23056 DB 153 ; cltd
23057 DB 62,61,10,23,63,61 ; ds cmp $0x3d3f170a,%eax
23058 DB 10,23 ; or (%rdi),%dl
23059 DB 63 ; (bad)
23060 DB 61,10,23,63,61 ; cmp $0x3d3f170a,%eax
23061 DB 10,23 ; or (%rdi),%dl
23062 DB 63 ; (bad)
23063 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023064 DB 71,225,61 ; rex.RXB loope 4f51 <.literal16+0x201>
Mike Klein08aa88d2017-05-12 12:59:24 -040023065 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023066 DB 71,225,61 ; rex.RXB loope 4f55 <.literal16+0x205>
Mike Klein08aa88d2017-05-12 12:59:24 -040023067 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023068 DB 71,225,61 ; rex.RXB loope 4f59 <.literal16+0x209>
Mike Klein08aa88d2017-05-12 12:59:24 -040023069 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023070 DB 71,225,61 ; rex.RXB loope 4f5d <.literal16+0x20d>
Mike Kleinbb338332017-05-04 12:42:52 -040023071 DB 0,0 ; add %al,(%rax)
23072 DB 128,63,0 ; cmpb $0x0,(%rdi)
23073 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23074 DB 63 ; (bad)
23075 DB 0,0 ; add %al,(%rax)
23076 DB 128,63,154 ; cmpb $0x9a,(%rdi)
23077 DB 153 ; cltd
23078 DB 153 ; cltd
23079 DB 62,154 ; ds (bad)
23080 DB 153 ; cltd
23081 DB 153 ; cltd
23082 DB 62,154 ; ds (bad)
23083 DB 153 ; cltd
23084 DB 153 ; cltd
23085 DB 62,154 ; ds (bad)
23086 DB 153 ; cltd
23087 DB 153 ; cltd
23088 DB 62,61,10,23,63,61 ; ds cmp $0x3d3f170a,%eax
23089 DB 10,23 ; or (%rdi),%dl
23090 DB 63 ; (bad)
23091 DB 61,10,23,63,61 ; cmp $0x3d3f170a,%eax
23092 DB 10,23 ; or (%rdi),%dl
23093 DB 63 ; (bad)
23094 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023095 DB 71,225,61 ; rex.RXB loope 4f91 <.literal16+0x241>
Mike Kleinbb338332017-05-04 12:42:52 -040023096 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023097 DB 71,225,61 ; rex.RXB loope 4f95 <.literal16+0x245>
Mike Kleinbb338332017-05-04 12:42:52 -040023098 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023099 DB 71,225,61 ; rex.RXB loope 4f99 <.literal16+0x249>
Mike Kleinbb338332017-05-04 12:42:52 -040023100 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023101 DB 71,225,61 ; rex.RXB loope 4f9d <.literal16+0x24d>
Mike Kleinbb338332017-05-04 12:42:52 -040023102 DB 0,0 ; add %al,(%rax)
23103 DB 128,63,0 ; cmpb $0x0,(%rdi)
23104 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23105 DB 63 ; (bad)
23106 DB 0,0 ; add %al,(%rax)
23107 DB 128,63,154 ; cmpb $0x9a,(%rdi)
23108 DB 153 ; cltd
23109 DB 153 ; cltd
23110 DB 62,154 ; ds (bad)
23111 DB 153 ; cltd
23112 DB 153 ; cltd
23113 DB 62,154 ; ds (bad)
23114 DB 153 ; cltd
23115 DB 153 ; cltd
23116 DB 62,154 ; ds (bad)
23117 DB 153 ; cltd
23118 DB 153 ; cltd
23119 DB 62,61,10,23,63,61 ; ds cmp $0x3d3f170a,%eax
23120 DB 10,23 ; or (%rdi),%dl
23121 DB 63 ; (bad)
23122 DB 61,10,23,63,61 ; cmp $0x3d3f170a,%eax
23123 DB 10,23 ; or (%rdi),%dl
23124 DB 63 ; (bad)
23125 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023126 DB 71,225,61 ; rex.RXB loope 4fd1 <.literal16+0x281>
Mike Kleinbb338332017-05-04 12:42:52 -040023127 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023128 DB 71,225,61 ; rex.RXB loope 4fd5 <.literal16+0x285>
Mike Kleinbb338332017-05-04 12:42:52 -040023129 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023130 DB 71,225,61 ; rex.RXB loope 4fd9 <.literal16+0x289>
Mike Kleinbb338332017-05-04 12:42:52 -040023131 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023132 DB 71,225,61 ; rex.RXB loope 4fdd <.literal16+0x28d>
Mike Kleinbb338332017-05-04 12:42:52 -040023133 DB 0,0 ; add %al,(%rax)
23134 DB 128,63,0 ; cmpb $0x0,(%rdi)
23135 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23136 DB 63 ; (bad)
23137 DB 0,0 ; add %al,(%rax)
23138 DB 128,63,154 ; cmpb $0x9a,(%rdi)
23139 DB 153 ; cltd
23140 DB 153 ; cltd
23141 DB 62,154 ; ds (bad)
23142 DB 153 ; cltd
23143 DB 153 ; cltd
23144 DB 62,154 ; ds (bad)
23145 DB 153 ; cltd
23146 DB 153 ; cltd
23147 DB 62,154 ; ds (bad)
23148 DB 153 ; cltd
23149 DB 153 ; cltd
23150 DB 62,61,10,23,63,61 ; ds cmp $0x3d3f170a,%eax
23151 DB 10,23 ; or (%rdi),%dl
23152 DB 63 ; (bad)
23153 DB 61,10,23,63,61 ; cmp $0x3d3f170a,%eax
23154 DB 10,23 ; or (%rdi),%dl
23155 DB 63 ; (bad)
23156 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023157 DB 71,225,61 ; rex.RXB loope 5011 <.literal16+0x2c1>
Mike Kleinbb338332017-05-04 12:42:52 -040023158 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023159 DB 71,225,61 ; rex.RXB loope 5015 <.literal16+0x2c5>
Mike Kleinbb338332017-05-04 12:42:52 -040023160 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023161 DB 71,225,61 ; rex.RXB loope 5019 <.literal16+0x2c9>
Mike Kleinbb338332017-05-04 12:42:52 -040023162 DB 174 ; scas %es:(%rdi),%al
Mike Klein8ca33562017-05-23 08:07:43 -040023163 DB 71,225,61 ; rex.RXB loope 501d <.literal16+0x2cd>
Mike Kleinfe560a82017-05-01 12:56:35 -040023164 DB 0,0 ; add %al,(%rax)
23165 DB 128,63,0 ; cmpb $0x0,(%rdi)
23166 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23167 DB 63 ; (bad)
23168 DB 0,0 ; add %al,(%rax)
23169 DB 128,63,0 ; cmpb $0x0,(%rdi)
23170 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23171 DB 63 ; (bad)
23172 DB 0,0 ; add %al,(%rax)
23173 DB 128,63,0 ; cmpb $0x0,(%rdi)
23174 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23175 DB 63 ; (bad)
23176 DB 0,0 ; add %al,(%rax)
23177 DB 128,63,0 ; cmpb $0x0,(%rdi)
23178 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23179 DB 63 ; (bad)
Mike Klein08aa88d2017-05-12 12:59:24 -040023180 DB 0,0 ; add %al,(%rax)
23181 DB 128,63,0 ; cmpb $0x0,(%rdi)
23182 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23183 DB 63 ; (bad)
23184 DB 0,0 ; add %al,(%rax)
23185 DB 128,63,145 ; cmpb $0x91,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -040023186 DB 131,158,61,145,131,158,61 ; sbbl $0x3d,-0x617c6ec3(%rsi)
23187 DB 145 ; xchg %eax,%ecx
23188 DB 131,158,61,145,131,158,61 ; sbbl $0x3d,-0x617c6ec3(%rsi)
23189 DB 154 ; (bad)
23190 DB 153 ; cltd
23191 DB 153 ; cltd
23192 DB 62,154 ; ds (bad)
23193 DB 153 ; cltd
23194 DB 153 ; cltd
23195 DB 62,154 ; ds (bad)
23196 DB 153 ; cltd
23197 DB 153 ; cltd
23198 DB 62,154 ; ds (bad)
23199 DB 153 ; cltd
23200 DB 153 ; cltd
23201 DB 62,92 ; ds pop %rsp
23202 DB 143 ; (bad)
23203 DB 50,63 ; xor (%rdi),%bh
23204 DB 92 ; pop %rsp
23205 DB 143 ; (bad)
23206 DB 50,63 ; xor (%rdi),%bh
23207 DB 92 ; pop %rsp
23208 DB 143 ; (bad)
23209 DB 50,63 ; xor (%rdi),%bh
23210 DB 92 ; pop %rsp
23211 DB 143 ; (bad)
23212 DB 50,63 ; xor (%rdi),%bh
23213 DB 10,215 ; or %bh,%dl
23214 DB 35,59 ; and (%rbx),%edi
23215 DB 10,215 ; or %bh,%dl
23216 DB 35,59 ; and (%rbx),%edi
23217 DB 10,215 ; or %bh,%dl
23218 DB 35,59 ; and (%rbx),%edi
23219 DB 10,215 ; or %bh,%dl
23220 DB 35,59 ; and (%rbx),%edi
23221 DB 174 ; scas %es:(%rdi),%al
23222 DB 71,97 ; rex.RXB (bad)
23223 DB 61,174,71,97,61 ; cmp $0x3d6147ae,%eax
23224 DB 174 ; scas %es:(%rdi),%al
23225 DB 71,97 ; rex.RXB (bad)
23226 DB 61,174,71,97,61 ; cmp $0x3d6147ae,%eax
Mike Kleinf45e3d72017-05-15 17:36:59 -040023227 DB 82 ; push %rdx
23228 DB 184,78,65,82,184 ; mov $0xb852414e,%eax
23229 DB 78 ; rex.WRX
23230 DB 65,82 ; push %r10
23231 DB 184,78,65,82,184 ; mov $0xb852414e,%eax
23232 DB 78 ; rex.WRX
23233 DB 65,57,215 ; cmp %edx,%r15d
23234 DB 32,187,57,215,32,187 ; and %bh,-0x44df28c7(%rbx)
23235 DB 57,215 ; cmp %edx,%edi
23236 DB 32,187,57,215,32,187 ; and %bh,-0x44df28c7(%rbx)
23237 DB 186,159,98,60,186 ; mov $0xba3c629f,%edx
23238 DB 159 ; lahf
23239 DB 98 ; (bad)
23240 DB 60,186 ; cmp $0xba,%al
23241 DB 159 ; lahf
23242 DB 98 ; (bad)
23243 DB 60,186 ; cmp $0xba,%al
23244 DB 159 ; lahf
23245 DB 98 ; (bad)
23246 DB 60,13 ; cmp $0xd,%al
23247 DB 20,145 ; adc $0x91,%al
Mike Kleinfe560a82017-05-01 12:56:35 -040023248 DB 63 ; (bad)
Mike Kleinf45e3d72017-05-15 17:36:59 -040023249 DB 13,20,145,63,13 ; or $0xd3f9114,%eax
23250 DB 20,145 ; adc $0x91,%al
23251 DB 63 ; (bad)
23252 DB 13,20,145,63,141 ; or $0x8d3f9114,%eax
23253 DB 158 ; sahf
23254 DB 20,62 ; adc $0x3e,%al
23255 DB 141,158,20,62,141,158 ; lea -0x6172c1ec(%rsi),%ebx
23256 DB 20,62 ; adc $0x3e,%al
23257 DB 141,158,20,62,168,177 ; lea -0x4e57c1ec(%rsi),%ebx
23258 DB 152 ; cwtl
23259 DB 59,168,177,152,59,168 ; cmp -0x57c4674f(%rax),%ebp
23260 DB 177,152 ; mov $0x98,%cl
23261 DB 59,168,177,152,59,0 ; cmp 0x3b98b1(%rax),%ebp
Mike Kleinfe560a82017-05-01 12:56:35 -040023262 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23263 DB 63 ; (bad)
23264 DB 0,0 ; add %al,(%rax)
23265 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinf45e3d72017-05-15 17:36:59 -040023266 DB 0,128,63,0,0,192 ; add %al,-0x3fffffc1(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023267 DB 64,0,0 ; add %al,(%rax)
23268 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
23269 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
23270 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
23271 DB 0,64,0 ; add %al,0x0(%rax)
23272 DB 0,0 ; add %al,(%rax)
23273 DB 64,0,0 ; add %al,(%rax)
23274 DB 0,64,0 ; add %al,0x0(%rax)
23275 DB 0,0 ; add %al,(%rax)
23276 DB 64,0,0 ; add %al,(%rax)
23277 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
23278 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
23279 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
23280 DB 128,64,171,170 ; addb $0xaa,-0x55(%rax)
23281 DB 42,62 ; sub (%rsi),%bh
23282 DB 171 ; stos %eax,%es:(%rdi)
23283 DB 170 ; stos %al,%es:(%rdi)
23284 DB 42,62 ; sub (%rsi),%bh
23285 DB 171 ; stos %eax,%es:(%rdi)
23286 DB 170 ; stos %al,%es:(%rdi)
23287 DB 42,62 ; sub (%rsi),%bh
23288 DB 171 ; stos %eax,%es:(%rdi)
23289 DB 170 ; stos %al,%es:(%rdi)
23290 DB 42,62 ; sub (%rsi),%bh
23291 DB 0,0 ; add %al,(%rax)
23292 DB 0,63 ; add %bh,(%rdi)
23293 DB 0,0 ; add %al,(%rax)
23294 DB 0,63 ; add %bh,(%rdi)
23295 DB 0,0 ; add %al,(%rax)
23296 DB 0,63 ; add %bh,(%rdi)
23297 DB 0,0 ; add %al,(%rax)
23298 DB 0,63 ; add %bh,(%rdi)
Mike Klein5664e652017-05-01 16:01:38 -040023299 DB 0,0 ; add %al,(%rax)
23300 DB 0,63 ; add %bh,(%rdi)
23301 DB 0,0 ; add %al,(%rax)
23302 DB 0,63 ; add %bh,(%rdi)
23303 DB 0,0 ; add %al,(%rax)
23304 DB 0,63 ; add %bh,(%rdi)
23305 DB 0,0 ; add %al,(%rax)
23306 DB 0,63 ; add %bh,(%rdi)
Mike Klein879a08a2017-05-01 15:34:01 -040023307 DB 171 ; stos %eax,%es:(%rdi)
Mike Kleinfb11acd2017-05-01 14:22:10 -040023308 DB 170 ; stos %al,%es:(%rdi)
23309 DB 170 ; stos %al,%es:(%rdi)
23310 DB 62,171 ; ds stos %eax,%es:(%rdi)
23311 DB 170 ; stos %al,%es:(%rdi)
23312 DB 170 ; stos %al,%es:(%rdi)
23313 DB 62,171 ; ds stos %eax,%es:(%rdi)
23314 DB 170 ; stos %al,%es:(%rdi)
23315 DB 170 ; stos %al,%es:(%rdi)
23316 DB 62,171 ; ds stos %eax,%es:(%rdi)
23317 DB 170 ; stos %al,%es:(%rdi)
23318 DB 170 ; stos %al,%es:(%rdi)
23319 DB 62,0,0 ; add %al,%ds:(%rax)
Mike Klein879a08a2017-05-01 15:34:01 -040023320 DB 128,63,0 ; cmpb $0x0,(%rdi)
23321 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23322 DB 63 ; (bad)
Mike Kleinfb11acd2017-05-01 14:22:10 -040023323 DB 0,0 ; add %al,(%rax)
Mike Klein5664e652017-05-01 16:01:38 -040023324 DB 128,63,171 ; cmpb $0xab,(%rdi)
23325 DB 170 ; stos %al,%es:(%rdi)
23326 DB 42,63 ; sub (%rdi),%bh
23327 DB 171 ; stos %eax,%es:(%rdi)
23328 DB 170 ; stos %al,%es:(%rdi)
23329 DB 42,63 ; sub (%rdi),%bh
23330 DB 171 ; stos %eax,%es:(%rdi)
23331 DB 170 ; stos %al,%es:(%rdi)
23332 DB 42,63 ; sub (%rdi),%bh
23333 DB 171 ; stos %eax,%es:(%rdi)
23334 DB 170 ; stos %al,%es:(%rdi)
23335 DB 42,63 ; sub (%rdi),%bh
23336 DB 0,0 ; add %al,(%rax)
23337 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
Mike Kleinfb11acd2017-05-01 14:22:10 -040023338 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
23339 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
Mike Klein879a08a2017-05-01 15:34:01 -040023340 DB 192,64,0,0 ; rolb $0x0,0x0(%rax)
23341 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
23342 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
23343 DB 128,64,0,0 ; addb $0x0,0x0(%rax)
23344 DB 128,64,171,170 ; addb $0xaa,-0x55(%rax)
Mike Klein5664e652017-05-01 16:01:38 -040023345 DB 42,62 ; sub (%rsi),%bh
23346 DB 171 ; stos %eax,%es:(%rdi)
23347 DB 170 ; stos %al,%es:(%rdi)
23348 DB 42,62 ; sub (%rsi),%bh
23349 DB 171 ; stos %eax,%es:(%rdi)
23350 DB 170 ; stos %al,%es:(%rdi)
23351 DB 42,62 ; sub (%rsi),%bh
23352 DB 171 ; stos %eax,%es:(%rdi)
23353 DB 170 ; stos %al,%es:(%rdi)
23354 DB 42,62 ; sub (%rsi),%bh
23355 DB 171 ; stos %eax,%es:(%rdi)
23356 DB 170 ; stos %al,%es:(%rdi)
Mike Kleinfb11acd2017-05-01 14:22:10 -040023357 DB 170 ; stos %al,%es:(%rdi)
23358 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
23359 DB 171 ; stos %eax,%es:(%rdi)
23360 DB 170 ; stos %al,%es:(%rdi)
23361 DB 170 ; stos %al,%es:(%rdi)
23362 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
Mike Kleinfe560a82017-05-01 12:56:35 -040023363 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23364 DB 128,59,129 ; cmpb $0x81,(%rbx)
23365 DB 128,128,59,129,128,128,59 ; addb $0x3b,-0x7f7f7ec5(%rax)
23366 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23367 DB 128,59,0 ; cmpb $0x0,(%rbx)
Mike Klein308e6242017-04-27 13:56:33 -040023368 DB 248 ; clc
23369 DB 0,0 ; add %al,(%rax)
23370 DB 0,248 ; add %bh,%al
23371 DB 0,0 ; add %al,(%rax)
23372 DB 0,248 ; add %bh,%al
23373 DB 0,0 ; add %al,(%rax)
23374 DB 0,248 ; add %bh,%al
23375 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023376 DB 8,33 ; or %ah,(%rcx)
23377 DB 132,55 ; test %dh,(%rdi)
23378 DB 8,33 ; or %ah,(%rcx)
23379 DB 132,55 ; test %dh,(%rdi)
23380 DB 8,33 ; or %ah,(%rcx)
23381 DB 132,55 ; test %dh,(%rdi)
23382 DB 8,33 ; or %ah,(%rcx)
23383 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040023384 DB 224,7 ; loopne 51f9 <.literal16+0x4a9>
Mike Klein308e6242017-04-27 13:56:33 -040023385 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023386 DB 224,7 ; loopne 51fd <.literal16+0x4ad>
Mike Klein308e6242017-04-27 13:56:33 -040023387 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023388 DB 224,7 ; loopne 5201 <.literal16+0x4b1>
Mike Klein308e6242017-04-27 13:56:33 -040023389 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023390 DB 224,7 ; loopne 5205 <.literal16+0x4b5>
Mike Klein308e6242017-04-27 13:56:33 -040023391 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023392 DB 33,8 ; and %ecx,(%rax)
23393 DB 2,58 ; add (%rdx),%bh
23394 DB 33,8 ; and %ecx,(%rax)
23395 DB 2,58 ; add (%rdx),%bh
23396 DB 33,8 ; and %ecx,(%rax)
23397 DB 2,58 ; add (%rdx),%bh
23398 DB 33,8 ; and %ecx,(%rax)
23399 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040023400 DB 31 ; (bad)
23401 DB 0,0 ; add %al,(%rax)
23402 DB 0,31 ; add %bl,(%rdi)
23403 DB 0,0 ; add %al,(%rax)
23404 DB 0,31 ; add %bl,(%rdi)
23405 DB 0,0 ; add %al,(%rax)
23406 DB 0,31 ; add %bl,(%rdi)
23407 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023408 DB 0,8 ; add %cl,(%rax)
23409 DB 33,4,61,8,33,4,61 ; and %eax,0x3d042108(,%rdi,1)
23410 DB 8,33 ; or %ah,(%rcx)
23411 DB 4,61 ; add $0x3d,%al
23412 DB 8,33 ; or %ah,(%rcx)
23413 DB 4,61 ; add $0x3d,%al
bungeman6f9f2592017-05-10 13:50:12 -040023414 DB 255,0 ; incl (%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023415 DB 0,0 ; add %al,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040023416 DB 255,0 ; incl (%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023417 DB 0,0 ; add %al,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040023418 DB 255,0 ; incl (%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040023419 DB 0,0 ; add %al,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040023420 DB 255,0 ; incl (%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040023421 DB 0,0 ; add %al,(%rax)
bungeman6f9f2592017-05-10 13:50:12 -040023422 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23423 DB 128,59,129 ; cmpb $0x81,(%rbx)
23424 DB 128,128,59,255,0,255,0 ; addb $0x0,-0xff00c5(%rax)
23425 DB 255,0 ; incl (%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023426 DB 255,0 ; incl (%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040023427 DB 0,0 ; add %al,(%rax)
23428 DB 0,0 ; add %al,(%rax)
23429 DB 0,0 ; add %al,(%rax)
23430 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023431 DB 128,0,128 ; addb $0x80,(%rax)
23432 DB 55 ; (bad)
23433 DB 128,0,128 ; addb $0x80,(%rax)
23434 DB 55 ; (bad)
23435 DB 128,0,128 ; addb $0x80,(%rax)
23436 DB 55 ; (bad)
23437 DB 128,0,128 ; addb $0x80,(%rax)
23438 DB 55 ; (bad)
23439 DB 255,0 ; incl (%rax)
23440 DB 255,0 ; incl (%rax)
23441 DB 255,0 ; incl (%rax)
23442 DB 255,0 ; incl (%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040023443 DB 0,0 ; add %al,(%rax)
23444 DB 0,0 ; add %al,(%rax)
23445 DB 0,0 ; add %al,(%rax)
23446 DB 0,0 ; add %al,(%rax)
23447 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023448 DB 128,63,0 ; cmpb $0x0,(%rdi)
23449 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23450 DB 63 ; (bad)
23451 DB 0,0 ; add %al,(%rax)
23452 DB 128,63,0 ; cmpb $0x0,(%rdi)
23453 DB 0,127,67 ; add %bh,0x43(%rdi)
23454 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023455 DB 127,67 ; jg 52db <.literal16+0x58b>
Mike Kleinfe560a82017-05-01 12:56:35 -040023456 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023457 DB 127,67 ; jg 52df <.literal16+0x58f>
Mike Kleinfe560a82017-05-01 12:56:35 -040023458 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023459 DB 127,67 ; jg 52e3 <.literal16+0x593>
Mike Kleinfe560a82017-05-01 12:56:35 -040023460 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23461 DB 128,59,129 ; cmpb $0x81,(%rbx)
23462 DB 128,128,59,129,128,128,59 ; addb $0x3b,-0x7f7f7ec5(%rax)
23463 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23464 DB 128,59,0 ; cmpb $0x0,(%rbx)
Mike Kleinb4bbc642017-04-27 08:59:55 -040023465 DB 0,0 ; add %al,(%rax)
23466 DB 52,0 ; xor $0x0,%al
23467 DB 0,0 ; add %al,(%rax)
23468 DB 52,0 ; xor $0x0,%al
23469 DB 0,0 ; add %al,(%rax)
23470 DB 52,0 ; xor $0x0,%al
23471 DB 0,0 ; add %al,(%rax)
23472 DB 52,255 ; xor $0xff,%al
23473 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023474 DB 127,0 ; jg 52d4 <.literal16+0x584>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023475 DB 255 ; (bad)
23476 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023477 DB 127,0 ; jg 52d8 <.literal16+0x588>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023478 DB 255 ; (bad)
23479 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023480 DB 127,0 ; jg 52dc <.literal16+0x58c>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023481 DB 255 ; (bad)
23482 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023483 DB 127,0 ; jg 52e0 <.literal16+0x590>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023484 DB 0,0 ; add %al,(%rax)
23485 DB 0,63 ; add %bh,(%rdi)
23486 DB 0,0 ; add %al,(%rax)
23487 DB 0,63 ; add %bh,(%rdi)
23488 DB 0,0 ; add %al,(%rax)
23489 DB 0,63 ; add %bh,(%rdi)
23490 DB 0,0 ; add %al,(%rax)
23491 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040023492 DB 119,115 ; ja 5365 <.literal16+0x615>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023493 DB 248 ; clc
23494 DB 194,119,115 ; retq $0x7377
23495 DB 248 ; clc
23496 DB 194,119,115 ; retq $0x7377
23497 DB 248 ; clc
23498 DB 194,119,115 ; retq $0x7377
23499 DB 248 ; clc
23500 DB 194,117,191 ; retq $0xbf75
23501 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
23502 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023503 DB 117,191 ; jne 52c9 <.literal16+0x579>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023504 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
23505 DB 63 ; (bad)
23506 DB 249 ; stc
23507 DB 68,180,62 ; rex.R mov $0x3e,%spl
23508 DB 249 ; stc
23509 DB 68,180,62 ; rex.R mov $0x3e,%spl
23510 DB 249 ; stc
23511 DB 68,180,62 ; rex.R mov $0x3e,%spl
23512 DB 249 ; stc
23513 DB 68,180,62 ; rex.R mov $0x3e,%spl
23514 DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9
Mike Klein8ca33562017-05-23 08:07:43 -040023515 DB 233,220,63,163,233 ; jmpq ffffffffe9a3930a <_sk_callback_sse2+0xffffffffe9a34674>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023516 DB 220,63 ; fdivrl (%rdi)
23517 DB 0,0 ; add %al,(%rax)
23518 DB 128,63,0 ; cmpb $0x0,(%rdi)
23519 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23520 DB 63 ; (bad)
23521 DB 0,0 ; add %al,(%rax)
23522 DB 128,63,81 ; cmpb $0x51,(%rdi)
23523 DB 140,242 ; mov %?,%edx
23524 DB 66,81 ; rex.X push %rcx
23525 DB 140,242 ; mov %?,%edx
23526 DB 66,81 ; rex.X push %rcx
23527 DB 140,242 ; mov %?,%edx
23528 DB 66,81 ; rex.X push %rcx
23529 DB 140,242 ; mov %?,%edx
23530 DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi
23531 DB 63 ; (bad)
23532 DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi
23533 DB 63 ; (bad)
23534 DB 248 ; clc
23535 DB 245 ; cmc
23536 DB 154 ; (bad)
23537 DB 64,248 ; rex clc
23538 DB 245 ; cmc
23539 DB 154 ; (bad)
23540 DB 64,248 ; rex clc
23541 DB 245 ; cmc
23542 DB 154 ; (bad)
23543 DB 64,248 ; rex clc
23544 DB 245 ; cmc
23545 DB 154 ; (bad)
23546 DB 64,254 ; rex (bad)
23547 DB 210,221 ; rcr %cl,%ch
23548 DB 65,254 ; rex.B (bad)
23549 DB 210,221 ; rcr %cl,%ch
23550 DB 65,254 ; rex.B (bad)
23551 DB 210,221 ; rcr %cl,%ch
23552 DB 65,254 ; rex.B (bad)
23553 DB 210,221 ; rcr %cl,%ch
23554 DB 65,0,0 ; add %al,(%r8)
23555 DB 0,75,0 ; add %cl,0x0(%rbx)
23556 DB 0,0 ; add %al,(%rax)
23557 DB 75,0,0 ; rex.WXB add %al,(%r8)
23558 DB 0,75,0 ; add %cl,0x0(%rbx)
23559 DB 0,0 ; add %al,(%rax)
23560 DB 75,0,0 ; rex.WXB add %al,(%r8)
23561 DB 0,52,0 ; add %dh,(%rax,%rax,1)
23562 DB 0,0 ; add %al,(%rax)
23563 DB 52,0 ; xor $0x0,%al
23564 DB 0,0 ; add %al,(%rax)
23565 DB 52,0 ; xor $0x0,%al
23566 DB 0,0 ; add %al,(%rax)
23567 DB 52,255 ; xor $0xff,%al
23568 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023569 DB 127,0 ; jg 53a4 <.literal16+0x654>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023570 DB 255 ; (bad)
23571 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023572 DB 127,0 ; jg 53a8 <.literal16+0x658>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023573 DB 255 ; (bad)
23574 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023575 DB 127,0 ; jg 53ac <.literal16+0x65c>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023576 DB 255 ; (bad)
23577 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023578 DB 127,0 ; jg 53b0 <.literal16+0x660>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023579 DB 0,0 ; add %al,(%rax)
23580 DB 0,63 ; add %bh,(%rdi)
23581 DB 0,0 ; add %al,(%rax)
23582 DB 0,63 ; add %bh,(%rdi)
23583 DB 0,0 ; add %al,(%rax)
23584 DB 0,63 ; add %bh,(%rdi)
23585 DB 0,0 ; add %al,(%rax)
23586 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040023587 DB 119,115 ; ja 5435 <.literal16+0x6e5>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023588 DB 248 ; clc
23589 DB 194,119,115 ; retq $0x7377
23590 DB 248 ; clc
23591 DB 194,119,115 ; retq $0x7377
23592 DB 248 ; clc
23593 DB 194,119,115 ; retq $0x7377
23594 DB 248 ; clc
23595 DB 194,117,191 ; retq $0xbf75
23596 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
23597 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023598 DB 117,191 ; jne 5399 <.literal16+0x649>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023599 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
23600 DB 63 ; (bad)
23601 DB 249 ; stc
23602 DB 68,180,62 ; rex.R mov $0x3e,%spl
23603 DB 249 ; stc
23604 DB 68,180,62 ; rex.R mov $0x3e,%spl
23605 DB 249 ; stc
23606 DB 68,180,62 ; rex.R mov $0x3e,%spl
23607 DB 249 ; stc
23608 DB 68,180,62 ; rex.R mov $0x3e,%spl
23609 DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9
Mike Klein8ca33562017-05-23 08:07:43 -040023610 DB 233,220,63,163,233 ; jmpq ffffffffe9a393da <_sk_callback_sse2+0xffffffffe9a34744>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023611 DB 220,63 ; fdivrl (%rdi)
23612 DB 0,0 ; add %al,(%rax)
23613 DB 128,63,0 ; cmpb $0x0,(%rdi)
23614 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23615 DB 63 ; (bad)
23616 DB 0,0 ; add %al,(%rax)
23617 DB 128,63,81 ; cmpb $0x51,(%rdi)
23618 DB 140,242 ; mov %?,%edx
23619 DB 66,81 ; rex.X push %rcx
23620 DB 140,242 ; mov %?,%edx
23621 DB 66,81 ; rex.X push %rcx
23622 DB 140,242 ; mov %?,%edx
23623 DB 66,81 ; rex.X push %rcx
23624 DB 140,242 ; mov %?,%edx
23625 DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi
23626 DB 63 ; (bad)
23627 DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi
23628 DB 63 ; (bad)
23629 DB 248 ; clc
23630 DB 245 ; cmc
23631 DB 154 ; (bad)
23632 DB 64,248 ; rex clc
23633 DB 245 ; cmc
23634 DB 154 ; (bad)
23635 DB 64,248 ; rex clc
23636 DB 245 ; cmc
23637 DB 154 ; (bad)
23638 DB 64,248 ; rex clc
23639 DB 245 ; cmc
23640 DB 154 ; (bad)
23641 DB 64,254 ; rex (bad)
23642 DB 210,221 ; rcr %cl,%ch
23643 DB 65,254 ; rex.B (bad)
23644 DB 210,221 ; rcr %cl,%ch
23645 DB 65,254 ; rex.B (bad)
23646 DB 210,221 ; rcr %cl,%ch
23647 DB 65,254 ; rex.B (bad)
23648 DB 210,221 ; rcr %cl,%ch
23649 DB 65,0,0 ; add %al,(%r8)
23650 DB 0,75,0 ; add %cl,0x0(%rbx)
23651 DB 0,0 ; add %al,(%rax)
23652 DB 75,0,0 ; rex.WXB add %al,(%r8)
23653 DB 0,75,0 ; add %cl,0x0(%rbx)
23654 DB 0,0 ; add %al,(%rax)
23655 DB 75,0,0 ; rex.WXB add %al,(%r8)
23656 DB 0,52,0 ; add %dh,(%rax,%rax,1)
23657 DB 0,0 ; add %al,(%rax)
23658 DB 52,0 ; xor $0x0,%al
23659 DB 0,0 ; add %al,(%rax)
23660 DB 52,0 ; xor $0x0,%al
23661 DB 0,0 ; add %al,(%rax)
23662 DB 52,255 ; xor $0xff,%al
23663 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023664 DB 127,0 ; jg 5474 <.literal16+0x724>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023665 DB 255 ; (bad)
23666 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023667 DB 127,0 ; jg 5478 <.literal16+0x728>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023668 DB 255 ; (bad)
23669 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023670 DB 127,0 ; jg 547c <.literal16+0x72c>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023671 DB 255 ; (bad)
23672 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023673 DB 127,0 ; jg 5480 <.literal16+0x730>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023674 DB 0,0 ; add %al,(%rax)
23675 DB 0,63 ; add %bh,(%rdi)
23676 DB 0,0 ; add %al,(%rax)
23677 DB 0,63 ; add %bh,(%rdi)
23678 DB 0,0 ; add %al,(%rax)
23679 DB 0,63 ; add %bh,(%rdi)
23680 DB 0,0 ; add %al,(%rax)
23681 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040023682 DB 119,115 ; ja 5505 <.literal16+0x7b5>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023683 DB 248 ; clc
23684 DB 194,119,115 ; retq $0x7377
23685 DB 248 ; clc
23686 DB 194,119,115 ; retq $0x7377
23687 DB 248 ; clc
23688 DB 194,119,115 ; retq $0x7377
23689 DB 248 ; clc
23690 DB 194,117,191 ; retq $0xbf75
23691 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
23692 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023693 DB 117,191 ; jne 5469 <.literal16+0x719>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023694 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
23695 DB 63 ; (bad)
23696 DB 249 ; stc
23697 DB 68,180,62 ; rex.R mov $0x3e,%spl
23698 DB 249 ; stc
23699 DB 68,180,62 ; rex.R mov $0x3e,%spl
23700 DB 249 ; stc
23701 DB 68,180,62 ; rex.R mov $0x3e,%spl
23702 DB 249 ; stc
23703 DB 68,180,62 ; rex.R mov $0x3e,%spl
23704 DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9
Mike Klein8ca33562017-05-23 08:07:43 -040023705 DB 233,220,63,163,233 ; jmpq ffffffffe9a394aa <_sk_callback_sse2+0xffffffffe9a34814>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023706 DB 220,63 ; fdivrl (%rdi)
23707 DB 0,0 ; add %al,(%rax)
23708 DB 128,63,0 ; cmpb $0x0,(%rdi)
23709 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23710 DB 63 ; (bad)
23711 DB 0,0 ; add %al,(%rax)
23712 DB 128,63,81 ; cmpb $0x51,(%rdi)
23713 DB 140,242 ; mov %?,%edx
23714 DB 66,81 ; rex.X push %rcx
23715 DB 140,242 ; mov %?,%edx
23716 DB 66,81 ; rex.X push %rcx
23717 DB 140,242 ; mov %?,%edx
23718 DB 66,81 ; rex.X push %rcx
23719 DB 140,242 ; mov %?,%edx
23720 DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi
23721 DB 63 ; (bad)
23722 DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi
23723 DB 63 ; (bad)
23724 DB 248 ; clc
23725 DB 245 ; cmc
23726 DB 154 ; (bad)
23727 DB 64,248 ; rex clc
23728 DB 245 ; cmc
23729 DB 154 ; (bad)
23730 DB 64,248 ; rex clc
23731 DB 245 ; cmc
23732 DB 154 ; (bad)
23733 DB 64,248 ; rex clc
23734 DB 245 ; cmc
23735 DB 154 ; (bad)
23736 DB 64,254 ; rex (bad)
23737 DB 210,221 ; rcr %cl,%ch
23738 DB 65,254 ; rex.B (bad)
23739 DB 210,221 ; rcr %cl,%ch
23740 DB 65,254 ; rex.B (bad)
23741 DB 210,221 ; rcr %cl,%ch
23742 DB 65,254 ; rex.B (bad)
23743 DB 210,221 ; rcr %cl,%ch
23744 DB 65,0,0 ; add %al,(%r8)
23745 DB 0,75,0 ; add %cl,0x0(%rbx)
23746 DB 0,0 ; add %al,(%rax)
23747 DB 75,0,0 ; rex.WXB add %al,(%r8)
23748 DB 0,75,0 ; add %cl,0x0(%rbx)
23749 DB 0,0 ; add %al,(%rax)
23750 DB 75,0,0 ; rex.WXB add %al,(%r8)
23751 DB 0,52,0 ; add %dh,(%rax,%rax,1)
23752 DB 0,0 ; add %al,(%rax)
23753 DB 52,0 ; xor $0x0,%al
23754 DB 0,0 ; add %al,(%rax)
23755 DB 52,0 ; xor $0x0,%al
23756 DB 0,0 ; add %al,(%rax)
23757 DB 52,255 ; xor $0xff,%al
23758 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023759 DB 127,0 ; jg 5544 <.literal16+0x7f4>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023760 DB 255 ; (bad)
23761 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023762 DB 127,0 ; jg 5548 <.literal16+0x7f8>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023763 DB 255 ; (bad)
23764 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023765 DB 127,0 ; jg 554c <.literal16+0x7fc>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023766 DB 255 ; (bad)
23767 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023768 DB 127,0 ; jg 5550 <.literal16+0x800>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023769 DB 0,0 ; add %al,(%rax)
23770 DB 0,63 ; add %bh,(%rdi)
23771 DB 0,0 ; add %al,(%rax)
23772 DB 0,63 ; add %bh,(%rdi)
23773 DB 0,0 ; add %al,(%rax)
23774 DB 0,63 ; add %bh,(%rdi)
23775 DB 0,0 ; add %al,(%rax)
23776 DB 0,63 ; add %bh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040023777 DB 119,115 ; ja 55d5 <.literal16+0x885>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023778 DB 248 ; clc
23779 DB 194,119,115 ; retq $0x7377
23780 DB 248 ; clc
23781 DB 194,119,115 ; retq $0x7377
23782 DB 248 ; clc
23783 DB 194,119,115 ; retq $0x7377
23784 DB 248 ; clc
23785 DB 194,117,191 ; retq $0xbf75
23786 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
23787 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040023788 DB 117,191 ; jne 5539 <.literal16+0x7e9>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023789 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi
23790 DB 63 ; (bad)
23791 DB 249 ; stc
23792 DB 68,180,62 ; rex.R mov $0x3e,%spl
23793 DB 249 ; stc
23794 DB 68,180,62 ; rex.R mov $0x3e,%spl
23795 DB 249 ; stc
23796 DB 68,180,62 ; rex.R mov $0x3e,%spl
23797 DB 249 ; stc
23798 DB 68,180,62 ; rex.R mov $0x3e,%spl
23799 DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9
Mike Klein8ca33562017-05-23 08:07:43 -040023800 DB 233,220,63,163,233 ; jmpq ffffffffe9a3957a <_sk_callback_sse2+0xffffffffe9a348e4>
Mike Kleinb4bbc642017-04-27 08:59:55 -040023801 DB 220,63 ; fdivrl (%rdi)
23802 DB 0,0 ; add %al,(%rax)
23803 DB 128,63,0 ; cmpb $0x0,(%rdi)
23804 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23805 DB 63 ; (bad)
23806 DB 0,0 ; add %al,(%rax)
23807 DB 128,63,81 ; cmpb $0x51,(%rdi)
23808 DB 140,242 ; mov %?,%edx
23809 DB 66,81 ; rex.X push %rcx
23810 DB 140,242 ; mov %?,%edx
23811 DB 66,81 ; rex.X push %rcx
23812 DB 140,242 ; mov %?,%edx
23813 DB 66,81 ; rex.X push %rcx
23814 DB 140,242 ; mov %?,%edx
23815 DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi
23816 DB 63 ; (bad)
23817 DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi
23818 DB 63 ; (bad)
23819 DB 248 ; clc
23820 DB 245 ; cmc
23821 DB 154 ; (bad)
23822 DB 64,248 ; rex clc
23823 DB 245 ; cmc
23824 DB 154 ; (bad)
23825 DB 64,248 ; rex clc
23826 DB 245 ; cmc
23827 DB 154 ; (bad)
23828 DB 64,248 ; rex clc
23829 DB 245 ; cmc
23830 DB 154 ; (bad)
23831 DB 64,254 ; rex (bad)
23832 DB 210,221 ; rcr %cl,%ch
23833 DB 65,254 ; rex.B (bad)
23834 DB 210,221 ; rcr %cl,%ch
23835 DB 65,254 ; rex.B (bad)
23836 DB 210,221 ; rcr %cl,%ch
23837 DB 65,254 ; rex.B (bad)
23838 DB 210,221 ; rcr %cl,%ch
23839 DB 65,0,0 ; add %al,(%r8)
23840 DB 0,75,0 ; add %cl,0x0(%rbx)
23841 DB 0,0 ; add %al,(%rax)
23842 DB 75,0,0 ; rex.WXB add %al,(%r8)
23843 DB 0,75,0 ; add %cl,0x0(%rbx)
23844 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023845 DB 75,0,0 ; rex.WXB add %al,(%r8)
23846 DB 200,66,0,0 ; enterq $0x42,$0x0
23847 DB 200,66,0,0 ; enterq $0x42,$0x0
23848 DB 200,66,0,0 ; enterq $0x42,$0x0
23849 DB 200,66,0,0 ; enterq $0x42,$0x0
Mike Klein8ca33562017-05-23 08:07:43 -040023850 DB 127,67 ; jg 5657 <.literal16+0x907>
Mike Kleinfe560a82017-05-01 12:56:35 -040023851 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023852 DB 127,67 ; jg 565b <.literal16+0x90b>
Mike Kleinfe560a82017-05-01 12:56:35 -040023853 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023854 DB 127,67 ; jg 565f <.literal16+0x90f>
Mike Kleinfe560a82017-05-01 12:56:35 -040023855 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023856 DB 127,67 ; jg 5663 <.literal16+0x913>
Mike Kleinfe560a82017-05-01 12:56:35 -040023857 DB 0,0 ; add %al,(%rax)
23858 DB 0,195 ; add %al,%bl
23859 DB 0,0 ; add %al,(%rax)
23860 DB 0,195 ; add %al,%bl
23861 DB 0,0 ; add %al,(%rax)
23862 DB 0,195 ; add %al,%bl
23863 DB 0,0 ; add %al,(%rax)
23864 DB 0,195 ; add %al,%bl
23865 DB 0,0 ; add %al,(%rax)
23866 DB 128,65,0,0 ; addb $0x0,0x0(%rcx)
23867 DB 128,65,0,0 ; addb $0x0,0x0(%rcx)
23868 DB 128,65,0,0 ; addb $0x0,0x0(%rcx)
23869 DB 128,65,203,61 ; addb $0x3d,-0x35(%rcx)
23870 DB 13,60,203,61,13 ; or $0xd3dcb3c,%eax
23871 DB 60,203 ; cmp $0xcb,%al
23872 DB 61,13,60,203,61 ; cmp $0x3dcb3c0d,%eax
23873 DB 13,60,111,18,3 ; or $0x3126f3c,%eax
23874 DB 59,111,18 ; cmp 0x12(%rdi),%ebp
23875 DB 3,59 ; add (%rbx),%edi
23876 DB 111 ; outsl %ds:(%rsi),(%dx)
23877 DB 18,3 ; adc (%rbx),%al
23878 DB 59,111,18 ; cmp 0x12(%rdi),%ebp
23879 DB 3,59 ; add (%rbx),%edi
23880 DB 10,215 ; or %bh,%dl
23881 DB 163,59,10,215,163,59,10,215,163 ; movabs %eax,0xa3d70a3ba3d70a3b
23882 DB 59,10 ; cmp (%rdx),%ecx
23883 DB 215 ; xlat %ds:(%rbx)
23884 DB 163,59,194,24,17,60,194,24,17 ; movabs %eax,0x1118c23c1118c23b
23885 DB 60,194 ; cmp $0xc2,%al
23886 DB 24,17 ; sbb %dl,(%rcx)
23887 DB 60,194 ; cmp $0xc2,%al
23888 DB 24,17 ; sbb %dl,(%rcx)
23889 DB 60,203 ; cmp $0xcb,%al
23890 DB 61,13,190,203,61 ; cmp $0x3dcbbe0d,%eax
23891 DB 13,190,203,61,13 ; or $0xd3dcbbe,%eax
23892 DB 190,203,61,13,190 ; mov $0xbe0d3dcb,%esi
23893 DB 80 ; push %rax
23894 DB 128,3,62 ; addb $0x3e,(%rbx)
23895 DB 80 ; push %rax
23896 DB 128,3,62 ; addb $0x3e,(%rbx)
23897 DB 80 ; push %rax
23898 DB 128,3,62 ; addb $0x3e,(%rbx)
23899 DB 80 ; push %rax
23900 DB 128,3,62 ; addb $0x3e,(%rbx)
23901 DB 31 ; (bad)
23902 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040023903 DB 118,63 ; jbe 56e3 <.literal16+0x993>
Mike Kleinfe560a82017-05-01 12:56:35 -040023904 DB 31 ; (bad)
23905 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040023906 DB 118,63 ; jbe 56e7 <.literal16+0x997>
Mike Kleinfe560a82017-05-01 12:56:35 -040023907 DB 31 ; (bad)
23908 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040023909 DB 118,63 ; jbe 56eb <.literal16+0x99b>
Mike Kleinfe560a82017-05-01 12:56:35 -040023910 DB 31 ; (bad)
23911 DB 215 ; xlat %ds:(%rbx)
Mike Klein8ca33562017-05-23 08:07:43 -040023912 DB 118,63 ; jbe 56ef <.literal16+0x99f>
Mike Kleinfe560a82017-05-01 12:56:35 -040023913 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
23914 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
23915 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
23916 DB 246,64,83,63 ; testb $0x3f,0x53(%rax)
23917 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23918 DB 128,59,129 ; cmpb $0x81,(%rbx)
23919 DB 128,128,59,129,128,128,59 ; addb $0x3b,-0x7f7f7ec5(%rax)
23920 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23921 DB 128,59,0 ; cmpb $0x0,(%rbx)
23922 DB 0,127,67 ; add %bh,0x43(%rdi)
23923 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023924 DB 127,67 ; jg 572b <.literal16+0x9db>
Mike Kleinfe560a82017-05-01 12:56:35 -040023925 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023926 DB 127,67 ; jg 572f <.literal16+0x9df>
Mike Kleinfe560a82017-05-01 12:56:35 -040023927 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023928 DB 127,67 ; jg 5733 <.literal16+0x9e3>
Mike Kleinfe560a82017-05-01 12:56:35 -040023929 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23930 DB 128,59,129 ; cmpb $0x81,(%rbx)
23931 DB 128,128,59,0,0,128,63 ; addb $0x3f,-0x7fffffc5(%rax)
23932 DB 0,0 ; add %al,(%rax)
23933 DB 128,63,0 ; cmpb $0x0,(%rdi)
23934 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23935 DB 63 ; (bad)
23936 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23937 DB 128,59,129 ; cmpb $0x81,(%rbx)
23938 DB 128,128,59,0,0,128,63 ; addb $0x3f,-0x7fffffc5(%rax)
23939 DB 0,0 ; add %al,(%rax)
23940 DB 128,63,0 ; cmpb $0x0,(%rdi)
23941 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
23942 DB 63 ; (bad)
23943 DB 255,0 ; incl (%rax)
Mike Klein0aa742f2017-04-27 13:36:57 -040023944 DB 0,0 ; add %al,(%rax)
23945 DB 255,0 ; incl (%rax)
23946 DB 0,0 ; add %al,(%rax)
23947 DB 255,0 ; incl (%rax)
23948 DB 0,0 ; add %al,(%rax)
23949 DB 255,0 ; incl (%rax)
23950 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023951 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
23952 DB 128,59,129 ; cmpb $0x81,(%rbx)
23953 DB 128,128,59,0,248,0,0 ; addb $0x0,0xf8003b(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040023954 DB 0,248 ; add %bh,%al
Mike Klein0aa742f2017-04-27 13:36:57 -040023955 DB 0,0 ; add %al,(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040023956 DB 0,248 ; add %bh,%al
Mike Klein0aa742f2017-04-27 13:36:57 -040023957 DB 0,0 ; add %al,(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040023958 DB 0,248 ; add %bh,%al
Mike Klein0aa742f2017-04-27 13:36:57 -040023959 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023960 DB 8,33 ; or %ah,(%rcx)
23961 DB 132,55 ; test %dh,(%rdi)
23962 DB 8,33 ; or %ah,(%rcx)
23963 DB 132,55 ; test %dh,(%rdi)
23964 DB 8,33 ; or %ah,(%rcx)
23965 DB 132,55 ; test %dh,(%rdi)
23966 DB 8,33 ; or %ah,(%rcx)
23967 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040023968 DB 224,7 ; loopne 5779 <.literal16+0xa29>
Mike Klein0aa742f2017-04-27 13:36:57 -040023969 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023970 DB 224,7 ; loopne 577d <.literal16+0xa2d>
Mike Klein0aa742f2017-04-27 13:36:57 -040023971 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023972 DB 224,7 ; loopne 5781 <.literal16+0xa31>
Mike Klein0aa742f2017-04-27 13:36:57 -040023973 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040023974 DB 224,7 ; loopne 5785 <.literal16+0xa35>
Mike Klein0aa742f2017-04-27 13:36:57 -040023975 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023976 DB 33,8 ; and %ecx,(%rax)
23977 DB 2,58 ; add (%rdx),%bh
23978 DB 33,8 ; and %ecx,(%rax)
23979 DB 2,58 ; add (%rdx),%bh
23980 DB 33,8 ; and %ecx,(%rax)
23981 DB 2,58 ; add (%rdx),%bh
23982 DB 33,8 ; and %ecx,(%rax)
23983 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040023984 DB 31 ; (bad)
23985 DB 0,0 ; add %al,(%rax)
23986 DB 0,31 ; add %bl,(%rdi)
23987 DB 0,0 ; add %al,(%rax)
23988 DB 0,31 ; add %bl,(%rdi)
23989 DB 0,0 ; add %al,(%rax)
23990 DB 0,31 ; add %bl,(%rdi)
23991 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023992 DB 0,8 ; add %cl,(%rax)
23993 DB 33,4,61,8,33,4,61 ; and %eax,0x3d042108(,%rdi,1)
23994 DB 8,33 ; or %ah,(%rcx)
23995 DB 4,61 ; add $0x3d,%al
23996 DB 8,33 ; or %ah,(%rcx)
23997 DB 4,61 ; add $0x3d,%al
Mike Klein308e6242017-04-27 13:56:33 -040023998 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040023999 DB 128,63,0 ; cmpb $0x0,(%rdi)
24000 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24001 DB 63 ; (bad)
24002 DB 0,0 ; add %al,(%rax)
24003 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Klein308e6242017-04-27 13:56:33 -040024004 DB 248 ; clc
24005 DB 0,0 ; add %al,(%rax)
24006 DB 0,248 ; add %bh,%al
24007 DB 0,0 ; add %al,(%rax)
24008 DB 0,248 ; add %bh,%al
24009 DB 0,0 ; add %al,(%rax)
24010 DB 0,248 ; add %bh,%al
24011 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024012 DB 8,33 ; or %ah,(%rcx)
24013 DB 132,55 ; test %dh,(%rdi)
24014 DB 8,33 ; or %ah,(%rcx)
24015 DB 132,55 ; test %dh,(%rdi)
24016 DB 8,33 ; or %ah,(%rcx)
24017 DB 132,55 ; test %dh,(%rdi)
24018 DB 8,33 ; or %ah,(%rcx)
24019 DB 132,55 ; test %dh,(%rdi)
Mike Klein8ca33562017-05-23 08:07:43 -040024020 DB 224,7 ; loopne 57e9 <.literal16+0xa99>
Mike Klein308e6242017-04-27 13:56:33 -040024021 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024022 DB 224,7 ; loopne 57ed <.literal16+0xa9d>
Mike Klein308e6242017-04-27 13:56:33 -040024023 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024024 DB 224,7 ; loopne 57f1 <.literal16+0xaa1>
Mike Klein308e6242017-04-27 13:56:33 -040024025 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024026 DB 224,7 ; loopne 57f5 <.literal16+0xaa5>
Mike Klein308e6242017-04-27 13:56:33 -040024027 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024028 DB 33,8 ; and %ecx,(%rax)
24029 DB 2,58 ; add (%rdx),%bh
24030 DB 33,8 ; and %ecx,(%rax)
24031 DB 2,58 ; add (%rdx),%bh
24032 DB 33,8 ; and %ecx,(%rax)
24033 DB 2,58 ; add (%rdx),%bh
24034 DB 33,8 ; and %ecx,(%rax)
24035 DB 2,58 ; add (%rdx),%bh
Mike Klein308e6242017-04-27 13:56:33 -040024036 DB 31 ; (bad)
24037 DB 0,0 ; add %al,(%rax)
24038 DB 0,31 ; add %bl,(%rdi)
24039 DB 0,0 ; add %al,(%rax)
24040 DB 0,31 ; add %bl,(%rdi)
24041 DB 0,0 ; add %al,(%rax)
24042 DB 0,31 ; add %bl,(%rdi)
24043 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024044 DB 0,8 ; add %cl,(%rax)
24045 DB 33,4,61,8,33,4,61 ; and %eax,0x3d042108(,%rdi,1)
24046 DB 8,33 ; or %ah,(%rcx)
24047 DB 4,61 ; add $0x3d,%al
24048 DB 8,33 ; or %ah,(%rcx)
24049 DB 4,61 ; add $0x3d,%al
Mike Klein308e6242017-04-27 13:56:33 -040024050 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024051 DB 128,63,0 ; cmpb $0x0,(%rdi)
24052 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24053 DB 63 ; (bad)
24054 DB 0,0 ; add %al,(%rax)
24055 DB 128,63,0 ; cmpb $0x0,(%rdi)
24056 DB 0,248 ; add %bh,%al
24057 DB 65,0,0 ; add %al,(%r8)
24058 DB 248 ; clc
24059 DB 65,0,0 ; add %al,(%r8)
24060 DB 248 ; clc
24061 DB 65,0,0 ; add %al,(%r8)
24062 DB 248 ; clc
24063 DB 65,0,0 ; add %al,(%r8)
Mike Klein8ca33562017-05-23 08:07:43 -040024064 DB 124,66 ; jl 5886 <.literal16+0xb36>
Mike Kleinfe560a82017-05-01 12:56:35 -040024065 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024066 DB 124,66 ; jl 588a <.literal16+0xb3a>
Mike Kleinfe560a82017-05-01 12:56:35 -040024067 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024068 DB 124,66 ; jl 588e <.literal16+0xb3e>
Mike Kleinfe560a82017-05-01 12:56:35 -040024069 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024070 DB 124,66 ; jl 5892 <.literal16+0xb42>
Mike Kleinfe560a82017-05-01 12:56:35 -040024071 DB 0,240 ; add %dh,%al
24072 DB 0,0 ; add %al,(%rax)
24073 DB 0,240 ; add %dh,%al
24074 DB 0,0 ; add %al,(%rax)
24075 DB 0,240 ; add %dh,%al
24076 DB 0,0 ; add %al,(%rax)
24077 DB 0,240 ; add %dh,%al
24078 DB 0,0 ; add %al,(%rax)
24079 DB 137,136,136,55,137,136 ; mov %ecx,-0x7776c878(%rax)
24080 DB 136,55 ; mov %dh,(%rdi)
24081 DB 137,136,136,55,137,136 ; mov %ecx,-0x7776c878(%rax)
24082 DB 136,55 ; mov %dh,(%rdi)
24083 DB 0,15 ; add %cl,(%rdi)
24084 DB 0,0 ; add %al,(%rax)
24085 DB 0,15 ; add %cl,(%rdi)
24086 DB 0,0 ; add %al,(%rax)
24087 DB 0,15 ; add %cl,(%rdi)
24088 DB 0,0 ; add %al,(%rax)
24089 DB 0,15 ; add %cl,(%rdi)
24090 DB 0,0 ; add %al,(%rax)
24091 DB 137,136,136,57,137,136 ; mov %ecx,-0x7776c678(%rax)
24092 DB 136,57 ; mov %bh,(%rcx)
24093 DB 137,136,136,57,137,136 ; mov %ecx,-0x7776c678(%rax)
24094 DB 136,57 ; mov %bh,(%rcx)
Mike Klein308e6242017-04-27 13:56:33 -040024095 DB 240,0,0 ; lock add %al,(%rax)
24096 DB 0,240 ; add %dh,%al
24097 DB 0,0 ; add %al,(%rax)
24098 DB 0,240 ; add %dh,%al
24099 DB 0,0 ; add %al,(%rax)
24100 DB 0,240 ; add %dh,%al
24101 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024102 DB 0,137,136,136,59,137 ; add %cl,-0x76c47778(%rcx)
24103 DB 136,136,59,137,136,136 ; mov %cl,-0x777776c5(%rax)
24104 DB 59,137,136,136,59,15 ; cmp 0xf3b8888(%rcx),%ecx
24105 DB 0,0 ; add %al,(%rax)
24106 DB 0,15 ; add %cl,(%rdi)
24107 DB 0,0 ; add %al,(%rax)
24108 DB 0,15 ; add %cl,(%rdi)
24109 DB 0,0 ; add %al,(%rax)
24110 DB 0,15 ; add %cl,(%rdi)
24111 DB 0,0 ; add %al,(%rax)
24112 DB 0,137,136,136,61,137 ; add %cl,-0x76c27778(%rcx)
24113 DB 136,136,61,137,136,136 ; mov %cl,-0x777776c3(%rax)
24114 DB 61,137,136,136,61 ; cmp $0x3d888889,%eax
24115 DB 0,240 ; add %dh,%al
24116 DB 0,0 ; add %al,(%rax)
24117 DB 0,240 ; add %dh,%al
24118 DB 0,0 ; add %al,(%rax)
24119 DB 0,240 ; add %dh,%al
24120 DB 0,0 ; add %al,(%rax)
24121 DB 0,240 ; add %dh,%al
24122 DB 0,0 ; add %al,(%rax)
24123 DB 137,136,136,55,137,136 ; mov %ecx,-0x7776c878(%rax)
24124 DB 136,55 ; mov %dh,(%rdi)
24125 DB 137,136,136,55,137,136 ; mov %ecx,-0x7776c878(%rax)
24126 DB 136,55 ; mov %dh,(%rdi)
Mike Klein308e6242017-04-27 13:56:33 -040024127 DB 0,15 ; add %cl,(%rdi)
24128 DB 0,0 ; add %al,(%rax)
24129 DB 0,15 ; add %cl,(%rdi)
24130 DB 0,0 ; add %al,(%rax)
24131 DB 0,15 ; add %cl,(%rdi)
24132 DB 0,0 ; add %al,(%rax)
24133 DB 0,15 ; add %cl,(%rdi)
24134 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024135 DB 137,136,136,57,137,136 ; mov %ecx,-0x7776c678(%rax)
24136 DB 136,57 ; mov %bh,(%rcx)
24137 DB 137,136,136,57,137,136 ; mov %ecx,-0x7776c678(%rax)
24138 DB 136,57 ; mov %bh,(%rcx)
Mike Klein308e6242017-04-27 13:56:33 -040024139 DB 240,0,0 ; lock add %al,(%rax)
24140 DB 0,240 ; add %dh,%al
24141 DB 0,0 ; add %al,(%rax)
24142 DB 0,240 ; add %dh,%al
24143 DB 0,0 ; add %al,(%rax)
24144 DB 0,240 ; add %dh,%al
24145 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024146 DB 0,137,136,136,59,137 ; add %cl,-0x76c47778(%rcx)
24147 DB 136,136,59,137,136,136 ; mov %cl,-0x777776c5(%rax)
24148 DB 59,137,136,136,59,15 ; cmp 0xf3b8888(%rcx),%ecx
Mike Klein308e6242017-04-27 13:56:33 -040024149 DB 0,0 ; add %al,(%rax)
24150 DB 0,15 ; add %cl,(%rdi)
24151 DB 0,0 ; add %al,(%rax)
24152 DB 0,15 ; add %cl,(%rdi)
24153 DB 0,0 ; add %al,(%rax)
24154 DB 0,15 ; add %cl,(%rdi)
24155 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024156 DB 0,137,136,136,61,137 ; add %cl,-0x76c27778(%rcx)
24157 DB 136,136,61,137,136,136 ; mov %cl,-0x777776c3(%rax)
24158 DB 61,137,136,136,61 ; cmp $0x3d888889,%eax
Mike Klein308e6242017-04-27 13:56:33 -040024159 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024160 DB 112,65 ; jo 5995 <.literal16+0xc45>
Mike Klein308e6242017-04-27 13:56:33 -040024161 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024162 DB 112,65 ; jo 5999 <.literal16+0xc49>
Mike Klein308e6242017-04-27 13:56:33 -040024163 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024164 DB 112,65 ; jo 599d <.literal16+0xc4d>
Mike Klein308e6242017-04-27 13:56:33 -040024165 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024166 DB 112,65 ; jo 59a1 <.literal16+0xc51>
Mike Kleinfe560a82017-05-01 12:56:35 -040024167 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040024168 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024169 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040024170 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024171 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040024172 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024173 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040024174 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024175 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
24176 DB 128,59,129 ; cmpb $0x81,(%rbx)
24177 DB 128,128,59,255,0,0,0 ; addb $0x0,0xff3b(%rax)
24178 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040024179 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024180 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040024181 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024182 DB 255,0 ; incl (%rax)
Mike Klein308e6242017-04-27 13:56:33 -040024183 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024184 DB 129,128,128,59,129,128,128,59,129,128; addl $0x80813b80,-0x7f7ec480(%rax)
24185 DB 128,59,129 ; cmpb $0x81,(%rbx)
24186 DB 128,128,59,0,0,127,67 ; addb $0x43,0x7f00003b(%rax)
Mike Klein308e6242017-04-27 13:56:33 -040024187 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024188 DB 127,67 ; jg 59eb <.literal16+0xc9b>
Mike Klein308e6242017-04-27 13:56:33 -040024189 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024190 DB 127,67 ; jg 59ef <.literal16+0xc9f>
Mike Klein308e6242017-04-27 13:56:33 -040024191 DB 0,0 ; add %al,(%rax)
Mike Klein8ca33562017-05-23 08:07:43 -040024192 DB 127,67 ; jg 59f3 <.literal16+0xca3>
Mike Klein0aa742f2017-04-27 13:36:57 -040024193 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040024194 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024195 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
24196 DB 0,0 ; add %al,(%rax)
24197 DB 0,0 ; add %al,(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040024198 DB 0,56 ; add %bh,(%rax)
24199 DB 0,0 ; add %al,(%rax)
24200 DB 0,56 ; add %bh,(%rax)
24201 DB 0,0 ; add %al,(%rax)
24202 DB 0,56 ; add %bh,(%rax)
24203 DB 0,0 ; add %al,(%rax)
24204 DB 0,56 ; add %bh,(%rax)
24205 DB 0,0 ; add %al,(%rax)
24206 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
24207 DB 0,0 ; add %al,(%rax)
24208 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
24209 DB 0,4,0 ; add %al,(%rax,%rax,1)
24210 DB 128,0,4 ; addb $0x4,(%rax)
24211 DB 0,128,0,4,0,128 ; add %al,-0x7ffffc00(%rax)
24212 DB 0,4,0 ; add %al,(%rax,%rax,1)
24213 DB 128,0,128 ; addb $0x80,(%rax)
24214 DB 0,0 ; add %al,(%rax)
24215 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
24216 DB 0,0 ; add %al,(%rax)
24217 DB 0,128,0,0,0,0 ; add %al,0x0(%rax)
24218 DB 0,56 ; add %bh,(%rax)
24219 DB 0,0 ; add %al,(%rax)
24220 DB 0,56 ; add %bh,(%rax)
24221 DB 0,0 ; add %al,(%rax)
24222 DB 0,56 ; add %bh,(%rax)
24223 DB 0,0 ; add %al,(%rax)
24224 DB 0,56 ; add %bh,(%rax)
24225 DB 0,0 ; add %al,(%rax)
24226 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
24227 DB 0,0 ; add %al,(%rax)
24228 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
24229 DB 0,4,0 ; add %al,(%rax,%rax,1)
24230 DB 128,0,4 ; addb $0x4,(%rax)
24231 DB 0,128,0,4,0,128 ; add %al,-0x7ffffc00(%rax)
24232 DB 0,4,0 ; add %al,(%rax,%rax,1)
24233 DB 128,0,0 ; addb $0x0,(%rax)
24234 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
24235 DB 0,0 ; add %al,(%rax)
24236 DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax)
24237 DB 0,0 ; add %al,(%rax)
24238 DB 128,56,0 ; cmpb $0x0,(%rax)
24239 DB 0,128,56,0,0,128 ; add %al,-0x7fffffc8(%rax)
24240 DB 56,0 ; cmp %al,(%rax)
24241 DB 0,128,56,0,64,254 ; add %al,-0x1bfffc8(%rax)
24242 DB 255,0 ; incl (%rax)
24243 DB 64,254 ; rex (bad)
24244 DB 255,0 ; incl (%rax)
24245 DB 64,254 ; rex (bad)
24246 DB 255,0 ; incl (%rax)
24247 DB 64,254 ; rex (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -040024248 DB 255,128,0,128,55,128 ; incl -0x7fc88000(%rax)
24249 DB 0,128,55,128,0,128 ; add %al,-0x7fff7fc9(%rax)
24250 DB 55 ; (bad)
24251 DB 128,0,128 ; addb $0x80,(%rax)
24252 DB 55 ; (bad)
24253 DB 128,0,128 ; addb $0x80,(%rax)
24254 DB 55 ; (bad)
24255 DB 128,0,128 ; addb $0x80,(%rax)
24256 DB 55 ; (bad)
24257 DB 128,0,128 ; addb $0x80,(%rax)
24258 DB 55 ; (bad)
24259 DB 128,0,128 ; addb $0x80,(%rax)
24260 DB 55 ; (bad)
24261 DB 0,0 ; add %al,(%rax)
24262 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinb4bbc642017-04-27 08:59:55 -040024263 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24264 DB 63 ; (bad)
24265 DB 0,0 ; add %al,(%rax)
24266 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinfe560a82017-05-01 12:56:35 -040024267 DB 255 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024268 DB 127,71 ; jg 5adb <.literal16+0xd8b>
Mike Kleinfe560a82017-05-01 12:56:35 -040024269 DB 0,255 ; add %bh,%bh
Mike Klein8ca33562017-05-23 08:07:43 -040024270 DB 127,71 ; jg 5adf <.literal16+0xd8f>
Mike Kleinfe560a82017-05-01 12:56:35 -040024271 DB 0,255 ; add %bh,%bh
Mike Klein8ca33562017-05-23 08:07:43 -040024272 DB 127,71 ; jg 5ae3 <.literal16+0xd93>
Mike Kleinfe560a82017-05-01 12:56:35 -040024273 DB 0,255 ; add %bh,%bh
Mike Klein8ca33562017-05-23 08:07:43 -040024274 DB 127,71 ; jg 5ae7 <.literal16+0xd97>
Mike Kleinfe560a82017-05-01 12:56:35 -040024275 DB 0,0 ; add %al,(%rax)
24276 DB 128,63,0 ; cmpb $0x0,(%rdi)
Mike Kleinb4bbc642017-04-27 08:59:55 -040024277 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24278 DB 63 ; (bad)
24279 DB 0,0 ; add %al,(%rax)
24280 DB 128,63,0 ; cmpb $0x0,(%rdi)
24281 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24282 DB 63 ; (bad)
24283 DB 0,0 ; add %al,(%rax)
24284 DB 128,63,0 ; cmpb $0x0,(%rdi)
24285 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24286 DB 63 ; (bad)
24287 DB 0,0 ; add %al,(%rax)
24288 DB 128,63,0 ; cmpb $0x0,(%rdi)
24289 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24290 DB 63 ; (bad)
24291 DB 0,0 ; add %al,(%rax)
24292 DB 128,63,0 ; cmpb $0x0,(%rdi)
24293 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24294 DB 63 ; (bad)
24295 DB 0,0 ; add %al,(%rax)
Mike Klein9f85d682017-05-23 07:52:01 -040024296 DB 128,63,0 ; cmpb $0x0,(%rdi)
24297 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24298 DB 63 ; (bad)
24299 DB 0,0 ; add %al,(%rax)
24300 DB 128,63,0 ; cmpb $0x0,(%rdi)
24301 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24302 DB 63 ; (bad)
24303 DB 0,0 ; add %al,(%rax)
24304 DB 128,63,0 ; cmpb $0x0,(%rdi)
24305 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24306 DB 63 ; (bad)
24307 DB 0,0 ; add %al,(%rax)
24308 DB 128,191,0,0,128,191,0 ; cmpb $0x0,-0x40800000(%rdi)
24309 DB 0,128,191,0,0,128 ; add %al,-0x7fffff41(%rax)
24310 DB 191,0,0,0,63 ; mov $0x3f000000,%edi
24311 DB 0,0 ; add %al,(%rax)
24312 DB 0,63 ; add %bh,(%rdi)
24313 DB 0,0 ; add %al,(%rax)
24314 DB 0,63 ; add %bh,(%rdi)
24315 DB 0,0 ; add %al,(%rax)
24316 DB 0,63 ; add %bh,(%rdi)
24317 DB 0,0 ; add %al,(%rax)
24318 DB 128,63,0 ; cmpb $0x0,(%rdi)
24319 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24320 DB 63 ; (bad)
24321 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024322 DB 128,63,208 ; cmpb $0xd0,(%rdi)
24323 DB 179,89 ; mov $0x59,%bl
24324 DB 62,208 ; ds (bad)
24325 DB 179,89 ; mov $0x59,%bl
24326 DB 62,208 ; ds (bad)
24327 DB 179,89 ; mov $0x59,%bl
24328 DB 62,208 ; ds (bad)
24329 DB 179,89 ; mov $0x59,%bl
24330 DB 62,89 ; ds pop %rcx
24331 DB 23 ; (bad)
24332 DB 55 ; (bad)
24333 DB 63 ; (bad)
24334 DB 89 ; pop %rcx
24335 DB 23 ; (bad)
24336 DB 55 ; (bad)
24337 DB 63 ; (bad)
24338 DB 89 ; pop %rcx
24339 DB 23 ; (bad)
24340 DB 55 ; (bad)
24341 DB 63 ; (bad)
24342 DB 89 ; pop %rcx
24343 DB 23 ; (bad)
24344 DB 55 ; (bad)
24345 DB 63 ; (bad)
24346 DB 152 ; cwtl
24347 DB 221,147,61,152,221,147 ; fstl -0x6c2267c3(%rbx)
24348 DB 61,152,221,147,61 ; cmp $0x3d93dd98,%eax
24349 DB 152 ; cwtl
Herb Derby4de13042017-05-15 10:49:39 -040024350 DB 221,147,61,1,0,0 ; fstl 0x13d(%rbx)
24351 DB 0,1 ; add %al,(%rcx)
24352 DB 0,0 ; add %al,(%rax)
24353 DB 0,1 ; add %al,(%rcx)
24354 DB 0,0 ; add %al,(%rax)
24355 DB 0,1 ; add %al,(%rcx)
24356 DB 0,0 ; add %al,(%rax)
24357 DB 0,111,43 ; add %ch,0x2b(%rdi)
24358 DB 231,187 ; out %eax,$0xbb
Herb Derby7eb86982017-05-02 19:04:39 -040024359 DB 111 ; outsl %ds:(%rsi),(%dx)
24360 DB 43,231 ; sub %edi,%esp
24361 DB 187,111,43,231,187 ; mov $0xbbe72b6f,%ebx
Herb Derby4de13042017-05-15 10:49:39 -040024362 DB 111 ; outsl %ds:(%rsi),(%dx)
24363 DB 43,231 ; sub %edi,%esp
24364 DB 187,159,215,202,60 ; mov $0x3ccad79f,%ebx
Herb Derby7eb86982017-05-02 19:04:39 -040024365 DB 159 ; lahf
24366 DB 215 ; xlat %ds:(%rbx)
24367 DB 202,60,159 ; lret $0x9f3c
24368 DB 215 ; xlat %ds:(%rbx)
24369 DB 202,60,159 ; lret $0x9f3c
24370 DB 215 ; xlat %ds:(%rbx)
Herb Derby7eb86982017-05-02 19:04:39 -040024371 DB 202,60,212 ; lret $0xd43c
24372 DB 100,84 ; fs push %rsp
24373 DB 189,212,100,84,189 ; mov $0xbd5464d4,%ebp
24374 DB 212 ; (bad)
24375 DB 100,84 ; fs push %rsp
24376 DB 189,212,100,84,189 ; mov $0xbd5464d4,%ebp
24377 DB 169,240,34,62,169 ; test $0xa93e22f0,%eax
24378 DB 240,34,62 ; lock and (%rsi),%bh
24379 DB 169,240,34,62,169 ; test $0xa93e22f0,%eax
24380 DB 240,34,62 ; lock and (%rsi),%bh
24381 DB 0,0 ; add %al,(%rax)
24382 DB 128,62,0 ; cmpb $0x0,(%rsi)
24383 DB 0,128,62,0,0,128 ; add %al,-0x7fffffc2(%rax)
24384 DB 62,0,0 ; add %al,%ds:(%rax)
24385 DB 128,62,0 ; cmpb $0x0,(%rsi)
24386 DB 0,0 ; add %al,(%rax)
24387 DB 63 ; (bad)
24388 DB 0,0 ; add %al,(%rax)
24389 DB 0,63 ; add %bh,(%rdi)
24390 DB 0,0 ; add %al,(%rax)
24391 DB 0,63 ; add %bh,(%rdi)
24392 DB 0,0 ; add %al,(%rax)
24393 DB 0,63 ; add %bh,(%rdi)
24394 DB 0,0 ; add %al,(%rax)
24395 DB 128,63,0 ; cmpb $0x0,(%rdi)
24396 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24397 DB 63 ; (bad)
24398 DB 0,0 ; add %al,(%rax)
24399 DB 128,63,0 ; cmpb $0x0,(%rdi)
24400 DB 0,0 ; add %al,(%rax)
Mike Kleinfe560a82017-05-01 12:56:35 -040024401 DB 63 ; (bad)
24402 DB 0,0 ; add %al,(%rax)
24403 DB 0,63 ; add %bh,(%rdi)
24404 DB 0,0 ; add %al,(%rax)
24405 DB 0,63 ; add %bh,(%rdi)
24406 DB 0,0 ; add %al,(%rax)
24407 DB 0,63 ; add %bh,(%rdi)
24408 DB 0,0 ; add %al,(%rax)
Mike Kleinb4bbc642017-04-27 08:59:55 -040024409 DB 128,63,0 ; cmpb $0x0,(%rdi)
24410 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
Mike Klein2229b572017-04-21 10:30:29 -040024411 DB 63 ; (bad)
Mike Kleinfe560a82017-05-01 12:56:35 -040024412 DB 0,0 ; add %al,(%rax)
24413 DB 128,63,0 ; cmpb $0x0,(%rdi)
24414 DB 0,0 ; add %al,(%rax)
24415 DB 191,0,0,0,191 ; mov $0xbf000000,%edi
24416 DB 0,0 ; add %al,(%rax)
24417 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
24418 DB 0,0 ; add %al,(%rax)
24419 DB 128,63,0 ; cmpb $0x0,(%rdi)
24420 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24421 DB 63 ; (bad)
24422 DB 0,0 ; add %al,(%rax)
24423 DB 128,63,0 ; cmpb $0x0,(%rdi)
24424 DB 0,0 ; add %al,(%rax)
24425 DB 63 ; (bad)
24426 DB 0,0 ; add %al,(%rax)
24427 DB 0,63 ; add %bh,(%rdi)
24428 DB 0,0 ; add %al,(%rax)
24429 DB 0,63 ; add %bh,(%rdi)
24430 DB 0,0 ; add %al,(%rax)
24431 DB 0,63 ; add %bh,(%rdi)
24432 DB 0,0 ; add %al,(%rax)
24433 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
24434 DB 0,0 ; add %al,(%rax)
24435 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
24436 DB 0,0 ; add %al,(%rax)
24437 DB 128,63,0 ; cmpb $0x0,(%rdi)
24438 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24439 DB 63 ; (bad)
24440 DB 0,0 ; add %al,(%rax)
24441 DB 128,63,0 ; cmpb $0x0,(%rdi)
24442 DB 0,0 ; add %al,(%rax)
24443 DB 63 ; (bad)
24444 DB 0,0 ; add %al,(%rax)
24445 DB 0,63 ; add %bh,(%rdi)
24446 DB 0,0 ; add %al,(%rax)
24447 DB 0,63 ; add %bh,(%rdi)
24448 DB 0,0 ; add %al,(%rax)
24449 DB 0,63 ; add %bh,(%rdi)
24450 DB 0,0 ; add %al,(%rax)
24451 DB 192,191,0,0,192,191,0 ; sarb $0x0,-0x40400000(%rdi)
24452 DB 0,192 ; add %al,%al
24453 DB 191,0,0,192,191 ; mov $0xbfc00000,%edi
24454 DB 0,0 ; add %al,(%rax)
24455 DB 128,63,0 ; cmpb $0x0,(%rdi)
24456 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24457 DB 63 ; (bad)
24458 DB 0,0 ; add %al,(%rax)
24459 DB 128,63,114 ; cmpb $0x72,(%rdi)
24460 DB 28,199 ; sbb $0xc7,%al
Mike Klein8ca33562017-05-23 08:07:43 -040024461 DB 62,114,28 ; jb,pt 5ca2 <.literal16+0xf52>
Mike Kleinfe560a82017-05-01 12:56:35 -040024462 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024463 DB 62,114,28 ; jb,pt 5ca6 <.literal16+0xf56>
Mike Kleinfe560a82017-05-01 12:56:35 -040024464 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024465 DB 62,114,28 ; jb,pt 5caa <.literal16+0xf5a>
Mike Kleinfe560a82017-05-01 12:56:35 -040024466 DB 199 ; (bad)
24467 DB 62,171 ; ds stos %eax,%es:(%rdi)
24468 DB 170 ; stos %al,%es:(%rdi)
24469 DB 170 ; stos %al,%es:(%rdi)
24470 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
24471 DB 171 ; stos %eax,%es:(%rdi)
24472 DB 170 ; stos %al,%es:(%rdi)
24473 DB 170 ; stos %al,%es:(%rdi)
24474 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
24475 DB 0,0 ; add %al,(%rax)
24476 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
24477 DB 0,0 ; add %al,(%rax)
24478 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
24479 DB 0,0 ; add %al,(%rax)
24480 DB 128,63,0 ; cmpb $0x0,(%rdi)
24481 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24482 DB 63 ; (bad)
24483 DB 0,0 ; add %al,(%rax)
24484 DB 128,63,85 ; cmpb $0x55,(%rdi)
24485 DB 85 ; push %rbp
24486 DB 149 ; xchg %eax,%ebp
24487 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
24488 DB 85 ; push %rbp
24489 DB 85 ; push %rbp
24490 DB 149 ; xchg %eax,%ebp
24491 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
24492 DB 0,0 ; add %al,(%rax)
24493 DB 192,63,0 ; sarb $0x0,(%rdi)
24494 DB 0,192 ; add %al,%al
24495 DB 63 ; (bad)
24496 DB 0,0 ; add %al,(%rax)
24497 DB 192,63,0 ; sarb $0x0,(%rdi)
24498 DB 0,192 ; add %al,%al
24499 DB 63 ; (bad)
24500 DB 0,0 ; add %al,(%rax)
24501 DB 0,63 ; add %bh,(%rdi)
24502 DB 0,0 ; add %al,(%rax)
24503 DB 0,63 ; add %bh,(%rdi)
24504 DB 0,0 ; add %al,(%rax)
24505 DB 0,63 ; add %bh,(%rdi)
24506 DB 0,0 ; add %al,(%rax)
24507 DB 0,63 ; add %bh,(%rdi)
24508 DB 57,142,99,61,57,142 ; cmp %ecx,-0x71c6c29d(%rsi)
Mike Klein8ca33562017-05-23 08:07:43 -040024509 DB 99,61,57,142,99,61 ; movslq 0x3d638e39(%rip),%edi # 3d63eb35 <_sk_callback_sse2+0x3d639e9f>
Mike Kleinfe560a82017-05-01 12:56:35 -040024510 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
24511 DB 0,63 ; add %bh,(%rdi)
24512 DB 0,0 ; add %al,(%rax)
24513 DB 0,63 ; add %bh,(%rdi)
24514 DB 0,0 ; add %al,(%rax)
24515 DB 0,63 ; add %bh,(%rdi)
24516 DB 0,0 ; add %al,(%rax)
24517 DB 0,63 ; add %bh,(%rdi)
24518 DB 85 ; push %rbp
24519 DB 85 ; push %rbp
24520 DB 149 ; xchg %eax,%ebp
24521 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
24522 DB 85 ; push %rbp
24523 DB 85 ; push %rbp
24524 DB 149 ; xchg %eax,%ebp
24525 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
24526 DB 0,0 ; add %al,(%rax)
24527 DB 192,63,0 ; sarb $0x0,(%rdi)
24528 DB 0,192 ; add %al,%al
24529 DB 63 ; (bad)
24530 DB 0,0 ; add %al,(%rax)
24531 DB 192,63,0 ; sarb $0x0,(%rdi)
24532 DB 0,192 ; add %al,%al
24533 DB 63 ; (bad)
24534 DB 57,142,99,61,57,142 ; cmp %ecx,-0x71c6c29d(%rsi)
Mike Klein8ca33562017-05-23 08:07:43 -040024535 DB 99,61,57,142,99,61 ; movslq 0x3d638e39(%rip),%edi # 3d63eb75 <_sk_callback_sse2+0x3d639edf>
Mike Kleinfe560a82017-05-01 12:56:35 -040024536 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
24537 DB 192,63,0 ; sarb $0x0,(%rdi)
24538 DB 0,192 ; add %al,%al
24539 DB 63 ; (bad)
24540 DB 0,0 ; add %al,(%rax)
24541 DB 192,63,0 ; sarb $0x0,(%rdi)
24542 DB 0,192 ; add %al,%al
24543 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024544 DB 114,28 ; jb 5d6e <.literal16+0x101e>
Mike Kleinfe560a82017-05-01 12:56:35 -040024545 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024546 DB 62,114,28 ; jb,pt 5d72 <.literal16+0x1022>
Mike Kleinfe560a82017-05-01 12:56:35 -040024547 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024548 DB 62,114,28 ; jb,pt 5d76 <.literal16+0x1026>
Mike Kleinfe560a82017-05-01 12:56:35 -040024549 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024550 DB 62,114,28 ; jb,pt 5d7a <.literal16+0x102a>
Mike Kleinfe560a82017-05-01 12:56:35 -040024551 DB 199 ; (bad)
24552 DB 62,171 ; ds stos %eax,%es:(%rdi)
24553 DB 170 ; stos %al,%es:(%rdi)
24554 DB 170 ; stos %al,%es:(%rdi)
24555 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
24556 DB 171 ; stos %eax,%es:(%rdi)
24557 DB 170 ; stos %al,%es:(%rdi)
24558 DB 170 ; stos %al,%es:(%rdi)
24559 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
24560 DB 0,0 ; add %al,(%rax)
24561 DB 192,191,0,0,192,191,0 ; sarb $0x0,-0x40400000(%rdi)
24562 DB 0,192 ; add %al,%al
24563 DB 191,0,0,192,191 ; mov $0xbfc00000,%edi
24564 DB 0,0 ; add %al,(%rax)
24565 DB 128,63,0 ; cmpb $0x0,(%rdi)
24566 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24567 DB 63 ; (bad)
24568 DB 0,0 ; add %al,(%rax)
24569 DB 128,63,114 ; cmpb $0x72,(%rdi)
24570 DB 28,199 ; sbb $0xc7,%al
Mike Klein8ca33562017-05-23 08:07:43 -040024571 DB 62,114,28 ; jb,pt 5db2 <.literal16+0x1062>
Mike Kleinfe560a82017-05-01 12:56:35 -040024572 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024573 DB 62,114,28 ; jb,pt 5db6 <.literal16+0x1066>
Mike Kleinfe560a82017-05-01 12:56:35 -040024574 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024575 DB 62,114,28 ; jb,pt 5dba <.literal16+0x106a>
Mike Kleinfe560a82017-05-01 12:56:35 -040024576 DB 199 ; (bad)
24577 DB 62,171 ; ds stos %eax,%es:(%rdi)
24578 DB 170 ; stos %al,%es:(%rdi)
24579 DB 170 ; stos %al,%es:(%rdi)
24580 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
24581 DB 171 ; stos %eax,%es:(%rdi)
24582 DB 170 ; stos %al,%es:(%rdi)
24583 DB 170 ; stos %al,%es:(%rdi)
24584 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
24585 DB 0,0 ; add %al,(%rax)
24586 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
24587 DB 0,0 ; add %al,(%rax)
24588 DB 0,191,0,0,0,191 ; add %bh,-0x41000000(%rdi)
24589 DB 0,0 ; add %al,(%rax)
24590 DB 128,63,0 ; cmpb $0x0,(%rdi)
24591 DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax)
24592 DB 63 ; (bad)
24593 DB 0,0 ; add %al,(%rax)
24594 DB 128,63,85 ; cmpb $0x55,(%rdi)
24595 DB 85 ; push %rbp
24596 DB 149 ; xchg %eax,%ebp
24597 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
24598 DB 85 ; push %rbp
24599 DB 85 ; push %rbp
24600 DB 149 ; xchg %eax,%ebp
24601 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
24602 DB 0,0 ; add %al,(%rax)
24603 DB 192,63,0 ; sarb $0x0,(%rdi)
24604 DB 0,192 ; add %al,%al
24605 DB 63 ; (bad)
24606 DB 0,0 ; add %al,(%rax)
24607 DB 192,63,0 ; sarb $0x0,(%rdi)
24608 DB 0,192 ; add %al,%al
24609 DB 63 ; (bad)
24610 DB 0,0 ; add %al,(%rax)
24611 DB 0,63 ; add %bh,(%rdi)
24612 DB 0,0 ; add %al,(%rax)
24613 DB 0,63 ; add %bh,(%rdi)
24614 DB 0,0 ; add %al,(%rax)
24615 DB 0,63 ; add %bh,(%rdi)
24616 DB 0,0 ; add %al,(%rax)
24617 DB 0,63 ; add %bh,(%rdi)
24618 DB 57,142,99,61,57,142 ; cmp %ecx,-0x71c6c29d(%rsi)
Mike Klein8ca33562017-05-23 08:07:43 -040024619 DB 99,61,57,142,99,61 ; movslq 0x3d638e39(%rip),%edi # 3d63ec45 <_sk_callback_sse2+0x3d639faf>
Mike Kleinfe560a82017-05-01 12:56:35 -040024620 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
24621 DB 0,63 ; add %bh,(%rdi)
24622 DB 0,0 ; add %al,(%rax)
24623 DB 0,63 ; add %bh,(%rdi)
24624 DB 0,0 ; add %al,(%rax)
24625 DB 0,63 ; add %bh,(%rdi)
24626 DB 0,0 ; add %al,(%rax)
24627 DB 0,63 ; add %bh,(%rdi)
24628 DB 85 ; push %rbp
24629 DB 85 ; push %rbp
24630 DB 149 ; xchg %eax,%ebp
24631 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
24632 DB 85 ; push %rbp
24633 DB 85 ; push %rbp
24634 DB 149 ; xchg %eax,%ebp
24635 DB 191,85,85,149,191 ; mov $0xbf955555,%edi
24636 DB 0,0 ; add %al,(%rax)
24637 DB 192,63,0 ; sarb $0x0,(%rdi)
24638 DB 0,192 ; add %al,%al
24639 DB 63 ; (bad)
24640 DB 0,0 ; add %al,(%rax)
24641 DB 192,63,0 ; sarb $0x0,(%rdi)
24642 DB 0,192 ; add %al,%al
24643 DB 63 ; (bad)
24644 DB 57,142,99,61,57,142 ; cmp %ecx,-0x71c6c29d(%rsi)
Mike Klein8ca33562017-05-23 08:07:43 -040024645 DB 99,61,57,142,99,61 ; movslq 0x3d638e39(%rip),%edi # 3d63ec85 <_sk_callback_sse2+0x3d639fef>
Mike Kleinfe560a82017-05-01 12:56:35 -040024646 DB 57,142,99,61,0,0 ; cmp %ecx,0x3d63(%rsi)
24647 DB 192,63,0 ; sarb $0x0,(%rdi)
24648 DB 0,192 ; add %al,%al
24649 DB 63 ; (bad)
24650 DB 0,0 ; add %al,(%rax)
24651 DB 192,63,0 ; sarb $0x0,(%rdi)
24652 DB 0,192 ; add %al,%al
24653 DB 63 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024654 DB 114,28 ; jb 5e7e <.literal16+0x112e>
Mike Kleinfe560a82017-05-01 12:56:35 -040024655 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024656 DB 62,114,28 ; jb,pt 5e82 <_sk_callback_sse2+0x11ec>
Mike Kleinfe560a82017-05-01 12:56:35 -040024657 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024658 DB 62,114,28 ; jb,pt 5e86 <_sk_callback_sse2+0x11f0>
Mike Kleinfe560a82017-05-01 12:56:35 -040024659 DB 199 ; (bad)
Mike Klein8ca33562017-05-23 08:07:43 -040024660 DB 62,114,28 ; jb,pt 5e8a <_sk_callback_sse2+0x11f4>
Mike Kleinfe560a82017-05-01 12:56:35 -040024661 DB 199 ; (bad)
24662 DB 62,171 ; ds stos %eax,%es:(%rdi)
24663 DB 170 ; stos %al,%es:(%rdi)
24664 DB 170 ; stos %al,%es:(%rdi)
24665 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
24666 DB 171 ; stos %eax,%es:(%rdi)
24667 DB 170 ; stos %al,%es:(%rdi)
24668 DB 170 ; stos %al,%es:(%rdi)
24669 DB 190,171,170,170,190 ; mov $0xbeaaaaab,%esi
Mike Klein5f804852017-03-29 19:29:13 -040024670ENDIF
Mike Kleind7e06ae2017-03-29 16:33:06 -040024671END