; Copyright 2017 Google Inc. ; ; Use of this source code is governed by a BSD-style license that can be ; found in the LICENSE file. ; This file is generated semi-automatically with this command: ; $ src/jumper/build_stages.py IFDEF RAX _text32 SEGMENT ALIGN(32) 'CODE' ALIGN 32 PUBLIC _sk_start_pipeline_hsw _sk_start_pipeline_hsw LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 86 ; push %rsi DB 87 ; push %rdi DB 83 ; push %rbx DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp DB 197,120,41,188,36,144,0,0,0 ; vmovaps %xmm15,0x90(%rsp) DB 197,120,41,180,36,128,0,0,0 ; vmovaps %xmm14,0x80(%rsp) DB 197,120,41,108,36,112 ; vmovaps %xmm13,0x70(%rsp) DB 197,120,41,100,36,96 ; vmovaps %xmm12,0x60(%rsp) DB 197,120,41,92,36,80 ; vmovaps %xmm11,0x50(%rsp) DB 197,120,41,84,36,64 ; vmovaps %xmm10,0x40(%rsp) DB 197,120,41,76,36,48 ; vmovaps %xmm9,0x30(%rsp) DB 197,120,41,68,36,32 ; vmovaps %xmm8,0x20(%rsp) DB 197,248,41,124,36,16 ; vmovaps %xmm7,0x10(%rsp) DB 197,248,41,52,36 ; vmovaps %xmm6,(%rsp) DB 77,137,205 ; mov %r9,%r13 DB 77,137,198 ; mov %r8,%r14 DB 72,137,203 ; mov %rcx,%rbx DB 72,137,214 ; mov %rdx,%rsi DB 72,173 ; lods %ds:(%rsi),%rax DB 73,137,199 ; mov %rax,%r15 DB 73,137,244 ; mov %rsi,%r12 DB 72,141,67,8 ; lea 0x8(%rbx),%rax DB 76,57,232 ; cmp %r13,%rax DB 118,5 ; jbe 75 <_sk_start_pipeline_hsw+0x75> DB 72,137,223 ; mov %rbx,%rdi DB 235,65 ; jmp b6 <_sk_start_pipeline_hsw+0xb6> DB 185,0,0,0,0 ; mov $0x0,%ecx DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7 DB 72,137,223 ; mov %rbx,%rdi DB 76,137,230 ; mov %r12,%rsi DB 76,137,242 ; mov %r14,%rdx DB 65,255,215 ; callq *%r15 DB 72,141,123,8 ; lea 0x8(%rbx),%rdi DB 72,131,195,16 ; add $0x10,%rbx DB 76,57,235 ; cmp %r13,%rbx DB 72,137,251 ; mov %rdi,%rbx DB 118,191 ; jbe 75 <_sk_start_pipeline_hsw+0x75> DB 76,137,233 ; mov %r13,%rcx DB 72,41,249 ; sub %rdi,%rcx DB 116,41 ; je e7 <_sk_start_pipeline_hsw+0xe7> DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7 DB 76,137,230 ; mov %r12,%rsi DB 76,137,242 ; mov %r14,%rdx DB 65,255,215 ; callq *%r15 DB 76,137,232 ; mov %r13,%rax DB 197,248,40,52,36 ; vmovaps (%rsp),%xmm6 DB 197,248,40,124,36,16 ; vmovaps 0x10(%rsp),%xmm7 DB 197,120,40,68,36,32 ; vmovaps 0x20(%rsp),%xmm8 DB 197,120,40,76,36,48 ; vmovaps 0x30(%rsp),%xmm9 DB 197,120,40,84,36,64 ; vmovaps 0x40(%rsp),%xmm10 DB 197,120,40,92,36,80 ; vmovaps 0x50(%rsp),%xmm11 DB 197,120,40,100,36,96 ; vmovaps 0x60(%rsp),%xmm12 DB 197,120,40,108,36,112 ; vmovaps 0x70(%rsp),%xmm13 DB 197,120,40,180,36,128,0,0,0 ; vmovaps 0x80(%rsp),%xmm14 DB 197,120,40,188,36,144,0,0,0 ; vmovaps 0x90(%rsp),%xmm15 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp DB 91 ; pop %rbx DB 95 ; pop %rdi DB 94 ; pop %rsi DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 197,248,119 ; vzeroupper DB 195 ; retq PUBLIC _sk_just_return_hsw _sk_just_return_hsw LABEL PROC DB 195 ; retq PUBLIC _sk_seed_shader_hsw _sk_seed_shader_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,249,110,199 ; vmovd %edi,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 196,226,125,24,13,74,64,0,0 ; vbroadcastss 0x404a(%rip),%ymm1 # 41a4 <_sk_callback_hsw+0x11a> DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0 DB 197,252,88,2 ; vaddps (%rdx),%ymm0,%ymm0 DB 196,226,125,24,16 ; vbroadcastss (%rax),%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,236,88,201 ; vaddps %ymm1,%ymm2,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 196,226,125,24,21,46,64,0,0 ; vbroadcastss 0x402e(%rip),%ymm2 # 41a8 <_sk_callback_hsw+0x11e> DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_constant_color_hsw _sk_constant_color_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2 DB 196,226,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clear_hsw _sk_clear_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_srcatop_hsw _sk_srcatop_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,204 ; vmulps %ymm4,%ymm8,%ymm9 DB 196,194,69,168,193 ; vfmadd213ps %ymm9,%ymm7,%ymm0 DB 197,60,89,205 ; vmulps %ymm5,%ymm8,%ymm9 DB 196,194,69,168,201 ; vfmadd213ps %ymm9,%ymm7,%ymm1 DB 197,60,89,206 ; vmulps %ymm6,%ymm8,%ymm9 DB 196,194,69,168,209 ; vfmadd213ps %ymm9,%ymm7,%ymm2 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 196,194,69,168,216 ; vfmadd213ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstatop_hsw _sk_dstatop_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 196,226,101,184,196 ; vfmadd231ps %ymm4,%ymm3,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 196,226,101,184,205 ; vfmadd231ps %ymm5,%ymm3,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 196,226,101,184,214 ; vfmadd231ps %ymm6,%ymm3,%ymm2 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,194,69,168,216 ; vfmadd213ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcin_hsw _sk_srcin_hsw LABEL PROC DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstin_hsw _sk_dstin_hsw LABEL PROC DB 197,228,89,196 ; vmulps %ymm4,%ymm3,%ymm0 DB 197,228,89,205 ; vmulps %ymm5,%ymm3,%ymm1 DB 197,228,89,214 ; vmulps %ymm6,%ymm3,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcout_hsw _sk_srcout_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstout_hsw _sk_dstout_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,252,92,219 ; vsubps %ymm3,%ymm0,%ymm3 DB 197,228,89,196 ; vmulps %ymm4,%ymm3,%ymm0 DB 197,228,89,205 ; vmulps %ymm5,%ymm3,%ymm1 DB 197,228,89,214 ; vmulps %ymm6,%ymm3,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcover_hsw _sk_srcover_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 196,194,93,184,192 ; vfmadd231ps %ymm8,%ymm4,%ymm0 DB 196,194,85,184,200 ; vfmadd231ps %ymm8,%ymm5,%ymm1 DB 196,194,77,184,208 ; vfmadd231ps %ymm8,%ymm6,%ymm2 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstover_hsw _sk_dstover_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8 DB 196,226,61,168,196 ; vfmadd213ps %ymm4,%ymm8,%ymm0 DB 196,226,61,168,205 ; vfmadd213ps %ymm5,%ymm8,%ymm1 DB 196,226,61,168,214 ; vfmadd213ps %ymm6,%ymm8,%ymm2 DB 196,226,61,168,223 ; vfmadd213ps %ymm7,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_modulate_hsw _sk_modulate_hsw LABEL PROC DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_multiply_hsw _sk_multiply_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,212 ; vmulps %ymm4,%ymm8,%ymm10 DB 196,98,53,184,208 ; vfmadd231ps %ymm0,%ymm9,%ymm10 DB 196,194,93,168,194 ; vfmadd213ps %ymm10,%ymm4,%ymm0 DB 197,52,89,209 ; vmulps %ymm1,%ymm9,%ymm10 DB 196,98,61,184,213 ; vfmadd231ps %ymm5,%ymm8,%ymm10 DB 196,194,85,168,202 ; vfmadd213ps %ymm10,%ymm5,%ymm1 DB 197,52,89,210 ; vmulps %ymm2,%ymm9,%ymm10 DB 196,98,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm10 DB 196,194,77,168,210 ; vfmadd213ps %ymm10,%ymm6,%ymm2 DB 197,52,89,203 ; vmulps %ymm3,%ymm9,%ymm9 DB 196,66,69,168,193 ; vfmadd213ps %ymm9,%ymm7,%ymm8 DB 196,194,69,168,216 ; vfmadd213ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_plus__hsw _sk_plus__hsw LABEL PROC DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_screen_hsw _sk_screen_hsw LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 196,194,93,172,192 ; vfnmadd213ps %ymm8,%ymm4,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 196,194,85,172,200 ; vfnmadd213ps %ymm8,%ymm5,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 196,194,77,172,208 ; vfnmadd213ps %ymm8,%ymm6,%ymm2 DB 197,100,88,199 ; vaddps %ymm7,%ymm3,%ymm8 DB 196,194,69,172,216 ; vfnmadd213ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_xor__hsw _sk_xor__hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,212 ; vmulps %ymm4,%ymm8,%ymm10 DB 196,194,53,168,194 ; vfmadd213ps %ymm10,%ymm9,%ymm0 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1 DB 196,226,61,184,205 ; vfmadd231ps %ymm5,%ymm8,%ymm1 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2 DB 196,226,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm2 DB 197,180,89,219 ; vmulps %ymm3,%ymm9,%ymm3 DB 196,98,69,168,195 ; vfmadd213ps %ymm3,%ymm7,%ymm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,195 ; vmovaps %ymm8,%ymm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_darken_hsw _sk_darken_hsw LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9 DB 196,193,124,95,193 ; vmaxps %ymm9,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9 DB 196,193,116,95,201 ; vmaxps %ymm9,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9 DB 196,193,108,95,209 ; vmaxps %ymm9,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lighten_hsw _sk_lighten_hsw LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9 DB 196,193,124,93,193 ; vminps %ymm9,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9 DB 196,193,116,93,201 ; vminps %ymm9,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9 DB 196,193,108,93,209 ; vminps %ymm9,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_difference_hsw _sk_difference_hsw LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9 DB 196,193,124,93,193 ; vminps %ymm9,%ymm0,%ymm0 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9 DB 196,193,116,93,201 ; vminps %ymm9,%ymm1,%ymm1 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9 DB 196,193,108,93,209 ; vminps %ymm9,%ymm2,%ymm2 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_exclusion_hsw _sk_exclusion_hsw LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_colorburn_hsw _sk_colorburn_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9 DB 197,52,89,216 ; vmulps %ymm0,%ymm9,%ymm11 DB 196,65,44,87,210 ; vxorps %ymm10,%ymm10,%ymm10 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,228 ; vmulps %ymm4,%ymm8,%ymm12 DB 197,68,92,236 ; vsubps %ymm4,%ymm7,%ymm13 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13 DB 197,20,94,232 ; vdivps %ymm0,%ymm13,%ymm13 DB 196,65,68,93,237 ; vminps %ymm13,%ymm7,%ymm13 DB 196,65,68,92,237 ; vsubps %ymm13,%ymm7,%ymm13 DB 196,66,101,168,235 ; vfmadd213ps %ymm11,%ymm3,%ymm13 DB 196,65,28,88,237 ; vaddps %ymm13,%ymm12,%ymm13 DB 197,28,88,224 ; vaddps %ymm0,%ymm12,%ymm12 DB 196,193,124,194,194,0 ; vcmpeqps %ymm10,%ymm0,%ymm0 DB 196,195,21,74,196,0 ; vblendvps %ymm0,%ymm12,%ymm13,%ymm0 DB 197,92,194,231,0 ; vcmpeqps %ymm7,%ymm4,%ymm12 DB 197,36,88,220 ; vaddps %ymm4,%ymm11,%ymm11 DB 196,195,125,74,195,192 ; vblendvps %ymm12,%ymm11,%ymm0,%ymm0 DB 197,52,89,217 ; vmulps %ymm1,%ymm9,%ymm11 DB 197,60,89,229 ; vmulps %ymm5,%ymm8,%ymm12 DB 197,68,92,237 ; vsubps %ymm5,%ymm7,%ymm13 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13 DB 197,20,94,233 ; vdivps %ymm1,%ymm13,%ymm13 DB 196,65,68,93,237 ; vminps %ymm13,%ymm7,%ymm13 DB 196,65,68,92,237 ; vsubps %ymm13,%ymm7,%ymm13 DB 196,66,101,168,235 ; vfmadd213ps %ymm11,%ymm3,%ymm13 DB 196,65,28,88,237 ; vaddps %ymm13,%ymm12,%ymm13 DB 197,28,88,225 ; vaddps %ymm1,%ymm12,%ymm12 DB 196,193,116,194,202,0 ; vcmpeqps %ymm10,%ymm1,%ymm1 DB 196,195,21,74,204,16 ; vblendvps %ymm1,%ymm12,%ymm13,%ymm1 DB 197,84,194,231,0 ; vcmpeqps %ymm7,%ymm5,%ymm12 DB 197,36,88,221 ; vaddps %ymm5,%ymm11,%ymm11 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1 DB 197,52,89,202 ; vmulps %ymm2,%ymm9,%ymm9 DB 196,65,108,194,210,0 ; vcmpeqps %ymm10,%ymm2,%ymm10 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11 DB 197,68,92,230 ; vsubps %ymm6,%ymm7,%ymm12 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12 DB 197,28,94,226 ; vdivps %ymm2,%ymm12,%ymm12 DB 197,164,88,210 ; vaddps %ymm2,%ymm11,%ymm2 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12 DB 196,65,68,92,228 ; vsubps %ymm12,%ymm7,%ymm12 DB 196,66,101,168,225 ; vfmadd213ps %ymm9,%ymm3,%ymm12 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 196,227,37,74,210,160 ; vblendvps %ymm10,%ymm2,%ymm11,%ymm2 DB 197,76,194,215,0 ; vcmpeqps %ymm7,%ymm6,%ymm10 DB 197,52,88,206 ; vaddps %ymm6,%ymm9,%ymm9 DB 196,195,109,74,209,160 ; vblendvps %ymm10,%ymm9,%ymm2,%ymm2 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_colordodge_hsw _sk_colordodge_hsw LABEL PROC DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 197,52,92,215 ; vsubps %ymm7,%ymm9,%ymm10 DB 197,44,89,216 ; vmulps %ymm0,%ymm10,%ymm11 DB 197,52,92,203 ; vsubps %ymm3,%ymm9,%ymm9 DB 197,100,89,228 ; vmulps %ymm4,%ymm3,%ymm12 DB 197,100,92,232 ; vsubps %ymm0,%ymm3,%ymm13 DB 196,65,28,94,229 ; vdivps %ymm13,%ymm12,%ymm12 DB 197,52,89,236 ; vmulps %ymm4,%ymm9,%ymm13 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12 DB 196,66,101,168,227 ; vfmadd213ps %ymm11,%ymm3,%ymm12 DB 196,65,20,88,228 ; vaddps %ymm12,%ymm13,%ymm12 DB 197,20,88,232 ; vaddps %ymm0,%ymm13,%ymm13 DB 197,252,194,195,0 ; vcmpeqps %ymm3,%ymm0,%ymm0 DB 196,195,29,74,197,0 ; vblendvps %ymm0,%ymm13,%ymm12,%ymm0 DB 196,65,92,194,224,0 ; vcmpeqps %ymm8,%ymm4,%ymm12 DB 197,36,88,220 ; vaddps %ymm4,%ymm11,%ymm11 DB 196,195,125,74,195,192 ; vblendvps %ymm12,%ymm11,%ymm0,%ymm0 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11 DB 197,100,89,229 ; vmulps %ymm5,%ymm3,%ymm12 DB 197,100,92,233 ; vsubps %ymm1,%ymm3,%ymm13 DB 196,65,28,94,229 ; vdivps %ymm13,%ymm12,%ymm12 DB 197,52,89,237 ; vmulps %ymm5,%ymm9,%ymm13 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12 DB 196,66,101,168,227 ; vfmadd213ps %ymm11,%ymm3,%ymm12 DB 196,65,20,88,228 ; vaddps %ymm12,%ymm13,%ymm12 DB 197,20,88,233 ; vaddps %ymm1,%ymm13,%ymm13 DB 197,244,194,203,0 ; vcmpeqps %ymm3,%ymm1,%ymm1 DB 196,195,29,74,205,16 ; vblendvps %ymm1,%ymm13,%ymm12,%ymm1 DB 196,65,84,194,224,0 ; vcmpeqps %ymm8,%ymm5,%ymm12 DB 197,36,88,221 ; vaddps %ymm5,%ymm11,%ymm11 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10 DB 197,100,89,222 ; vmulps %ymm6,%ymm3,%ymm11 DB 197,100,92,226 ; vsubps %ymm2,%ymm3,%ymm12 DB 196,65,36,94,220 ; vdivps %ymm12,%ymm11,%ymm11 DB 197,52,89,230 ; vmulps %ymm6,%ymm9,%ymm12 DB 196,65,68,93,219 ; vminps %ymm11,%ymm7,%ymm11 DB 196,66,101,168,218 ; vfmadd213ps %ymm10,%ymm3,%ymm11 DB 196,65,28,88,219 ; vaddps %ymm11,%ymm12,%ymm11 DB 197,28,88,226 ; vaddps %ymm2,%ymm12,%ymm12 DB 197,236,194,211,0 ; vcmpeqps %ymm3,%ymm2,%ymm2 DB 196,195,37,74,212,32 ; vblendvps %ymm2,%ymm12,%ymm11,%ymm2 DB 196,65,76,194,192,0 ; vcmpeqps %ymm8,%ymm6,%ymm8 DB 197,44,88,214 ; vaddps %ymm6,%ymm10,%ymm10 DB 196,195,109,74,210,128 ; vblendvps %ymm8,%ymm10,%ymm2,%ymm2 DB 196,194,69,184,217 ; vfmadd231ps %ymm9,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_hardlight_hsw _sk_hardlight_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11 DB 196,98,45,184,216 ; vfmadd231ps %ymm0,%ymm10,%ymm11 DB 197,124,88,200 ; vaddps %ymm0,%ymm0,%ymm9 DB 197,52,194,227,2 ; vcmpleps %ymm3,%ymm9,%ymm12 DB 197,124,89,204 ; vmulps %ymm4,%ymm0,%ymm9 DB 196,65,52,88,233 ; vaddps %ymm9,%ymm9,%ymm13 DB 197,100,89,207 ; vmulps %ymm7,%ymm3,%ymm9 DB 197,68,92,244 ; vsubps %ymm4,%ymm7,%ymm14 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0 DB 197,180,92,192 ; vsubps %ymm0,%ymm9,%ymm0 DB 196,195,125,74,197,192 ; vblendvps %ymm12,%ymm13,%ymm0,%ymm0 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11 DB 196,98,61,184,221 ; vfmadd231ps %ymm5,%ymm8,%ymm11 DB 197,116,88,225 ; vaddps %ymm1,%ymm1,%ymm12 DB 197,28,194,227,2 ; vcmpleps %ymm3,%ymm12,%ymm12 DB 197,116,89,237 ; vmulps %ymm5,%ymm1,%ymm13 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13 DB 197,68,92,245 ; vsubps %ymm5,%ymm7,%ymm14 DB 197,228,92,201 ; vsubps %ymm1,%ymm3,%ymm1 DB 196,193,116,89,206 ; vmulps %ymm14,%ymm1,%ymm1 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1 DB 197,180,92,201 ; vsubps %ymm1,%ymm9,%ymm1 DB 196,195,117,74,205,192 ; vblendvps %ymm12,%ymm13,%ymm1,%ymm1 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10 DB 196,98,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm10 DB 197,108,88,218 ; vaddps %ymm2,%ymm2,%ymm11 DB 197,36,194,219,2 ; vcmpleps %ymm3,%ymm11,%ymm11 DB 197,108,89,230 ; vmulps %ymm6,%ymm2,%ymm12 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12 DB 197,68,92,238 ; vsubps %ymm6,%ymm7,%ymm13 DB 197,228,92,210 ; vsubps %ymm2,%ymm3,%ymm2 DB 196,193,108,89,213 ; vmulps %ymm13,%ymm2,%ymm2 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2 DB 197,180,92,210 ; vsubps %ymm2,%ymm9,%ymm2 DB 196,195,109,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm2,%ymm2 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_overlay_hsw _sk_overlay_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11 DB 196,98,45,184,216 ; vfmadd231ps %ymm0,%ymm10,%ymm11 DB 197,92,88,204 ; vaddps %ymm4,%ymm4,%ymm9 DB 197,52,194,231,2 ; vcmpleps %ymm7,%ymm9,%ymm12 DB 197,124,89,204 ; vmulps %ymm4,%ymm0,%ymm9 DB 196,65,52,88,233 ; vaddps %ymm9,%ymm9,%ymm13 DB 197,100,89,207 ; vmulps %ymm7,%ymm3,%ymm9 DB 197,68,92,244 ; vsubps %ymm4,%ymm7,%ymm14 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0 DB 197,180,92,192 ; vsubps %ymm0,%ymm9,%ymm0 DB 196,195,125,74,197,192 ; vblendvps %ymm12,%ymm13,%ymm0,%ymm0 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11 DB 196,98,61,184,221 ; vfmadd231ps %ymm5,%ymm8,%ymm11 DB 197,84,88,229 ; vaddps %ymm5,%ymm5,%ymm12 DB 197,28,194,231,2 ; vcmpleps %ymm7,%ymm12,%ymm12 DB 197,116,89,237 ; vmulps %ymm5,%ymm1,%ymm13 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13 DB 197,68,92,245 ; vsubps %ymm5,%ymm7,%ymm14 DB 197,228,92,201 ; vsubps %ymm1,%ymm3,%ymm1 DB 196,193,116,89,206 ; vmulps %ymm14,%ymm1,%ymm1 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1 DB 197,180,92,201 ; vsubps %ymm1,%ymm9,%ymm1 DB 196,195,117,74,205,192 ; vblendvps %ymm12,%ymm13,%ymm1,%ymm1 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10 DB 196,98,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm10 DB 197,76,88,222 ; vaddps %ymm6,%ymm6,%ymm11 DB 197,36,194,223,2 ; vcmpleps %ymm7,%ymm11,%ymm11 DB 197,108,89,230 ; vmulps %ymm6,%ymm2,%ymm12 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12 DB 197,68,92,238 ; vsubps %ymm6,%ymm7,%ymm13 DB 197,228,92,210 ; vsubps %ymm2,%ymm3,%ymm2 DB 196,193,108,89,213 ; vmulps %ymm13,%ymm2,%ymm2 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2 DB 197,180,92,210 ; vsubps %ymm2,%ymm9,%ymm2 DB 196,195,109,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm2,%ymm2 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_softlight_hsw _sk_softlight_hsw LABEL PROC DB 72,131,236,56 ; sub $0x38,%rsp DB 197,252,17,20,36 ; vmovups %ymm2,(%rsp) DB 196,65,44,87,210 ; vxorps %ymm10,%ymm10,%ymm10 DB 197,44,194,223,1 ; vcmpltps %ymm7,%ymm10,%ymm11 DB 197,92,94,199 ; vdivps %ymm7,%ymm4,%ymm8 DB 196,67,45,74,224,176 ; vblendvps %ymm11,%ymm8,%ymm10,%ymm12 DB 196,65,28,88,196 ; vaddps %ymm12,%ymm12,%ymm8 DB 196,65,60,88,232 ; vaddps %ymm8,%ymm8,%ymm13 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,66,21,168,237 ; vfmadd213ps %ymm13,%ymm13,%ymm13 DB 196,65,28,92,240 ; vsubps %ymm8,%ymm12,%ymm14 DB 184,0,0,224,64 ; mov $0x40e00000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 196,65,28,89,249 ; vmulps %ymm9,%ymm12,%ymm15 DB 196,66,21,184,254 ; vfmadd231ps %ymm14,%ymm13,%ymm15 DB 196,65,124,82,236 ; vrsqrtps %ymm12,%ymm13 DB 196,65,124,83,237 ; vrcpps %ymm13,%ymm13 DB 196,65,20,92,236 ; vsubps %ymm12,%ymm13,%ymm13 DB 197,92,88,244 ; vaddps %ymm4,%ymm4,%ymm14 DB 196,65,12,88,246 ; vaddps %ymm14,%ymm14,%ymm14 DB 197,12,194,247,2 ; vcmpleps %ymm7,%ymm14,%ymm14 DB 196,67,21,74,239,224 ; vblendvps %ymm14,%ymm15,%ymm13,%ymm13 DB 197,124,88,240 ; vaddps %ymm0,%ymm0,%ymm14 DB 197,12,92,251 ; vsubps %ymm3,%ymm14,%ymm15 DB 196,65,60,92,228 ; vsubps %ymm12,%ymm8,%ymm12 DB 196,98,5,168,227 ; vfmadd213ps %ymm3,%ymm15,%ymm12 DB 197,28,89,228 ; vmulps %ymm4,%ymm12,%ymm12 DB 197,4,89,255 ; vmulps %ymm7,%ymm15,%ymm15 DB 196,65,4,89,237 ; vmulps %ymm13,%ymm15,%ymm13 DB 196,98,101,184,236 ; vfmadd231ps %ymm4,%ymm3,%ymm13 DB 197,12,194,243,2 ; vcmpleps %ymm3,%ymm14,%ymm14 DB 196,195,21,74,212,224 ; vblendvps %ymm14,%ymm12,%ymm13,%ymm2 DB 197,84,94,239 ; vdivps %ymm7,%ymm5,%ymm13 DB 196,67,45,74,237,176 ; vblendvps %ymm11,%ymm13,%ymm10,%ymm13 DB 196,65,20,88,245 ; vaddps %ymm13,%ymm13,%ymm14 DB 196,65,12,88,246 ; vaddps %ymm14,%ymm14,%ymm14 DB 196,66,13,168,246 ; vfmadd213ps %ymm14,%ymm14,%ymm14 DB 196,65,20,92,248 ; vsubps %ymm8,%ymm13,%ymm15 DB 196,65,4,89,246 ; vmulps %ymm14,%ymm15,%ymm14 DB 196,66,53,184,245 ; vfmadd231ps %ymm13,%ymm9,%ymm14 DB 196,65,124,82,253 ; vrsqrtps %ymm13,%ymm15 DB 196,65,124,83,255 ; vrcpps %ymm15,%ymm15 DB 196,65,4,92,253 ; vsubps %ymm13,%ymm15,%ymm15 DB 197,84,88,229 ; vaddps %ymm5,%ymm5,%ymm12 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12 DB 197,28,194,231,2 ; vcmpleps %ymm7,%ymm12,%ymm12 DB 196,67,5,74,230,192 ; vblendvps %ymm12,%ymm14,%ymm15,%ymm12 DB 197,116,88,241 ; vaddps %ymm1,%ymm1,%ymm14 DB 196,65,60,92,237 ; vsubps %ymm13,%ymm8,%ymm13 DB 197,12,92,251 ; vsubps %ymm3,%ymm14,%ymm15 DB 196,98,5,168,235 ; vfmadd213ps %ymm3,%ymm15,%ymm13 DB 197,4,89,255 ; vmulps %ymm7,%ymm15,%ymm15 DB 196,65,4,89,228 ; vmulps %ymm12,%ymm15,%ymm12 DB 197,20,89,237 ; vmulps %ymm5,%ymm13,%ymm13 DB 196,98,101,184,229 ; vfmadd231ps %ymm5,%ymm3,%ymm12 DB 197,12,194,243,2 ; vcmpleps %ymm3,%ymm14,%ymm14 DB 196,67,29,74,237,224 ; vblendvps %ymm14,%ymm13,%ymm12,%ymm13 DB 197,76,94,231 ; vdivps %ymm7,%ymm6,%ymm12 DB 196,67,45,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm10,%ymm10 DB 196,65,44,88,218 ; vaddps %ymm10,%ymm10,%ymm11 DB 196,65,36,88,219 ; vaddps %ymm11,%ymm11,%ymm11 DB 196,66,37,168,219 ; vfmadd213ps %ymm11,%ymm11,%ymm11 DB 196,65,44,92,224 ; vsubps %ymm8,%ymm10,%ymm12 DB 196,65,28,89,219 ; vmulps %ymm11,%ymm12,%ymm11 DB 196,66,45,168,203 ; vfmadd213ps %ymm11,%ymm10,%ymm9 DB 196,65,124,82,218 ; vrsqrtps %ymm10,%ymm11 DB 196,65,124,83,219 ; vrcpps %ymm11,%ymm11 DB 196,65,36,92,218 ; vsubps %ymm10,%ymm11,%ymm11 DB 197,76,88,230 ; vaddps %ymm6,%ymm6,%ymm12 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12 DB 197,28,194,231,2 ; vcmpleps %ymm7,%ymm12,%ymm12 DB 196,67,37,74,201,192 ; vblendvps %ymm12,%ymm9,%ymm11,%ymm9 DB 197,124,16,52,36 ; vmovups (%rsp),%ymm14 DB 196,65,12,88,222 ; vaddps %ymm14,%ymm14,%ymm11 DB 197,36,92,227 ; vsubps %ymm3,%ymm11,%ymm12 DB 196,65,60,92,210 ; vsubps %ymm10,%ymm8,%ymm10 DB 196,98,29,168,211 ; vfmadd213ps %ymm3,%ymm12,%ymm10 DB 197,28,89,231 ; vmulps %ymm7,%ymm12,%ymm12 DB 196,65,28,89,201 ; vmulps %ymm9,%ymm12,%ymm9 DB 197,44,89,214 ; vmulps %ymm6,%ymm10,%ymm10 DB 196,98,101,184,206 ; vfmadd231ps %ymm6,%ymm3,%ymm9 DB 197,36,194,219,2 ; vcmpleps %ymm3,%ymm11,%ymm11 DB 196,67,53,74,202,176 ; vblendvps %ymm11,%ymm10,%ymm9,%ymm9 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11 DB 196,98,45,184,216 ; vfmadd231ps %ymm0,%ymm10,%ymm11 DB 196,193,108,88,195 ; vaddps %ymm11,%ymm2,%ymm0 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1 DB 196,226,61,184,205 ; vfmadd231ps %ymm5,%ymm8,%ymm1 DB 196,193,116,88,205 ; vaddps %ymm13,%ymm1,%ymm1 DB 196,193,44,89,214 ; vmulps %ymm14,%ymm10,%ymm2 DB 196,226,61,184,214 ; vfmadd231ps %ymm6,%ymm8,%ymm2 DB 196,193,108,88,209 ; vaddps %ymm9,%ymm2,%ymm2 DB 196,194,69,184,216 ; vfmadd231ps %ymm8,%ymm7,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,131,196,56 ; add $0x38,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_0_hsw _sk_clamp_0_hsw LABEL PROC DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0 DB 196,193,116,95,200 ; vmaxps %ymm8,%ymm1,%ymm1 DB 196,193,108,95,208 ; vmaxps %ymm8,%ymm2,%ymm2 DB 196,193,100,95,216 ; vmaxps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_1_hsw _sk_clamp_1_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1 DB 196,193,108,93,208 ; vminps %ymm8,%ymm2,%ymm2 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_a_hsw _sk_clamp_a_hsw LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3 DB 197,252,93,195 ; vminps %ymm3,%ymm0,%ymm0 DB 197,244,93,203 ; vminps %ymm3,%ymm1,%ymm1 DB 197,236,93,211 ; vminps %ymm3,%ymm2,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_set_rgb_hsw _sk_set_rgb_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_swap_rb_hsw _sk_swap_rb_hsw LABEL PROC DB 197,124,40,192 ; vmovaps %ymm0,%ymm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,194 ; vmovaps %ymm2,%ymm0 DB 197,124,41,194 ; vmovaps %ymm8,%ymm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_swap_hsw _sk_swap_hsw LABEL PROC DB 197,124,40,195 ; vmovaps %ymm3,%ymm8 DB 197,124,40,202 ; vmovaps %ymm2,%ymm9 DB 197,124,40,209 ; vmovaps %ymm1,%ymm10 DB 197,124,40,216 ; vmovaps %ymm0,%ymm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,196 ; vmovaps %ymm4,%ymm0 DB 197,252,40,205 ; vmovaps %ymm5,%ymm1 DB 197,252,40,214 ; vmovaps %ymm6,%ymm2 DB 197,252,40,223 ; vmovaps %ymm7,%ymm3 DB 197,124,41,220 ; vmovaps %ymm11,%ymm4 DB 197,124,41,213 ; vmovaps %ymm10,%ymm5 DB 197,124,41,206 ; vmovaps %ymm9,%ymm6 DB 197,124,41,199 ; vmovaps %ymm8,%ymm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_move_src_dst_hsw _sk_move_src_dst_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,224 ; vmovaps %ymm0,%ymm4 DB 197,252,40,233 ; vmovaps %ymm1,%ymm5 DB 197,252,40,242 ; vmovaps %ymm2,%ymm6 DB 197,252,40,251 ; vmovaps %ymm3,%ymm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_move_dst_src_hsw _sk_move_dst_src_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,196 ; vmovaps %ymm4,%ymm0 DB 197,252,40,205 ; vmovaps %ymm5,%ymm1 DB 197,252,40,214 ; vmovaps %ymm6,%ymm2 DB 197,252,40,223 ; vmovaps %ymm7,%ymm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_premul_hsw _sk_premul_hsw LABEL PROC DB 197,252,89,195 ; vmulps %ymm3,%ymm0,%ymm0 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_unpremul_hsw _sk_unpremul_hsw LABEL PROC DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,100,194,200,0 ; vcmpeqps %ymm8,%ymm3,%ymm9 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 197,44,94,211 ; vdivps %ymm3,%ymm10,%ymm10 DB 196,67,45,74,192,144 ; vblendvps %ymm9,%ymm8,%ymm10,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_from_srgb_hsw _sk_from_srgb_hsw LABEL PROC DB 184,145,131,158,61 ; mov $0x3d9e8391,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 197,124,89,208 ; vmulps %ymm0,%ymm0,%ymm10 DB 184,154,153,153,62 ; mov $0x3e99999a,%eax DB 197,121,110,216 ; vmovd %eax,%xmm11 DB 196,66,125,88,219 ; vpbroadcastd %xmm11,%ymm11 DB 184,92,143,50,63 ; mov $0x3f328f5c,%eax DB 197,121,110,224 ; vmovd %eax,%xmm12 DB 196,66,125,88,228 ; vpbroadcastd %xmm12,%ymm12 DB 196,65,125,111,235 ; vmovdqa %ymm11,%ymm13 DB 196,66,125,168,236 ; vfmadd213ps %ymm12,%ymm0,%ymm13 DB 184,10,215,35,59 ; mov $0x3b23d70a,%eax DB 197,121,110,240 ; vmovd %eax,%xmm14 DB 196,66,125,88,246 ; vpbroadcastd %xmm14,%ymm14 DB 196,66,45,168,238 ; vfmadd213ps %ymm14,%ymm10,%ymm13 DB 184,174,71,97,61 ; mov $0x3d6147ae,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 196,193,124,194,194,1 ; vcmpltps %ymm10,%ymm0,%ymm0 DB 196,195,21,74,193,0 ; vblendvps %ymm0,%ymm9,%ymm13,%ymm0 DB 197,60,89,201 ; vmulps %ymm1,%ymm8,%ymm9 DB 197,116,89,233 ; vmulps %ymm1,%ymm1,%ymm13 DB 196,65,125,111,251 ; vmovdqa %ymm11,%ymm15 DB 196,66,117,168,252 ; vfmadd213ps %ymm12,%ymm1,%ymm15 DB 196,66,21,168,254 ; vfmadd213ps %ymm14,%ymm13,%ymm15 DB 196,193,116,194,202,1 ; vcmpltps %ymm10,%ymm1,%ymm1 DB 196,195,5,74,201,16 ; vblendvps %ymm1,%ymm9,%ymm15,%ymm1 DB 197,60,89,194 ; vmulps %ymm2,%ymm8,%ymm8 DB 197,108,89,202 ; vmulps %ymm2,%ymm2,%ymm9 DB 196,66,109,168,220 ; vfmadd213ps %ymm12,%ymm2,%ymm11 DB 196,66,53,168,222 ; vfmadd213ps %ymm14,%ymm9,%ymm11 DB 196,193,108,194,210,1 ; vcmpltps %ymm10,%ymm2,%ymm2 DB 196,195,37,74,208,32 ; vblendvps %ymm2,%ymm8,%ymm11,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_to_srgb_hsw _sk_to_srgb_hsw LABEL PROC DB 197,124,82,192 ; vrsqrtps %ymm0,%ymm8 DB 196,65,124,83,216 ; vrcpps %ymm8,%ymm11 DB 196,65,124,82,224 ; vrsqrtps %ymm8,%ymm12 DB 184,41,92,71,65 ; mov $0x41475c29,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,89,232 ; vmulps %ymm0,%ymm8,%ymm13 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 184,194,135,210,62 ; mov $0x3ed287c2,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 184,206,111,48,63 ; mov $0x3f306fce,%eax DB 197,121,110,240 ; vmovd %eax,%xmm14 DB 196,66,125,88,246 ; vpbroadcastd %xmm14,%ymm14 DB 184,168,87,202,61 ; mov $0x3dca57a8,%eax DB 53,0,0,0,128 ; xor $0x80000000,%eax DB 197,121,110,248 ; vmovd %eax,%xmm15 DB 196,66,125,88,255 ; vpbroadcastd %xmm15,%ymm15 DB 196,66,13,168,223 ; vfmadd213ps %ymm15,%ymm14,%ymm11 DB 196,66,45,184,220 ; vfmadd231ps %ymm12,%ymm10,%ymm11 DB 196,65,52,93,219 ; vminps %ymm11,%ymm9,%ymm11 DB 184,4,231,140,59 ; mov $0x3b8ce704,%eax DB 197,121,110,224 ; vmovd %eax,%xmm12 DB 196,66,125,88,228 ; vpbroadcastd %xmm12,%ymm12 DB 196,193,124,194,196,1 ; vcmpltps %ymm12,%ymm0,%ymm0 DB 196,195,37,74,197,0 ; vblendvps %ymm0,%ymm13,%ymm11,%ymm0 DB 197,124,82,217 ; vrsqrtps %ymm1,%ymm11 DB 196,65,124,83,235 ; vrcpps %ymm11,%ymm13 DB 196,65,124,82,219 ; vrsqrtps %ymm11,%ymm11 DB 196,66,13,168,239 ; vfmadd213ps %ymm15,%ymm14,%ymm13 DB 196,66,45,184,235 ; vfmadd231ps %ymm11,%ymm10,%ymm13 DB 197,60,89,217 ; vmulps %ymm1,%ymm8,%ymm11 DB 196,65,52,93,237 ; vminps %ymm13,%ymm9,%ymm13 DB 196,193,116,194,204,1 ; vcmpltps %ymm12,%ymm1,%ymm1 DB 196,195,21,74,203,16 ; vblendvps %ymm1,%ymm11,%ymm13,%ymm1 DB 197,124,82,218 ; vrsqrtps %ymm2,%ymm11 DB 196,65,124,83,235 ; vrcpps %ymm11,%ymm13 DB 196,66,13,168,239 ; vfmadd213ps %ymm15,%ymm14,%ymm13 DB 196,65,124,82,219 ; vrsqrtps %ymm11,%ymm11 DB 196,66,45,184,235 ; vfmadd231ps %ymm11,%ymm10,%ymm13 DB 196,65,52,93,205 ; vminps %ymm13,%ymm9,%ymm9 DB 197,60,89,194 ; vmulps %ymm2,%ymm8,%ymm8 DB 196,193,108,194,212,1 ; vcmpltps %ymm12,%ymm2,%ymm2 DB 196,195,53,74,208,32 ; vblendvps %ymm2,%ymm8,%ymm9,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_rgb_to_hsl_hsw _sk_rgb_to_hsl_hsw LABEL PROC DB 72,131,236,56 ; sub $0x38,%rsp DB 197,252,17,60,36 ; vmovups %ymm7,(%rsp) DB 197,252,40,254 ; vmovaps %ymm6,%ymm7 DB 197,252,40,245 ; vmovaps %ymm5,%ymm6 DB 197,252,40,236 ; vmovaps %ymm4,%ymm5 DB 197,252,40,227 ; vmovaps %ymm3,%ymm4 DB 197,252,40,216 ; vmovaps %ymm0,%ymm3 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 65,184,171,170,42,62 ; mov $0x3e2aaaab,%r8d DB 184,0,0,192,64 ; mov $0x40c00000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 65,185,0,0,0,64 ; mov $0x40000000,%r9d DB 184,0,0,128,64 ; mov $0x40800000,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 197,100,95,217 ; vmaxps %ymm1,%ymm3,%ymm11 DB 197,36,95,218 ; vmaxps %ymm2,%ymm11,%ymm11 DB 197,100,93,225 ; vminps %ymm1,%ymm3,%ymm12 DB 197,28,93,226 ; vminps %ymm2,%ymm12,%ymm12 DB 196,65,36,92,236 ; vsubps %ymm12,%ymm11,%ymm13 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,65,60,94,197 ; vdivps %ymm13,%ymm8,%ymm8 DB 197,116,194,242,1 ; vcmpltps %ymm2,%ymm1,%ymm14 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 196,65,4,87,255 ; vxorps %ymm15,%ymm15,%ymm15 DB 196,67,5,74,201,224 ; vblendvps %ymm14,%ymm9,%ymm15,%ymm9 DB 197,116,92,242 ; vsubps %ymm2,%ymm1,%ymm14 DB 196,66,61,168,241 ; vfmadd213ps %ymm9,%ymm8,%ymm14 DB 197,236,92,195 ; vsubps %ymm3,%ymm2,%ymm0 DB 197,100,92,201 ; vsubps %ymm1,%ymm3,%ymm9 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 196,66,61,168,202 ; vfmadd213ps %ymm10,%ymm8,%ymm9 DB 196,193,121,110,209 ; vmovd %r9d,%xmm2 DB 196,98,125,88,210 ; vpbroadcastd %xmm2,%ymm10 DB 196,194,61,168,194 ; vfmadd213ps %ymm10,%ymm8,%ymm0 DB 197,164,194,201,0 ; vcmpeqps %ymm1,%ymm11,%ymm1 DB 196,227,53,74,192,16 ; vblendvps %ymm1,%ymm0,%ymm9,%ymm0 DB 184,0,0,0,63 ; mov $0x3f000000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 197,164,194,211,0 ; vcmpeqps %ymm3,%ymm11,%ymm2 DB 196,195,125,74,198,32 ; vblendvps %ymm2,%ymm14,%ymm0,%ymm0 DB 196,193,36,88,220 ; vaddps %ymm12,%ymm11,%ymm3 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,228,89,209 ; vmulps %ymm1,%ymm3,%ymm2 DB 197,244,194,202,1 ; vcmpltps %ymm2,%ymm1,%ymm1 DB 196,65,44,92,195 ; vsubps %ymm11,%ymm10,%ymm8 DB 196,65,60,92,196 ; vsubps %ymm12,%ymm8,%ymm8 DB 196,195,101,74,200,16 ; vblendvps %ymm1,%ymm8,%ymm3,%ymm1 DB 196,193,36,194,220,0 ; vcmpeqps %ymm12,%ymm11,%ymm3 DB 197,148,94,201 ; vdivps %ymm1,%ymm13,%ymm1 DB 196,195,125,74,199,48 ; vblendvps %ymm3,%ymm15,%ymm0,%ymm0 DB 196,195,117,74,207,48 ; vblendvps %ymm3,%ymm15,%ymm1,%ymm1 DB 196,193,121,110,216 ; vmovd %r8d,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,228,89,192 ; vmulps %ymm0,%ymm3,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,220 ; vmovaps %ymm4,%ymm3 DB 197,252,40,229 ; vmovaps %ymm5,%ymm4 DB 197,252,40,238 ; vmovaps %ymm6,%ymm5 DB 197,252,40,247 ; vmovaps %ymm7,%ymm6 DB 197,252,16,60,36 ; vmovups (%rsp),%ymm7 DB 72,131,196,56 ; add $0x38,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_hsl_to_rgb_hsw _sk_hsl_to_rgb_hsw LABEL PROC DB 72,129,236,184,0,0,0 ; sub $0xb8,%rsp DB 197,252,17,188,36,128,0,0,0 ; vmovups %ymm7,0x80(%rsp) DB 197,252,17,116,36,96 ; vmovups %ymm6,0x60(%rsp) DB 197,252,17,108,36,64 ; vmovups %ymm5,0x40(%rsp) DB 197,252,17,100,36,32 ; vmovups %ymm4,0x20(%rsp) DB 197,252,17,28,36 ; vmovups %ymm3,(%rsp) DB 197,252,40,233 ; vmovaps %ymm1,%ymm5 DB 184,0,0,0,63 ; mov $0x3f000000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,193 ; vpbroadcastd %xmm1,%ymm8 DB 196,193,108,194,200,1 ; vcmpltps %ymm8,%ymm2,%ymm1 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,224 ; vmovd %eax,%xmm4 DB 196,98,125,88,212 ; vpbroadcastd %xmm4,%ymm10 DB 197,172,88,229 ; vaddps %ymm5,%ymm10,%ymm4 DB 197,220,89,226 ; vmulps %ymm2,%ymm4,%ymm4 DB 197,84,88,202 ; vaddps %ymm2,%ymm5,%ymm9 DB 196,98,85,188,202 ; vfnmadd231ps %ymm2,%ymm5,%ymm9 DB 196,99,53,74,204,16 ; vblendvps %ymm1,%ymm4,%ymm9,%ymm9 DB 65,184,0,0,0,64 ; mov $0x40000000,%r8d DB 184,171,170,170,62 ; mov $0x3eaaaaab,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,233 ; vpbroadcastd %xmm1,%ymm13 DB 197,148,88,224 ; vaddps %ymm0,%ymm13,%ymm4 DB 184,0,0,0,0 ; mov $0x0,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,225 ; vpbroadcastd %xmm1,%ymm12 DB 197,172,194,204,1 ; vcmpltps %ymm4,%ymm10,%ymm1 DB 196,65,92,92,218 ; vsubps %ymm10,%ymm4,%ymm11 DB 196,195,93,74,203,16 ; vblendvps %ymm1,%ymm11,%ymm4,%ymm1 DB 196,65,92,194,220,1 ; vcmpltps %ymm12,%ymm4,%ymm11 DB 197,44,88,244 ; vaddps %ymm4,%ymm10,%ymm14 DB 196,195,117,74,206,176 ; vblendvps %ymm11,%ymm14,%ymm1,%ymm1 DB 196,193,121,110,216 ; vmovd %r8d,%xmm3 DB 196,98,125,88,219 ; vpbroadcastd %xmm3,%ymm11 DB 196,66,109,170,217 ; vfmsub213ps %ymm9,%ymm2,%ymm11 DB 65,184,171,170,42,62 ; mov $0x3e2aaaab,%r8d DB 184,0,0,192,64 ; mov $0x40c00000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 196,65,52,92,243 ; vsubps %ymm11,%ymm9,%ymm14 DB 197,12,89,243 ; vmulps %ymm3,%ymm14,%ymm14 DB 184,171,170,42,63 ; mov $0x3f2aaaab,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,98,125,88,251 ; vpbroadcastd %xmm3,%ymm15 DB 197,132,92,217 ; vsubps %ymm1,%ymm15,%ymm3 DB 196,194,13,168,219 ; vfmadd213ps %ymm11,%ymm14,%ymm3 DB 196,193,116,194,255,1 ; vcmpltps %ymm15,%ymm1,%ymm7 DB 196,227,37,74,219,112 ; vblendvps %ymm7,%ymm3,%ymm11,%ymm3 DB 196,193,116,194,248,1 ; vcmpltps %ymm8,%ymm1,%ymm7 DB 196,195,101,74,249,112 ; vblendvps %ymm7,%ymm9,%ymm3,%ymm7 DB 196,193,121,110,216 ; vmovd %r8d,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,244,194,203,1 ; vcmpltps %ymm3,%ymm1,%ymm1 DB 196,194,13,168,227 ; vfmadd213ps %ymm11,%ymm14,%ymm4 DB 196,227,69,74,228,16 ; vblendvps %ymm1,%ymm4,%ymm7,%ymm4 DB 197,172,194,200,1 ; vcmpltps %ymm0,%ymm10,%ymm1 DB 196,193,124,92,250 ; vsubps %ymm10,%ymm0,%ymm7 DB 196,227,125,74,207,16 ; vblendvps %ymm1,%ymm7,%ymm0,%ymm1 DB 196,193,124,194,252,1 ; vcmpltps %ymm12,%ymm0,%ymm7 DB 197,172,88,240 ; vaddps %ymm0,%ymm10,%ymm6 DB 196,227,117,74,206,112 ; vblendvps %ymm7,%ymm6,%ymm1,%ymm1 DB 197,132,92,241 ; vsubps %ymm1,%ymm15,%ymm6 DB 196,194,13,168,243 ; vfmadd213ps %ymm11,%ymm14,%ymm6 DB 196,193,116,194,255,1 ; vcmpltps %ymm15,%ymm1,%ymm7 DB 196,227,37,74,246,112 ; vblendvps %ymm7,%ymm6,%ymm11,%ymm6 DB 196,193,116,194,248,1 ; vcmpltps %ymm8,%ymm1,%ymm7 DB 196,195,77,74,241,112 ; vblendvps %ymm7,%ymm9,%ymm6,%ymm6 DB 197,244,194,203,1 ; vcmpltps %ymm3,%ymm1,%ymm1 DB 196,193,124,92,253 ; vsubps %ymm13,%ymm0,%ymm7 DB 196,194,13,168,195 ; vfmadd213ps %ymm11,%ymm14,%ymm0 DB 196,227,77,74,200,16 ; vblendvps %ymm1,%ymm0,%ymm6,%ymm1 DB 197,172,194,199,1 ; vcmpltps %ymm7,%ymm10,%ymm0 DB 196,193,68,92,242 ; vsubps %ymm10,%ymm7,%ymm6 DB 196,227,69,74,198,0 ; vblendvps %ymm0,%ymm6,%ymm7,%ymm0 DB 196,193,68,194,244,1 ; vcmpltps %ymm12,%ymm7,%ymm6 DB 197,44,88,215 ; vaddps %ymm7,%ymm10,%ymm10 DB 196,195,125,74,194,96 ; vblendvps %ymm6,%ymm10,%ymm0,%ymm0 DB 196,194,13,168,251 ; vfmadd213ps %ymm11,%ymm14,%ymm7 DB 197,132,92,240 ; vsubps %ymm0,%ymm15,%ymm6 DB 196,194,13,168,243 ; vfmadd213ps %ymm11,%ymm14,%ymm6 DB 196,65,124,194,215,1 ; vcmpltps %ymm15,%ymm0,%ymm10 DB 196,227,37,74,246,160 ; vblendvps %ymm10,%ymm6,%ymm11,%ymm6 DB 196,65,124,194,192,1 ; vcmpltps %ymm8,%ymm0,%ymm8 DB 196,195,77,74,241,128 ; vblendvps %ymm8,%ymm9,%ymm6,%ymm6 DB 197,252,194,195,1 ; vcmpltps %ymm3,%ymm0,%ymm0 DB 196,227,77,74,223,0 ; vblendvps %ymm0,%ymm7,%ymm6,%ymm3 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,212,194,232,0 ; vcmpeqps %ymm0,%ymm5,%ymm5 DB 196,227,93,74,194,80 ; vblendvps %ymm5,%ymm2,%ymm4,%ymm0 DB 196,227,117,74,202,80 ; vblendvps %ymm5,%ymm2,%ymm1,%ymm1 DB 196,227,101,74,210,80 ; vblendvps %ymm5,%ymm2,%ymm3,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,16,28,36 ; vmovups (%rsp),%ymm3 DB 197,252,16,100,36,32 ; vmovups 0x20(%rsp),%ymm4 DB 197,252,16,108,36,64 ; vmovups 0x40(%rsp),%ymm5 DB 197,252,16,116,36,96 ; vmovups 0x60(%rsp),%ymm6 DB 197,252,16,188,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm7 DB 72,129,196,184,0,0,0 ; add $0xb8,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_scale_1_float_hsw _sk_scale_1_float_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_scale_u8_hsw _sk_scale_u8_hsw LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,1,248 ; add %rdi,%rax DB 77,133,192 ; test %r8,%r8 DB 117,56 ; jne 1109 <_sk_scale_u8_hsw+0x48> DB 197,122,126,0 ; vmovq (%rax),%xmm8 DB 196,66,125,49,192 ; vpmovzxbd %xmm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 49,201 ; xor %ecx,%ecx DB 77,137,194 ; mov %r8,%r10 DB 69,49,201 ; xor %r9d,%r9d DB 68,15,182,24 ; movzbl (%rax),%r11d DB 72,255,192 ; inc %rax DB 73,211,227 ; shl %cl,%r11 DB 77,9,217 ; or %r11,%r9 DB 72,131,193,8 ; add $0x8,%rcx DB 73,255,202 ; dec %r10 DB 117,234 ; jne 1111 <_sk_scale_u8_hsw+0x50> DB 196,65,249,110,193 ; vmovq %r9,%xmm8 DB 235,167 ; jmp 10d5 <_sk_scale_u8_hsw+0x14> PUBLIC _sk_lerp_1_float_hsw _sk_lerp_1_float_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0 DB 196,226,61,168,196 ; vfmadd213ps %ymm4,%ymm8,%ymm0 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1 DB 196,226,61,168,205 ; vfmadd213ps %ymm5,%ymm8,%ymm1 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2 DB 196,226,61,168,214 ; vfmadd213ps %ymm6,%ymm8,%ymm2 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3 DB 196,226,61,168,223 ; vfmadd213ps %ymm7,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lerp_u8_hsw _sk_lerp_u8_hsw LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,1,248 ; add %rdi,%rax DB 77,133,192 ; test %r8,%r8 DB 117,76 ; jne 11b9 <_sk_lerp_u8_hsw+0x5c> DB 197,122,126,0 ; vmovq (%rax),%xmm8 DB 196,66,125,49,192 ; vpmovzxbd %xmm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0 DB 196,226,61,168,196 ; vfmadd213ps %ymm4,%ymm8,%ymm0 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1 DB 196,226,61,168,205 ; vfmadd213ps %ymm5,%ymm8,%ymm1 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2 DB 196,226,61,168,214 ; vfmadd213ps %ymm6,%ymm8,%ymm2 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3 DB 196,226,61,168,223 ; vfmadd213ps %ymm7,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 49,201 ; xor %ecx,%ecx DB 77,137,194 ; mov %r8,%r10 DB 69,49,201 ; xor %r9d,%r9d DB 68,15,182,24 ; movzbl (%rax),%r11d DB 72,255,192 ; inc %rax DB 73,211,227 ; shl %cl,%r11 DB 77,9,217 ; or %r11,%r9 DB 72,131,193,8 ; add $0x8,%rcx DB 73,255,202 ; dec %r10 DB 117,234 ; jne 11c1 <_sk_lerp_u8_hsw+0x64> DB 196,65,249,110,193 ; vmovq %r9,%xmm8 DB 235,147 ; jmp 1171 <_sk_lerp_u8_hsw+0x14> PUBLIC _sk_lerp_565_hsw _sk_lerp_565_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 72,133,201 ; test %rcx,%rcx DB 15,133,179,0,0,0 ; jne 129f <_sk_lerp_565_hsw+0xc1> DB 196,193,122,111,28,122 ; vmovdqu (%r10,%rdi,2),%xmm3 DB 196,98,125,51,195 ; vpmovzxwd %xmm3,%ymm8 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 196,193,101,219,216 ; vpand %ymm8,%ymm3,%ymm3 DB 197,124,91,203 ; vcvtdq2ps %ymm3,%ymm9 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,52,89,203 ; vmulps %ymm3,%ymm9,%ymm9 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 196,193,101,219,216 ; vpand %ymm8,%ymm3,%ymm3 DB 197,124,91,211 ; vcvtdq2ps %ymm3,%ymm10 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,44,89,211 ; vmulps %ymm3,%ymm10,%ymm10 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 196,193,101,219,216 ; vpand %ymm8,%ymm3,%ymm3 DB 197,124,91,195 ; vcvtdq2ps %ymm3,%ymm8 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0 DB 196,226,53,168,196 ; vfmadd213ps %ymm4,%ymm9,%ymm0 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1 DB 196,226,45,168,205 ; vfmadd213ps %ymm5,%ymm10,%ymm1 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2 DB 196,226,101,168,214 ; vfmadd213ps %ymm6,%ymm3,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 197,225,239,219 ; vpxor %xmm3,%xmm3,%xmm3 DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 15,135,59,255,255,255 ; ja 11f2 <_sk_lerp_565_hsw+0x14> DB 69,15,182,192 ; movzbl %r8b,%r8d DB 76,141,13,74,0,0,0 ; lea 0x4a(%rip),%r9 # 130c <_sk_lerp_565_hsw+0x12e> DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax DB 76,1,200 ; add %r9,%rax DB 255,224 ; jmpq *%rax DB 197,225,239,219 ; vpxor %xmm3,%xmm3,%xmm3 DB 196,193,97,196,92,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm3,%xmm3 DB 196,193,97,196,92,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm3,%xmm3 DB 196,193,97,196,92,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm3,%xmm3 DB 196,193,97,196,92,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm3,%xmm3 DB 196,193,97,196,92,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm3,%xmm3 DB 196,193,97,196,92,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm3,%xmm3 DB 196,193,97,196,28,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm3,%xmm3 DB 233,231,254,255,255 ; jmpq 11f2 <_sk_lerp_565_hsw+0x14> DB 144 ; nop DB 243,255 ; repz (bad) DB 255 ; (bad) DB 255 ; (bad) DB 235,255 ; jmp 1311 <_sk_lerp_565_hsw+0x133> DB 255 ; (bad) DB 255,227 ; jmpq *%rbx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 219,255 ; (bad) DB 255 ; (bad) DB 255,211 ; callq *%rbx DB 255 ; (bad) DB 255 ; (bad) DB 255,203 ; dec %ebx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 191 ; .byte 0xbf DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_tables_hsw _sk_load_tables_hsw LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 76,3,8 ; add (%rax),%r9 DB 77,133,192 ; test %r8,%r8 DB 117,121 ; jne 13b6 <_sk_load_tables_hsw+0x8e> DB 196,193,126,111,25 ; vmovdqu (%r9),%ymm3 DB 185,255,0,0,0 ; mov $0xff,%ecx DB 197,249,110,193 ; vmovd %ecx,%xmm0 DB 196,226,125,88,208 ; vpbroadcastd %xmm0,%ymm2 DB 197,237,219,203 ; vpand %ymm3,%ymm2,%ymm1 DB 196,65,61,118,192 ; vpcmpeqd %ymm8,%ymm8,%ymm8 DB 72,139,72,8 ; mov 0x8(%rax),%rcx DB 76,139,72,16 ; mov 0x10(%rax),%r9 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9 DB 196,226,53,146,4,137 ; vgatherdps %ymm9,(%rcx,%ymm1,4),%ymm0 DB 197,245,114,211,8 ; vpsrld $0x8,%ymm3,%ymm1 DB 197,109,219,201 ; vpand %ymm1,%ymm2,%ymm9 DB 196,65,45,118,210 ; vpcmpeqd %ymm10,%ymm10,%ymm10 DB 196,130,45,146,12,137 ; vgatherdps %ymm10,(%r9,%ymm9,4),%ymm1 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 197,181,114,211,16 ; vpsrld $0x10,%ymm3,%ymm9 DB 196,65,109,219,201 ; vpand %ymm9,%ymm2,%ymm9 DB 196,162,61,146,20,136 ; vgatherdps %ymm8,(%rax,%ymm9,4),%ymm2 DB 197,229,114,211,24 ; vpsrld $0x18,%ymm3,%ymm3 DB 197,124,91,195 ; vcvtdq2ps %ymm3,%ymm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 185,8,0,0,0 ; mov $0x8,%ecx DB 68,41,193 ; sub %r8d,%ecx DB 192,225,3 ; shl $0x3,%cl DB 73,199,194,255,255,255,255 ; mov $0xffffffffffffffff,%r10 DB 73,211,234 ; shr %cl,%r10 DB 196,193,249,110,194 ; vmovq %r10,%xmm0 DB 196,226,125,33,192 ; vpmovsxbd %xmm0,%ymm0 DB 196,194,125,140,25 ; vpmaskmovd (%r9),%ymm0,%ymm3 DB 233,99,255,255,255 ; jmpq 1342 <_sk_load_tables_hsw+0x1a> PUBLIC _sk_load_tables_u16_be_hsw _sk_load_tables_u16_be_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 72,133,201 ; test %rcx,%rcx DB 15,133,216,0,0,0 ; jne 14cd <_sk_load_tables_u16_be_hsw+0xee> DB 196,1,121,16,4,72 ; vmovupd (%r8,%r9,2),%xmm8 DB 196,129,121,16,84,72,16 ; vmovupd 0x10(%r8,%r9,2),%xmm2 DB 196,129,121,16,92,72,32 ; vmovupd 0x20(%r8,%r9,2),%xmm3 DB 196,1,122,111,76,72,48 ; vmovdqu 0x30(%r8,%r9,2),%xmm9 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,113,105,235 ; vpunpckhwd %xmm3,%xmm1,%xmm13 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0 DB 196,226,125,51,192 ; vpmovzxwd %xmm0,%ymm0 DB 65,184,255,0,0,0 ; mov $0xff,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,98,125,88,209 ; vpbroadcastd %xmm1,%ymm10 DB 196,193,125,219,202 ; vpand %ymm10,%ymm0,%ymm1 DB 196,65,37,118,219 ; vpcmpeqd %ymm11,%ymm11,%ymm11 DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 76,139,72,16 ; mov 0x10(%rax),%r9 DB 196,65,29,118,228 ; vpcmpeqd %ymm12,%ymm12,%ymm12 DB 196,194,29,146,4,136 ; vgatherdps %ymm12,(%r8,%ymm1,4),%ymm0 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1 DB 196,226,125,51,201 ; vpmovzxwd %xmm1,%ymm1 DB 196,193,117,219,210 ; vpand %ymm10,%ymm1,%ymm2 DB 196,65,61,118,192 ; vpcmpeqd %ymm8,%ymm8,%ymm8 DB 196,194,61,146,12,145 ; vgatherdps %ymm8,(%r9,%ymm2,4),%ymm1 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 196,193,49,108,213 ; vpunpcklqdq %xmm13,%xmm9,%xmm2 DB 196,226,125,51,210 ; vpmovzxwd %xmm2,%ymm2 DB 196,65,109,219,194 ; vpand %ymm10,%ymm2,%ymm8 DB 196,162,37,146,20,128 ; vgatherdps %ymm11,(%rax,%ymm8,4),%ymm2 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,98,125,88,195 ; vpbroadcastd %xmm3,%ymm8 DB 196,193,49,109,221 ; vpunpckhqdq %xmm13,%xmm9,%xmm3 DB 197,177,113,243,8 ; vpsllw $0x8,%xmm3,%xmm9 DB 197,225,113,211,8 ; vpsrlw $0x8,%xmm3,%xmm3 DB 197,177,235,219 ; vpor %xmm3,%xmm9,%xmm3 DB 196,226,125,51,219 ; vpmovzxwd %xmm3,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,1,123,16,4,72 ; vmovsd (%r8,%r9,2),%xmm8 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9 DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,85 ; je 1533 <_sk_load_tables_u16_be_hsw+0x154> DB 196,1,57,22,68,72,8 ; vmovhpd 0x8(%r8,%r9,2),%xmm8,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,72 ; jb 1533 <_sk_load_tables_u16_be_hsw+0x154> DB 196,129,123,16,84,72,16 ; vmovsd 0x10(%r8,%r9,2),%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 116,72 ; je 1540 <_sk_load_tables_u16_be_hsw+0x161> DB 196,129,105,22,84,72,24 ; vmovhpd 0x18(%r8,%r9,2),%xmm2,%xmm2 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,59 ; jb 1540 <_sk_load_tables_u16_be_hsw+0x161> DB 196,129,123,16,92,72,32 ; vmovsd 0x20(%r8,%r9,2),%xmm3 DB 72,131,249,5 ; cmp $0x5,%rcx DB 15,132,250,254,255,255 ; je 1410 <_sk_load_tables_u16_be_hsw+0x31> DB 196,129,97,22,92,72,40 ; vmovhpd 0x28(%r8,%r9,2),%xmm3,%xmm3 DB 72,131,249,7 ; cmp $0x7,%rcx DB 15,130,233,254,255,255 ; jb 1410 <_sk_load_tables_u16_be_hsw+0x31> DB 196,1,122,126,76,72,48 ; vmovq 0x30(%r8,%r9,2),%xmm9 DB 233,221,254,255,255 ; jmpq 1410 <_sk_load_tables_u16_be_hsw+0x31> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2 DB 233,208,254,255,255 ; jmpq 1410 <_sk_load_tables_u16_be_hsw+0x31> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 233,199,254,255,255 ; jmpq 1410 <_sk_load_tables_u16_be_hsw+0x31> PUBLIC _sk_load_tables_rgb_u16_be_hsw _sk_load_tables_rgb_u16_be_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 76,141,12,127 ; lea (%rdi,%rdi,2),%r9 DB 72,133,201 ; test %rcx,%rcx DB 15,133,207,0,0,0 ; jne 162a <_sk_load_tables_rgb_u16_be_hsw+0xe1> DB 196,129,122,111,4,72 ; vmovdqu (%r8,%r9,2),%xmm0 DB 196,129,122,111,84,72,12 ; vmovdqu 0xc(%r8,%r9,2),%xmm2 DB 196,129,122,111,76,72,24 ; vmovdqu 0x18(%r8,%r9,2),%xmm1 DB 196,129,122,111,92,72,32 ; vmovdqu 0x20(%r8,%r9,2),%xmm3 DB 197,225,115,219,4 ; vpsrldq $0x4,%xmm3,%xmm3 DB 197,185,115,216,6 ; vpsrldq $0x6,%xmm0,%xmm8 DB 197,177,115,218,6 ; vpsrldq $0x6,%xmm2,%xmm9 DB 197,161,115,217,6 ; vpsrldq $0x6,%xmm1,%xmm11 DB 197,169,115,219,6 ; vpsrldq $0x6,%xmm3,%xmm10 DB 197,249,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm0 DB 196,193,57,97,209 ; vpunpcklwd %xmm9,%xmm8,%xmm2 DB 197,241,97,203 ; vpunpcklwd %xmm3,%xmm1,%xmm1 DB 196,193,33,97,218 ; vpunpcklwd %xmm10,%xmm11,%xmm3 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,241,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm3 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0 DB 196,226,125,51,192 ; vpmovzxwd %xmm0,%ymm0 DB 65,184,255,0,0,0 ; mov $0xff,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,98,125,88,209 ; vpbroadcastd %xmm1,%ymm10 DB 196,193,125,219,202 ; vpand %ymm10,%ymm0,%ymm1 DB 196,65,37,118,219 ; vpcmpeqd %ymm11,%ymm11,%ymm11 DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 76,139,72,16 ; mov 0x10(%rax),%r9 DB 196,65,29,118,228 ; vpcmpeqd %ymm12,%ymm12,%ymm12 DB 196,194,29,146,4,136 ; vgatherdps %ymm12,(%r8,%ymm1,4),%ymm0 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1 DB 196,226,125,51,201 ; vpmovzxwd %xmm1,%ymm1 DB 196,193,117,219,210 ; vpand %ymm10,%ymm1,%ymm2 DB 196,65,61,118,192 ; vpcmpeqd %ymm8,%ymm8,%ymm8 DB 196,194,61,146,12,145 ; vgatherdps %ymm8,(%r9,%ymm2,4),%ymm1 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 197,177,108,211 ; vpunpcklqdq %xmm3,%xmm9,%xmm2 DB 196,226,125,51,210 ; vpmovzxwd %xmm2,%ymm2 DB 196,193,109,219,218 ; vpand %ymm10,%ymm2,%ymm3 DB 196,226,37,146,20,152 ; vgatherdps %ymm11,(%rax,%ymm3,4),%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,129,121,110,4,72 ; vmovd (%r8,%r9,2),%xmm0 DB 196,129,121,196,68,72,4,2 ; vpinsrw $0x2,0x4(%r8,%r9,2),%xmm0,%xmm0 DB 72,131,249,1 ; cmp $0x1,%rcx DB 117,5 ; jne 1643 <_sk_load_tables_rgb_u16_be_hsw+0xfa> DB 233,76,255,255,255 ; jmpq 158f <_sk_load_tables_rgb_u16_be_hsw+0x46> DB 196,129,121,110,76,72,6 ; vmovd 0x6(%r8,%r9,2),%xmm1 DB 196,1,113,196,68,72,10,2 ; vpinsrw $0x2,0xa(%r8,%r9,2),%xmm1,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,26 ; jb 1672 <_sk_load_tables_rgb_u16_be_hsw+0x129> DB 196,129,121,110,76,72,12 ; vmovd 0xc(%r8,%r9,2),%xmm1 DB 196,129,113,196,84,72,16,2 ; vpinsrw $0x2,0x10(%r8,%r9,2),%xmm1,%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 117,10 ; jne 1677 <_sk_load_tables_rgb_u16_be_hsw+0x12e> DB 233,29,255,255,255 ; jmpq 158f <_sk_load_tables_rgb_u16_be_hsw+0x46> DB 233,24,255,255,255 ; jmpq 158f <_sk_load_tables_rgb_u16_be_hsw+0x46> DB 196,129,121,110,76,72,18 ; vmovd 0x12(%r8,%r9,2),%xmm1 DB 196,1,113,196,76,72,22,2 ; vpinsrw $0x2,0x16(%r8,%r9,2),%xmm1,%xmm9 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,26 ; jb 16a6 <_sk_load_tables_rgb_u16_be_hsw+0x15d> DB 196,129,121,110,76,72,24 ; vmovd 0x18(%r8,%r9,2),%xmm1 DB 196,129,113,196,76,72,28,2 ; vpinsrw $0x2,0x1c(%r8,%r9,2),%xmm1,%xmm1 DB 72,131,249,5 ; cmp $0x5,%rcx DB 117,10 ; jne 16ab <_sk_load_tables_rgb_u16_be_hsw+0x162> DB 233,233,254,255,255 ; jmpq 158f <_sk_load_tables_rgb_u16_be_hsw+0x46> DB 233,228,254,255,255 ; jmpq 158f <_sk_load_tables_rgb_u16_be_hsw+0x46> DB 196,129,121,110,92,72,30 ; vmovd 0x1e(%r8,%r9,2),%xmm3 DB 196,1,97,196,92,72,34,2 ; vpinsrw $0x2,0x22(%r8,%r9,2),%xmm3,%xmm11 DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,20 ; jb 16d4 <_sk_load_tables_rgb_u16_be_hsw+0x18b> DB 196,129,121,110,92,72,36 ; vmovd 0x24(%r8,%r9,2),%xmm3 DB 196,129,97,196,92,72,40,2 ; vpinsrw $0x2,0x28(%r8,%r9,2),%xmm3,%xmm3 DB 233,187,254,255,255 ; jmpq 158f <_sk_load_tables_rgb_u16_be_hsw+0x46> DB 233,182,254,255,255 ; jmpq 158f <_sk_load_tables_rgb_u16_be_hsw+0x46> PUBLIC _sk_byte_tables_hsw _sk_byte_tables_hsw LABEL PROC DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,127,67 ; mov $0x437f0000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8 DB 68,137,197 ; mov %r8d,%ebp DB 77,137,194 ; mov %r8,%r10 DB 73,193,234,32 ; shr $0x20,%r10 DB 196,193,249,126,192 ; vmovq %xmm0,%r8 DB 69,137,195 ; mov %r8d,%r11d DB 77,137,199 ; mov %r8,%r15 DB 73,193,239,32 ; shr $0x20,%r15 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8 DB 69,137,198 ; mov %r8d,%r14d DB 77,137,196 ; mov %r8,%r12 DB 73,193,236,32 ; shr $0x20,%r12 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,221 ; mov %ebx,%r13d DB 72,193,235,32 ; shr $0x20,%rbx DB 76,139,8 ; mov (%rax),%r9 DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 196,131,121,32,4,25,0 ; vpinsrb $0x0,(%r9,%r11,1),%xmm0,%xmm0 DB 196,131,121,32,4,57,1 ; vpinsrb $0x1,(%r9,%r15,1),%xmm0,%xmm0 DB 65,15,182,44,41 ; movzbl (%r9,%rbp,1),%ebp DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0 DB 67,15,182,44,17 ; movzbl (%r9,%r10,1),%ebp DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0 DB 67,15,182,44,41 ; movzbl (%r9,%r13,1),%ebp DB 196,227,121,32,197,4 ; vpinsrb $0x4,%ebp,%xmm0,%xmm0 DB 65,15,182,44,25 ; movzbl (%r9,%rbx,1),%ebp DB 196,227,121,32,197,5 ; vpinsrb $0x5,%ebp,%xmm0,%xmm0 DB 67,15,182,44,49 ; movzbl (%r9,%r14,1),%ebp DB 196,227,121,32,197,6 ; vpinsrb $0x6,%ebp,%xmm0,%xmm0 DB 67,15,182,44,33 ; movzbl (%r9,%r12,1),%ebp DB 196,227,121,32,197,7 ; vpinsrb $0x7,%ebp,%xmm0,%xmm0 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0 DB 197,124,91,208 ; vcvtdq2ps %ymm0,%ymm10 DB 189,129,128,128,59 ; mov $0x3b808081,%ebp DB 197,249,110,197 ; vmovd %ebp,%xmm0 DB 196,98,125,88,200 ; vpbroadcastd %xmm0,%ymm9 DB 196,193,44,89,193 ; vmulps %ymm9,%ymm10,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1 DB 196,227,249,22,205,1 ; vpextrq $0x1,%xmm1,%rbp DB 65,137,233 ; mov %ebp,%r9d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,203 ; vmovq %xmm1,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,57,201,1 ; vextracti128 $0x1,%ymm1,%xmm1 DB 196,195,249,22,203,1 ; vpextrq $0x1,%xmm1,%r11 DB 69,137,222 ; mov %r11d,%r14d DB 73,193,235,32 ; shr $0x20,%r11 DB 196,193,249,126,207 ; vmovq %xmm1,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,131,121,32,12,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm1 DB 196,195,113,32,12,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm1,%xmm1 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1 DB 67,15,182,44,32 ; movzbl (%r8,%r12,1),%ebp DB 196,227,113,32,205,4 ; vpinsrb $0x4,%ebp,%xmm1,%xmm1 DB 67,15,182,44,56 ; movzbl (%r8,%r15,1),%ebp DB 196,227,113,32,205,5 ; vpinsrb $0x5,%ebp,%xmm1,%xmm1 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp DB 196,227,113,32,205,6 ; vpinsrb $0x6,%ebp,%xmm1,%xmm1 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp DB 196,227,113,32,205,7 ; vpinsrb $0x7,%ebp,%xmm1,%xmm1 DB 196,226,125,49,201 ; vpmovzxbd %xmm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1 DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp DB 65,137,233 ; mov %ebp,%r9d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,211 ; vmovq %xmm2,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,57,210,1 ; vextracti128 $0x1,%ymm2,%xmm2 DB 196,195,249,22,211,1 ; vpextrq $0x1,%xmm2,%r11 DB 69,137,222 ; mov %r11d,%r14d DB 73,193,235,32 ; shr $0x20,%r11 DB 196,193,249,126,215 ; vmovq %xmm2,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,131,121,32,20,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm2 DB 196,195,105,32,20,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm2,%xmm2 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx DB 196,227,105,32,211,2 ; vpinsrb $0x2,%ebx,%xmm2,%xmm2 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2 DB 67,15,182,44,32 ; movzbl (%r8,%r12,1),%ebp DB 196,227,105,32,213,4 ; vpinsrb $0x4,%ebp,%xmm2,%xmm2 DB 67,15,182,44,56 ; movzbl (%r8,%r15,1),%ebp DB 196,227,105,32,213,5 ; vpinsrb $0x5,%ebp,%xmm2,%xmm2 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp DB 196,227,105,32,213,6 ; vpinsrb $0x6,%ebp,%xmm2,%xmm2 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp DB 196,227,105,32,213,7 ; vpinsrb $0x7,%ebp,%xmm2,%xmm2 DB 196,226,125,49,210 ; vpmovzxbd %xmm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3 DB 196,227,249,22,221,1 ; vpextrq $0x1,%xmm3,%rbp DB 65,137,232 ; mov %ebp,%r8d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,219 ; vmovq %xmm3,%rbx DB 65,137,217 ; mov %ebx,%r9d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,57,219,1 ; vextracti128 $0x1,%ymm3,%xmm3 DB 196,195,249,22,218,1 ; vpextrq $0x1,%xmm3,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,193,249,126,222 ; vmovq %xmm3,%r14 DB 69,137,247 ; mov %r14d,%r15d DB 73,193,238,32 ; shr $0x20,%r14 DB 196,163,121,32,28,8,0 ; vpinsrb $0x0,(%rax,%r9,1),%xmm0,%xmm3 DB 196,227,97,32,28,24,1 ; vpinsrb $0x1,(%rax,%rbx,1),%xmm3,%xmm3 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx DB 196,227,97,32,219,2 ; vpinsrb $0x2,%ebx,%xmm3,%xmm3 DB 15,182,44,40 ; movzbl (%rax,%rbp,1),%ebp DB 196,227,97,32,221,3 ; vpinsrb $0x3,%ebp,%xmm3,%xmm3 DB 66,15,182,44,56 ; movzbl (%rax,%r15,1),%ebp DB 196,227,97,32,221,4 ; vpinsrb $0x4,%ebp,%xmm3,%xmm3 DB 66,15,182,44,48 ; movzbl (%rax,%r14,1),%ebp DB 196,227,97,32,221,5 ; vpinsrb $0x5,%ebp,%xmm3,%xmm3 DB 66,15,182,44,24 ; movzbl (%rax,%r11,1),%ebp DB 196,227,97,32,221,6 ; vpinsrb $0x6,%ebp,%xmm3,%xmm3 DB 66,15,182,4,16 ; movzbl (%rax,%r10,1),%eax DB 196,227,97,32,216,7 ; vpinsrb $0x7,%eax,%xmm3,%xmm3 DB 196,226,125,49,219 ; vpmovzxbd %xmm3,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 197,180,89,219 ; vmulps %ymm3,%ymm9,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax PUBLIC _sk_byte_tables_rgb_hsw _sk_byte_tables_rgb_hsw LABEL PROC DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 68,139,64,24 ; mov 0x18(%rax),%r8d DB 65,255,200 ; dec %r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8 DB 68,137,197 ; mov %r8d,%ebp DB 77,137,194 ; mov %r8,%r10 DB 73,193,234,32 ; shr $0x20,%r10 DB 196,193,249,126,192 ; vmovq %xmm0,%r8 DB 69,137,195 ; mov %r8d,%r11d DB 77,137,199 ; mov %r8,%r15 DB 73,193,239,32 ; shr $0x20,%r15 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8 DB 69,137,198 ; mov %r8d,%r14d DB 77,137,196 ; mov %r8,%r12 DB 73,193,236,32 ; shr $0x20,%r12 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,221 ; mov %ebx,%r13d DB 72,193,235,32 ; shr $0x20,%rbx DB 76,139,8 ; mov (%rax),%r9 DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 196,131,121,32,4,25,0 ; vpinsrb $0x0,(%r9,%r11,1),%xmm0,%xmm0 DB 196,131,121,32,4,57,1 ; vpinsrb $0x1,(%r9,%r15,1),%xmm0,%xmm0 DB 65,15,182,44,41 ; movzbl (%r9,%rbp,1),%ebp DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0 DB 67,15,182,44,17 ; movzbl (%r9,%r10,1),%ebp DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0 DB 67,15,182,44,41 ; movzbl (%r9,%r13,1),%ebp DB 196,227,121,32,197,4 ; vpinsrb $0x4,%ebp,%xmm0,%xmm0 DB 65,15,182,44,25 ; movzbl (%r9,%rbx,1),%ebp DB 196,227,121,32,197,5 ; vpinsrb $0x5,%ebp,%xmm0,%xmm0 DB 67,15,182,44,49 ; movzbl (%r9,%r14,1),%ebp DB 196,227,121,32,197,6 ; vpinsrb $0x6,%ebp,%xmm0,%xmm0 DB 67,15,182,44,33 ; movzbl (%r9,%r12,1),%ebp DB 196,227,121,32,197,7 ; vpinsrb $0x7,%ebp,%xmm0,%xmm0 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0 DB 197,124,91,208 ; vcvtdq2ps %ymm0,%ymm10 DB 189,129,128,128,59 ; mov $0x3b808081,%ebp DB 197,249,110,197 ; vmovd %ebp,%xmm0 DB 196,98,125,88,200 ; vpbroadcastd %xmm0,%ymm9 DB 196,193,44,89,193 ; vmulps %ymm9,%ymm10,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1 DB 196,227,249,22,205,1 ; vpextrq $0x1,%xmm1,%rbp DB 65,137,233 ; mov %ebp,%r9d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,203 ; vmovq %xmm1,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,57,201,1 ; vextracti128 $0x1,%ymm1,%xmm1 DB 196,195,249,22,203,1 ; vpextrq $0x1,%xmm1,%r11 DB 69,137,222 ; mov %r11d,%r14d DB 73,193,235,32 ; shr $0x20,%r11 DB 196,193,249,126,207 ; vmovq %xmm1,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,131,121,32,12,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm1 DB 196,195,113,32,12,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm1,%xmm1 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1 DB 67,15,182,44,32 ; movzbl (%r8,%r12,1),%ebp DB 196,227,113,32,205,4 ; vpinsrb $0x4,%ebp,%xmm1,%xmm1 DB 67,15,182,44,56 ; movzbl (%r8,%r15,1),%ebp DB 196,227,113,32,205,5 ; vpinsrb $0x5,%ebp,%xmm1,%xmm1 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp DB 196,227,113,32,205,6 ; vpinsrb $0x6,%ebp,%xmm1,%xmm1 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp DB 196,227,113,32,205,7 ; vpinsrb $0x7,%ebp,%xmm1,%xmm1 DB 196,226,125,49,201 ; vpmovzxbd %xmm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1 DB 72,139,64,16 ; mov 0x10(%rax),%rax DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp DB 65,137,232 ; mov %ebp,%r8d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,211 ; vmovq %xmm2,%rbx DB 65,137,217 ; mov %ebx,%r9d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,57,210,1 ; vextracti128 $0x1,%ymm2,%xmm2 DB 196,195,249,22,210,1 ; vpextrq $0x1,%xmm2,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,193,249,126,214 ; vmovq %xmm2,%r14 DB 69,137,247 ; mov %r14d,%r15d DB 73,193,238,32 ; shr $0x20,%r14 DB 196,163,121,32,20,8,0 ; vpinsrb $0x0,(%rax,%r9,1),%xmm0,%xmm2 DB 196,227,105,32,20,24,1 ; vpinsrb $0x1,(%rax,%rbx,1),%xmm2,%xmm2 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx DB 196,227,105,32,211,2 ; vpinsrb $0x2,%ebx,%xmm2,%xmm2 DB 15,182,44,40 ; movzbl (%rax,%rbp,1),%ebp DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2 DB 66,15,182,44,56 ; movzbl (%rax,%r15,1),%ebp DB 196,227,105,32,213,4 ; vpinsrb $0x4,%ebp,%xmm2,%xmm2 DB 66,15,182,44,48 ; movzbl (%rax,%r14,1),%ebp DB 196,227,105,32,213,5 ; vpinsrb $0x5,%ebp,%xmm2,%xmm2 DB 66,15,182,44,24 ; movzbl (%rax,%r11,1),%ebp DB 196,227,105,32,213,6 ; vpinsrb $0x6,%ebp,%xmm2,%xmm2 DB 66,15,182,4,16 ; movzbl (%rax,%r10,1),%eax DB 196,227,105,32,208,7 ; vpinsrb $0x7,%eax,%xmm2,%xmm2 DB 196,226,125,49,210 ; vpmovzxbd %xmm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax PUBLIC _sk_table_r_hsw _sk_table_r_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,125,91,192 ; vcvtps2dq %ymm0,%ymm8 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9 DB 196,130,53,146,4,128 ; vgatherdps %ymm9,(%r8,%ymm8,4),%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_g_hsw _sk_table_g_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,125,91,193 ; vcvtps2dq %ymm1,%ymm8 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9 DB 196,130,53,146,12,128 ; vgatherdps %ymm9,(%r8,%ymm8,4),%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_b_hsw _sk_table_b_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,125,91,194 ; vcvtps2dq %ymm2,%ymm8 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9 DB 196,130,53,146,20,128 ; vgatherdps %ymm9,(%r8,%ymm8,4),%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_a_hsw _sk_table_a_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 197,125,91,195 ; vcvtps2dq %ymm3,%ymm8 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9 DB 196,130,53,146,28,128 ; vgatherdps %ymm9,(%r8,%ymm8,4),%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_r_hsw _sk_parametric_r_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,65,124,194,192,2 ; vcmpleps %ymm8,%ymm0,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 196,66,125,168,202 ; vfmadd213ps %ymm10,%ymm0,%ymm9 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 196,66,125,168,211 ; vfmadd213ps %ymm11,%ymm0,%ymm10 DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0 DB 196,65,124,91,218 ; vcvtdq2ps %ymm10,%ymm11 DB 196,98,125,24,37,231,36,0,0 ; vbroadcastss 0x24e7(%rip),%ymm12 # 41ac <_sk_callback_hsw+0x122> DB 196,98,125,24,45,226,36,0,0 ; vbroadcastss 0x24e2(%rip),%ymm13 # 41b0 <_sk_callback_hsw+0x126> DB 196,65,44,84,213 ; vandps %ymm13,%ymm10,%ymm10 DB 196,98,125,24,45,216,36,0,0 ; vbroadcastss 0x24d8(%rip),%ymm13 # 41b4 <_sk_callback_hsw+0x12a> DB 196,65,44,86,213 ; vorps %ymm13,%ymm10,%ymm10 DB 196,98,125,24,45,206,36,0,0 ; vbroadcastss 0x24ce(%rip),%ymm13 # 41b8 <_sk_callback_hsw+0x12e> DB 196,66,37,184,236 ; vfmadd231ps %ymm12,%ymm11,%ymm13 DB 196,98,125,24,29,196,36,0,0 ; vbroadcastss 0x24c4(%rip),%ymm11 # 41bc <_sk_callback_hsw+0x132> DB 196,66,45,172,221 ; vfnmadd213ps %ymm13,%ymm10,%ymm11 DB 196,98,125,24,37,186,36,0,0 ; vbroadcastss 0x24ba(%rip),%ymm12 # 41c0 <_sk_callback_hsw+0x136> DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10 DB 196,98,125,24,37,176,36,0,0 ; vbroadcastss 0x24b0(%rip),%ymm12 # 41c4 <_sk_callback_hsw+0x13a> DB 196,65,28,94,210 ; vdivps %ymm10,%ymm12,%ymm10 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10 DB 196,193,124,89,194 ; vmulps %ymm10,%ymm0,%ymm0 DB 196,99,125,8,208,1 ; vroundps $0x1,%ymm0,%ymm10 DB 196,65,124,92,210 ; vsubps %ymm10,%ymm0,%ymm10 DB 196,98,125,24,29,145,36,0,0 ; vbroadcastss 0x2491(%rip),%ymm11 # 41c8 <_sk_callback_hsw+0x13e> DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0 DB 196,98,125,24,29,135,36,0,0 ; vbroadcastss 0x2487(%rip),%ymm11 # 41cc <_sk_callback_hsw+0x142> DB 196,98,45,172,216 ; vfnmadd213ps %ymm0,%ymm10,%ymm11 DB 196,226,125,24,5,125,36,0,0 ; vbroadcastss 0x247d(%rip),%ymm0 # 41d0 <_sk_callback_hsw+0x146> DB 196,193,124,92,194 ; vsubps %ymm10,%ymm0,%ymm0 DB 196,98,125,24,21,115,36,0,0 ; vbroadcastss 0x2473(%rip),%ymm10 # 41d4 <_sk_callback_hsw+0x14a> DB 197,172,94,192 ; vdivps %ymm0,%ymm10,%ymm0 DB 197,164,88,192 ; vaddps %ymm0,%ymm11,%ymm0 DB 196,98,125,24,21,102,36,0,0 ; vbroadcastss 0x2466(%rip),%ymm10 # 41d8 <_sk_callback_hsw+0x14e> DB 196,193,124,89,194 ; vmulps %ymm10,%ymm0,%ymm0 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0 DB 196,195,125,74,193,128 ; vblendvps %ymm8,%ymm9,%ymm0,%ymm0 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,188,93,192 ; vminps %ymm0,%ymm8,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_g_hsw _sk_parametric_g_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,65,116,194,192,2 ; vcmpleps %ymm8,%ymm1,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 196,66,117,168,202 ; vfmadd213ps %ymm10,%ymm1,%ymm9 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 196,66,117,168,211 ; vfmadd213ps %ymm11,%ymm1,%ymm10 DB 196,226,125,24,8 ; vbroadcastss (%rax),%ymm1 DB 196,65,124,91,218 ; vcvtdq2ps %ymm10,%ymm11 DB 196,98,125,24,37,237,35,0,0 ; vbroadcastss 0x23ed(%rip),%ymm12 # 41dc <_sk_callback_hsw+0x152> DB 196,98,125,24,45,232,35,0,0 ; vbroadcastss 0x23e8(%rip),%ymm13 # 41e0 <_sk_callback_hsw+0x156> DB 196,65,44,84,213 ; vandps %ymm13,%ymm10,%ymm10 DB 196,98,125,24,45,222,35,0,0 ; vbroadcastss 0x23de(%rip),%ymm13 # 41e4 <_sk_callback_hsw+0x15a> DB 196,65,44,86,213 ; vorps %ymm13,%ymm10,%ymm10 DB 196,98,125,24,45,212,35,0,0 ; vbroadcastss 0x23d4(%rip),%ymm13 # 41e8 <_sk_callback_hsw+0x15e> DB 196,66,37,184,236 ; vfmadd231ps %ymm12,%ymm11,%ymm13 DB 196,98,125,24,29,202,35,0,0 ; vbroadcastss 0x23ca(%rip),%ymm11 # 41ec <_sk_callback_hsw+0x162> DB 196,66,45,172,221 ; vfnmadd213ps %ymm13,%ymm10,%ymm11 DB 196,98,125,24,37,192,35,0,0 ; vbroadcastss 0x23c0(%rip),%ymm12 # 41f0 <_sk_callback_hsw+0x166> DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10 DB 196,98,125,24,37,182,35,0,0 ; vbroadcastss 0x23b6(%rip),%ymm12 # 41f4 <_sk_callback_hsw+0x16a> DB 196,65,28,94,210 ; vdivps %ymm10,%ymm12,%ymm10 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10 DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1 DB 196,99,125,8,209,1 ; vroundps $0x1,%ymm1,%ymm10 DB 196,65,116,92,210 ; vsubps %ymm10,%ymm1,%ymm10 DB 196,98,125,24,29,151,35,0,0 ; vbroadcastss 0x2397(%rip),%ymm11 # 41f8 <_sk_callback_hsw+0x16e> DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1 DB 196,98,125,24,29,141,35,0,0 ; vbroadcastss 0x238d(%rip),%ymm11 # 41fc <_sk_callback_hsw+0x172> DB 196,98,45,172,217 ; vfnmadd213ps %ymm1,%ymm10,%ymm11 DB 196,226,125,24,13,131,35,0,0 ; vbroadcastss 0x2383(%rip),%ymm1 # 4200 <_sk_callback_hsw+0x176> DB 196,193,116,92,202 ; vsubps %ymm10,%ymm1,%ymm1 DB 196,98,125,24,21,121,35,0,0 ; vbroadcastss 0x2379(%rip),%ymm10 # 4204 <_sk_callback_hsw+0x17a> DB 197,172,94,201 ; vdivps %ymm1,%ymm10,%ymm1 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1 DB 196,98,125,24,21,108,35,0,0 ; vbroadcastss 0x236c(%rip),%ymm10 # 4208 <_sk_callback_hsw+0x17e> DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1 DB 196,195,117,74,201,128 ; vblendvps %ymm8,%ymm9,%ymm1,%ymm1 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,116,95,192 ; vmaxps %ymm8,%ymm1,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,188,93,201 ; vminps %ymm1,%ymm8,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_b_hsw _sk_parametric_b_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,65,108,194,192,2 ; vcmpleps %ymm8,%ymm2,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 196,66,109,168,202 ; vfmadd213ps %ymm10,%ymm2,%ymm9 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 196,66,109,168,211 ; vfmadd213ps %ymm11,%ymm2,%ymm10 DB 196,226,125,24,16 ; vbroadcastss (%rax),%ymm2 DB 196,65,124,91,218 ; vcvtdq2ps %ymm10,%ymm11 DB 196,98,125,24,37,243,34,0,0 ; vbroadcastss 0x22f3(%rip),%ymm12 # 420c <_sk_callback_hsw+0x182> DB 196,98,125,24,45,238,34,0,0 ; vbroadcastss 0x22ee(%rip),%ymm13 # 4210 <_sk_callback_hsw+0x186> DB 196,65,44,84,213 ; vandps %ymm13,%ymm10,%ymm10 DB 196,98,125,24,45,228,34,0,0 ; vbroadcastss 0x22e4(%rip),%ymm13 # 4214 <_sk_callback_hsw+0x18a> DB 196,65,44,86,213 ; vorps %ymm13,%ymm10,%ymm10 DB 196,98,125,24,45,218,34,0,0 ; vbroadcastss 0x22da(%rip),%ymm13 # 4218 <_sk_callback_hsw+0x18e> DB 196,66,37,184,236 ; vfmadd231ps %ymm12,%ymm11,%ymm13 DB 196,98,125,24,29,208,34,0,0 ; vbroadcastss 0x22d0(%rip),%ymm11 # 421c <_sk_callback_hsw+0x192> DB 196,66,45,172,221 ; vfnmadd213ps %ymm13,%ymm10,%ymm11 DB 196,98,125,24,37,198,34,0,0 ; vbroadcastss 0x22c6(%rip),%ymm12 # 4220 <_sk_callback_hsw+0x196> DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10 DB 196,98,125,24,37,188,34,0,0 ; vbroadcastss 0x22bc(%rip),%ymm12 # 4224 <_sk_callback_hsw+0x19a> DB 196,65,28,94,210 ; vdivps %ymm10,%ymm12,%ymm10 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10 DB 196,193,108,89,210 ; vmulps %ymm10,%ymm2,%ymm2 DB 196,99,125,8,210,1 ; vroundps $0x1,%ymm2,%ymm10 DB 196,65,108,92,210 ; vsubps %ymm10,%ymm2,%ymm10 DB 196,98,125,24,29,157,34,0,0 ; vbroadcastss 0x229d(%rip),%ymm11 # 4228 <_sk_callback_hsw+0x19e> DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2 DB 196,98,125,24,29,147,34,0,0 ; vbroadcastss 0x2293(%rip),%ymm11 # 422c <_sk_callback_hsw+0x1a2> DB 196,98,45,172,218 ; vfnmadd213ps %ymm2,%ymm10,%ymm11 DB 196,226,125,24,21,137,34,0,0 ; vbroadcastss 0x2289(%rip),%ymm2 # 4230 <_sk_callback_hsw+0x1a6> DB 196,193,108,92,210 ; vsubps %ymm10,%ymm2,%ymm2 DB 196,98,125,24,21,127,34,0,0 ; vbroadcastss 0x227f(%rip),%ymm10 # 4234 <_sk_callback_hsw+0x1aa> DB 197,172,94,210 ; vdivps %ymm2,%ymm10,%ymm2 DB 197,164,88,210 ; vaddps %ymm2,%ymm11,%ymm2 DB 196,98,125,24,21,114,34,0,0 ; vbroadcastss 0x2272(%rip),%ymm10 # 4238 <_sk_callback_hsw+0x1ae> DB 196,193,108,89,210 ; vmulps %ymm10,%ymm2,%ymm2 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2 DB 196,195,109,74,209,128 ; vblendvps %ymm8,%ymm9,%ymm2,%ymm2 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,108,95,192 ; vmaxps %ymm8,%ymm2,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 197,188,93,210 ; vminps %ymm2,%ymm8,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_a_hsw _sk_parametric_a_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,65,100,194,192,2 ; vcmpleps %ymm8,%ymm3,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 196,66,101,168,202 ; vfmadd213ps %ymm10,%ymm3,%ymm9 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 196,66,101,168,211 ; vfmadd213ps %ymm11,%ymm3,%ymm10 DB 196,226,125,24,24 ; vbroadcastss (%rax),%ymm3 DB 196,65,124,91,218 ; vcvtdq2ps %ymm10,%ymm11 DB 196,98,125,24,37,249,33,0,0 ; vbroadcastss 0x21f9(%rip),%ymm12 # 423c <_sk_callback_hsw+0x1b2> DB 196,98,125,24,45,244,33,0,0 ; vbroadcastss 0x21f4(%rip),%ymm13 # 4240 <_sk_callback_hsw+0x1b6> DB 196,65,44,84,213 ; vandps %ymm13,%ymm10,%ymm10 DB 196,98,125,24,45,234,33,0,0 ; vbroadcastss 0x21ea(%rip),%ymm13 # 4244 <_sk_callback_hsw+0x1ba> DB 196,65,44,86,213 ; vorps %ymm13,%ymm10,%ymm10 DB 196,98,125,24,45,224,33,0,0 ; vbroadcastss 0x21e0(%rip),%ymm13 # 4248 <_sk_callback_hsw+0x1be> DB 196,66,37,184,236 ; vfmadd231ps %ymm12,%ymm11,%ymm13 DB 196,98,125,24,29,214,33,0,0 ; vbroadcastss 0x21d6(%rip),%ymm11 # 424c <_sk_callback_hsw+0x1c2> DB 196,66,45,172,221 ; vfnmadd213ps %ymm13,%ymm10,%ymm11 DB 196,98,125,24,37,204,33,0,0 ; vbroadcastss 0x21cc(%rip),%ymm12 # 4250 <_sk_callback_hsw+0x1c6> DB 196,65,44,88,212 ; vaddps %ymm12,%ymm10,%ymm10 DB 196,98,125,24,37,194,33,0,0 ; vbroadcastss 0x21c2(%rip),%ymm12 # 4254 <_sk_callback_hsw+0x1ca> DB 196,65,28,94,210 ; vdivps %ymm10,%ymm12,%ymm10 DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10 DB 196,193,100,89,218 ; vmulps %ymm10,%ymm3,%ymm3 DB 196,99,125,8,211,1 ; vroundps $0x1,%ymm3,%ymm10 DB 196,65,100,92,210 ; vsubps %ymm10,%ymm3,%ymm10 DB 196,98,125,24,29,163,33,0,0 ; vbroadcastss 0x21a3(%rip),%ymm11 # 4258 <_sk_callback_hsw+0x1ce> DB 196,193,100,88,219 ; vaddps %ymm11,%ymm3,%ymm3 DB 196,98,125,24,29,153,33,0,0 ; vbroadcastss 0x2199(%rip),%ymm11 # 425c <_sk_callback_hsw+0x1d2> DB 196,98,45,172,219 ; vfnmadd213ps %ymm3,%ymm10,%ymm11 DB 196,226,125,24,29,143,33,0,0 ; vbroadcastss 0x218f(%rip),%ymm3 # 4260 <_sk_callback_hsw+0x1d6> DB 196,193,100,92,218 ; vsubps %ymm10,%ymm3,%ymm3 DB 196,98,125,24,21,133,33,0,0 ; vbroadcastss 0x2185(%rip),%ymm10 # 4264 <_sk_callback_hsw+0x1da> DB 197,172,94,219 ; vdivps %ymm3,%ymm10,%ymm3 DB 197,164,88,219 ; vaddps %ymm3,%ymm11,%ymm3 DB 196,98,125,24,21,120,33,0,0 ; vbroadcastss 0x2178(%rip),%ymm10 # 4268 <_sk_callback_hsw+0x1de> DB 196,193,100,89,218 ; vmulps %ymm10,%ymm3,%ymm3 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,193,100,88,218 ; vaddps %ymm10,%ymm3,%ymm3 DB 196,195,101,74,217,128 ; vblendvps %ymm8,%ymm9,%ymm3,%ymm3 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,100,95,192 ; vmaxps %ymm8,%ymm3,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,188,93,219 ; vminps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lab_to_xyz_hsw _sk_lab_to_xyz_hsw LABEL PROC DB 184,0,0,200,66 ; mov $0x42c80000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 184,0,0,127,67 ; mov $0x437f0000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 184,0,0,0,67 ; mov $0x43000000,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 196,194,53,170,202 ; vfmsub213ps %ymm10,%ymm9,%ymm1 DB 196,194,53,170,210 ; vfmsub213ps %ymm10,%ymm9,%ymm2 DB 184,0,0,128,65 ; mov $0x41800000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 196,66,125,168,193 ; vfmadd213ps %ymm9,%ymm0,%ymm8 DB 184,203,61,13,60 ; mov $0x3c0d3dcb,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8 DB 184,111,18,3,59 ; mov $0x3b03126f,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 196,194,117,168,192 ; vfmadd213ps %ymm8,%ymm1,%ymm0 DB 184,10,215,163,59 ; mov $0x3ba3d70a,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,201 ; vpbroadcastd %xmm1,%ymm9 DB 196,66,109,172,200 ; vfnmadd213ps %ymm8,%ymm2,%ymm9 DB 197,252,89,200 ; vmulps %ymm0,%ymm0,%ymm1 DB 197,124,89,217 ; vmulps %ymm1,%ymm0,%ymm11 DB 184,194,24,17,60 ; mov $0x3c1118c2,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 196,65,108,194,211,1 ; vcmpltps %ymm11,%ymm2,%ymm10 DB 184,203,61,13,62 ; mov $0x3e0d3dcb,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,225 ; vpbroadcastd %xmm1,%ymm12 DB 196,193,124,92,196 ; vsubps %ymm12,%ymm0,%ymm0 DB 184,80,128,3,62 ; mov $0x3e038050,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,233 ; vpbroadcastd %xmm1,%ymm13 DB 196,193,124,89,197 ; vmulps %ymm13,%ymm0,%ymm0 DB 196,67,125,74,219,160 ; vblendvps %ymm10,%ymm11,%ymm0,%ymm11 DB 196,193,60,89,200 ; vmulps %ymm8,%ymm8,%ymm1 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,108,194,209,1 ; vcmpltps %ymm1,%ymm2,%ymm10 DB 196,65,60,92,196 ; vsubps %ymm12,%ymm8,%ymm8 DB 196,65,60,89,197 ; vmulps %ymm13,%ymm8,%ymm8 DB 196,227,61,74,201,160 ; vblendvps %ymm10,%ymm1,%ymm8,%ymm1 DB 196,65,52,89,193 ; vmulps %ymm9,%ymm9,%ymm8 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8 DB 196,193,108,194,208,1 ; vcmpltps %ymm8,%ymm2,%ymm2 DB 196,65,52,92,204 ; vsubps %ymm12,%ymm9,%ymm9 DB 196,65,52,89,205 ; vmulps %ymm13,%ymm9,%ymm9 DB 196,67,53,74,192,32 ; vblendvps %ymm2,%ymm8,%ymm9,%ymm8 DB 184,31,215,118,63 ; mov $0x3f76d71f,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,164,89,192 ; vmulps %ymm0,%ymm11,%ymm0 DB 184,246,64,83,63 ; mov $0x3f5340f6,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_a8_hsw _sk_load_a8_hsw LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,1,248 ; add %rdi,%rax DB 77,133,192 ; test %r8,%r8 DB 117,50 ; jne 2299 <_sk_load_a8_hsw+0x42> DB 197,250,126,0 ; vmovq (%rax),%xmm0 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,252,89,217 ; vmulps %ymm1,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 49,201 ; xor %ecx,%ecx DB 77,137,194 ; mov %r8,%r10 DB 69,49,201 ; xor %r9d,%r9d DB 68,15,182,24 ; movzbl (%rax),%r11d DB 72,255,192 ; inc %rax DB 73,211,227 ; shl %cl,%r11 DB 77,9,217 ; or %r11,%r9 DB 72,131,193,8 ; add $0x8,%rcx DB 73,255,202 ; dec %r10 DB 117,234 ; jne 22a1 <_sk_load_a8_hsw+0x4a> DB 196,193,249,110,193 ; vmovq %r9,%xmm0 DB 235,173 ; jmp 226b <_sk_load_a8_hsw+0x14> PUBLIC _sk_gather_a8_hsw _sk_gather_a8_hsw LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,194 ; vmovq %xmm0,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,199 ; vmovq %xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,131,121,32,4,24,0 ; vpinsrb $0x0,(%r8,%r11,1),%xmm0,%xmm0 DB 196,131,121,32,4,16,1 ; vpinsrb $0x1,(%r8,%r10,1),%xmm0,%xmm0 DB 71,15,182,12,8 ; movzbl (%r8,%r9,1),%r9d DB 196,195,121,32,193,2 ; vpinsrb $0x2,%r9d,%xmm0,%xmm0 DB 65,15,182,4,0 ; movzbl (%r8,%rax,1),%eax DB 196,227,121,32,192,3 ; vpinsrb $0x3,%eax,%xmm0,%xmm0 DB 67,15,182,4,32 ; movzbl (%r8,%r12,1),%eax DB 196,227,121,32,192,4 ; vpinsrb $0x4,%eax,%xmm0,%xmm0 DB 67,15,182,4,56 ; movzbl (%r8,%r15,1),%eax DB 196,227,121,32,192,5 ; vpinsrb $0x5,%eax,%xmm0,%xmm0 DB 67,15,182,4,48 ; movzbl (%r8,%r14,1),%eax DB 196,227,121,32,192,6 ; vpinsrb $0x6,%eax,%xmm0,%xmm0 DB 65,15,182,4,24 ; movzbl (%r8,%rbx,1),%eax DB 196,227,121,32,192,7 ; vpinsrb $0x7,%eax,%xmm0,%xmm0 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,252,89,217 ; vmulps %ymm1,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,237,239,210 ; vpxor %ymm2,%ymm2,%ymm2 DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_store_a8_hsw _sk_store_a8_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 184,0,0,127,67 ; mov $0x437f0000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8 DB 196,65,57,103,192 ; vpackuswb %xmm8,%xmm8,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,10 ; jne 23d6 <_sk_store_a8_hsw+0x3b> DB 196,65,123,17,4,57 ; vmovsd %xmm8,(%r9,%rdi,1) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 119,236 ; ja 23d2 <_sk_store_a8_hsw+0x37> DB 196,66,121,48,192 ; vpmovzxbw %xmm8,%xmm8 DB 65,15,182,192 ; movzbl %r8b,%eax DB 76,141,5,66,0,0,0 ; lea 0x42(%rip),%r8 # 2438 <_sk_store_a8_hsw+0x9d> DB 73,99,4,128 ; movslq (%r8,%rax,4),%rax DB 76,1,192 ; add %r8,%rax DB 255,224 ; jmpq *%rax DB 196,67,121,20,68,57,6,12 ; vpextrb $0xc,%xmm8,0x6(%r9,%rdi,1) DB 196,67,121,20,68,57,5,10 ; vpextrb $0xa,%xmm8,0x5(%r9,%rdi,1) DB 196,67,121,20,68,57,4,8 ; vpextrb $0x8,%xmm8,0x4(%r9,%rdi,1) DB 196,67,121,20,68,57,3,6 ; vpextrb $0x6,%xmm8,0x3(%r9,%rdi,1) DB 196,67,121,20,68,57,2,4 ; vpextrb $0x4,%xmm8,0x2(%r9,%rdi,1) DB 196,67,121,20,68,57,1,2 ; vpextrb $0x2,%xmm8,0x1(%r9,%rdi,1) DB 196,67,121,20,4,57,0 ; vpextrb $0x0,%xmm8,(%r9,%rdi,1) DB 235,154 ; jmp 23d2 <_sk_store_a8_hsw+0x37> DB 247,255 ; idiv %edi DB 255 ; (bad) DB 255 ; (bad) DB 239 ; out %eax,(%dx) DB 255 ; (bad) DB 255 ; (bad) DB 255,231 ; jmpq *%rdi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 223,255 ; (bad) DB 255 ; (bad) DB 255,215 ; callq *%rdi DB 255 ; (bad) DB 255 ; (bad) DB 255,207 ; dec %edi DB 255 ; (bad) DB 255 ; (bad) DB 255,199 ; inc %edi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_g8_hsw _sk_load_g8_hsw LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,1,248 ; add %rdi,%rax DB 77,133,192 ; test %r8,%r8 DB 117,60 ; jne 24a0 <_sk_load_g8_hsw+0x4c> DB 197,250,126,0 ; vmovq (%rax),%xmm0 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,217 ; vpbroadcastd %xmm1,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 197,252,40,200 ; vmovaps %ymm0,%ymm1 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2 DB 255,224 ; jmpq *%rax DB 49,201 ; xor %ecx,%ecx DB 77,137,194 ; mov %r8,%r10 DB 69,49,201 ; xor %r9d,%r9d DB 68,15,182,24 ; movzbl (%rax),%r11d DB 72,255,192 ; inc %rax DB 73,211,227 ; shl %cl,%r11 DB 77,9,217 ; or %r11,%r9 DB 72,131,193,8 ; add $0x8,%rcx DB 73,255,202 ; dec %r10 DB 117,234 ; jne 24a8 <_sk_load_g8_hsw+0x54> DB 196,193,249,110,193 ; vmovq %r9,%xmm0 DB 235,163 ; jmp 2468 <_sk_load_g8_hsw+0x14> PUBLIC _sk_gather_g8_hsw _sk_gather_g8_hsw LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,194 ; vmovq %xmm0,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,199 ; vmovq %xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,131,121,32,4,24,0 ; vpinsrb $0x0,(%r8,%r11,1),%xmm0,%xmm0 DB 196,131,121,32,4,16,1 ; vpinsrb $0x1,(%r8,%r10,1),%xmm0,%xmm0 DB 71,15,182,12,8 ; movzbl (%r8,%r9,1),%r9d DB 196,195,121,32,193,2 ; vpinsrb $0x2,%r9d,%xmm0,%xmm0 DB 65,15,182,4,0 ; movzbl (%r8,%rax,1),%eax DB 196,227,121,32,192,3 ; vpinsrb $0x3,%eax,%xmm0,%xmm0 DB 67,15,182,4,32 ; movzbl (%r8,%r12,1),%eax DB 196,227,121,32,192,4 ; vpinsrb $0x4,%eax,%xmm0,%xmm0 DB 67,15,182,4,56 ; movzbl (%r8,%r15,1),%eax DB 196,227,121,32,192,5 ; vpinsrb $0x5,%eax,%xmm0,%xmm0 DB 67,15,182,4,48 ; movzbl (%r8,%r14,1),%eax DB 196,227,121,32,192,6 ; vpinsrb $0x6,%eax,%xmm0,%xmm0 DB 65,15,182,4,24 ; movzbl (%r8,%rbx,1),%eax DB 196,227,121,32,192,7 ; vpinsrb $0x7,%eax,%xmm0,%xmm0 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,217 ; vpbroadcastd %xmm1,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,200 ; vmovaps %ymm0,%ymm1 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2 DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_i8_hsw _sk_gather_i8_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 73,137,192 ; mov %rax,%r8 DB 77,133,192 ; test %r8,%r8 DB 116,5 ; je 25bb <_sk_gather_i8_hsw+0xf> DB 76,137,192 ; mov %r8,%rax DB 235,2 ; jmp 25bd <_sk_gather_i8_hsw+0x11> DB 72,173 ; lods %ds:(%rsi),%rax DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 76,139,8 ; mov (%rax),%r9 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax DB 65,137,194 ; mov %eax,%r10d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,195 ; vmovq %xmm0,%r11 DB 69,137,222 ; mov %r11d,%r14d DB 73,193,235,32 ; shr $0x20,%r11 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,223 ; mov %ebx,%r15d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,196 ; vmovq %xmm0,%r12 DB 69,137,229 ; mov %r12d,%r13d DB 73,193,236,32 ; shr $0x20,%r12 DB 196,131,121,32,4,49,0 ; vpinsrb $0x0,(%r9,%r14,1),%xmm0,%xmm0 DB 196,131,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%r11,1),%xmm0,%xmm0 DB 196,131,121,32,4,17,2 ; vpinsrb $0x2,(%r9,%r10,1),%xmm0,%xmm0 DB 196,195,121,32,4,1,3 ; vpinsrb $0x3,(%r9,%rax,1),%xmm0,%xmm0 DB 196,131,121,32,4,41,4 ; vpinsrb $0x4,(%r9,%r13,1),%xmm0,%xmm0 DB 196,131,121,32,4,33,5 ; vpinsrb $0x5,(%r9,%r12,1),%xmm0,%xmm0 DB 196,131,121,32,4,57,6 ; vpinsrb $0x6,(%r9,%r15,1),%xmm0,%xmm0 DB 196,195,121,32,4,25,7 ; vpinsrb $0x7,(%r9,%rbx,1),%xmm0,%xmm0 DB 196,226,125,49,192 ; vpmovzxbd %xmm0,%ymm0 DB 73,139,64,8 ; mov 0x8(%r8),%rax DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1 DB 196,226,117,144,28,128 ; vpgatherdd %ymm1,(%rax,%ymm0,4),%ymm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,208 ; vpbroadcastd %xmm0,%ymm2 DB 197,237,219,195 ; vpand %ymm3,%ymm2,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,193 ; vpbroadcastd %xmm1,%ymm8 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0 DB 197,245,114,211,8 ; vpsrld $0x8,%ymm3,%ymm1 DB 197,237,219,201 ; vpand %ymm1,%ymm2,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1 DB 197,181,114,211,16 ; vpsrld $0x10,%ymm3,%ymm9 DB 196,193,109,219,209 ; vpand %ymm9,%ymm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2 DB 197,229,114,211,24 ; vpsrld $0x18,%ymm3,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_load_565_hsw _sk_load_565_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 72,133,201 ; test %rcx,%rcx DB 15,133,149,0,0,0 ; jne 276f <_sk_load_565_hsw+0xa3> DB 196,193,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm0 DB 196,226,125,51,208 ; vpmovzxwd %xmm0,%ymm2 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,253,219,194 ; vpand %ymm2,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,245,219,202 ; vpand %ymm2,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,229,219,210 ; vpand %ymm2,%ymm3,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0 DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 15,135,89,255,255,255 ; ja 26e0 <_sk_load_565_hsw+0x14> DB 69,15,182,192 ; movzbl %r8b,%r8d DB 76,141,13,74,0,0,0 ; lea 0x4a(%rip),%r9 # 27dc <_sk_load_565_hsw+0x110> DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax DB 76,1,200 ; add %r9,%rax DB 255,224 ; jmpq *%rax DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0 DB 196,193,121,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm0,%xmm0 DB 233,5,255,255,255 ; jmpq 26e0 <_sk_load_565_hsw+0x14> DB 144 ; nop DB 243,255 ; repz (bad) DB 255 ; (bad) DB 255 ; (bad) DB 235,255 ; jmp 27e1 <_sk_load_565_hsw+0x115> DB 255 ; (bad) DB 255,227 ; jmpq *%rbx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 219,255 ; (bad) DB 255 ; (bad) DB 255,211 ; callq *%rbx DB 255 ; (bad) DB 255 ; (bad) DB 255,203 ; dec %ebx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 191 ; .byte 0xbf DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_gather_565_hsw _sk_gather_565_hsw LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,194 ; vmovq %xmm0,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,199 ; vmovq %xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 71,15,183,20,80 ; movzwl (%r8,%r10,2),%r10d DB 71,15,183,28,88 ; movzwl (%r8,%r11,2),%r11d DB 196,193,121,110,195 ; vmovd %r11d,%xmm0 DB 196,193,121,196,194,1 ; vpinsrw $0x1,%r10d,%xmm0,%xmm0 DB 71,15,183,12,72 ; movzwl (%r8,%r9,2),%r9d DB 196,193,121,196,193,2 ; vpinsrw $0x2,%r9d,%xmm0,%xmm0 DB 65,15,183,4,64 ; movzwl (%r8,%rax,2),%eax DB 197,249,196,192,3 ; vpinsrw $0x3,%eax,%xmm0,%xmm0 DB 67,15,183,4,96 ; movzwl (%r8,%r12,2),%eax DB 197,249,196,192,4 ; vpinsrw $0x4,%eax,%xmm0,%xmm0 DB 67,15,183,4,120 ; movzwl (%r8,%r15,2),%eax DB 197,249,196,192,5 ; vpinsrw $0x5,%eax,%xmm0,%xmm0 DB 67,15,183,4,112 ; movzwl (%r8,%r14,2),%eax DB 197,249,196,192,6 ; vpinsrw $0x6,%eax,%xmm0,%xmm0 DB 65,15,183,4,88 ; movzwl (%r8,%rbx,2),%eax DB 197,249,196,192,7 ; vpinsrw $0x7,%eax,%xmm0,%xmm0 DB 196,226,125,51,208 ; vpmovzxwd %xmm0,%ymm2 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,253,219,194 ; vpand %ymm2,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,245,219,202 ; vpand %ymm2,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,229,219,210 ; vpand %ymm2,%ymm3,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_store_565_hsw _sk_store_565_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 184,0,0,248,65 ; mov $0x41f80000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9 DB 196,193,53,114,241,11 ; vpslld $0xb,%ymm9,%ymm9 DB 184,0,0,124,66 ; mov $0x427c0000,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 197,44,89,209 ; vmulps %ymm1,%ymm10,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,45,114,242,5 ; vpslld $0x5,%ymm10,%ymm10 DB 196,65,45,235,201 ; vpor %ymm9,%ymm10,%ymm9 DB 197,60,89,194 ; vmulps %ymm2,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,65,53,235,192 ; vpor %ymm8,%ymm9,%ymm8 DB 196,67,125,57,193,1 ; vextracti128 $0x1,%ymm8,%xmm9 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,10 ; jne 29a7 <_sk_store_565_hsw+0x6c> DB 196,65,122,127,4,121 ; vmovdqu %xmm8,(%r9,%rdi,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 119,236 ; ja 29a3 <_sk_store_565_hsw+0x68> DB 65,15,182,192 ; movzbl %r8b,%eax DB 76,141,5,66,0,0,0 ; lea 0x42(%rip),%r8 # 2a04 <_sk_store_565_hsw+0xc9> DB 73,99,4,128 ; movslq (%r8,%rax,4),%rax DB 76,1,192 ; add %r8,%rax DB 255,224 ; jmpq *%rax DB 196,67,121,21,68,121,12,6 ; vpextrw $0x6,%xmm8,0xc(%r9,%rdi,2) DB 196,67,121,21,68,121,10,5 ; vpextrw $0x5,%xmm8,0xa(%r9,%rdi,2) DB 196,67,121,21,68,121,8,4 ; vpextrw $0x4,%xmm8,0x8(%r9,%rdi,2) DB 196,67,121,21,68,121,6,3 ; vpextrw $0x3,%xmm8,0x6(%r9,%rdi,2) DB 196,67,121,21,68,121,4,2 ; vpextrw $0x2,%xmm8,0x4(%r9,%rdi,2) DB 196,67,121,21,68,121,2,1 ; vpextrw $0x1,%xmm8,0x2(%r9,%rdi,2) DB 196,67,121,21,4,121,0 ; vpextrw $0x0,%xmm8,(%r9,%rdi,2) DB 235,159 ; jmp 29a3 <_sk_store_565_hsw+0x68> DB 247,255 ; idiv %edi DB 255 ; (bad) DB 255 ; (bad) DB 239 ; out %eax,(%dx) DB 255 ; (bad) DB 255 ; (bad) DB 255,231 ; jmpq *%rdi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 223,255 ; (bad) DB 255 ; (bad) DB 255,215 ; callq *%rdi DB 255 ; (bad) DB 255 ; (bad) DB 255,207 ; dec %edi DB 255 ; (bad) DB 255 ; (bad) DB 255,199 ; inc %edi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_4444_hsw _sk_load_4444_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 72,133,201 ; test %rcx,%rcx DB 15,133,179,0,0,0 ; jne 2ae1 <_sk_load_4444_hsw+0xc1> DB 196,193,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm0 DB 196,98,125,51,200 ; vpmovzxwd %xmm0,%ymm9 DB 184,0,240,0,0 ; mov $0xf000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 196,193,125,219,193 ; vpand %ymm9,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,137,136,136,55 ; mov $0x37888889,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,0,15,0,0 ; mov $0xf00,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 196,193,117,219,201 ; vpand %ymm9,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 184,137,136,136,57 ; mov $0x39888889,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1 DB 184,240,0,0,0 ; mov $0xf0,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 196,193,109,219,209 ; vpand %ymm9,%ymm2,%ymm2 DB 197,124,91,194 ; vcvtdq2ps %ymm2,%ymm8 DB 184,137,136,136,59 ; mov $0x3b888889,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 184,15,0,0,0 ; mov $0xf,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 196,193,101,219,217 ; vpand %ymm9,%ymm3,%ymm3 DB 197,124,91,195 ; vcvtdq2ps %ymm3,%ymm8 DB 184,137,136,136,61 ; mov $0x3d888889,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0 DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 15,135,59,255,255,255 ; ja 2a34 <_sk_load_4444_hsw+0x14> DB 69,15,182,192 ; movzbl %r8b,%r8d DB 76,141,13,76,0,0,0 ; lea 0x4c(%rip),%r9 # 2b50 <_sk_load_4444_hsw+0x130> DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax DB 76,1,200 ; add %r9,%rax DB 255,224 ; jmpq *%rax DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0 DB 196,193,121,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm0,%xmm0 DB 233,231,254,255,255 ; jmpq 2a34 <_sk_load_4444_hsw+0x14> DB 15,31,0 ; nopl (%rax) DB 241 ; icebp DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 233,255,255,255,225 ; jmpq ffffffffe2002b58 <_sk_callback_hsw+0xffffffffe1ffeace> DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 217,255 ; fcos DB 255 ; (bad) DB 255,209 ; callq *%rcx DB 255 ; (bad) DB 255 ; (bad) DB 255,201 ; dec %ecx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 189 ; .byte 0xbd DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_gather_4444_hsw _sk_gather_4444_hsw LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,194 ; vmovq %xmm0,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,199 ; vmovq %xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 71,15,183,20,80 ; movzwl (%r8,%r10,2),%r10d DB 71,15,183,28,88 ; movzwl (%r8,%r11,2),%r11d DB 196,193,121,110,195 ; vmovd %r11d,%xmm0 DB 196,193,121,196,194,1 ; vpinsrw $0x1,%r10d,%xmm0,%xmm0 DB 71,15,183,12,72 ; movzwl (%r8,%r9,2),%r9d DB 196,193,121,196,193,2 ; vpinsrw $0x2,%r9d,%xmm0,%xmm0 DB 65,15,183,4,64 ; movzwl (%r8,%rax,2),%eax DB 197,249,196,192,3 ; vpinsrw $0x3,%eax,%xmm0,%xmm0 DB 67,15,183,4,96 ; movzwl (%r8,%r12,2),%eax DB 197,249,196,192,4 ; vpinsrw $0x4,%eax,%xmm0,%xmm0 DB 67,15,183,4,120 ; movzwl (%r8,%r15,2),%eax DB 197,249,196,192,5 ; vpinsrw $0x5,%eax,%xmm0,%xmm0 DB 67,15,183,4,112 ; movzwl (%r8,%r14,2),%eax DB 197,249,196,192,6 ; vpinsrw $0x6,%eax,%xmm0,%xmm0 DB 65,15,183,4,88 ; movzwl (%r8,%rbx,2),%eax DB 197,249,196,192,7 ; vpinsrw $0x7,%eax,%xmm0,%xmm0 DB 196,98,125,51,200 ; vpmovzxwd %xmm0,%ymm9 DB 184,0,240,0,0 ; mov $0xf000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 196,193,125,219,193 ; vpand %ymm9,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,137,136,136,55 ; mov $0x37888889,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,0,15,0,0 ; mov $0xf00,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 196,193,117,219,201 ; vpand %ymm9,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 184,137,136,136,57 ; mov $0x39888889,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1 DB 184,240,0,0,0 ; mov $0xf0,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 196,193,109,219,209 ; vpand %ymm9,%ymm2,%ymm2 DB 197,124,91,194 ; vcvtdq2ps %ymm2,%ymm8 DB 184,137,136,136,59 ; mov $0x3b888889,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,226,125,88,210 ; vpbroadcastd %xmm2,%ymm2 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 184,15,0,0,0 ; mov $0xf,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 196,193,101,219,217 ; vpand %ymm9,%ymm3,%ymm3 DB 197,124,91,195 ; vcvtdq2ps %ymm3,%ymm8 DB 184,137,136,136,61 ; mov $0x3d888889,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_store_4444_hsw _sk_store_4444_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 184,0,0,112,65 ; mov $0x41700000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9 DB 196,193,53,114,241,12 ; vpslld $0xc,%ymm9,%ymm9 DB 197,60,89,209 ; vmulps %ymm1,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,45,114,242,8 ; vpslld $0x8,%ymm10,%ymm10 DB 196,65,45,235,201 ; vpor %ymm9,%ymm10,%ymm9 DB 197,60,89,210 ; vmulps %ymm2,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,45,114,242,4 ; vpslld $0x4,%ymm10,%ymm10 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,65,45,235,192 ; vpor %ymm8,%ymm10,%ymm8 DB 196,65,53,235,192 ; vpor %ymm8,%ymm9,%ymm8 DB 196,67,125,57,193,1 ; vextracti128 $0x1,%ymm8,%xmm9 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,10 ; jne 2d3f <_sk_store_4444_hsw+0x72> DB 196,65,122,127,4,121 ; vmovdqu %xmm8,(%r9,%rdi,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 119,236 ; ja 2d3b <_sk_store_4444_hsw+0x6e> DB 65,15,182,192 ; movzbl %r8b,%eax DB 76,141,5,66,0,0,0 ; lea 0x42(%rip),%r8 # 2d9c <_sk_store_4444_hsw+0xcf> DB 73,99,4,128 ; movslq (%r8,%rax,4),%rax DB 76,1,192 ; add %r8,%rax DB 255,224 ; jmpq *%rax DB 196,67,121,21,68,121,12,6 ; vpextrw $0x6,%xmm8,0xc(%r9,%rdi,2) DB 196,67,121,21,68,121,10,5 ; vpextrw $0x5,%xmm8,0xa(%r9,%rdi,2) DB 196,67,121,21,68,121,8,4 ; vpextrw $0x4,%xmm8,0x8(%r9,%rdi,2) DB 196,67,121,21,68,121,6,3 ; vpextrw $0x3,%xmm8,0x6(%r9,%rdi,2) DB 196,67,121,21,68,121,4,2 ; vpextrw $0x2,%xmm8,0x4(%r9,%rdi,2) DB 196,67,121,21,68,121,2,1 ; vpextrw $0x1,%xmm8,0x2(%r9,%rdi,2) DB 196,67,121,21,4,121,0 ; vpextrw $0x0,%xmm8,(%r9,%rdi,2) DB 235,159 ; jmp 2d3b <_sk_store_4444_hsw+0x6e> DB 247,255 ; idiv %edi DB 255 ; (bad) DB 255 ; (bad) DB 239 ; out %eax,(%dx) DB 255 ; (bad) DB 255 ; (bad) DB 255,231 ; jmpq *%rdi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 223,255 ; (bad) DB 255 ; (bad) DB 255,215 ; callq *%rdi DB 255 ; (bad) DB 255 ; (bad) DB 255,207 ; dec %edi DB 255 ; (bad) DB 255 ; (bad) DB 255,199 ; inc %edi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_8888_hsw _sk_load_8888_hsw LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 76,3,8 ; add (%rax),%r9 DB 77,133,192 ; test %r8,%r8 DB 117,104 ; jne 2e35 <_sk_load_8888_hsw+0x7d> DB 196,193,126,111,25 ; vmovdqu (%r9),%ymm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,208 ; vpbroadcastd %xmm0,%ymm2 DB 197,237,219,195 ; vpand %ymm3,%ymm2,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,193 ; vpbroadcastd %xmm1,%ymm8 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0 DB 197,245,114,211,8 ; vpsrld $0x8,%ymm3,%ymm1 DB 197,237,219,201 ; vpand %ymm1,%ymm2,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1 DB 197,181,114,211,16 ; vpsrld $0x10,%ymm3,%ymm9 DB 196,193,109,219,209 ; vpand %ymm9,%ymm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2 DB 197,229,114,211,24 ; vpsrld $0x18,%ymm3,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 185,8,0,0,0 ; mov $0x8,%ecx DB 68,41,193 ; sub %r8d,%ecx DB 192,225,3 ; shl $0x3,%cl DB 72,199,192,255,255,255,255 ; mov $0xffffffffffffffff,%rax DB 72,211,232 ; shr %cl,%rax DB 196,225,249,110,192 ; vmovq %rax,%xmm0 DB 196,226,125,33,192 ; vpmovsxbd %xmm0,%ymm0 DB 196,194,125,140,25 ; vpmaskmovd (%r9),%ymm0,%ymm3 DB 233,116,255,255,255 ; jmpq 2dd2 <_sk_load_8888_hsw+0x1a> PUBLIC _sk_gather_8888_hsw _sk_gather_8888_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1 DB 196,194,117,144,28,128 ; vpgatherdd %ymm1,(%r8,%ymm0,4),%ymm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,208 ; vpbroadcastd %xmm0,%ymm2 DB 197,237,219,195 ; vpand %ymm3,%ymm2,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,98,125,88,193 ; vpbroadcastd %xmm1,%ymm8 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0 DB 197,245,114,211,8 ; vpsrld $0x8,%ymm3,%ymm1 DB 197,237,219,201 ; vpand %ymm1,%ymm2,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1 DB 197,181,114,211,16 ; vpsrld $0x10,%ymm3,%ymm9 DB 196,193,109,219,209 ; vpand %ymm9,%ymm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2 DB 197,229,114,211,24 ; vpsrld $0x18,%ymm3,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_8888_hsw _sk_store_8888_hsw LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 76,3,8 ; add (%rax),%r9 DB 184,0,0,127,67 ; mov $0x437f0000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9 DB 197,60,89,209 ; vmulps %ymm1,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,45,114,242,8 ; vpslld $0x8,%ymm10,%ymm10 DB 196,65,45,235,201 ; vpor %ymm9,%ymm10,%ymm9 DB 197,60,89,210 ; vmulps %ymm2,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,45,114,242,16 ; vpslld $0x10,%ymm10,%ymm10 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,193,61,114,240,24 ; vpslld $0x18,%ymm8,%ymm8 DB 196,65,45,235,192 ; vpor %ymm8,%ymm10,%ymm8 DB 196,65,53,235,192 ; vpor %ymm8,%ymm9,%ymm8 DB 77,133,192 ; test %r8,%r8 DB 117,12 ; jne 2f58 <_sk_store_8888_hsw+0x74> DB 196,65,126,127,1 ; vmovdqu %ymm8,(%r9) DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 185,8,0,0,0 ; mov $0x8,%ecx DB 68,41,193 ; sub %r8d,%ecx DB 192,225,3 ; shl $0x3,%cl DB 72,199,192,255,255,255,255 ; mov $0xffffffffffffffff,%rax DB 72,211,232 ; shr %cl,%rax DB 196,97,249,110,200 ; vmovq %rax,%xmm9 DB 196,66,125,33,201 ; vpmovsxbd %xmm9,%ymm9 DB 196,66,53,142,1 ; vpmaskmovd %ymm8,%ymm9,(%r9) DB 235,211 ; jmp 2f51 <_sk_store_8888_hsw+0x6d> PUBLIC _sk_load_f16_hsw _sk_load_f16_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,133,201 ; test %rcx,%rcx DB 117,97 ; jne 2fe9 <_sk_load_f16_hsw+0x6b> DB 197,121,16,4,248 ; vmovupd (%rax,%rdi,8),%xmm8 DB 197,249,16,84,248,16 ; vmovupd 0x10(%rax,%rdi,8),%xmm2 DB 197,249,16,92,248,32 ; vmovupd 0x20(%rax,%rdi,8),%xmm3 DB 197,122,111,76,248,48 ; vmovdqu 0x30(%rax,%rdi,8),%xmm9 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,241,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm3 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0 DB 196,226,125,19,192 ; vcvtph2ps %xmm0,%ymm0 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1 DB 196,226,125,19,201 ; vcvtph2ps %xmm1,%ymm1 DB 197,177,108,211 ; vpunpcklqdq %xmm3,%xmm9,%xmm2 DB 196,226,125,19,210 ; vcvtph2ps %xmm2,%ymm2 DB 197,177,109,219 ; vpunpckhqdq %xmm3,%xmm9,%xmm3 DB 196,226,125,19,219 ; vcvtph2ps %xmm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 197,123,16,4,248 ; vmovsd (%rax,%rdi,8),%xmm8 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9 DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,79 ; je 3048 <_sk_load_f16_hsw+0xca> DB 197,57,22,68,248,8 ; vmovhpd 0x8(%rax,%rdi,8),%xmm8,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,67 ; jb 3048 <_sk_load_f16_hsw+0xca> DB 197,251,16,84,248,16 ; vmovsd 0x10(%rax,%rdi,8),%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 116,68 ; je 3055 <_sk_load_f16_hsw+0xd7> DB 197,233,22,84,248,24 ; vmovhpd 0x18(%rax,%rdi,8),%xmm2,%xmm2 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,56 ; jb 3055 <_sk_load_f16_hsw+0xd7> DB 197,251,16,92,248,32 ; vmovsd 0x20(%rax,%rdi,8),%xmm3 DB 72,131,249,5 ; cmp $0x5,%rcx DB 15,132,114,255,255,255 ; je 2f9f <_sk_load_f16_hsw+0x21> DB 197,225,22,92,248,40 ; vmovhpd 0x28(%rax,%rdi,8),%xmm3,%xmm3 DB 72,131,249,7 ; cmp $0x7,%rcx DB 15,130,98,255,255,255 ; jb 2f9f <_sk_load_f16_hsw+0x21> DB 197,122,126,76,248,48 ; vmovq 0x30(%rax,%rdi,8),%xmm9 DB 233,87,255,255,255 ; jmpq 2f9f <_sk_load_f16_hsw+0x21> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2 DB 233,74,255,255,255 ; jmpq 2f9f <_sk_load_f16_hsw+0x21> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 233,65,255,255,255 ; jmpq 2f9f <_sk_load_f16_hsw+0x21> PUBLIC _sk_gather_f16_hsw _sk_gather_f16_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1 DB 196,226,125,88,80,16 ; vpbroadcastd 0x10(%rax),%ymm2 DB 196,226,109,64,201 ; vpmulld %ymm1,%ymm2,%ymm1 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 197,245,254,192 ; vpaddd %ymm0,%ymm1,%ymm0 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1 DB 197,237,118,210 ; vpcmpeqd %ymm2,%ymm2,%ymm2 DB 196,194,237,144,28,192 ; vpgatherdq %ymm2,(%r8,%xmm0,8),%ymm3 DB 196,227,125,57,192,1 ; vextracti128 $0x1,%ymm0,%xmm0 DB 196,194,245,144,20,192 ; vpgatherdq %ymm1,(%r8,%xmm0,8),%ymm2 DB 196,227,125,57,216,1 ; vextracti128 $0x1,%ymm3,%xmm0 DB 196,227,125,57,209,1 ; vextracti128 $0x1,%ymm2,%xmm1 DB 197,97,97,192 ; vpunpcklwd %xmm0,%xmm3,%xmm8 DB 197,225,105,192 ; vpunpckhwd %xmm0,%xmm3,%xmm0 DB 197,233,97,217 ; vpunpcklwd %xmm1,%xmm2,%xmm3 DB 197,233,105,201 ; vpunpckhwd %xmm1,%xmm2,%xmm1 DB 197,57,97,200 ; vpunpcklwd %xmm0,%xmm8,%xmm9 DB 197,57,105,192 ; vpunpckhwd %xmm0,%xmm8,%xmm8 DB 197,225,97,209 ; vpunpcklwd %xmm1,%xmm3,%xmm2 DB 197,225,105,217 ; vpunpckhwd %xmm1,%xmm3,%xmm3 DB 197,177,108,194 ; vpunpcklqdq %xmm2,%xmm9,%xmm0 DB 196,226,125,19,192 ; vcvtph2ps %xmm0,%ymm0 DB 197,177,109,202 ; vpunpckhqdq %xmm2,%xmm9,%xmm1 DB 196,226,125,19,201 ; vcvtph2ps %xmm1,%ymm1 DB 197,185,108,211 ; vpunpcklqdq %xmm3,%xmm8,%xmm2 DB 196,226,125,19,210 ; vcvtph2ps %xmm2,%ymm2 DB 197,185,109,219 ; vpunpckhqdq %xmm3,%xmm8,%xmm3 DB 196,226,125,19,219 ; vcvtph2ps %xmm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_f16_hsw _sk_store_f16_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 196,195,125,29,192,4 ; vcvtps2ph $0x4,%ymm0,%xmm8 DB 196,195,125,29,201,4 ; vcvtps2ph $0x4,%ymm1,%xmm9 DB 196,195,125,29,210,4 ; vcvtps2ph $0x4,%ymm2,%xmm10 DB 196,195,125,29,219,4 ; vcvtps2ph $0x4,%ymm3,%xmm11 DB 196,65,57,97,225 ; vpunpcklwd %xmm9,%xmm8,%xmm12 DB 196,65,57,105,193 ; vpunpckhwd %xmm9,%xmm8,%xmm8 DB 196,65,41,97,203 ; vpunpcklwd %xmm11,%xmm10,%xmm9 DB 196,65,41,105,235 ; vpunpckhwd %xmm11,%xmm10,%xmm13 DB 196,65,25,98,217 ; vpunpckldq %xmm9,%xmm12,%xmm11 DB 196,65,25,106,209 ; vpunpckhdq %xmm9,%xmm12,%xmm10 DB 196,65,57,98,205 ; vpunpckldq %xmm13,%xmm8,%xmm9 DB 196,65,57,106,197 ; vpunpckhdq %xmm13,%xmm8,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,27 ; jne 314d <_sk_store_f16_hsw+0x65> DB 197,120,17,28,248 ; vmovups %xmm11,(%rax,%rdi,8) DB 197,120,17,84,248,16 ; vmovups %xmm10,0x10(%rax,%rdi,8) DB 197,120,17,76,248,32 ; vmovups %xmm9,0x20(%rax,%rdi,8) DB 197,122,127,68,248,48 ; vmovdqu %xmm8,0x30(%rax,%rdi,8) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 197,121,214,28,248 ; vmovq %xmm11,(%rax,%rdi,8) DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,241 ; je 3149 <_sk_store_f16_hsw+0x61> DB 197,121,23,92,248,8 ; vmovhpd %xmm11,0x8(%rax,%rdi,8) DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,229 ; jb 3149 <_sk_store_f16_hsw+0x61> DB 197,121,214,84,248,16 ; vmovq %xmm10,0x10(%rax,%rdi,8) DB 116,221 ; je 3149 <_sk_store_f16_hsw+0x61> DB 197,121,23,84,248,24 ; vmovhpd %xmm10,0x18(%rax,%rdi,8) DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,209 ; jb 3149 <_sk_store_f16_hsw+0x61> DB 197,121,214,76,248,32 ; vmovq %xmm9,0x20(%rax,%rdi,8) DB 116,201 ; je 3149 <_sk_store_f16_hsw+0x61> DB 197,121,23,76,248,40 ; vmovhpd %xmm9,0x28(%rax,%rdi,8) DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,189 ; jb 3149 <_sk_store_f16_hsw+0x61> DB 197,121,214,68,248,48 ; vmovq %xmm8,0x30(%rax,%rdi,8) DB 235,181 ; jmp 3149 <_sk_store_f16_hsw+0x61> PUBLIC _sk_load_u16_be_hsw _sk_load_u16_be_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax DB 72,133,201 ; test %rcx,%rcx DB 15,133,205,0,0,0 ; jne 3277 <_sk_load_u16_be_hsw+0xe3> DB 196,65,121,16,4,64 ; vmovupd (%r8,%rax,2),%xmm8 DB 196,193,121,16,84,64,16 ; vmovupd 0x10(%r8,%rax,2),%xmm2 DB 196,193,121,16,92,64,32 ; vmovupd 0x20(%r8,%rax,2),%xmm3 DB 196,65,122,111,76,64,48 ; vmovdqu 0x30(%r8,%rax,2),%xmm9 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,113,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm11 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,98,125,88,208 ; vpbroadcastd %xmm0,%ymm10 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0 DB 197,241,113,240,8 ; vpsllw $0x8,%xmm0,%xmm1 DB 197,249,113,208,8 ; vpsrlw $0x8,%xmm0,%xmm0 DB 197,241,235,192 ; vpor %xmm0,%xmm1,%xmm0 DB 196,226,125,51,192 ; vpmovzxwd %xmm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1 DB 197,233,113,241,8 ; vpsllw $0x8,%xmm1,%xmm2 DB 197,241,113,209,8 ; vpsrlw $0x8,%xmm1,%xmm1 DB 197,233,235,201 ; vpor %xmm1,%xmm2,%xmm1 DB 196,226,125,51,201 ; vpmovzxwd %xmm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1 DB 196,193,49,108,211 ; vpunpcklqdq %xmm11,%xmm9,%xmm2 DB 197,225,113,242,8 ; vpsllw $0x8,%xmm2,%xmm3 DB 197,233,113,210,8 ; vpsrlw $0x8,%xmm2,%xmm2 DB 197,225,235,210 ; vpor %xmm2,%xmm3,%xmm2 DB 196,226,125,51,210 ; vpmovzxwd %xmm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2 DB 196,193,49,109,219 ; vpunpckhqdq %xmm11,%xmm9,%xmm3 DB 197,185,113,243,8 ; vpsllw $0x8,%xmm3,%xmm8 DB 197,225,113,211,8 ; vpsrlw $0x8,%xmm3,%xmm3 DB 197,185,235,219 ; vpor %xmm3,%xmm8,%xmm3 DB 196,226,125,51,219 ; vpmovzxwd %xmm3,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 197,172,89,219 ; vmulps %ymm3,%ymm10,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,65,123,16,4,64 ; vmovsd (%r8,%rax,2),%xmm8 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9 DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,85 ; je 32dd <_sk_load_u16_be_hsw+0x149> DB 196,65,57,22,68,64,8 ; vmovhpd 0x8(%r8,%rax,2),%xmm8,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,72 ; jb 32dd <_sk_load_u16_be_hsw+0x149> DB 196,193,123,16,84,64,16 ; vmovsd 0x10(%r8,%rax,2),%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 116,72 ; je 32ea <_sk_load_u16_be_hsw+0x156> DB 196,193,105,22,84,64,24 ; vmovhpd 0x18(%r8,%rax,2),%xmm2,%xmm2 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,59 ; jb 32ea <_sk_load_u16_be_hsw+0x156> DB 196,193,123,16,92,64,32 ; vmovsd 0x20(%r8,%rax,2),%xmm3 DB 72,131,249,5 ; cmp $0x5,%rcx DB 15,132,5,255,255,255 ; je 31c5 <_sk_load_u16_be_hsw+0x31> DB 196,193,97,22,92,64,40 ; vmovhpd 0x28(%r8,%rax,2),%xmm3,%xmm3 DB 72,131,249,7 ; cmp $0x7,%rcx DB 15,130,244,254,255,255 ; jb 31c5 <_sk_load_u16_be_hsw+0x31> DB 196,65,122,126,76,64,48 ; vmovq 0x30(%r8,%rax,2),%xmm9 DB 233,232,254,255,255 ; jmpq 31c5 <_sk_load_u16_be_hsw+0x31> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2 DB 233,219,254,255,255 ; jmpq 31c5 <_sk_load_u16_be_hsw+0x31> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 233,210,254,255,255 ; jmpq 31c5 <_sk_load_u16_be_hsw+0x31> PUBLIC _sk_load_rgb_u16_be_hsw _sk_load_rgb_u16_be_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 72,141,4,127 ; lea (%rdi,%rdi,2),%rax DB 72,133,201 ; test %rcx,%rcx DB 15,133,211,0,0,0 ; jne 33d8 <_sk_load_rgb_u16_be_hsw+0xe5> DB 196,193,122,111,4,64 ; vmovdqu (%r8,%rax,2),%xmm0 DB 196,193,122,111,84,64,12 ; vmovdqu 0xc(%r8,%rax,2),%xmm2 DB 196,193,122,111,76,64,24 ; vmovdqu 0x18(%r8,%rax,2),%xmm1 DB 196,193,122,111,92,64,32 ; vmovdqu 0x20(%r8,%rax,2),%xmm3 DB 197,225,115,219,4 ; vpsrldq $0x4,%xmm3,%xmm3 DB 197,185,115,216,6 ; vpsrldq $0x6,%xmm0,%xmm8 DB 197,177,115,218,6 ; vpsrldq $0x6,%xmm2,%xmm9 DB 197,161,115,217,6 ; vpsrldq $0x6,%xmm1,%xmm11 DB 197,169,115,219,6 ; vpsrldq $0x6,%xmm3,%xmm10 DB 197,249,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm0 DB 196,193,57,97,209 ; vpunpcklwd %xmm9,%xmm8,%xmm2 DB 197,241,97,203 ; vpunpcklwd %xmm3,%xmm1,%xmm1 DB 196,193,33,97,218 ; vpunpcklwd %xmm10,%xmm11,%xmm3 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,241,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm3 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,98,125,88,208 ; vpbroadcastd %xmm0,%ymm10 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0 DB 197,241,113,240,8 ; vpsllw $0x8,%xmm0,%xmm1 DB 197,249,113,208,8 ; vpsrlw $0x8,%xmm0,%xmm0 DB 197,241,235,192 ; vpor %xmm0,%xmm1,%xmm0 DB 196,226,125,51,192 ; vpmovzxwd %xmm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1 DB 197,233,113,241,8 ; vpsllw $0x8,%xmm1,%xmm2 DB 197,241,113,209,8 ; vpsrlw $0x8,%xmm1,%xmm1 DB 197,233,235,201 ; vpor %xmm1,%xmm2,%xmm1 DB 196,226,125,51,201 ; vpmovzxwd %xmm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1 DB 197,177,108,211 ; vpunpcklqdq %xmm3,%xmm9,%xmm2 DB 197,225,113,242,8 ; vpsllw $0x8,%xmm2,%xmm3 DB 197,233,113,210,8 ; vpsrlw $0x8,%xmm2,%xmm2 DB 197,225,235,210 ; vpor %xmm2,%xmm3,%xmm2 DB 196,226,125,51,210 ; vpmovzxwd %xmm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,193,121,110,4,64 ; vmovd (%r8,%rax,2),%xmm0 DB 196,193,121,196,68,64,4,2 ; vpinsrw $0x2,0x4(%r8,%rax,2),%xmm0,%xmm0 DB 72,131,249,1 ; cmp $0x1,%rcx DB 117,5 ; jne 33f1 <_sk_load_rgb_u16_be_hsw+0xfe> DB 233,72,255,255,255 ; jmpq 3339 <_sk_load_rgb_u16_be_hsw+0x46> DB 196,193,121,110,76,64,6 ; vmovd 0x6(%r8,%rax,2),%xmm1 DB 196,65,113,196,68,64,10,2 ; vpinsrw $0x2,0xa(%r8,%rax,2),%xmm1,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,26 ; jb 3420 <_sk_load_rgb_u16_be_hsw+0x12d> DB 196,193,121,110,76,64,12 ; vmovd 0xc(%r8,%rax,2),%xmm1 DB 196,193,113,196,84,64,16,2 ; vpinsrw $0x2,0x10(%r8,%rax,2),%xmm1,%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 117,10 ; jne 3425 <_sk_load_rgb_u16_be_hsw+0x132> DB 233,25,255,255,255 ; jmpq 3339 <_sk_load_rgb_u16_be_hsw+0x46> DB 233,20,255,255,255 ; jmpq 3339 <_sk_load_rgb_u16_be_hsw+0x46> DB 196,193,121,110,76,64,18 ; vmovd 0x12(%r8,%rax,2),%xmm1 DB 196,65,113,196,76,64,22,2 ; vpinsrw $0x2,0x16(%r8,%rax,2),%xmm1,%xmm9 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,26 ; jb 3454 <_sk_load_rgb_u16_be_hsw+0x161> DB 196,193,121,110,76,64,24 ; vmovd 0x18(%r8,%rax,2),%xmm1 DB 196,193,113,196,76,64,28,2 ; vpinsrw $0x2,0x1c(%r8,%rax,2),%xmm1,%xmm1 DB 72,131,249,5 ; cmp $0x5,%rcx DB 117,10 ; jne 3459 <_sk_load_rgb_u16_be_hsw+0x166> DB 233,229,254,255,255 ; jmpq 3339 <_sk_load_rgb_u16_be_hsw+0x46> DB 233,224,254,255,255 ; jmpq 3339 <_sk_load_rgb_u16_be_hsw+0x46> DB 196,193,121,110,92,64,30 ; vmovd 0x1e(%r8,%rax,2),%xmm3 DB 196,65,97,196,92,64,34,2 ; vpinsrw $0x2,0x22(%r8,%rax,2),%xmm3,%xmm11 DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,20 ; jb 3482 <_sk_load_rgb_u16_be_hsw+0x18f> DB 196,193,121,110,92,64,36 ; vmovd 0x24(%r8,%rax,2),%xmm3 DB 196,193,97,196,92,64,40,2 ; vpinsrw $0x2,0x28(%r8,%rax,2),%xmm3,%xmm3 DB 233,183,254,255,255 ; jmpq 3339 <_sk_load_rgb_u16_be_hsw+0x46> DB 233,178,254,255,255 ; jmpq 3339 <_sk_load_rgb_u16_be_hsw+0x46> PUBLIC _sk_store_u16_be_hsw _sk_store_u16_be_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 184,0,255,127,71 ; mov $0x477fff00,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9 DB 196,67,125,25,202,1 ; vextractf128 $0x1,%ymm9,%xmm10 DB 196,66,49,43,202 ; vpackusdw %xmm10,%xmm9,%xmm9 DB 196,193,41,113,241,8 ; vpsllw $0x8,%xmm9,%xmm10 DB 196,193,49,113,209,8 ; vpsrlw $0x8,%xmm9,%xmm9 DB 196,65,41,235,201 ; vpor %xmm9,%xmm10,%xmm9 DB 197,60,89,209 ; vmulps %ymm1,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,67,125,25,211,1 ; vextractf128 $0x1,%ymm10,%xmm11 DB 196,66,41,43,211 ; vpackusdw %xmm11,%xmm10,%xmm10 DB 196,193,33,113,242,8 ; vpsllw $0x8,%xmm10,%xmm11 DB 196,193,41,113,210,8 ; vpsrlw $0x8,%xmm10,%xmm10 DB 196,65,33,235,210 ; vpor %xmm10,%xmm11,%xmm10 DB 197,60,89,218 ; vmulps %ymm2,%ymm8,%ymm11 DB 196,65,125,91,219 ; vcvtps2dq %ymm11,%ymm11 DB 196,67,125,25,220,1 ; vextractf128 $0x1,%ymm11,%xmm12 DB 196,66,33,43,220 ; vpackusdw %xmm12,%xmm11,%xmm11 DB 196,193,25,113,243,8 ; vpsllw $0x8,%xmm11,%xmm12 DB 196,193,33,113,211,8 ; vpsrlw $0x8,%xmm11,%xmm11 DB 196,65,25,235,219 ; vpor %xmm11,%xmm12,%xmm11 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,67,125,25,196,1 ; vextractf128 $0x1,%ymm8,%xmm12 DB 196,66,57,43,196 ; vpackusdw %xmm12,%xmm8,%xmm8 DB 196,193,25,113,240,8 ; vpsllw $0x8,%xmm8,%xmm12 DB 196,193,57,113,208,8 ; vpsrlw $0x8,%xmm8,%xmm8 DB 196,65,25,235,192 ; vpor %xmm8,%xmm12,%xmm8 DB 196,65,49,97,226 ; vpunpcklwd %xmm10,%xmm9,%xmm12 DB 196,65,49,105,234 ; vpunpckhwd %xmm10,%xmm9,%xmm13 DB 196,65,33,97,200 ; vpunpcklwd %xmm8,%xmm11,%xmm9 DB 196,65,33,105,192 ; vpunpckhwd %xmm8,%xmm11,%xmm8 DB 196,65,25,98,217 ; vpunpckldq %xmm9,%xmm12,%xmm11 DB 196,65,25,106,209 ; vpunpckhdq %xmm9,%xmm12,%xmm10 DB 196,65,17,98,200 ; vpunpckldq %xmm8,%xmm13,%xmm9 DB 196,65,17,106,192 ; vpunpckhdq %xmm8,%xmm13,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,31 ; jne 3582 <_sk_store_u16_be_hsw+0xfb> DB 196,1,120,17,28,72 ; vmovups %xmm11,(%r8,%r9,2) DB 196,1,120,17,84,72,16 ; vmovups %xmm10,0x10(%r8,%r9,2) DB 196,1,120,17,76,72,32 ; vmovups %xmm9,0x20(%r8,%r9,2) DB 196,1,122,127,68,72,48 ; vmovdqu %xmm8,0x30(%r8,%r9,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,1,121,214,28,72 ; vmovq %xmm11,(%r8,%r9,2) DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,240 ; je 357e <_sk_store_u16_be_hsw+0xf7> DB 196,1,121,23,92,72,8 ; vmovhpd %xmm11,0x8(%r8,%r9,2) DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,227 ; jb 357e <_sk_store_u16_be_hsw+0xf7> DB 196,1,121,214,84,72,16 ; vmovq %xmm10,0x10(%r8,%r9,2) DB 116,218 ; je 357e <_sk_store_u16_be_hsw+0xf7> DB 196,1,121,23,84,72,24 ; vmovhpd %xmm10,0x18(%r8,%r9,2) DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,205 ; jb 357e <_sk_store_u16_be_hsw+0xf7> DB 196,1,121,214,76,72,32 ; vmovq %xmm9,0x20(%r8,%r9,2) DB 116,196 ; je 357e <_sk_store_u16_be_hsw+0xf7> DB 196,1,121,23,76,72,40 ; vmovhpd %xmm9,0x28(%r8,%r9,2) DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,183 ; jb 357e <_sk_store_u16_be_hsw+0xf7> DB 196,1,121,214,68,72,48 ; vmovq %xmm8,0x30(%r8,%r9,2) DB 235,174 ; jmp 357e <_sk_store_u16_be_hsw+0xf7> PUBLIC _sk_load_f32_hsw _sk_load_f32_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,131,249,7 ; cmp $0x7,%rcx DB 119,110 ; ja 3646 <_sk_load_f32_hsw+0x76> DB 76,139,0 ; mov (%rax),%r8 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 76,141,21,134,0,0,0 ; lea 0x86(%rip),%r10 # 3670 <_sk_load_f32_hsw+0xa0> DB 73,99,4,138 ; movslq (%r10,%rcx,4),%rax DB 76,1,208 ; add %r10,%rax DB 255,224 ; jmpq *%rax DB 196,3,125,24,68,136,112,1 ; vinsertf128 $0x1,0x70(%r8,%r9,4),%ymm0,%ymm8 DB 196,131,125,24,92,136,96,1 ; vinsertf128 $0x1,0x60(%r8,%r9,4),%ymm0,%ymm3 DB 196,131,125,24,76,136,80,1 ; vinsertf128 $0x1,0x50(%r8,%r9,4),%ymm0,%ymm1 DB 196,131,125,24,84,136,64,1 ; vinsertf128 $0x1,0x40(%r8,%r9,4),%ymm0,%ymm2 DB 196,129,121,16,68,136,48 ; vmovupd 0x30(%r8,%r9,4),%xmm0 DB 196,195,125,13,192,12 ; vblendpd $0xc,%ymm8,%ymm0,%ymm0 DB 196,1,121,16,68,136,32 ; vmovupd 0x20(%r8,%r9,4),%xmm8 DB 196,99,61,13,203,12 ; vblendpd $0xc,%ymm3,%ymm8,%ymm9 DB 196,129,121,16,92,136,16 ; vmovupd 0x10(%r8,%r9,4),%xmm3 DB 196,99,101,13,209,12 ; vblendpd $0xc,%ymm1,%ymm3,%ymm10 DB 196,129,121,16,12,136 ; vmovupd (%r8,%r9,4),%xmm1 DB 196,227,117,13,202,12 ; vblendpd $0xc,%ymm2,%ymm1,%ymm1 DB 196,193,116,20,210 ; vunpcklps %ymm10,%ymm1,%ymm2 DB 196,193,116,21,218 ; vunpckhps %ymm10,%ymm1,%ymm3 DB 197,180,20,200 ; vunpcklps %ymm0,%ymm9,%ymm1 DB 197,52,21,192 ; vunpckhps %ymm0,%ymm9,%ymm8 DB 197,237,20,193 ; vunpcklpd %ymm1,%ymm2,%ymm0 DB 197,237,21,201 ; vunpckhpd %ymm1,%ymm2,%ymm1 DB 196,193,101,20,208 ; vunpcklpd %ymm8,%ymm3,%ymm2 DB 196,193,101,21,216 ; vunpckhpd %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 102,144 ; xchg %ax,%ax DB 131,255,255 ; cmp $0xffffffff,%edi DB 255,202 ; dec %edx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 189,255,255,255,176 ; mov $0xb0ffffff,%ebp DB 255 ; (bad) DB 255 ; (bad) DB 255,163,255,255,255,155 ; jmpq *-0x64000001(%rbx) DB 255 ; (bad) DB 255 ; (bad) DB 255,147,255,255,255,139 ; callq *-0x74000001(%rbx) DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_store_f32_hsw _sk_store_f32_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax DB 197,124,20,193 ; vunpcklps %ymm1,%ymm0,%ymm8 DB 197,124,21,217 ; vunpckhps %ymm1,%ymm0,%ymm11 DB 197,108,20,203 ; vunpcklps %ymm3,%ymm2,%ymm9 DB 197,108,21,227 ; vunpckhps %ymm3,%ymm2,%ymm12 DB 196,65,61,20,209 ; vunpcklpd %ymm9,%ymm8,%ymm10 DB 196,65,61,21,201 ; vunpckhpd %ymm9,%ymm8,%ymm9 DB 196,65,37,20,196 ; vunpcklpd %ymm12,%ymm11,%ymm8 DB 196,65,37,21,220 ; vunpckhpd %ymm12,%ymm11,%ymm11 DB 72,133,201 ; test %rcx,%rcx DB 117,55 ; jne 36fd <_sk_store_f32_hsw+0x6d> DB 196,67,45,24,225,1 ; vinsertf128 $0x1,%xmm9,%ymm10,%ymm12 DB 196,67,61,24,235,1 ; vinsertf128 $0x1,%xmm11,%ymm8,%ymm13 DB 196,67,45,6,201,49 ; vperm2f128 $0x31,%ymm9,%ymm10,%ymm9 DB 196,67,61,6,195,49 ; vperm2f128 $0x31,%ymm11,%ymm8,%ymm8 DB 196,65,125,17,36,128 ; vmovupd %ymm12,(%r8,%rax,4) DB 196,65,125,17,108,128,32 ; vmovupd %ymm13,0x20(%r8,%rax,4) DB 196,65,125,17,76,128,64 ; vmovupd %ymm9,0x40(%r8,%rax,4) DB 196,65,125,17,68,128,96 ; vmovupd %ymm8,0x60(%r8,%rax,4) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,65,121,17,20,128 ; vmovupd %xmm10,(%r8,%rax,4) DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,240 ; je 36f9 <_sk_store_f32_hsw+0x69> DB 196,65,121,17,76,128,16 ; vmovupd %xmm9,0x10(%r8,%rax,4) DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,227 ; jb 36f9 <_sk_store_f32_hsw+0x69> DB 196,65,121,17,68,128,32 ; vmovupd %xmm8,0x20(%r8,%rax,4) DB 116,218 ; je 36f9 <_sk_store_f32_hsw+0x69> DB 196,65,121,17,92,128,48 ; vmovupd %xmm11,0x30(%r8,%rax,4) DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,205 ; jb 36f9 <_sk_store_f32_hsw+0x69> DB 196,67,125,25,84,128,64,1 ; vextractf128 $0x1,%ymm10,0x40(%r8,%rax,4) DB 116,195 ; je 36f9 <_sk_store_f32_hsw+0x69> DB 196,67,125,25,76,128,80,1 ; vextractf128 $0x1,%ymm9,0x50(%r8,%rax,4) DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,181 ; jb 36f9 <_sk_store_f32_hsw+0x69> DB 196,67,125,25,68,128,96,1 ; vextractf128 $0x1,%ymm8,0x60(%r8,%rax,4) DB 235,171 ; jmp 36f9 <_sk_store_f32_hsw+0x69> PUBLIC _sk_clamp_x_hsw _sk_clamp_x_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 197,188,95,192 ; vmaxps %ymm0,%ymm8,%ymm0 DB 196,98,125,88,0 ; vpbroadcastd (%rax),%ymm8 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9 DB 196,65,61,254,193 ; vpaddd %ymm9,%ymm8,%ymm8 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_y_hsw _sk_clamp_y_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 197,188,95,201 ; vmaxps %ymm1,%ymm8,%ymm1 DB 196,98,125,88,0 ; vpbroadcastd (%rax),%ymm8 DB 196,65,53,118,201 ; vpcmpeqd %ymm9,%ymm9,%ymm9 DB 196,65,61,254,193 ; vpaddd %ymm9,%ymm8,%ymm8 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_repeat_x_hsw _sk_repeat_x_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,65,124,94,200 ; vdivps %ymm8,%ymm0,%ymm9 DB 196,67,125,8,201,1 ; vroundps $0x1,%ymm9,%ymm9 DB 196,98,61,172,200 ; vfnmadd213ps %ymm0,%ymm8,%ymm9 DB 197,253,118,192 ; vpcmpeqd %ymm0,%ymm0,%ymm0 DB 197,189,254,192 ; vpaddd %ymm0,%ymm8,%ymm0 DB 197,180,93,192 ; vminps %ymm0,%ymm9,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_repeat_y_hsw _sk_repeat_y_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,65,116,94,200 ; vdivps %ymm8,%ymm1,%ymm9 DB 196,67,125,8,201,1 ; vroundps $0x1,%ymm9,%ymm9 DB 196,98,61,172,201 ; vfnmadd213ps %ymm1,%ymm8,%ymm9 DB 197,245,118,201 ; vpcmpeqd %ymm1,%ymm1,%ymm1 DB 197,189,254,201 ; vpaddd %ymm1,%ymm8,%ymm1 DB 197,180,93,201 ; vminps %ymm1,%ymm9,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_mirror_x_hsw _sk_mirror_x_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,122,16,0 ; vmovss (%rax),%xmm8 DB 196,66,125,24,200 ; vbroadcastss %xmm8,%ymm9 DB 196,65,124,92,209 ; vsubps %ymm9,%ymm0,%ymm10 DB 196,193,58,88,192 ; vaddss %xmm8,%xmm8,%xmm0 DB 196,226,125,24,192 ; vbroadcastss %xmm0,%ymm0 DB 197,44,94,192 ; vdivps %ymm0,%ymm10,%ymm8 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8 DB 196,66,125,172,194 ; vfnmadd213ps %ymm10,%ymm0,%ymm8 DB 196,193,60,92,193 ; vsubps %ymm9,%ymm8,%ymm0 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 197,60,92,192 ; vsubps %ymm0,%ymm8,%ymm8 DB 197,188,84,192 ; vandps %ymm0,%ymm8,%ymm0 DB 196,65,61,118,192 ; vpcmpeqd %ymm8,%ymm8,%ymm8 DB 196,65,53,254,192 ; vpaddd %ymm8,%ymm9,%ymm8 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_mirror_y_hsw _sk_mirror_y_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,122,16,0 ; vmovss (%rax),%xmm8 DB 196,66,125,24,200 ; vbroadcastss %xmm8,%ymm9 DB 196,65,116,92,209 ; vsubps %ymm9,%ymm1,%ymm10 DB 196,193,58,88,200 ; vaddss %xmm8,%xmm8,%xmm1 DB 196,226,125,24,201 ; vbroadcastss %xmm1,%ymm1 DB 197,44,94,193 ; vdivps %ymm1,%ymm10,%ymm8 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8 DB 196,66,117,172,194 ; vfnmadd213ps %ymm10,%ymm1,%ymm8 DB 196,193,60,92,201 ; vsubps %ymm9,%ymm8,%ymm1 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 197,60,92,193 ; vsubps %ymm1,%ymm8,%ymm8 DB 197,188,84,201 ; vandps %ymm1,%ymm8,%ymm1 DB 196,65,61,118,192 ; vpcmpeqd %ymm8,%ymm8,%ymm8 DB 196,65,53,254,192 ; vpaddd %ymm8,%ymm9,%ymm8 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_luminance_to_alpha_hsw _sk_luminance_to_alpha_hsw LABEL PROC DB 184,208,179,89,62 ; mov $0x3e59b3d0,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,98,125,88,195 ; vpbroadcastd %xmm3,%ymm8 DB 184,89,23,55,63 ; mov $0x3f371759,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,226,125,88,219 ; vpbroadcastd %xmm3,%ymm3 DB 197,228,89,201 ; vmulps %ymm1,%ymm3,%ymm1 DB 196,98,125,168,193 ; vfmadd213ps %ymm1,%ymm0,%ymm8 DB 184,152,221,147,61 ; mov $0x3d93dd98,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,226,125,88,216 ; vpbroadcastd %xmm0,%ymm3 DB 196,194,109,168,216 ; vfmadd213ps %ymm8,%ymm2,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,253,239,192 ; vpxor %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_2x3_hsw _sk_matrix_2x3_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,8 ; vbroadcastss (%rax),%ymm9 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,66,117,184,194 ; vfmadd231ps %ymm10,%ymm1,%ymm8 DB 196,66,125,184,193 ; vfmadd231ps %ymm9,%ymm0,%ymm8 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm11 DB 196,98,125,24,72,20 ; vbroadcastss 0x14(%rax),%ymm9 DB 196,66,117,184,203 ; vfmadd231ps %ymm11,%ymm1,%ymm9 DB 196,66,125,184,202 ; vfmadd231ps %ymm10,%ymm0,%ymm9 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_3x4_hsw _sk_matrix_3x4_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,8 ; vbroadcastss (%rax),%ymm9 DB 196,98,125,24,80,12 ; vbroadcastss 0xc(%rax),%ymm10 DB 196,98,125,24,88,24 ; vbroadcastss 0x18(%rax),%ymm11 DB 196,98,125,24,64,36 ; vbroadcastss 0x24(%rax),%ymm8 DB 196,66,109,184,195 ; vfmadd231ps %ymm11,%ymm2,%ymm8 DB 196,66,117,184,194 ; vfmadd231ps %ymm10,%ymm1,%ymm8 DB 196,66,125,184,193 ; vfmadd231ps %ymm9,%ymm0,%ymm8 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,16 ; vbroadcastss 0x10(%rax),%ymm11 DB 196,98,125,24,96,28 ; vbroadcastss 0x1c(%rax),%ymm12 DB 196,98,125,24,72,40 ; vbroadcastss 0x28(%rax),%ymm9 DB 196,66,109,184,204 ; vfmadd231ps %ymm12,%ymm2,%ymm9 DB 196,66,117,184,203 ; vfmadd231ps %ymm11,%ymm1,%ymm9 DB 196,66,125,184,202 ; vfmadd231ps %ymm10,%ymm0,%ymm9 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 196,98,125,24,96,20 ; vbroadcastss 0x14(%rax),%ymm12 DB 196,98,125,24,104,32 ; vbroadcastss 0x20(%rax),%ymm13 DB 196,98,125,24,80,44 ; vbroadcastss 0x2c(%rax),%ymm10 DB 196,66,109,184,213 ; vfmadd231ps %ymm13,%ymm2,%ymm10 DB 196,66,117,184,212 ; vfmadd231ps %ymm12,%ymm1,%ymm10 DB 196,66,125,184,211 ; vfmadd231ps %ymm11,%ymm0,%ymm10 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1 DB 197,124,41,210 ; vmovaps %ymm10,%ymm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_4x5_hsw _sk_matrix_4x5_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,8 ; vbroadcastss (%rax),%ymm9 DB 196,98,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm10 DB 196,98,125,24,88,32 ; vbroadcastss 0x20(%rax),%ymm11 DB 196,98,125,24,96,48 ; vbroadcastss 0x30(%rax),%ymm12 DB 196,98,125,24,64,64 ; vbroadcastss 0x40(%rax),%ymm8 DB 196,66,101,184,196 ; vfmadd231ps %ymm12,%ymm3,%ymm8 DB 196,66,109,184,195 ; vfmadd231ps %ymm11,%ymm2,%ymm8 DB 196,66,117,184,194 ; vfmadd231ps %ymm10,%ymm1,%ymm8 DB 196,66,125,184,193 ; vfmadd231ps %ymm9,%ymm0,%ymm8 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11 DB 196,98,125,24,96,36 ; vbroadcastss 0x24(%rax),%ymm12 DB 196,98,125,24,104,52 ; vbroadcastss 0x34(%rax),%ymm13 DB 196,98,125,24,72,68 ; vbroadcastss 0x44(%rax),%ymm9 DB 196,66,101,184,205 ; vfmadd231ps %ymm13,%ymm3,%ymm9 DB 196,66,109,184,204 ; vfmadd231ps %ymm12,%ymm2,%ymm9 DB 196,66,117,184,203 ; vfmadd231ps %ymm11,%ymm1,%ymm9 DB 196,66,125,184,202 ; vfmadd231ps %ymm10,%ymm0,%ymm9 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 196,98,125,24,96,24 ; vbroadcastss 0x18(%rax),%ymm12 DB 196,98,125,24,104,40 ; vbroadcastss 0x28(%rax),%ymm13 DB 196,98,125,24,112,56 ; vbroadcastss 0x38(%rax),%ymm14 DB 196,98,125,24,80,72 ; vbroadcastss 0x48(%rax),%ymm10 DB 196,66,101,184,214 ; vfmadd231ps %ymm14,%ymm3,%ymm10 DB 196,66,109,184,213 ; vfmadd231ps %ymm13,%ymm2,%ymm10 DB 196,66,117,184,212 ; vfmadd231ps %ymm12,%ymm1,%ymm10 DB 196,66,125,184,211 ; vfmadd231ps %ymm11,%ymm0,%ymm10 DB 196,98,125,24,96,12 ; vbroadcastss 0xc(%rax),%ymm12 DB 196,98,125,24,104,28 ; vbroadcastss 0x1c(%rax),%ymm13 DB 196,98,125,24,112,44 ; vbroadcastss 0x2c(%rax),%ymm14 DB 196,98,125,24,120,60 ; vbroadcastss 0x3c(%rax),%ymm15 DB 196,98,125,24,88,76 ; vbroadcastss 0x4c(%rax),%ymm11 DB 196,66,101,184,223 ; vfmadd231ps %ymm15,%ymm3,%ymm11 DB 196,66,109,184,222 ; vfmadd231ps %ymm14,%ymm2,%ymm11 DB 196,66,117,184,221 ; vfmadd231ps %ymm13,%ymm1,%ymm11 DB 196,66,125,184,220 ; vfmadd231ps %ymm12,%ymm0,%ymm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1 DB 197,124,41,210 ; vmovaps %ymm10,%ymm2 DB 197,124,41,219 ; vmovaps %ymm11,%ymm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_perspective_hsw _sk_matrix_perspective_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10 DB 196,66,117,184,209 ; vfmadd231ps %ymm9,%ymm1,%ymm10 DB 196,66,125,184,208 ; vfmadd231ps %ymm8,%ymm0,%ymm10 DB 196,98,125,24,64,12 ; vbroadcastss 0xc(%rax),%ymm8 DB 196,98,125,24,72,16 ; vbroadcastss 0x10(%rax),%ymm9 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11 DB 196,66,117,184,217 ; vfmadd231ps %ymm9,%ymm1,%ymm11 DB 196,66,125,184,216 ; vfmadd231ps %ymm8,%ymm0,%ymm11 DB 196,98,125,24,64,24 ; vbroadcastss 0x18(%rax),%ymm8 DB 196,98,125,24,72,28 ; vbroadcastss 0x1c(%rax),%ymm9 DB 196,98,125,24,96,32 ; vbroadcastss 0x20(%rax),%ymm12 DB 196,66,117,184,225 ; vfmadd231ps %ymm9,%ymm1,%ymm12 DB 196,66,125,184,224 ; vfmadd231ps %ymm8,%ymm0,%ymm12 DB 196,193,124,83,204 ; vrcpps %ymm12,%ymm1 DB 197,172,89,193 ; vmulps %ymm1,%ymm10,%ymm0 DB 197,164,89,201 ; vmulps %ymm1,%ymm11,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_linear_gradient_hsw _sk_linear_gradient_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 196,98,125,24,72,28 ; vbroadcastss 0x1c(%rax),%ymm9 DB 76,139,0 ; mov (%rax),%r8 DB 77,133,192 ; test %r8,%r8 DB 15,132,143,0,0,0 ; je 3b89 <_sk_linear_gradient_hsw+0xb5> DB 72,139,64,8 ; mov 0x8(%rax),%rax DB 72,131,192,32 ; add $0x20,%rax DB 196,65,28,87,228 ; vxorps %ymm12,%ymm12,%ymm12 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 196,98,125,24,104,224 ; vbroadcastss -0x20(%rax),%ymm13 DB 196,65,124,194,237,1 ; vcmpltps %ymm13,%ymm0,%ymm13 DB 196,98,125,24,112,228 ; vbroadcastss -0x1c(%rax),%ymm14 DB 196,67,13,74,228,208 ; vblendvps %ymm13,%ymm12,%ymm14,%ymm12 DB 196,98,125,24,112,232 ; vbroadcastss -0x18(%rax),%ymm14 DB 196,227,13,74,201,208 ; vblendvps %ymm13,%ymm1,%ymm14,%ymm1 DB 196,98,125,24,112,236 ; vbroadcastss -0x14(%rax),%ymm14 DB 196,227,13,74,210,208 ; vblendvps %ymm13,%ymm2,%ymm14,%ymm2 DB 196,98,125,24,112,240 ; vbroadcastss -0x10(%rax),%ymm14 DB 196,227,13,74,219,208 ; vblendvps %ymm13,%ymm3,%ymm14,%ymm3 DB 196,98,125,24,112,244 ; vbroadcastss -0xc(%rax),%ymm14 DB 196,67,13,74,192,208 ; vblendvps %ymm13,%ymm8,%ymm14,%ymm8 DB 196,98,125,24,112,248 ; vbroadcastss -0x8(%rax),%ymm14 DB 196,67,13,74,219,208 ; vblendvps %ymm13,%ymm11,%ymm14,%ymm11 DB 196,98,125,24,112,252 ; vbroadcastss -0x4(%rax),%ymm14 DB 196,67,13,74,210,208 ; vblendvps %ymm13,%ymm10,%ymm14,%ymm10 DB 196,98,125,24,48 ; vbroadcastss (%rax),%ymm14 DB 196,67,13,74,201,208 ; vblendvps %ymm13,%ymm9,%ymm14,%ymm9 DB 72,131,192,36 ; add $0x24,%rax DB 73,255,200 ; dec %r8 DB 117,140 ; jne 3b13 <_sk_linear_gradient_hsw+0x3f> DB 235,17 ; jmp 3b9a <_sk_linear_gradient_hsw+0xc6> DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 196,65,28,87,228 ; vxorps %ymm12,%ymm12,%ymm12 DB 196,66,125,184,196 ; vfmadd231ps %ymm12,%ymm0,%ymm8 DB 196,194,125,168,203 ; vfmadd213ps %ymm11,%ymm0,%ymm1 DB 196,194,125,168,210 ; vfmadd213ps %ymm10,%ymm0,%ymm2 DB 196,194,125,168,217 ; vfmadd213ps %ymm9,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_linear_gradient_2stops_hsw _sk_linear_gradient_2stops_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,226,125,24,8 ; vbroadcastss (%rax),%ymm1 DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,98,125,184,193 ; vfmadd231ps %ymm1,%ymm0,%ymm8 DB 196,226,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm2 DB 196,226,125,24,72,20 ; vbroadcastss 0x14(%rax),%ymm1 DB 196,226,125,184,202 ; vfmadd231ps %ymm2,%ymm0,%ymm1 DB 196,226,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm3 DB 196,226,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm2 DB 196,226,125,184,211 ; vfmadd231ps %ymm3,%ymm0,%ymm2 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,226,125,24,88,28 ; vbroadcastss 0x1c(%rax),%ymm3 DB 196,194,125,184,217 ; vfmadd231ps %ymm9,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_save_xy_hsw _sk_save_xy_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,88,200 ; vaddps %ymm0,%ymm8,%ymm9 DB 196,67,125,8,209,1 ; vroundps $0x1,%ymm9,%ymm10 DB 196,65,52,92,202 ; vsubps %ymm10,%ymm9,%ymm9 DB 197,60,88,193 ; vaddps %ymm1,%ymm8,%ymm8 DB 196,67,125,8,208,1 ; vroundps $0x1,%ymm8,%ymm10 DB 196,65,60,92,194 ; vsubps %ymm10,%ymm8,%ymm8 DB 197,252,17,0 ; vmovups %ymm0,(%rax) DB 197,252,17,72,32 ; vmovups %ymm1,0x20(%rax) DB 197,124,17,72,64 ; vmovups %ymm9,0x40(%rax) DB 197,124,17,64,96 ; vmovups %ymm8,0x60(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_accumulate_hsw _sk_accumulate_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,16,128,128,0,0,0 ; vmovups 0x80(%rax),%ymm8 DB 197,60,89,128,160,0,0,0 ; vmulps 0xa0(%rax),%ymm8,%ymm8 DB 196,226,61,184,224 ; vfmadd231ps %ymm0,%ymm8,%ymm4 DB 196,226,61,184,233 ; vfmadd231ps %ymm1,%ymm8,%ymm5 DB 196,226,61,184,242 ; vfmadd231ps %ymm2,%ymm8,%ymm6 DB 196,98,101,168,199 ; vfmadd213ps %ymm7,%ymm3,%ymm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,199 ; vmovaps %ymm8,%ymm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_nx_hsw _sk_bilinear_nx_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,191 ; mov $0xbf000000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_px_hsw _sk_bilinear_px_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 197,124,16,64,64 ; vmovups 0x40(%rax),%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_ny_hsw _sk_bilinear_ny_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,191 ; mov $0xbf000000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_py_hsw _sk_bilinear_py_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 197,124,16,64,96 ; vmovups 0x60(%rax),%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n3x_hsw _sk_bicubic_n3x_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,192,191 ; mov $0xbfc00000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9 DB 65,184,114,28,199,62 ; mov $0x3ec71c72,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 65,184,171,170,170,190 ; mov $0xbeaaaaab,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,66,125,88,219 ; vpbroadcastd %xmm11,%ymm11 DB 196,66,61,168,211 ; vfmadd213ps %ymm11,%ymm8,%ymm10 DB 196,65,44,89,193 ; vmulps %ymm9,%ymm10,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n1x_hsw _sk_bicubic_n1x_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,191 ; mov $0xbf000000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8 DB 65,184,85,85,149,191 ; mov $0xbf955555,%r8d DB 196,65,121,110,200 ; vmovd %r8d,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 196,66,61,168,202 ; vfmadd213ps %ymm10,%ymm8,%ymm9 DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 196,66,61,184,209 ; vfmadd231ps %ymm9,%ymm8,%ymm10 DB 65,184,57,142,99,61 ; mov $0x3d638e39,%r8d DB 196,65,121,110,200 ; vmovd %r8d,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 196,66,61,184,202 ; vfmadd231ps %ymm10,%ymm8,%ymm9 DB 197,124,17,136,128,0,0,0 ; vmovups %ymm9,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p1x_hsw _sk_bicubic_p1x_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,98,125,88,192 ; vpbroadcastd %xmm0,%ymm8 DB 197,188,88,0 ; vaddps (%rax),%ymm8,%ymm0 DB 197,124,16,72,64 ; vmovups 0x40(%rax),%ymm9 DB 65,184,85,85,149,191 ; mov $0xbf955555,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,66,125,88,219 ; vpbroadcastd %xmm11,%ymm11 DB 196,66,53,168,211 ; vfmadd213ps %ymm11,%ymm9,%ymm10 DB 196,66,53,168,208 ; vfmadd213ps %ymm8,%ymm9,%ymm10 DB 65,184,57,142,99,61 ; mov $0x3d638e39,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,66,53,184,194 ; vfmadd231ps %ymm10,%ymm9,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p3x_hsw _sk_bicubic_p3x_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,226,125,88,192 ; vpbroadcastd %xmm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 197,124,16,64,64 ; vmovups 0x40(%rax),%ymm8 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9 DB 65,184,114,28,199,62 ; mov $0x3ec71c72,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 65,184,171,170,170,190 ; mov $0xbeaaaaab,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,66,125,88,219 ; vpbroadcastd %xmm11,%ymm11 DB 196,66,61,168,211 ; vfmadd213ps %ymm11,%ymm8,%ymm10 DB 196,65,52,89,194 ; vmulps %ymm10,%ymm9,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n3y_hsw _sk_bicubic_n3y_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,192,191 ; mov $0xbfc00000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9 DB 65,184,114,28,199,62 ; mov $0x3ec71c72,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 65,184,171,170,170,190 ; mov $0xbeaaaaab,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,66,125,88,219 ; vpbroadcastd %xmm11,%ymm11 DB 196,66,61,168,211 ; vfmadd213ps %ymm11,%ymm8,%ymm10 DB 196,65,44,89,193 ; vmulps %ymm9,%ymm10,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n1y_hsw _sk_bicubic_n1y_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,191 ; mov $0xbf000000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8 DB 65,184,85,85,149,191 ; mov $0xbf955555,%r8d DB 196,65,121,110,200 ; vmovd %r8d,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 196,66,61,168,202 ; vfmadd213ps %ymm10,%ymm8,%ymm9 DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 196,66,61,184,209 ; vfmadd231ps %ymm9,%ymm8,%ymm10 DB 65,184,57,142,99,61 ; mov $0x3d638e39,%r8d DB 196,65,121,110,200 ; vmovd %r8d,%xmm9 DB 196,66,125,88,201 ; vpbroadcastd %xmm9,%ymm9 DB 196,66,61,184,202 ; vfmadd231ps %ymm10,%ymm8,%ymm9 DB 197,124,17,136,160,0,0,0 ; vmovups %ymm9,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p1y_hsw _sk_bicubic_p1y_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,98,125,88,193 ; vpbroadcastd %xmm1,%ymm8 DB 197,188,88,72,32 ; vaddps 0x20(%rax),%ymm8,%ymm1 DB 197,124,16,72,96 ; vmovups 0x60(%rax),%ymm9 DB 65,184,85,85,149,191 ; mov $0xbf955555,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,66,125,88,219 ; vpbroadcastd %xmm11,%ymm11 DB 196,66,53,168,211 ; vfmadd213ps %ymm11,%ymm9,%ymm10 DB 196,66,53,168,208 ; vfmadd213ps %ymm8,%ymm9,%ymm10 DB 65,184,57,142,99,61 ; mov $0x3d638e39,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,66,125,88,192 ; vpbroadcastd %xmm8,%ymm8 DB 196,66,53,184,194 ; vfmadd231ps %ymm10,%ymm9,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p3y_hsw _sk_bicubic_p3y_hsw LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,226,125,88,201 ; vpbroadcastd %xmm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 197,124,16,64,96 ; vmovups 0x60(%rax),%ymm8 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9 DB 65,184,114,28,199,62 ; mov $0x3ec71c72,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,66,125,88,210 ; vpbroadcastd %xmm10,%ymm10 DB 65,184,171,170,170,190 ; mov $0xbeaaaaab,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,66,125,88,219 ; vpbroadcastd %xmm11,%ymm11 DB 196,66,61,168,211 ; vfmadd213ps %ymm11,%ymm8,%ymm10 DB 196,65,52,89,194 ; vmulps %ymm10,%ymm9,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_callback_hsw _sk_callback_hsw LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 83 ; push %rbx DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp DB 197,252,17,188,36,128,0,0,0 ; vmovups %ymm7,0x80(%rsp) DB 197,252,17,116,36,96 ; vmovups %ymm6,0x60(%rsp) DB 197,252,17,108,36,64 ; vmovups %ymm5,0x40(%rsp) DB 197,252,17,100,36,32 ; vmovups %ymm4,0x20(%rsp) DB 73,137,207 ; mov %rcx,%r15 DB 73,137,214 ; mov %rdx,%r14 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,137,195 ; mov %rax,%rbx DB 197,252,20,225 ; vunpcklps %ymm1,%ymm0,%ymm4 DB 197,252,21,193 ; vunpckhps %ymm1,%ymm0,%ymm0 DB 197,236,20,203 ; vunpcklps %ymm3,%ymm2,%ymm1 DB 197,236,21,211 ; vunpckhps %ymm3,%ymm2,%ymm2 DB 197,221,20,217 ; vunpcklpd %ymm1,%ymm4,%ymm3 DB 197,221,21,201 ; vunpckhpd %ymm1,%ymm4,%ymm1 DB 197,253,20,226 ; vunpcklpd %ymm2,%ymm0,%ymm4 DB 197,253,21,194 ; vunpckhpd %ymm2,%ymm0,%ymm0 DB 196,227,101,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm3,%ymm2 DB 196,227,93,24,232,1 ; vinsertf128 $0x1,%xmm0,%ymm4,%ymm5 DB 196,227,101,6,201,49 ; vperm2f128 $0x31,%ymm1,%ymm3,%ymm1 DB 196,227,93,6,192,49 ; vperm2f128 $0x31,%ymm0,%ymm4,%ymm0 DB 197,253,17,83,8 ; vmovupd %ymm2,0x8(%rbx) DB 197,253,17,107,40 ; vmovupd %ymm5,0x28(%rbx) DB 197,253,17,75,72 ; vmovupd %ymm1,0x48(%rbx) DB 197,253,17,67,104 ; vmovupd %ymm0,0x68(%rbx) DB 77,133,255 ; test %r15,%r15 DB 186,8,0,0,0 ; mov $0x8,%edx DB 65,15,69,215 ; cmovne %r15d,%edx DB 72,137,217 ; mov %rbx,%rcx DB 197,248,119 ; vzeroupper DB 255,19 ; callq *(%rbx) DB 72,139,131,136,0,0,0 ; mov 0x88(%rbx),%rax DB 197,248,16,0 ; vmovups (%rax),%xmm0 DB 197,248,16,72,16 ; vmovups 0x10(%rax),%xmm1 DB 197,248,16,80,32 ; vmovups 0x20(%rax),%xmm2 DB 197,248,16,88,48 ; vmovups 0x30(%rax),%xmm3 DB 196,227,101,24,88,112,1 ; vinsertf128 $0x1,0x70(%rax),%ymm3,%ymm3 DB 196,227,109,24,80,96,1 ; vinsertf128 $0x1,0x60(%rax),%ymm2,%ymm2 DB 196,227,117,24,72,80,1 ; vinsertf128 $0x1,0x50(%rax),%ymm1,%ymm1 DB 196,227,125,24,64,64,1 ; vinsertf128 $0x1,0x40(%rax),%ymm0,%ymm0 DB 197,252,20,225 ; vunpcklps %ymm1,%ymm0,%ymm4 DB 197,252,21,233 ; vunpckhps %ymm1,%ymm0,%ymm5 DB 197,236,20,203 ; vunpcklps %ymm3,%ymm2,%ymm1 DB 197,236,21,219 ; vunpckhps %ymm3,%ymm2,%ymm3 DB 197,221,20,193 ; vunpcklpd %ymm1,%ymm4,%ymm0 DB 197,221,21,201 ; vunpckhpd %ymm1,%ymm4,%ymm1 DB 197,213,20,211 ; vunpcklpd %ymm3,%ymm5,%ymm2 DB 197,213,21,219 ; vunpckhpd %ymm3,%ymm5,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,242 ; mov %r14,%rdx DB 76,137,249 ; mov %r15,%rcx DB 197,252,16,100,36,32 ; vmovups 0x20(%rsp),%ymm4 DB 197,252,16,108,36,64 ; vmovups 0x40(%rsp),%ymm5 DB 197,252,16,116,36,96 ; vmovups 0x60(%rsp),%ymm6 DB 197,252,16,188,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm7 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp DB 91 ; pop %rbx DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax ALIGN 4 DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 41b4 <.literal4+0x10> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 422d <.literal4+0x89> DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 41e4 <.literal4+0x40> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 425d <.literal4+0xb9> DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 4214 <.literal4+0x70> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 428d <_sk_callback_hsw+0x203> DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 4244 <.literal4+0xa0> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 42bd <_sk_callback_hsw+0x233> DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0 ; .byte 0x0 DB 75 ; rex.WXB ALIGN 32 PUBLIC _sk_start_pipeline_avx _sk_start_pipeline_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 86 ; push %rsi DB 87 ; push %rdi DB 83 ; push %rbx DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp DB 197,120,41,188,36,144,0,0,0 ; vmovaps %xmm15,0x90(%rsp) DB 197,120,41,180,36,128,0,0,0 ; vmovaps %xmm14,0x80(%rsp) DB 197,120,41,108,36,112 ; vmovaps %xmm13,0x70(%rsp) DB 197,120,41,100,36,96 ; vmovaps %xmm12,0x60(%rsp) DB 197,120,41,92,36,80 ; vmovaps %xmm11,0x50(%rsp) DB 197,120,41,84,36,64 ; vmovaps %xmm10,0x40(%rsp) DB 197,120,41,76,36,48 ; vmovaps %xmm9,0x30(%rsp) DB 197,120,41,68,36,32 ; vmovaps %xmm8,0x20(%rsp) DB 197,248,41,124,36,16 ; vmovaps %xmm7,0x10(%rsp) DB 197,248,41,52,36 ; vmovaps %xmm6,(%rsp) DB 77,137,205 ; mov %r9,%r13 DB 77,137,198 ; mov %r8,%r14 DB 72,137,203 ; mov %rcx,%rbx DB 72,137,214 ; mov %rdx,%rsi DB 72,173 ; lods %ds:(%rsi),%rax DB 73,137,199 ; mov %rax,%r15 DB 73,137,244 ; mov %rsi,%r12 DB 72,141,67,8 ; lea 0x8(%rbx),%rax DB 76,57,232 ; cmp %r13,%rax DB 118,5 ; jbe 75 <_sk_start_pipeline_avx+0x75> DB 72,137,223 ; mov %rbx,%rdi DB 235,65 ; jmp b6 <_sk_start_pipeline_avx+0xb6> DB 185,0,0,0,0 ; mov $0x0,%ecx DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7 DB 72,137,223 ; mov %rbx,%rdi DB 76,137,230 ; mov %r12,%rsi DB 76,137,242 ; mov %r14,%rdx DB 65,255,215 ; callq *%r15 DB 72,141,123,8 ; lea 0x8(%rbx),%rdi DB 72,131,195,16 ; add $0x10,%rbx DB 76,57,235 ; cmp %r13,%rbx DB 72,137,251 ; mov %rdi,%rbx DB 118,191 ; jbe 75 <_sk_start_pipeline_avx+0x75> DB 76,137,233 ; mov %r13,%rcx DB 72,41,249 ; sub %rdi,%rcx DB 116,41 ; je e7 <_sk_start_pipeline_avx+0xe7> DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7 DB 76,137,230 ; mov %r12,%rsi DB 76,137,242 ; mov %r14,%rdx DB 65,255,215 ; callq *%r15 DB 76,137,232 ; mov %r13,%rax DB 197,248,40,52,36 ; vmovaps (%rsp),%xmm6 DB 197,248,40,124,36,16 ; vmovaps 0x10(%rsp),%xmm7 DB 197,120,40,68,36,32 ; vmovaps 0x20(%rsp),%xmm8 DB 197,120,40,76,36,48 ; vmovaps 0x30(%rsp),%xmm9 DB 197,120,40,84,36,64 ; vmovaps 0x40(%rsp),%xmm10 DB 197,120,40,92,36,80 ; vmovaps 0x50(%rsp),%xmm11 DB 197,120,40,100,36,96 ; vmovaps 0x60(%rsp),%xmm12 DB 197,120,40,108,36,112 ; vmovaps 0x70(%rsp),%xmm13 DB 197,120,40,180,36,128,0,0,0 ; vmovaps 0x80(%rsp),%xmm14 DB 197,120,40,188,36,144,0,0,0 ; vmovaps 0x90(%rsp),%xmm15 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp DB 91 ; pop %rbx DB 95 ; pop %rdi DB 94 ; pop %rsi DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 197,248,119 ; vzeroupper DB 195 ; retq PUBLIC _sk_just_return_avx _sk_just_return_avx LABEL PROC DB 195 ; retq PUBLIC _sk_seed_shader_avx _sk_seed_shader_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,249,110,199 ; vmovd %edi,%xmm0 DB 197,249,112,192,0 ; vpshufd $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 196,226,125,24,13,164,91,0,0 ; vbroadcastss 0x5ba4(%rip),%ymm1 # 5d04 <_sk_callback_avx+0x11a> DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0 DB 197,252,88,2 ; vaddps (%rdx),%ymm0,%ymm0 DB 196,226,125,24,16 ; vbroadcastss (%rax),%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,236,88,201 ; vaddps %ymm1,%ymm2,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 196,226,125,24,21,136,91,0,0 ; vbroadcastss 0x5b88(%rip),%ymm2 # 5d08 <_sk_callback_avx+0x11e> DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 197,220,87,228 ; vxorps %ymm4,%ymm4,%ymm4 DB 197,212,87,237 ; vxorps %ymm5,%ymm5,%ymm5 DB 197,204,87,246 ; vxorps %ymm6,%ymm6,%ymm6 DB 197,196,87,255 ; vxorps %ymm7,%ymm7,%ymm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_constant_color_avx _sk_constant_color_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2 DB 196,226,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clear_avx _sk_clear_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 197,228,87,219 ; vxorps %ymm3,%ymm3,%ymm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_srcatop_avx _sk_srcatop_avx LABEL PROC DB 197,124,89,199 ; vmulps %ymm7,%ymm0,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,124,92,203 ; vsubps %ymm3,%ymm0,%ymm9 DB 197,180,89,196 ; vmulps %ymm4,%ymm9,%ymm0 DB 197,188,88,192 ; vaddps %ymm0,%ymm8,%ymm0 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,52,89,197 ; vmulps %ymm5,%ymm9,%ymm8 DB 196,193,116,88,200 ; vaddps %ymm8,%ymm1,%ymm1 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,52,89,198 ; vmulps %ymm6,%ymm9,%ymm8 DB 196,193,108,88,208 ; vaddps %ymm8,%ymm2,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 197,52,89,199 ; vmulps %ymm7,%ymm9,%ymm8 DB 196,193,100,88,216 ; vaddps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstatop_avx _sk_dstatop_avx LABEL PROC DB 197,100,89,196 ; vmulps %ymm4,%ymm3,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,67,121,4,201,0 ; vpermilps $0x0,%xmm9,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 197,52,92,207 ; vsubps %ymm7,%ymm9,%ymm9 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0 DB 197,188,88,192 ; vaddps %ymm0,%ymm8,%ymm0 DB 197,100,89,197 ; vmulps %ymm5,%ymm3,%ymm8 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1 DB 197,188,88,201 ; vaddps %ymm1,%ymm8,%ymm1 DB 197,100,89,198 ; vmulps %ymm6,%ymm3,%ymm8 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2 DB 197,188,88,210 ; vaddps %ymm2,%ymm8,%ymm2 DB 197,100,89,199 ; vmulps %ymm7,%ymm3,%ymm8 DB 197,180,89,219 ; vmulps %ymm3,%ymm9,%ymm3 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcin_avx _sk_srcin_avx LABEL PROC DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstin_avx _sk_dstin_avx LABEL PROC DB 197,228,89,196 ; vmulps %ymm4,%ymm3,%ymm0 DB 197,228,89,205 ; vmulps %ymm5,%ymm3,%ymm1 DB 197,228,89,214 ; vmulps %ymm6,%ymm3,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcout_avx _sk_srcout_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstout_avx _sk_dstout_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,92,219 ; vsubps %ymm3,%ymm0,%ymm3 DB 197,228,89,196 ; vmulps %ymm4,%ymm3,%ymm0 DB 197,228,89,205 ; vmulps %ymm5,%ymm3,%ymm1 DB 197,228,89,214 ; vmulps %ymm6,%ymm3,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcover_avx _sk_srcover_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,204 ; vmulps %ymm4,%ymm8,%ymm9 DB 197,180,88,192 ; vaddps %ymm0,%ymm9,%ymm0 DB 197,60,89,205 ; vmulps %ymm5,%ymm8,%ymm9 DB 197,180,88,201 ; vaddps %ymm1,%ymm9,%ymm1 DB 197,60,89,206 ; vmulps %ymm6,%ymm8,%ymm9 DB 197,180,88,210 ; vaddps %ymm2,%ymm9,%ymm2 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstover_avx _sk_dstover_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,199 ; vsubps %ymm7,%ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_modulate_avx _sk_modulate_avx LABEL PROC DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_multiply_avx _sk_multiply_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9 DB 197,52,89,208 ; vmulps %ymm0,%ymm9,%ymm10 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0 DB 197,52,89,209 ; vmulps %ymm1,%ymm9,%ymm10 DB 197,60,89,221 ; vmulps %ymm5,%ymm8,%ymm11 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1 DB 197,52,89,210 ; vmulps %ymm2,%ymm9,%ymm10 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2 DB 197,52,89,203 ; vmulps %ymm3,%ymm9,%ymm9 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 196,193,100,88,216 ; vaddps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_plus__avx _sk_plus__avx LABEL PROC DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_screen_avx _sk_screen_avx LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 197,100,88,199 ; vaddps %ymm7,%ymm3,%ymm8 DB 197,228,89,223 ; vmulps %ymm7,%ymm3,%ymm3 DB 197,188,92,219 ; vsubps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_xor__avx _sk_xor__avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,212 ; vmulps %ymm4,%ymm8,%ymm10 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1 DB 197,60,89,213 ; vmulps %ymm5,%ymm8,%ymm10 DB 197,172,88,201 ; vaddps %ymm1,%ymm10,%ymm1 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2 DB 197,60,89,214 ; vmulps %ymm6,%ymm8,%ymm10 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2 DB 197,180,89,219 ; vmulps %ymm3,%ymm9,%ymm3 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_darken_avx _sk_darken_avx LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9 DB 196,193,124,95,193 ; vmaxps %ymm9,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9 DB 196,193,116,95,201 ; vmaxps %ymm9,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9 DB 196,193,108,95,209 ; vmaxps %ymm9,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lighten_avx _sk_lighten_avx LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9 DB 196,193,124,93,193 ; vminps %ymm9,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9 DB 196,193,116,93,201 ; vminps %ymm9,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9 DB 196,193,108,93,209 ; vminps %ymm9,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_difference_avx _sk_difference_avx LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,199 ; vmulps %ymm7,%ymm0,%ymm0 DB 197,100,89,204 ; vmulps %ymm4,%ymm3,%ymm9 DB 196,193,124,93,193 ; vminps %ymm9,%ymm0,%ymm0 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,207 ; vmulps %ymm7,%ymm1,%ymm1 DB 197,100,89,205 ; vmulps %ymm5,%ymm3,%ymm9 DB 196,193,116,93,201 ; vminps %ymm9,%ymm1,%ymm1 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,215 ; vmulps %ymm7,%ymm2,%ymm2 DB 197,100,89,206 ; vmulps %ymm6,%ymm3,%ymm9 DB 196,193,108,93,209 ; vminps %ymm9,%ymm2,%ymm2 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_exclusion_avx _sk_exclusion_avx LABEL PROC DB 197,124,88,196 ; vaddps %ymm4,%ymm0,%ymm8 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0 DB 197,188,92,192 ; vsubps %ymm0,%ymm8,%ymm0 DB 197,116,88,197 ; vaddps %ymm5,%ymm1,%ymm8 DB 197,244,89,205 ; vmulps %ymm5,%ymm1,%ymm1 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1 DB 197,188,92,201 ; vsubps %ymm1,%ymm8,%ymm1 DB 197,108,88,198 ; vaddps %ymm6,%ymm2,%ymm8 DB 197,236,89,214 ; vmulps %ymm6,%ymm2,%ymm2 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2 DB 197,188,92,210 ; vsubps %ymm2,%ymm8,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_colorburn_avx _sk_colorburn_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,207 ; vsubps %ymm7,%ymm8,%ymm9 DB 197,52,89,216 ; vmulps %ymm0,%ymm9,%ymm11 DB 196,65,44,87,210 ; vxorps %ymm10,%ymm10,%ymm10 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,228 ; vmulps %ymm4,%ymm8,%ymm12 DB 197,68,92,236 ; vsubps %ymm4,%ymm7,%ymm13 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13 DB 197,20,94,232 ; vdivps %ymm0,%ymm13,%ymm13 DB 196,65,68,93,237 ; vminps %ymm13,%ymm7,%ymm13 DB 196,65,68,92,237 ; vsubps %ymm13,%ymm7,%ymm13 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13 DB 196,65,20,88,235 ; vaddps %ymm11,%ymm13,%ymm13 DB 196,65,28,88,237 ; vaddps %ymm13,%ymm12,%ymm13 DB 197,28,88,224 ; vaddps %ymm0,%ymm12,%ymm12 DB 196,193,124,194,194,0 ; vcmpeqps %ymm10,%ymm0,%ymm0 DB 196,195,21,74,196,0 ; vblendvps %ymm0,%ymm12,%ymm13,%ymm0 DB 197,92,194,231,0 ; vcmpeqps %ymm7,%ymm4,%ymm12 DB 197,36,88,220 ; vaddps %ymm4,%ymm11,%ymm11 DB 196,195,125,74,195,192 ; vblendvps %ymm12,%ymm11,%ymm0,%ymm0 DB 197,52,89,217 ; vmulps %ymm1,%ymm9,%ymm11 DB 197,60,89,229 ; vmulps %ymm5,%ymm8,%ymm12 DB 197,68,92,237 ; vsubps %ymm5,%ymm7,%ymm13 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13 DB 197,20,94,233 ; vdivps %ymm1,%ymm13,%ymm13 DB 196,65,68,93,237 ; vminps %ymm13,%ymm7,%ymm13 DB 196,65,68,92,237 ; vsubps %ymm13,%ymm7,%ymm13 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13 DB 196,65,36,88,237 ; vaddps %ymm13,%ymm11,%ymm13 DB 196,65,28,88,237 ; vaddps %ymm13,%ymm12,%ymm13 DB 197,28,88,225 ; vaddps %ymm1,%ymm12,%ymm12 DB 196,193,116,194,202,0 ; vcmpeqps %ymm10,%ymm1,%ymm1 DB 196,195,21,74,204,16 ; vblendvps %ymm1,%ymm12,%ymm13,%ymm1 DB 197,84,194,231,0 ; vcmpeqps %ymm7,%ymm5,%ymm12 DB 197,36,88,221 ; vaddps %ymm5,%ymm11,%ymm11 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1 DB 197,52,89,202 ; vmulps %ymm2,%ymm9,%ymm9 DB 196,65,108,194,210,0 ; vcmpeqps %ymm10,%ymm2,%ymm10 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11 DB 197,68,92,230 ; vsubps %ymm6,%ymm7,%ymm12 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12 DB 197,28,94,226 ; vdivps %ymm2,%ymm12,%ymm12 DB 197,164,88,210 ; vaddps %ymm2,%ymm11,%ymm2 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12 DB 196,65,68,92,228 ; vsubps %ymm12,%ymm7,%ymm12 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12 DB 196,65,52,88,228 ; vaddps %ymm12,%ymm9,%ymm12 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 196,227,37,74,210,160 ; vblendvps %ymm10,%ymm2,%ymm11,%ymm2 DB 197,76,194,215,0 ; vcmpeqps %ymm7,%ymm6,%ymm10 DB 197,52,88,206 ; vaddps %ymm6,%ymm9,%ymm9 DB 196,195,109,74,209,160 ; vblendvps %ymm10,%ymm9,%ymm2,%ymm2 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_colordodge_avx _sk_colordodge_avx LABEL PROC DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,67,121,4,201,0 ; vpermilps $0x0,%xmm9,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 197,52,92,215 ; vsubps %ymm7,%ymm9,%ymm10 DB 197,44,89,216 ; vmulps %ymm0,%ymm10,%ymm11 DB 197,52,92,203 ; vsubps %ymm3,%ymm9,%ymm9 DB 197,100,89,228 ; vmulps %ymm4,%ymm3,%ymm12 DB 197,100,92,232 ; vsubps %ymm0,%ymm3,%ymm13 DB 196,65,28,94,229 ; vdivps %ymm13,%ymm12,%ymm12 DB 197,52,89,236 ; vmulps %ymm4,%ymm9,%ymm13 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12 DB 196,65,28,88,227 ; vaddps %ymm11,%ymm12,%ymm12 DB 196,65,20,88,228 ; vaddps %ymm12,%ymm13,%ymm12 DB 197,20,88,232 ; vaddps %ymm0,%ymm13,%ymm13 DB 197,252,194,195,0 ; vcmpeqps %ymm3,%ymm0,%ymm0 DB 196,195,29,74,197,0 ; vblendvps %ymm0,%ymm13,%ymm12,%ymm0 DB 196,65,92,194,224,0 ; vcmpeqps %ymm8,%ymm4,%ymm12 DB 197,36,88,220 ; vaddps %ymm4,%ymm11,%ymm11 DB 196,195,125,74,195,192 ; vblendvps %ymm12,%ymm11,%ymm0,%ymm0 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11 DB 197,100,89,229 ; vmulps %ymm5,%ymm3,%ymm12 DB 197,100,92,233 ; vsubps %ymm1,%ymm3,%ymm13 DB 196,65,28,94,229 ; vdivps %ymm13,%ymm12,%ymm12 DB 197,52,89,237 ; vmulps %ymm5,%ymm9,%ymm13 DB 196,65,68,93,228 ; vminps %ymm12,%ymm7,%ymm12 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12 DB 196,65,28,88,227 ; vaddps %ymm11,%ymm12,%ymm12 DB 196,65,20,88,228 ; vaddps %ymm12,%ymm13,%ymm12 DB 197,20,88,233 ; vaddps %ymm1,%ymm13,%ymm13 DB 197,244,194,203,0 ; vcmpeqps %ymm3,%ymm1,%ymm1 DB 196,195,29,74,205,16 ; vblendvps %ymm1,%ymm13,%ymm12,%ymm1 DB 196,65,84,194,224,0 ; vcmpeqps %ymm8,%ymm5,%ymm12 DB 197,36,88,221 ; vaddps %ymm5,%ymm11,%ymm11 DB 196,195,117,74,203,192 ; vblendvps %ymm12,%ymm11,%ymm1,%ymm1 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10 DB 197,100,89,222 ; vmulps %ymm6,%ymm3,%ymm11 DB 197,100,92,226 ; vsubps %ymm2,%ymm3,%ymm12 DB 196,65,36,94,220 ; vdivps %ymm12,%ymm11,%ymm11 DB 197,52,89,230 ; vmulps %ymm6,%ymm9,%ymm12 DB 196,65,68,93,219 ; vminps %ymm11,%ymm7,%ymm11 DB 197,36,89,219 ; vmulps %ymm3,%ymm11,%ymm11 DB 196,65,44,88,219 ; vaddps %ymm11,%ymm10,%ymm11 DB 196,65,28,88,219 ; vaddps %ymm11,%ymm12,%ymm11 DB 197,28,88,226 ; vaddps %ymm2,%ymm12,%ymm12 DB 197,236,194,211,0 ; vcmpeqps %ymm3,%ymm2,%ymm2 DB 196,195,37,74,212,32 ; vblendvps %ymm2,%ymm12,%ymm11,%ymm2 DB 196,65,76,194,192,0 ; vcmpeqps %ymm8,%ymm6,%ymm8 DB 197,44,88,214 ; vaddps %ymm6,%ymm10,%ymm10 DB 196,195,109,74,210,128 ; vblendvps %ymm8,%ymm10,%ymm2,%ymm2 DB 197,52,89,199 ; vmulps %ymm7,%ymm9,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_hardlight_avx _sk_hardlight_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10 DB 197,44,89,200 ; vmulps %ymm0,%ymm10,%ymm9 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11 DB 196,65,52,88,219 ; vaddps %ymm11,%ymm9,%ymm11 DB 197,124,88,200 ; vaddps %ymm0,%ymm0,%ymm9 DB 197,52,194,227,2 ; vcmpleps %ymm3,%ymm9,%ymm12 DB 197,124,89,204 ; vmulps %ymm4,%ymm0,%ymm9 DB 196,65,52,88,233 ; vaddps %ymm9,%ymm9,%ymm13 DB 197,100,89,207 ; vmulps %ymm7,%ymm3,%ymm9 DB 197,68,92,244 ; vsubps %ymm4,%ymm7,%ymm14 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0 DB 197,180,92,192 ; vsubps %ymm0,%ymm9,%ymm0 DB 196,195,125,74,197,192 ; vblendvps %ymm12,%ymm13,%ymm0,%ymm0 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11 DB 197,60,89,229 ; vmulps %ymm5,%ymm8,%ymm12 DB 196,65,28,88,219 ; vaddps %ymm11,%ymm12,%ymm11 DB 197,116,88,225 ; vaddps %ymm1,%ymm1,%ymm12 DB 197,28,194,227,2 ; vcmpleps %ymm3,%ymm12,%ymm12 DB 197,116,89,237 ; vmulps %ymm5,%ymm1,%ymm13 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13 DB 197,68,92,245 ; vsubps %ymm5,%ymm7,%ymm14 DB 197,228,92,201 ; vsubps %ymm1,%ymm3,%ymm1 DB 196,193,116,89,206 ; vmulps %ymm14,%ymm1,%ymm1 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1 DB 197,180,92,201 ; vsubps %ymm1,%ymm9,%ymm1 DB 196,195,117,74,205,192 ; vblendvps %ymm12,%ymm13,%ymm1,%ymm1 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10 DB 197,108,88,218 ; vaddps %ymm2,%ymm2,%ymm11 DB 197,36,194,219,2 ; vcmpleps %ymm3,%ymm11,%ymm11 DB 197,108,89,230 ; vmulps %ymm6,%ymm2,%ymm12 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12 DB 197,68,92,238 ; vsubps %ymm6,%ymm7,%ymm13 DB 197,228,92,210 ; vsubps %ymm2,%ymm3,%ymm2 DB 196,193,108,89,213 ; vmulps %ymm13,%ymm2,%ymm2 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2 DB 197,180,92,210 ; vsubps %ymm2,%ymm9,%ymm2 DB 196,195,109,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm2,%ymm2 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_overlay_avx _sk_overlay_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10 DB 197,44,89,200 ; vmulps %ymm0,%ymm10,%ymm9 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11 DB 196,65,52,88,219 ; vaddps %ymm11,%ymm9,%ymm11 DB 197,92,88,204 ; vaddps %ymm4,%ymm4,%ymm9 DB 197,52,194,231,2 ; vcmpleps %ymm7,%ymm9,%ymm12 DB 197,124,89,204 ; vmulps %ymm4,%ymm0,%ymm9 DB 196,65,52,88,233 ; vaddps %ymm9,%ymm9,%ymm13 DB 197,100,89,207 ; vmulps %ymm7,%ymm3,%ymm9 DB 197,68,92,244 ; vsubps %ymm4,%ymm7,%ymm14 DB 197,228,92,192 ; vsubps %ymm0,%ymm3,%ymm0 DB 196,193,124,89,198 ; vmulps %ymm14,%ymm0,%ymm0 DB 197,252,88,192 ; vaddps %ymm0,%ymm0,%ymm0 DB 197,180,92,192 ; vsubps %ymm0,%ymm9,%ymm0 DB 196,195,125,74,197,192 ; vblendvps %ymm12,%ymm13,%ymm0,%ymm0 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0 DB 197,44,89,217 ; vmulps %ymm1,%ymm10,%ymm11 DB 197,60,89,229 ; vmulps %ymm5,%ymm8,%ymm12 DB 196,65,28,88,219 ; vaddps %ymm11,%ymm12,%ymm11 DB 197,84,88,229 ; vaddps %ymm5,%ymm5,%ymm12 DB 197,28,194,231,2 ; vcmpleps %ymm7,%ymm12,%ymm12 DB 197,116,89,237 ; vmulps %ymm5,%ymm1,%ymm13 DB 196,65,20,88,237 ; vaddps %ymm13,%ymm13,%ymm13 DB 197,68,92,245 ; vsubps %ymm5,%ymm7,%ymm14 DB 197,228,92,201 ; vsubps %ymm1,%ymm3,%ymm1 DB 196,193,116,89,206 ; vmulps %ymm14,%ymm1,%ymm1 DB 197,244,88,201 ; vaddps %ymm1,%ymm1,%ymm1 DB 197,180,92,201 ; vsubps %ymm1,%ymm9,%ymm1 DB 196,195,117,74,205,192 ; vblendvps %ymm12,%ymm13,%ymm1,%ymm1 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10 DB 197,60,89,222 ; vmulps %ymm6,%ymm8,%ymm11 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10 DB 197,76,88,222 ; vaddps %ymm6,%ymm6,%ymm11 DB 197,36,194,223,2 ; vcmpleps %ymm7,%ymm11,%ymm11 DB 197,108,89,230 ; vmulps %ymm6,%ymm2,%ymm12 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12 DB 197,68,92,238 ; vsubps %ymm6,%ymm7,%ymm13 DB 197,228,92,210 ; vsubps %ymm2,%ymm3,%ymm2 DB 196,193,108,89,213 ; vmulps %ymm13,%ymm2,%ymm2 DB 197,236,88,210 ; vaddps %ymm2,%ymm2,%ymm2 DB 197,180,92,210 ; vsubps %ymm2,%ymm9,%ymm2 DB 196,195,109,74,212,176 ; vblendvps %ymm11,%ymm12,%ymm2,%ymm2 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_softlight_avx _sk_softlight_avx LABEL PROC DB 72,131,236,56 ; sub $0x38,%rsp DB 197,252,17,20,36 ; vmovups %ymm2,(%rsp) DB 197,252,40,209 ; vmovaps %ymm1,%ymm2 DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9 DB 197,52,194,215,1 ; vcmpltps %ymm7,%ymm9,%ymm10 DB 197,92,94,199 ; vdivps %ymm7,%ymm4,%ymm8 DB 196,67,53,74,216,160 ; vblendvps %ymm10,%ymm8,%ymm9,%ymm11 DB 196,65,36,88,195 ; vaddps %ymm11,%ymm11,%ymm8 DB 196,65,60,88,224 ; vaddps %ymm8,%ymm8,%ymm12 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 196,65,28,89,236 ; vmulps %ymm12,%ymm12,%ymm13 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12 DB 196,65,36,92,232 ; vsubps %ymm8,%ymm11,%ymm13 DB 196,65,28,89,237 ; vmulps %ymm13,%ymm12,%ymm13 DB 184,0,0,224,64 ; mov $0x40e00000,%eax DB 197,121,110,224 ; vmovd %eax,%xmm12 DB 196,67,121,4,228,0 ; vpermilps $0x0,%xmm12,%xmm12 DB 196,67,29,24,228,1 ; vinsertf128 $0x1,%xmm12,%ymm12,%ymm12 DB 196,65,36,89,244 ; vmulps %ymm12,%ymm11,%ymm14 DB 196,65,20,88,238 ; vaddps %ymm14,%ymm13,%ymm13 DB 196,65,124,82,243 ; vrsqrtps %ymm11,%ymm14 DB 196,65,124,83,246 ; vrcpps %ymm14,%ymm14 DB 196,65,12,92,243 ; vsubps %ymm11,%ymm14,%ymm14 DB 197,92,88,252 ; vaddps %ymm4,%ymm4,%ymm15 DB 196,65,4,88,255 ; vaddps %ymm15,%ymm15,%ymm15 DB 197,4,194,255,2 ; vcmpleps %ymm7,%ymm15,%ymm15 DB 196,67,13,74,237,240 ; vblendvps %ymm15,%ymm13,%ymm14,%ymm13 DB 197,124,88,240 ; vaddps %ymm0,%ymm0,%ymm14 DB 197,12,92,251 ; vsubps %ymm3,%ymm14,%ymm15 DB 196,65,60,92,219 ; vsubps %ymm11,%ymm8,%ymm11 DB 196,65,4,89,219 ; vmulps %ymm11,%ymm15,%ymm11 DB 197,36,88,219 ; vaddps %ymm3,%ymm11,%ymm11 DB 197,36,89,220 ; vmulps %ymm4,%ymm11,%ymm11 DB 197,4,89,255 ; vmulps %ymm7,%ymm15,%ymm15 DB 196,65,4,89,237 ; vmulps %ymm13,%ymm15,%ymm13 DB 197,100,89,252 ; vmulps %ymm4,%ymm3,%ymm15 DB 196,65,4,88,237 ; vaddps %ymm13,%ymm15,%ymm13 DB 197,12,194,243,2 ; vcmpleps %ymm3,%ymm14,%ymm14 DB 196,195,21,74,203,224 ; vblendvps %ymm14,%ymm11,%ymm13,%ymm1 DB 197,84,94,239 ; vdivps %ymm7,%ymm5,%ymm13 DB 196,67,53,74,237,160 ; vblendvps %ymm10,%ymm13,%ymm9,%ymm13 DB 196,65,20,88,245 ; vaddps %ymm13,%ymm13,%ymm14 DB 196,65,12,88,246 ; vaddps %ymm14,%ymm14,%ymm14 DB 196,65,12,89,254 ; vmulps %ymm14,%ymm14,%ymm15 DB 196,65,12,88,247 ; vaddps %ymm15,%ymm14,%ymm14 DB 196,65,20,92,248 ; vsubps %ymm8,%ymm13,%ymm15 DB 196,65,4,89,246 ; vmulps %ymm14,%ymm15,%ymm14 DB 196,65,28,89,253 ; vmulps %ymm13,%ymm12,%ymm15 DB 196,65,4,88,246 ; vaddps %ymm14,%ymm15,%ymm14 DB 196,65,124,82,253 ; vrsqrtps %ymm13,%ymm15 DB 196,65,124,83,255 ; vrcpps %ymm15,%ymm15 DB 196,65,4,92,253 ; vsubps %ymm13,%ymm15,%ymm15 DB 197,84,88,221 ; vaddps %ymm5,%ymm5,%ymm11 DB 196,65,36,88,219 ; vaddps %ymm11,%ymm11,%ymm11 DB 197,36,194,223,2 ; vcmpleps %ymm7,%ymm11,%ymm11 DB 196,67,5,74,222,176 ; vblendvps %ymm11,%ymm14,%ymm15,%ymm11 DB 197,108,88,242 ; vaddps %ymm2,%ymm2,%ymm14 DB 196,65,60,92,237 ; vsubps %ymm13,%ymm8,%ymm13 DB 197,12,92,251 ; vsubps %ymm3,%ymm14,%ymm15 DB 196,65,4,89,237 ; vmulps %ymm13,%ymm15,%ymm13 DB 197,4,89,255 ; vmulps %ymm7,%ymm15,%ymm15 DB 196,65,4,89,219 ; vmulps %ymm11,%ymm15,%ymm11 DB 197,100,89,253 ; vmulps %ymm5,%ymm3,%ymm15 DB 196,65,4,88,219 ; vaddps %ymm11,%ymm15,%ymm11 DB 197,20,88,235 ; vaddps %ymm3,%ymm13,%ymm13 DB 197,20,89,237 ; vmulps %ymm5,%ymm13,%ymm13 DB 197,12,194,243,2 ; vcmpleps %ymm3,%ymm14,%ymm14 DB 196,67,37,74,237,224 ; vblendvps %ymm14,%ymm13,%ymm11,%ymm13 DB 197,76,94,223 ; vdivps %ymm7,%ymm6,%ymm11 DB 196,67,53,74,203,160 ; vblendvps %ymm10,%ymm11,%ymm9,%ymm9 DB 196,65,52,88,209 ; vaddps %ymm9,%ymm9,%ymm10 DB 196,65,44,88,210 ; vaddps %ymm10,%ymm10,%ymm10 DB 196,65,44,89,218 ; vmulps %ymm10,%ymm10,%ymm11 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 196,65,52,92,216 ; vsubps %ymm8,%ymm9,%ymm11 DB 196,65,36,89,210 ; vmulps %ymm10,%ymm11,%ymm10 DB 196,65,28,89,217 ; vmulps %ymm9,%ymm12,%ymm11 DB 196,65,36,88,210 ; vaddps %ymm10,%ymm11,%ymm10 DB 196,65,124,82,217 ; vrsqrtps %ymm9,%ymm11 DB 196,65,124,83,219 ; vrcpps %ymm11,%ymm11 DB 196,65,36,92,217 ; vsubps %ymm9,%ymm11,%ymm11 DB 197,76,88,230 ; vaddps %ymm6,%ymm6,%ymm12 DB 196,65,28,88,228 ; vaddps %ymm12,%ymm12,%ymm12 DB 197,28,194,231,2 ; vcmpleps %ymm7,%ymm12,%ymm12 DB 196,67,37,74,210,192 ; vblendvps %ymm12,%ymm10,%ymm11,%ymm10 DB 197,124,16,52,36 ; vmovups (%rsp),%ymm14 DB 196,65,12,88,222 ; vaddps %ymm14,%ymm14,%ymm11 DB 197,36,92,227 ; vsubps %ymm3,%ymm11,%ymm12 DB 196,65,60,92,201 ; vsubps %ymm9,%ymm8,%ymm9 DB 196,65,28,89,201 ; vmulps %ymm9,%ymm12,%ymm9 DB 197,28,89,231 ; vmulps %ymm7,%ymm12,%ymm12 DB 196,65,28,89,210 ; vmulps %ymm10,%ymm12,%ymm10 DB 197,100,89,230 ; vmulps %ymm6,%ymm3,%ymm12 DB 196,65,28,88,210 ; vaddps %ymm10,%ymm12,%ymm10 DB 197,52,88,203 ; vaddps %ymm3,%ymm9,%ymm9 DB 197,52,89,206 ; vmulps %ymm6,%ymm9,%ymm9 DB 197,36,194,219,2 ; vcmpleps %ymm3,%ymm11,%ymm11 DB 196,67,45,74,201,176 ; vblendvps %ymm11,%ymm9,%ymm10,%ymm9 DB 197,60,92,215 ; vsubps %ymm7,%ymm8,%ymm10 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0 DB 197,60,92,195 ; vsubps %ymm3,%ymm8,%ymm8 DB 197,60,89,220 ; vmulps %ymm4,%ymm8,%ymm11 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0 DB 197,244,88,192 ; vaddps %ymm0,%ymm1,%ymm0 DB 197,172,89,202 ; vmulps %ymm2,%ymm10,%ymm1 DB 197,188,89,213 ; vmulps %ymm5,%ymm8,%ymm2 DB 197,236,88,201 ; vaddps %ymm1,%ymm2,%ymm1 DB 196,193,116,88,205 ; vaddps %ymm13,%ymm1,%ymm1 DB 196,193,44,89,214 ; vmulps %ymm14,%ymm10,%ymm2 DB 197,60,89,214 ; vmulps %ymm6,%ymm8,%ymm10 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2 DB 196,193,108,88,209 ; vaddps %ymm9,%ymm2,%ymm2 DB 197,60,89,199 ; vmulps %ymm7,%ymm8,%ymm8 DB 197,188,88,219 ; vaddps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,131,196,56 ; add $0x38,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_0_avx _sk_clamp_0_avx LABEL PROC DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,193,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm0 DB 196,193,116,95,200 ; vmaxps %ymm8,%ymm1,%ymm1 DB 196,193,108,95,208 ; vmaxps %ymm8,%ymm2,%ymm2 DB 196,193,100,95,216 ; vmaxps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_1_avx _sk_clamp_1_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 196,193,124,93,192 ; vminps %ymm8,%ymm0,%ymm0 DB 196,193,116,93,200 ; vminps %ymm8,%ymm1,%ymm1 DB 196,193,108,93,208 ; vminps %ymm8,%ymm2,%ymm2 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_a_avx _sk_clamp_a_avx LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 196,193,100,93,216 ; vminps %ymm8,%ymm3,%ymm3 DB 197,252,93,195 ; vminps %ymm3,%ymm0,%ymm0 DB 197,244,93,203 ; vminps %ymm3,%ymm1,%ymm1 DB 197,236,93,211 ; vminps %ymm3,%ymm2,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_set_rgb_avx _sk_set_rgb_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,226,125,24,0 ; vbroadcastss (%rax),%ymm0 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_swap_rb_avx _sk_swap_rb_avx LABEL PROC DB 197,124,40,192 ; vmovaps %ymm0,%ymm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,194 ; vmovaps %ymm2,%ymm0 DB 197,124,41,194 ; vmovaps %ymm8,%ymm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_swap_avx _sk_swap_avx LABEL PROC DB 197,124,40,195 ; vmovaps %ymm3,%ymm8 DB 197,124,40,202 ; vmovaps %ymm2,%ymm9 DB 197,124,40,209 ; vmovaps %ymm1,%ymm10 DB 197,124,40,216 ; vmovaps %ymm0,%ymm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,196 ; vmovaps %ymm4,%ymm0 DB 197,252,40,205 ; vmovaps %ymm5,%ymm1 DB 197,252,40,214 ; vmovaps %ymm6,%ymm2 DB 197,252,40,223 ; vmovaps %ymm7,%ymm3 DB 197,124,41,220 ; vmovaps %ymm11,%ymm4 DB 197,124,41,213 ; vmovaps %ymm10,%ymm5 DB 197,124,41,206 ; vmovaps %ymm9,%ymm6 DB 197,124,41,199 ; vmovaps %ymm8,%ymm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_move_src_dst_avx _sk_move_src_dst_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,224 ; vmovaps %ymm0,%ymm4 DB 197,252,40,233 ; vmovaps %ymm1,%ymm5 DB 197,252,40,242 ; vmovaps %ymm2,%ymm6 DB 197,252,40,251 ; vmovaps %ymm3,%ymm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_move_dst_src_avx _sk_move_dst_src_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,196 ; vmovaps %ymm4,%ymm0 DB 197,252,40,205 ; vmovaps %ymm5,%ymm1 DB 197,252,40,214 ; vmovaps %ymm6,%ymm2 DB 197,252,40,223 ; vmovaps %ymm7,%ymm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_premul_avx _sk_premul_avx LABEL PROC DB 197,252,89,195 ; vmulps %ymm3,%ymm0,%ymm0 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_unpremul_avx _sk_unpremul_avx LABEL PROC DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,100,194,200,0 ; vcmpeqps %ymm8,%ymm3,%ymm9 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 197,44,94,211 ; vdivps %ymm3,%ymm10,%ymm10 DB 196,67,45,74,192,144 ; vblendvps %ymm9,%ymm8,%ymm10,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_from_srgb_avx _sk_from_srgb_avx LABEL PROC DB 184,145,131,158,61 ; mov $0x3d9e8391,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 197,124,89,208 ; vmulps %ymm0,%ymm0,%ymm10 DB 184,154,153,153,62 ; mov $0x3e99999a,%eax DB 197,121,110,216 ; vmovd %eax,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 184,92,143,50,63 ; mov $0x3f328f5c,%eax DB 197,121,110,224 ; vmovd %eax,%xmm12 DB 196,67,121,4,228,0 ; vpermilps $0x0,%xmm12,%xmm12 DB 196,67,29,24,228,1 ; vinsertf128 $0x1,%xmm12,%ymm12,%ymm12 DB 197,36,89,232 ; vmulps %ymm0,%ymm11,%ymm13 DB 196,65,20,88,236 ; vaddps %ymm12,%ymm13,%ymm13 DB 184,10,215,35,59 ; mov $0x3b23d70a,%eax DB 197,121,110,240 ; vmovd %eax,%xmm14 DB 196,67,121,4,246,0 ; vpermilps $0x0,%xmm14,%xmm14 DB 196,67,13,24,246,1 ; vinsertf128 $0x1,%xmm14,%ymm14,%ymm14 DB 196,65,44,89,213 ; vmulps %ymm13,%ymm10,%ymm10 DB 196,65,12,88,210 ; vaddps %ymm10,%ymm14,%ymm10 DB 184,174,71,97,61 ; mov $0x3d6147ae,%eax DB 197,121,110,232 ; vmovd %eax,%xmm13 DB 196,67,121,4,237,0 ; vpermilps $0x0,%xmm13,%xmm13 DB 196,67,21,24,237,1 ; vinsertf128 $0x1,%xmm13,%ymm13,%ymm13 DB 196,193,124,194,197,1 ; vcmpltps %ymm13,%ymm0,%ymm0 DB 196,195,45,74,193,0 ; vblendvps %ymm0,%ymm9,%ymm10,%ymm0 DB 197,60,89,201 ; vmulps %ymm1,%ymm8,%ymm9 DB 197,116,89,209 ; vmulps %ymm1,%ymm1,%ymm10 DB 197,36,89,249 ; vmulps %ymm1,%ymm11,%ymm15 DB 196,65,28,88,255 ; vaddps %ymm15,%ymm12,%ymm15 DB 196,65,44,89,215 ; vmulps %ymm15,%ymm10,%ymm10 DB 196,65,12,88,210 ; vaddps %ymm10,%ymm14,%ymm10 DB 196,193,116,194,205,1 ; vcmpltps %ymm13,%ymm1,%ymm1 DB 196,195,45,74,201,16 ; vblendvps %ymm1,%ymm9,%ymm10,%ymm1 DB 197,60,89,194 ; vmulps %ymm2,%ymm8,%ymm8 DB 197,108,89,202 ; vmulps %ymm2,%ymm2,%ymm9 DB 197,36,89,210 ; vmulps %ymm2,%ymm11,%ymm10 DB 196,65,28,88,210 ; vaddps %ymm10,%ymm12,%ymm10 DB 196,65,52,89,202 ; vmulps %ymm10,%ymm9,%ymm9 DB 196,65,12,88,201 ; vaddps %ymm9,%ymm14,%ymm9 DB 196,193,108,194,213,1 ; vcmpltps %ymm13,%ymm2,%ymm2 DB 196,195,53,74,208,32 ; vblendvps %ymm2,%ymm8,%ymm9,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_to_srgb_avx _sk_to_srgb_avx LABEL PROC DB 197,124,82,192 ; vrsqrtps %ymm0,%ymm8 DB 196,65,124,83,232 ; vrcpps %ymm8,%ymm13 DB 196,65,124,82,240 ; vrsqrtps %ymm8,%ymm14 DB 184,41,92,71,65 ; mov $0x41475c29,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,89,224 ; vmulps %ymm0,%ymm8,%ymm12 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,67,121,4,201,0 ; vpermilps $0x0,%xmm9,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 184,194,135,210,62 ; mov $0x3ed287c2,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 184,206,111,48,63 ; mov $0x3f306fce,%eax DB 197,121,110,216 ; vmovd %eax,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 184,168,87,202,61 ; mov $0x3dca57a8,%eax DB 53,0,0,0,128 ; xor $0x80000000,%eax DB 197,121,110,248 ; vmovd %eax,%xmm15 DB 196,67,121,4,255,0 ; vpermilps $0x0,%xmm15,%xmm15 DB 196,67,5,24,255,1 ; vinsertf128 $0x1,%xmm15,%ymm15,%ymm15 DB 196,65,20,89,235 ; vmulps %ymm11,%ymm13,%ymm13 DB 196,65,20,88,239 ; vaddps %ymm15,%ymm13,%ymm13 DB 196,65,12,89,242 ; vmulps %ymm10,%ymm14,%ymm14 DB 196,65,12,88,237 ; vaddps %ymm13,%ymm14,%ymm13 DB 196,65,52,93,237 ; vminps %ymm13,%ymm9,%ymm13 DB 184,4,231,140,59 ; mov $0x3b8ce704,%eax DB 197,121,110,240 ; vmovd %eax,%xmm14 DB 196,67,121,4,246,0 ; vpermilps $0x0,%xmm14,%xmm14 DB 196,67,13,24,246,1 ; vinsertf128 $0x1,%xmm14,%ymm14,%ymm14 DB 196,193,124,194,198,1 ; vcmpltps %ymm14,%ymm0,%ymm0 DB 196,195,21,74,196,0 ; vblendvps %ymm0,%ymm12,%ymm13,%ymm0 DB 197,124,82,225 ; vrsqrtps %ymm1,%ymm12 DB 196,65,124,83,236 ; vrcpps %ymm12,%ymm13 DB 196,65,124,82,228 ; vrsqrtps %ymm12,%ymm12 DB 196,65,36,89,237 ; vmulps %ymm13,%ymm11,%ymm13 DB 196,65,4,88,237 ; vaddps %ymm13,%ymm15,%ymm13 DB 196,65,44,89,228 ; vmulps %ymm12,%ymm10,%ymm12 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12 DB 197,60,89,233 ; vmulps %ymm1,%ymm8,%ymm13 DB 196,65,52,93,228 ; vminps %ymm12,%ymm9,%ymm12 DB 196,193,116,194,206,1 ; vcmpltps %ymm14,%ymm1,%ymm1 DB 196,195,29,74,205,16 ; vblendvps %ymm1,%ymm13,%ymm12,%ymm1 DB 197,124,82,226 ; vrsqrtps %ymm2,%ymm12 DB 196,65,124,83,236 ; vrcpps %ymm12,%ymm13 DB 196,65,36,89,221 ; vmulps %ymm13,%ymm11,%ymm11 DB 196,65,4,88,219 ; vaddps %ymm11,%ymm15,%ymm11 DB 196,65,124,82,228 ; vrsqrtps %ymm12,%ymm12 DB 196,65,44,89,212 ; vmulps %ymm12,%ymm10,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 196,65,52,93,202 ; vminps %ymm10,%ymm9,%ymm9 DB 197,60,89,194 ; vmulps %ymm2,%ymm8,%ymm8 DB 196,193,108,194,214,1 ; vcmpltps %ymm14,%ymm2,%ymm2 DB 196,195,53,74,208,32 ; vblendvps %ymm2,%ymm8,%ymm9,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_rgb_to_hsl_avx _sk_rgb_to_hsl_avx LABEL PROC DB 197,124,95,193 ; vmaxps %ymm1,%ymm0,%ymm8 DB 197,60,95,194 ; vmaxps %ymm2,%ymm8,%ymm8 DB 197,124,93,201 ; vminps %ymm1,%ymm0,%ymm9 DB 197,52,93,202 ; vminps %ymm2,%ymm9,%ymm9 DB 196,65,60,92,209 ; vsubps %ymm9,%ymm8,%ymm10 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,121,110,216 ; vmovd %eax,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 196,65,36,94,218 ; vdivps %ymm10,%ymm11,%ymm11 DB 65,184,171,170,42,62 ; mov $0x3e2aaaab,%r8d DB 197,116,92,226 ; vsubps %ymm2,%ymm1,%ymm12 DB 196,65,28,89,227 ; vmulps %ymm11,%ymm12,%ymm12 DB 65,185,0,0,192,64 ; mov $0x40c00000,%r9d DB 197,108,92,232 ; vsubps %ymm0,%ymm2,%ymm13 DB 196,65,20,89,235 ; vmulps %ymm11,%ymm13,%ymm13 DB 65,186,0,0,0,64 ; mov $0x40000000,%r10d DB 197,124,92,241 ; vsubps %ymm1,%ymm0,%ymm14 DB 196,65,12,89,219 ; vmulps %ymm11,%ymm14,%ymm11 DB 184,0,0,128,64 ; mov $0x40800000,%eax DB 197,121,110,240 ; vmovd %eax,%xmm14 DB 196,67,121,4,246,0 ; vpermilps $0x0,%xmm14,%xmm14 DB 196,67,13,24,246,1 ; vinsertf128 $0x1,%xmm14,%ymm14,%ymm14 DB 196,65,36,88,222 ; vaddps %ymm14,%ymm11,%ymm11 DB 196,65,121,110,242 ; vmovd %r10d,%xmm14 DB 197,244,194,210,1 ; vcmpltps %ymm2,%ymm1,%ymm2 DB 197,188,194,201,0 ; vcmpeqps %ymm1,%ymm8,%ymm1 DB 196,67,121,4,246,0 ; vpermilps $0x0,%xmm14,%xmm14 DB 196,67,13,24,246,1 ; vinsertf128 $0x1,%xmm14,%ymm14,%ymm14 DB 196,65,20,88,238 ; vaddps %ymm14,%ymm13,%ymm13 DB 196,67,37,74,221,16 ; vblendvps %ymm1,%ymm13,%ymm11,%ymm11 DB 196,193,121,110,201 ; vmovd %r9d,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 196,65,20,87,237 ; vxorps %ymm13,%ymm13,%ymm13 DB 196,227,21,74,201,32 ; vblendvps %ymm2,%ymm1,%ymm13,%ymm1 DB 196,193,116,88,204 ; vaddps %ymm12,%ymm1,%ymm1 DB 184,0,0,0,63 ; mov $0x3f000000,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 197,188,194,192,0 ; vcmpeqps %ymm0,%ymm8,%ymm0 DB 196,227,37,74,193,0 ; vblendvps %ymm0,%ymm1,%ymm11,%ymm0 DB 196,193,60,88,201 ; vaddps %ymm9,%ymm8,%ymm1 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,99,109,24,218,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm11 DB 196,193,116,89,211 ; vmulps %ymm11,%ymm1,%ymm2 DB 197,36,194,218,1 ; vcmpltps %ymm2,%ymm11,%ymm11 DB 196,65,12,92,224 ; vsubps %ymm8,%ymm14,%ymm12 DB 196,65,28,92,225 ; vsubps %ymm9,%ymm12,%ymm12 DB 196,195,117,74,204,176 ; vblendvps %ymm11,%ymm12,%ymm1,%ymm1 DB 196,65,60,194,193,0 ; vcmpeqps %ymm9,%ymm8,%ymm8 DB 197,172,94,201 ; vdivps %ymm1,%ymm10,%ymm1 DB 196,67,125,74,205,128 ; vblendvps %ymm8,%ymm13,%ymm0,%ymm9 DB 196,195,117,74,205,128 ; vblendvps %ymm8,%ymm13,%ymm1,%ymm1 DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_hsl_to_rgb_avx _sk_hsl_to_rgb_avx LABEL PROC DB 72,129,236,184,0,0,0 ; sub $0xb8,%rsp DB 197,252,17,188,36,128,0,0,0 ; vmovups %ymm7,0x80(%rsp) DB 197,252,17,116,36,96 ; vmovups %ymm6,0x60(%rsp) DB 197,252,17,108,36,64 ; vmovups %ymm5,0x40(%rsp) DB 197,252,17,100,36,32 ; vmovups %ymm4,0x20(%rsp) DB 197,252,17,28,36 ; vmovups %ymm3,(%rsp) DB 197,252,40,226 ; vmovaps %ymm2,%ymm4 DB 197,252,40,233 ; vmovaps %ymm1,%ymm5 DB 197,252,40,216 ; vmovaps %ymm0,%ymm3 DB 184,0,0,0,63 ; mov $0x3f000000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,99,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm8 DB 196,193,92,194,192,1 ; vcmpltps %ymm8,%ymm4,%ymm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,99,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm10 DB 197,172,88,213 ; vaddps %ymm5,%ymm10,%ymm2 DB 197,236,89,212 ; vmulps %ymm4,%ymm2,%ymm2 DB 197,84,88,204 ; vaddps %ymm4,%ymm5,%ymm9 DB 197,84,89,220 ; vmulps %ymm4,%ymm5,%ymm11 DB 196,65,52,92,203 ; vsubps %ymm11,%ymm9,%ymm9 DB 196,99,53,74,202,0 ; vblendvps %ymm0,%ymm2,%ymm9,%ymm9 DB 65,184,0,0,0,64 ; mov $0x40000000,%r8d DB 184,171,170,170,62 ; mov $0x3eaaaaab,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,99,125,24,224,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm12 DB 197,28,88,251 ; vaddps %ymm3,%ymm12,%ymm15 DB 184,0,0,0,0 ; mov $0x0,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,99,125,24,232,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm13 DB 196,193,44,194,199,1 ; vcmpltps %ymm15,%ymm10,%ymm0 DB 196,193,4,92,210 ; vsubps %ymm10,%ymm15,%ymm2 DB 196,227,5,74,194,0 ; vblendvps %ymm0,%ymm2,%ymm15,%ymm0 DB 196,193,4,194,213,1 ; vcmpltps %ymm13,%ymm15,%ymm2 DB 196,65,44,88,223 ; vaddps %ymm15,%ymm10,%ymm11 DB 196,195,125,74,203,32 ; vblendvps %ymm2,%ymm11,%ymm0,%ymm1 DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,89,196 ; vmulps %ymm4,%ymm0,%ymm0 DB 196,65,124,92,217 ; vsubps %ymm9,%ymm0,%ymm11 DB 65,184,171,170,42,62 ; mov $0x3e2aaaab,%r8d DB 184,0,0,192,64 ; mov $0x40c00000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 196,193,52,92,211 ; vsubps %ymm11,%ymm9,%ymm2 DB 197,108,89,240 ; vmulps %ymm0,%ymm2,%ymm14 DB 184,171,170,42,63 ; mov $0x3f2aaaab,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,92,209 ; vsubps %ymm1,%ymm0,%ymm2 DB 197,140,89,210 ; vmulps %ymm2,%ymm14,%ymm2 DB 197,164,88,210 ; vaddps %ymm2,%ymm11,%ymm2 DB 197,244,194,248,1 ; vcmpltps %ymm0,%ymm1,%ymm7 DB 196,227,37,74,210,112 ; vblendvps %ymm7,%ymm2,%ymm11,%ymm2 DB 196,193,116,194,248,1 ; vcmpltps %ymm8,%ymm1,%ymm7 DB 196,195,109,74,249,112 ; vblendvps %ymm7,%ymm9,%ymm2,%ymm7 DB 196,193,121,110,208 ; vmovd %r8d,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,244,194,202,1 ; vcmpltps %ymm2,%ymm1,%ymm1 DB 196,65,4,89,254 ; vmulps %ymm14,%ymm15,%ymm15 DB 196,65,36,88,255 ; vaddps %ymm15,%ymm11,%ymm15 DB 196,67,69,74,255,16 ; vblendvps %ymm1,%ymm15,%ymm7,%ymm15 DB 197,172,194,203,1 ; vcmpltps %ymm3,%ymm10,%ymm1 DB 196,193,100,92,250 ; vsubps %ymm10,%ymm3,%ymm7 DB 196,227,101,74,207,16 ; vblendvps %ymm1,%ymm7,%ymm3,%ymm1 DB 196,193,100,194,253,1 ; vcmpltps %ymm13,%ymm3,%ymm7 DB 197,172,88,243 ; vaddps %ymm3,%ymm10,%ymm6 DB 196,227,117,74,206,112 ; vblendvps %ymm7,%ymm6,%ymm1,%ymm1 DB 197,252,92,241 ; vsubps %ymm1,%ymm0,%ymm6 DB 197,140,89,246 ; vmulps %ymm6,%ymm14,%ymm6 DB 197,164,88,246 ; vaddps %ymm6,%ymm11,%ymm6 DB 197,244,194,248,1 ; vcmpltps %ymm0,%ymm1,%ymm7 DB 196,227,37,74,246,112 ; vblendvps %ymm7,%ymm6,%ymm11,%ymm6 DB 196,193,116,194,248,1 ; vcmpltps %ymm8,%ymm1,%ymm7 DB 196,195,77,74,241,112 ; vblendvps %ymm7,%ymm9,%ymm6,%ymm6 DB 197,244,194,202,1 ; vcmpltps %ymm2,%ymm1,%ymm1 DB 197,140,89,251 ; vmulps %ymm3,%ymm14,%ymm7 DB 197,164,88,255 ; vaddps %ymm7,%ymm11,%ymm7 DB 196,227,77,74,207,16 ; vblendvps %ymm1,%ymm7,%ymm6,%ymm1 DB 196,193,100,92,220 ; vsubps %ymm12,%ymm3,%ymm3 DB 197,172,194,243,1 ; vcmpltps %ymm3,%ymm10,%ymm6 DB 196,193,100,92,250 ; vsubps %ymm10,%ymm3,%ymm7 DB 196,227,101,74,247,96 ; vblendvps %ymm6,%ymm7,%ymm3,%ymm6 DB 196,193,100,194,253,1 ; vcmpltps %ymm13,%ymm3,%ymm7 DB 197,44,88,211 ; vaddps %ymm3,%ymm10,%ymm10 DB 196,195,77,74,242,112 ; vblendvps %ymm7,%ymm10,%ymm6,%ymm6 DB 197,204,194,248,1 ; vcmpltps %ymm0,%ymm6,%ymm7 DB 197,252,92,198 ; vsubps %ymm6,%ymm0,%ymm0 DB 197,140,89,192 ; vmulps %ymm0,%ymm14,%ymm0 DB 197,164,88,192 ; vaddps %ymm0,%ymm11,%ymm0 DB 196,227,37,74,192,112 ; vblendvps %ymm7,%ymm0,%ymm11,%ymm0 DB 196,193,76,194,248,1 ; vcmpltps %ymm8,%ymm6,%ymm7 DB 196,195,125,74,193,112 ; vblendvps %ymm7,%ymm9,%ymm0,%ymm0 DB 197,204,194,210,1 ; vcmpltps %ymm2,%ymm6,%ymm2 DB 196,193,100,89,222 ; vmulps %ymm14,%ymm3,%ymm3 DB 197,164,88,219 ; vaddps %ymm3,%ymm11,%ymm3 DB 196,227,125,74,211,32 ; vblendvps %ymm2,%ymm3,%ymm0,%ymm2 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,212,194,216,0 ; vcmpeqps %ymm0,%ymm5,%ymm3 DB 196,227,5,74,196,48 ; vblendvps %ymm3,%ymm4,%ymm15,%ymm0 DB 196,227,117,74,204,48 ; vblendvps %ymm3,%ymm4,%ymm1,%ymm1 DB 196,227,109,74,212,48 ; vblendvps %ymm3,%ymm4,%ymm2,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,16,28,36 ; vmovups (%rsp),%ymm3 DB 197,252,16,100,36,32 ; vmovups 0x20(%rsp),%ymm4 DB 197,252,16,108,36,64 ; vmovups 0x40(%rsp),%ymm5 DB 197,252,16,116,36,96 ; vmovups 0x60(%rsp),%ymm6 DB 197,252,16,188,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm7 DB 72,129,196,184,0,0,0 ; add $0xb8,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_scale_1_float_avx _sk_scale_1_float_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_scale_u8_avx _sk_scale_u8_avx LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,1,248 ; add %rdi,%rax DB 77,133,192 ; test %r8,%r8 DB 117,80 ; jne 138f <_sk_scale_u8_avx+0x60> DB 197,122,126,0 ; vmovq (%rax),%xmm8 DB 196,66,121,49,200 ; vpmovzxbd %xmm8,%xmm9 DB 196,67,121,4,192,229 ; vpermilps $0xe5,%xmm8,%xmm8 DB 196,66,121,49,192 ; vpmovzxbd %xmm8,%xmm8 DB 196,67,53,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm9,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,67,121,4,201,0 ; vpermilps $0x0,%xmm9,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 49,201 ; xor %ecx,%ecx DB 77,137,194 ; mov %r8,%r10 DB 69,49,201 ; xor %r9d,%r9d DB 68,15,182,24 ; movzbl (%rax),%r11d DB 72,255,192 ; inc %rax DB 73,211,227 ; shl %cl,%r11 DB 77,9,217 ; or %r11,%r9 DB 72,131,193,8 ; add $0x8,%rcx DB 73,255,202 ; dec %r10 DB 117,234 ; jne 1397 <_sk_scale_u8_avx+0x68> DB 196,65,249,110,193 ; vmovq %r9,%xmm8 DB 235,143 ; jmp 1343 <_sk_scale_u8_avx+0x14> PUBLIC _sk_lerp_1_float_avx _sk_lerp_1_float_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lerp_u8_avx _sk_lerp_u8_avx LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,1,248 ; add %rdi,%rax DB 77,133,192 ; test %r8,%r8 DB 117,116 ; jne 1477 <_sk_lerp_u8_avx+0x84> DB 197,122,126,0 ; vmovq (%rax),%xmm8 DB 196,66,121,49,200 ; vpmovzxbd %xmm8,%xmm9 DB 196,67,121,4,192,229 ; vpermilps $0xe5,%xmm8,%xmm8 DB 196,66,121,49,192 ; vpmovzxbd %xmm8,%xmm8 DB 196,67,53,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm9,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,121,110,200 ; vmovd %eax,%xmm9 DB 196,67,121,4,201,0 ; vpermilps $0x0,%xmm9,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2 DB 197,228,92,223 ; vsubps %ymm7,%ymm3,%ymm3 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3 DB 197,228,88,223 ; vaddps %ymm7,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 49,201 ; xor %ecx,%ecx DB 77,137,194 ; mov %r8,%r10 DB 69,49,201 ; xor %r9d,%r9d DB 68,15,182,24 ; movzbl (%rax),%r11d DB 72,255,192 ; inc %rax DB 73,211,227 ; shl %cl,%r11 DB 77,9,217 ; or %r11,%r9 DB 72,131,193,8 ; add $0x8,%rcx DB 73,255,202 ; dec %r10 DB 117,234 ; jne 147f <_sk_lerp_u8_avx+0x8c> DB 196,65,249,110,193 ; vmovq %r9,%xmm8 DB 233,104,255,255,255 ; jmpq 1407 <_sk_lerp_u8_avx+0x14> PUBLIC _sk_lerp_565_avx _sk_lerp_565_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 72,133,201 ; test %rcx,%rcx DB 15,133,250,0,0,0 ; jne 15a7 <_sk_lerp_565_avx+0x108> DB 196,65,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm8 DB 197,225,239,219 ; vpxor %xmm3,%xmm3,%xmm3 DB 197,185,105,219 ; vpunpckhwd %xmm3,%xmm8,%xmm3 DB 196,66,121,51,192 ; vpmovzxwd %xmm8,%xmm8 DB 196,99,61,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm8 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 197,249,112,219,0 ; vpshufd $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 196,193,100,84,216 ; vandps %ymm8,%ymm3,%ymm3 DB 197,124,91,203 ; vcvtdq2ps %ymm3,%ymm9 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,52,89,203 ; vmulps %ymm3,%ymm9,%ymm9 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 197,249,112,219,0 ; vpshufd $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 196,193,100,84,216 ; vandps %ymm8,%ymm3,%ymm3 DB 197,124,91,211 ; vcvtdq2ps %ymm3,%ymm10 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,44,89,211 ; vmulps %ymm3,%ymm10,%ymm10 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 197,249,112,219,0 ; vpshufd $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 196,193,100,84,216 ; vandps %ymm8,%ymm3,%ymm3 DB 197,124,91,195 ; vcvtdq2ps %ymm3,%ymm8 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 197,252,92,196 ; vsubps %ymm4,%ymm0,%ymm0 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0 DB 197,252,88,196 ; vaddps %ymm4,%ymm0,%ymm0 DB 197,244,92,205 ; vsubps %ymm5,%ymm1,%ymm1 DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1 DB 197,244,88,205 ; vaddps %ymm5,%ymm1,%ymm1 DB 197,236,92,214 ; vsubps %ymm6,%ymm2,%ymm2 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2 DB 197,236,88,214 ; vaddps %ymm6,%ymm2,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 196,65,57,239,192 ; vpxor %xmm8,%xmm8,%xmm8 DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 15,135,243,254,255,255 ; ja 14b3 <_sk_lerp_565_avx+0x14> DB 69,15,182,192 ; movzbl %r8b,%r8d DB 76,141,13,73,0,0,0 ; lea 0x49(%rip),%r9 # 1614 <_sk_lerp_565_avx+0x175> DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax DB 76,1,200 ; add %r9,%rax DB 255,224 ; jmpq *%rax DB 197,225,239,219 ; vpxor %xmm3,%xmm3,%xmm3 DB 196,65,97,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm3,%xmm8 DB 196,65,57,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm8,%xmm8 DB 196,65,57,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm8,%xmm8 DB 196,65,57,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm8,%xmm8 DB 196,65,57,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm8,%xmm8 DB 196,65,57,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm8,%xmm8 DB 196,65,57,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm8,%xmm8 DB 233,159,254,255,255 ; jmpq 14b3 <_sk_lerp_565_avx+0x14> DB 244 ; hlt DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 236 ; in (%dx),%al DB 255 ; (bad) DB 255 ; (bad) DB 255,228 ; jmpq *%rsp DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 220,255 ; fdivr %st,%st(7) DB 255 ; (bad) DB 255,212 ; callq *%rsp DB 255 ; (bad) DB 255 ; (bad) DB 255,204 ; dec %esp DB 255 ; (bad) DB 255 ; (bad) DB 255,192 ; inc %eax DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_tables_avx _sk_load_tables_avx LABEL PROC DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 72,133,201 ; test %rcx,%rcx DB 15,133,56,2,0,0 ; jne 1880 <_sk_load_tables_avx+0x250> DB 196,65,124,16,4,184 ; vmovups (%r8,%rdi,4),%ymm8 DB 187,255,0,0,0 ; mov $0xff,%ebx DB 197,249,110,195 ; vmovd %ebx,%xmm0 DB 197,249,112,192,0 ; vpshufd $0x0,%xmm0,%xmm0 DB 196,99,125,24,200,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm9 DB 196,193,52,84,192 ; vandps %ymm8,%ymm9,%ymm0 DB 196,193,249,126,193 ; vmovq %xmm0,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 196,195,249,22,194,1 ; vpextrq $0x1,%xmm0,%r10 DB 69,137,214 ; mov %r10d,%r14d DB 73,193,234,32 ; shr $0x20,%r10 DB 73,193,233,32 ; shr $0x20,%r9 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0 DB 196,193,249,126,196 ; vmovq %xmm0,%r12 DB 69,137,231 ; mov %r12d,%r15d DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,221 ; mov %ebx,%r13d DB 72,193,235,32 ; shr $0x20,%rbx DB 73,193,236,32 ; shr $0x20,%r12 DB 72,139,104,8 ; mov 0x8(%rax),%rbp DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 196,161,122,16,68,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm0 DB 196,163,121,33,68,165,0,16 ; vinsertps $0x10,0x0(%rbp,%r12,4),%xmm0,%xmm0 DB 196,161,122,16,76,173,0 ; vmovss 0x0(%rbp,%r13,4),%xmm1 DB 196,227,121,33,193,32 ; vinsertps $0x20,%xmm1,%xmm0,%xmm0 DB 197,250,16,76,157,0 ; vmovss 0x0(%rbp,%rbx,4),%xmm1 DB 196,227,121,33,193,48 ; vinsertps $0x30,%xmm1,%xmm0,%xmm0 DB 196,161,122,16,76,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm1 DB 196,163,113,33,76,141,0,16 ; vinsertps $0x10,0x0(%rbp,%r9,4),%xmm1,%xmm1 DB 196,161,122,16,92,181,0 ; vmovss 0x0(%rbp,%r14,4),%xmm3 DB 196,227,113,33,203,32 ; vinsertps $0x20,%xmm3,%xmm1,%xmm1 DB 196,161,122,16,92,149,0 ; vmovss 0x0(%rbp,%r10,4),%xmm3 DB 196,227,113,33,203,48 ; vinsertps $0x30,%xmm3,%xmm1,%xmm1 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0 DB 196,193,113,114,208,8 ; vpsrld $0x8,%xmm8,%xmm1 DB 196,67,125,25,194,1 ; vextractf128 $0x1,%ymm8,%xmm10 DB 196,193,105,114,210,8 ; vpsrld $0x8,%xmm10,%xmm2 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 197,180,84,201 ; vandps %ymm1,%ymm9,%ymm1 DB 196,193,249,126,201 ; vmovq %xmm1,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 196,195,249,22,202,1 ; vpextrq $0x1,%xmm1,%r10 DB 69,137,214 ; mov %r10d,%r14d DB 73,193,234,32 ; shr $0x20,%r10 DB 73,193,233,32 ; shr $0x20,%r9 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1 DB 196,225,249,126,205 ; vmovq %xmm1,%rbp DB 65,137,239 ; mov %ebp,%r15d DB 196,227,249,22,203,1 ; vpextrq $0x1,%xmm1,%rbx DB 65,137,220 ; mov %ebx,%r12d DB 72,193,235,32 ; shr $0x20,%rbx DB 72,193,237,32 ; shr $0x20,%rbp DB 196,129,122,16,12,184 ; vmovss (%r8,%r15,4),%xmm1 DB 196,195,113,33,12,168,16 ; vinsertps $0x10,(%r8,%rbp,4),%xmm1,%xmm1 DB 196,129,122,16,20,160 ; vmovss (%r8,%r12,4),%xmm2 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1 DB 196,193,122,16,20,152 ; vmovss (%r8,%rbx,4),%xmm2 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1 DB 196,129,122,16,20,152 ; vmovss (%r8,%r11,4),%xmm2 DB 196,131,105,33,20,136,16 ; vinsertps $0x10,(%r8,%r9,4),%xmm2,%xmm2 DB 196,129,122,16,28,176 ; vmovss (%r8,%r14,4),%xmm3 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2 DB 196,129,122,16,28,144 ; vmovss (%r8,%r10,4),%xmm3 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2 DB 196,227,109,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm1 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 196,193,105,114,208,16 ; vpsrld $0x10,%xmm8,%xmm2 DB 196,193,97,114,210,16 ; vpsrld $0x10,%xmm10,%xmm3 DB 196,227,109,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm2,%ymm2 DB 197,180,84,210 ; vandps %ymm2,%ymm9,%ymm2 DB 196,193,249,126,208 ; vmovq %xmm2,%r8 DB 69,137,194 ; mov %r8d,%r10d DB 196,195,249,22,209,1 ; vpextrq $0x1,%xmm2,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 73,193,233,32 ; shr $0x20,%r9 DB 73,193,232,32 ; shr $0x20,%r8 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,225,249,126,213 ; vmovq %xmm2,%rbp DB 65,137,238 ; mov %ebp,%r14d DB 196,227,249,22,211,1 ; vpextrq $0x1,%xmm2,%rbx DB 65,137,223 ; mov %ebx,%r15d DB 72,193,235,32 ; shr $0x20,%rbx DB 72,193,237,32 ; shr $0x20,%rbp DB 196,161,122,16,20,176 ; vmovss (%rax,%r14,4),%xmm2 DB 196,227,105,33,20,168,16 ; vinsertps $0x10,(%rax,%rbp,4),%xmm2,%xmm2 DB 196,161,122,16,28,184 ; vmovss (%rax,%r15,4),%xmm3 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2 DB 197,250,16,28,152 ; vmovss (%rax,%rbx,4),%xmm3 DB 196,99,105,33,203,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm9 DB 196,161,122,16,28,144 ; vmovss (%rax,%r10,4),%xmm3 DB 196,163,97,33,28,128,16 ; vinsertps $0x10,(%rax,%r8,4),%xmm3,%xmm3 DB 196,161,122,16,20,152 ; vmovss (%rax,%r11,4),%xmm2 DB 196,227,97,33,210,32 ; vinsertps $0x20,%xmm2,%xmm3,%xmm2 DB 196,161,122,16,28,136 ; vmovss (%rax,%r9,4),%xmm3 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2 DB 196,195,109,24,209,1 ; vinsertf128 $0x1,%xmm9,%ymm2,%ymm2 DB 196,193,57,114,208,24 ; vpsrld $0x18,%xmm8,%xmm8 DB 196,193,97,114,210,24 ; vpsrld $0x18,%xmm10,%xmm3 DB 196,227,61,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm3 DB 197,124,91,195 ; vcvtdq2ps %ymm3,%ymm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax DB 137,203 ; mov %ecx,%ebx DB 128,227,7 ; and $0x7,%bl DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 254,203 ; dec %bl DB 128,251,6 ; cmp $0x6,%bl DB 15,135,185,253,255,255 ; ja 164e <_sk_load_tables_avx+0x1e> DB 15,182,219 ; movzbl %bl,%ebx DB 76,141,13,137,0,0,0 ; lea 0x89(%rip),%r9 # 1928 <_sk_load_tables_avx+0x2f8> DB 73,99,28,153 ; movslq (%r9,%rbx,4),%rbx DB 76,1,203 ; add %r9,%rbx DB 255,227 ; jmpq *%rbx DB 196,193,121,110,68,184,24 ; vmovd 0x18(%r8,%rdi,4),%xmm0 DB 197,249,112,192,68 ; vpshufd $0x44,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 196,99,117,12,192,64 ; vblendps $0x40,%ymm0,%ymm1,%ymm8 DB 196,99,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm0 DB 196,195,121,34,68,184,20,1 ; vpinsrd $0x1,0x14(%r8,%rdi,4),%xmm0,%xmm0 DB 196,99,61,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm8,%ymm8 DB 196,99,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm0 DB 196,195,121,34,68,184,16,0 ; vpinsrd $0x0,0x10(%r8,%rdi,4),%xmm0,%xmm0 DB 196,99,61,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm8,%ymm8 DB 196,195,57,34,68,184,12,3 ; vpinsrd $0x3,0xc(%r8,%rdi,4),%xmm8,%xmm0 DB 196,99,61,12,192,15 ; vblendps $0xf,%ymm0,%ymm8,%ymm8 DB 196,195,57,34,68,184,8,2 ; vpinsrd $0x2,0x8(%r8,%rdi,4),%xmm8,%xmm0 DB 196,99,61,12,192,15 ; vblendps $0xf,%ymm0,%ymm8,%ymm8 DB 196,195,57,34,68,184,4,1 ; vpinsrd $0x1,0x4(%r8,%rdi,4),%xmm8,%xmm0 DB 196,99,61,12,192,15 ; vblendps $0xf,%ymm0,%ymm8,%ymm8 DB 196,195,57,34,4,184,0 ; vpinsrd $0x0,(%r8,%rdi,4),%xmm8,%xmm0 DB 196,99,61,12,192,15 ; vblendps $0xf,%ymm0,%ymm8,%ymm8 DB 233,38,253,255,255 ; jmpq 164e <_sk_load_tables_avx+0x1e> DB 238 ; out %al,(%dx) DB 255 ; (bad) DB 255 ; (bad) DB 255,224 ; jmpq *%rax DB 255 ; (bad) DB 255 ; (bad) DB 255,210 ; callq *%rdx DB 255 ; (bad) DB 255 ; (bad) DB 255,196 ; inc %esp DB 255 ; (bad) DB 255 ; (bad) DB 255,176,255,255,255,156 ; pushq -0x63000001(%rax) DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff DB 128,255,255 ; cmp $0xff,%bh DB 255 ; .byte 0xff PUBLIC _sk_load_tables_u16_be_avx _sk_load_tables_u16_be_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 72,133,201 ; test %rcx,%rcx DB 15,133,165,2,0,0 ; jne 1bff <_sk_load_tables_u16_be_avx+0x2bb> DB 196,1,121,16,4,72 ; vmovupd (%r8,%r9,2),%xmm8 DB 196,129,121,16,84,72,16 ; vmovupd 0x10(%r8,%r9,2),%xmm2 DB 196,129,121,16,92,72,32 ; vmovupd 0x20(%r8,%r9,2),%xmm3 DB 196,1,122,111,76,72,48 ; vmovdqu 0x30(%r8,%r9,2),%xmm9 DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3 DB 197,121,97,218 ; vpunpcklwd %xmm2,%xmm0,%xmm11 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,113,105,211 ; vpunpckhwd %xmm3,%xmm1,%xmm10 DB 197,161,108,194 ; vpunpcklqdq %xmm2,%xmm11,%xmm0 DB 196,65,57,239,192 ; vpxor %xmm8,%xmm8,%xmm8 DB 196,193,121,105,200 ; vpunpckhwd %xmm8,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0 DB 187,255,0,0,0 ; mov $0xff,%ebx DB 197,249,110,203 ; vmovd %ebx,%xmm1 DB 197,249,112,201,0 ; vpshufd $0x0,%xmm1,%xmm1 DB 196,99,117,24,225,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm12 DB 196,193,124,84,196 ; vandps %ymm12,%ymm0,%ymm0 DB 196,193,249,126,193 ; vmovq %xmm0,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 196,195,249,22,194,1 ; vpextrq $0x1,%xmm0,%r10 DB 69,137,214 ; mov %r10d,%r14d DB 73,193,234,32 ; shr $0x20,%r10 DB 73,193,233,32 ; shr $0x20,%r9 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0 DB 196,193,249,126,196 ; vmovq %xmm0,%r12 DB 69,137,231 ; mov %r12d,%r15d DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,221 ; mov %ebx,%r13d DB 72,193,235,32 ; shr $0x20,%rbx DB 73,193,236,32 ; shr $0x20,%r12 DB 72,139,104,8 ; mov 0x8(%rax),%rbp DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 196,161,122,16,68,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm0 DB 196,163,121,33,68,165,0,16 ; vinsertps $0x10,0x0(%rbp,%r12,4),%xmm0,%xmm0 DB 196,161,122,16,76,173,0 ; vmovss 0x0(%rbp,%r13,4),%xmm1 DB 196,227,121,33,193,32 ; vinsertps $0x20,%xmm1,%xmm0,%xmm0 DB 197,250,16,76,157,0 ; vmovss 0x0(%rbp,%rbx,4),%xmm1 DB 196,227,121,33,193,48 ; vinsertps $0x30,%xmm1,%xmm0,%xmm0 DB 196,161,122,16,76,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm1 DB 196,163,113,33,76,141,0,16 ; vinsertps $0x10,0x0(%rbp,%r9,4),%xmm1,%xmm1 DB 196,161,122,16,92,181,0 ; vmovss 0x0(%rbp,%r14,4),%xmm3 DB 196,227,113,33,203,32 ; vinsertps $0x20,%xmm3,%xmm1,%xmm1 DB 196,161,122,16,92,149,0 ; vmovss 0x0(%rbp,%r10,4),%xmm3 DB 196,227,113,33,203,48 ; vinsertps $0x30,%xmm3,%xmm1,%xmm1 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0 DB 197,161,109,202 ; vpunpckhqdq %xmm2,%xmm11,%xmm1 DB 196,193,113,105,208 ; vpunpckhwd %xmm8,%xmm1,%xmm2 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 196,193,116,84,204 ; vandps %ymm12,%ymm1,%ymm1 DB 196,193,249,126,201 ; vmovq %xmm1,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 196,195,249,22,202,1 ; vpextrq $0x1,%xmm1,%r10 DB 69,137,214 ; mov %r10d,%r14d DB 73,193,234,32 ; shr $0x20,%r10 DB 73,193,233,32 ; shr $0x20,%r9 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1 DB 196,225,249,126,205 ; vmovq %xmm1,%rbp DB 65,137,239 ; mov %ebp,%r15d DB 196,227,249,22,203,1 ; vpextrq $0x1,%xmm1,%rbx DB 65,137,220 ; mov %ebx,%r12d DB 72,193,235,32 ; shr $0x20,%rbx DB 72,193,237,32 ; shr $0x20,%rbp DB 196,129,122,16,12,184 ; vmovss (%r8,%r15,4),%xmm1 DB 196,195,113,33,12,168,16 ; vinsertps $0x10,(%r8,%rbp,4),%xmm1,%xmm1 DB 196,129,122,16,20,160 ; vmovss (%r8,%r12,4),%xmm2 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1 DB 196,193,122,16,20,152 ; vmovss (%r8,%rbx,4),%xmm2 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1 DB 196,129,122,16,20,152 ; vmovss (%r8,%r11,4),%xmm2 DB 196,131,105,33,20,136,16 ; vinsertps $0x10,(%r8,%r9,4),%xmm2,%xmm2 DB 196,129,122,16,28,176 ; vmovss (%r8,%r14,4),%xmm3 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2 DB 196,129,122,16,28,144 ; vmovss (%r8,%r10,4),%xmm3 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2 DB 196,227,109,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm1 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 196,193,49,108,210 ; vpunpcklqdq %xmm10,%xmm9,%xmm2 DB 196,193,105,105,216 ; vpunpckhwd %xmm8,%xmm2,%xmm3 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2 DB 196,227,109,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm2,%ymm2 DB 196,193,108,84,212 ; vandps %ymm12,%ymm2,%ymm2 DB 196,193,249,126,208 ; vmovq %xmm2,%r8 DB 69,137,194 ; mov %r8d,%r10d DB 196,195,249,22,209,1 ; vpextrq $0x1,%xmm2,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 73,193,233,32 ; shr $0x20,%r9 DB 73,193,232,32 ; shr $0x20,%r8 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,225,249,126,213 ; vmovq %xmm2,%rbp DB 65,137,238 ; mov %ebp,%r14d DB 196,227,249,22,211,1 ; vpextrq $0x1,%xmm2,%rbx DB 65,137,223 ; mov %ebx,%r15d DB 72,193,235,32 ; shr $0x20,%rbx DB 72,193,237,32 ; shr $0x20,%rbp DB 196,161,122,16,20,176 ; vmovss (%rax,%r14,4),%xmm2 DB 196,227,105,33,20,168,16 ; vinsertps $0x10,(%rax,%rbp,4),%xmm2,%xmm2 DB 196,161,122,16,28,184 ; vmovss (%rax,%r15,4),%xmm3 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2 DB 197,250,16,28,152 ; vmovss (%rax,%rbx,4),%xmm3 DB 196,99,105,33,219,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm11 DB 196,161,122,16,28,144 ; vmovss (%rax,%r10,4),%xmm3 DB 196,163,97,33,28,128,16 ; vinsertps $0x10,(%rax,%r8,4),%xmm3,%xmm3 DB 196,161,122,16,20,152 ; vmovss (%rax,%r11,4),%xmm2 DB 196,227,97,33,210,32 ; vinsertps $0x20,%xmm2,%xmm3,%xmm2 DB 196,161,122,16,28,136 ; vmovss (%rax,%r9,4),%xmm3 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2 DB 196,195,109,24,211,1 ; vinsertf128 $0x1,%xmm11,%ymm2,%ymm2 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,99,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm11 DB 196,193,49,109,218 ; vpunpckhqdq %xmm10,%xmm9,%xmm3 DB 197,177,113,243,8 ; vpsllw $0x8,%xmm3,%xmm9 DB 197,225,113,211,8 ; vpsrlw $0x8,%xmm3,%xmm3 DB 197,177,235,219 ; vpor %xmm3,%xmm9,%xmm3 DB 196,65,97,105,192 ; vpunpckhwd %xmm8,%xmm3,%xmm8 DB 196,226,121,51,219 ; vpmovzxwd %xmm3,%xmm3 DB 196,195,101,24,216,1 ; vinsertf128 $0x1,%xmm8,%ymm3,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 196,193,100,89,219 ; vmulps %ymm11,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax DB 196,1,123,16,4,72 ; vmovsd (%r8,%r9,2),%xmm8 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9 DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,85 ; je 1c65 <_sk_load_tables_u16_be_avx+0x321> DB 196,1,57,22,68,72,8 ; vmovhpd 0x8(%r8,%r9,2),%xmm8,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,72 ; jb 1c65 <_sk_load_tables_u16_be_avx+0x321> DB 196,129,123,16,84,72,16 ; vmovsd 0x10(%r8,%r9,2),%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 116,72 ; je 1c72 <_sk_load_tables_u16_be_avx+0x32e> DB 196,129,105,22,84,72,24 ; vmovhpd 0x18(%r8,%r9,2),%xmm2,%xmm2 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,59 ; jb 1c72 <_sk_load_tables_u16_be_avx+0x32e> DB 196,129,123,16,92,72,32 ; vmovsd 0x20(%r8,%r9,2),%xmm3 DB 72,131,249,5 ; cmp $0x5,%rcx DB 15,132,45,253,255,255 ; je 1975 <_sk_load_tables_u16_be_avx+0x31> DB 196,129,97,22,92,72,40 ; vmovhpd 0x28(%r8,%r9,2),%xmm3,%xmm3 DB 72,131,249,7 ; cmp $0x7,%rcx DB 15,130,28,253,255,255 ; jb 1975 <_sk_load_tables_u16_be_avx+0x31> DB 196,1,122,126,76,72,48 ; vmovq 0x30(%r8,%r9,2),%xmm9 DB 233,16,253,255,255 ; jmpq 1975 <_sk_load_tables_u16_be_avx+0x31> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2 DB 233,3,253,255,255 ; jmpq 1975 <_sk_load_tables_u16_be_avx+0x31> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 233,250,252,255,255 ; jmpq 1975 <_sk_load_tables_u16_be_avx+0x31> PUBLIC _sk_load_tables_rgb_u16_be_avx _sk_load_tables_rgb_u16_be_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 76,141,12,127 ; lea (%rdi,%rdi,2),%r9 DB 72,133,201 ; test %rcx,%rcx DB 15,133,146,2,0,0 ; jne 1f1f <_sk_load_tables_rgb_u16_be_avx+0x2a4> DB 196,129,122,111,4,72 ; vmovdqu (%r8,%r9,2),%xmm0 DB 196,129,122,111,84,72,12 ; vmovdqu 0xc(%r8,%r9,2),%xmm2 DB 196,129,122,111,76,72,24 ; vmovdqu 0x18(%r8,%r9,2),%xmm1 DB 196,129,122,111,92,72,32 ; vmovdqu 0x20(%r8,%r9,2),%xmm3 DB 197,225,115,219,4 ; vpsrldq $0x4,%xmm3,%xmm3 DB 197,185,115,216,6 ; vpsrldq $0x6,%xmm0,%xmm8 DB 197,177,115,218,6 ; vpsrldq $0x6,%xmm2,%xmm9 DB 197,161,115,217,6 ; vpsrldq $0x6,%xmm1,%xmm11 DB 197,169,115,219,6 ; vpsrldq $0x6,%xmm3,%xmm10 DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 197,249,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm0 DB 196,193,57,97,209 ; vpunpcklwd %xmm9,%xmm8,%xmm2 DB 197,241,97,203 ; vpunpcklwd %xmm3,%xmm1,%xmm1 DB 196,193,33,97,218 ; vpunpcklwd %xmm10,%xmm11,%xmm3 DB 197,121,97,218 ; vpunpcklwd %xmm2,%xmm0,%xmm11 DB 197,121,105,194 ; vpunpckhwd %xmm2,%xmm0,%xmm8 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,113,105,211 ; vpunpckhwd %xmm3,%xmm1,%xmm10 DB 197,161,108,194 ; vpunpcklqdq %xmm2,%xmm11,%xmm0 DB 196,65,25,239,228 ; vpxor %xmm12,%xmm12,%xmm12 DB 196,193,121,105,204 ; vpunpckhwd %xmm12,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0 DB 187,255,0,0,0 ; mov $0xff,%ebx DB 197,249,110,203 ; vmovd %ebx,%xmm1 DB 197,249,112,201,0 ; vpshufd $0x0,%xmm1,%xmm1 DB 196,99,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm9 DB 196,193,124,84,193 ; vandps %ymm9,%ymm0,%ymm0 DB 196,193,249,126,193 ; vmovq %xmm0,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 196,195,249,22,194,1 ; vpextrq $0x1,%xmm0,%r10 DB 69,137,214 ; mov %r10d,%r14d DB 73,193,234,32 ; shr $0x20,%r10 DB 73,193,233,32 ; shr $0x20,%r9 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0 DB 196,193,249,126,196 ; vmovq %xmm0,%r12 DB 69,137,231 ; mov %r12d,%r15d DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,221 ; mov %ebx,%r13d DB 72,193,235,32 ; shr $0x20,%rbx DB 73,193,236,32 ; shr $0x20,%r12 DB 72,139,104,8 ; mov 0x8(%rax),%rbp DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 196,161,122,16,68,189,0 ; vmovss 0x0(%rbp,%r15,4),%xmm0 DB 196,163,121,33,68,165,0,16 ; vinsertps $0x10,0x0(%rbp,%r12,4),%xmm0,%xmm0 DB 196,161,122,16,76,173,0 ; vmovss 0x0(%rbp,%r13,4),%xmm1 DB 196,227,121,33,193,32 ; vinsertps $0x20,%xmm1,%xmm0,%xmm0 DB 197,250,16,76,157,0 ; vmovss 0x0(%rbp,%rbx,4),%xmm1 DB 196,227,121,33,193,48 ; vinsertps $0x30,%xmm1,%xmm0,%xmm0 DB 196,161,122,16,76,157,0 ; vmovss 0x0(%rbp,%r11,4),%xmm1 DB 196,163,113,33,76,141,0,16 ; vinsertps $0x10,0x0(%rbp,%r9,4),%xmm1,%xmm1 DB 196,161,122,16,92,181,0 ; vmovss 0x0(%rbp,%r14,4),%xmm3 DB 196,227,113,33,203,32 ; vinsertps $0x20,%xmm3,%xmm1,%xmm1 DB 196,161,122,16,92,149,0 ; vmovss 0x0(%rbp,%r10,4),%xmm3 DB 196,227,113,33,203,48 ; vinsertps $0x30,%xmm3,%xmm1,%xmm1 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0 DB 197,161,109,202 ; vpunpckhqdq %xmm2,%xmm11,%xmm1 DB 196,193,113,105,212 ; vpunpckhwd %xmm12,%xmm1,%xmm2 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 196,193,116,84,201 ; vandps %ymm9,%ymm1,%ymm1 DB 196,193,249,126,201 ; vmovq %xmm1,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 196,195,249,22,202,1 ; vpextrq $0x1,%xmm1,%r10 DB 69,137,214 ; mov %r10d,%r14d DB 73,193,234,32 ; shr $0x20,%r10 DB 73,193,233,32 ; shr $0x20,%r9 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1 DB 196,225,249,126,205 ; vmovq %xmm1,%rbp DB 65,137,239 ; mov %ebp,%r15d DB 196,227,249,22,203,1 ; vpextrq $0x1,%xmm1,%rbx DB 65,137,220 ; mov %ebx,%r12d DB 72,193,235,32 ; shr $0x20,%rbx DB 72,193,237,32 ; shr $0x20,%rbp DB 196,129,122,16,12,184 ; vmovss (%r8,%r15,4),%xmm1 DB 196,195,113,33,12,168,16 ; vinsertps $0x10,(%r8,%rbp,4),%xmm1,%xmm1 DB 196,129,122,16,20,160 ; vmovss (%r8,%r12,4),%xmm2 DB 196,227,113,33,202,32 ; vinsertps $0x20,%xmm2,%xmm1,%xmm1 DB 196,193,122,16,20,152 ; vmovss (%r8,%rbx,4),%xmm2 DB 196,227,113,33,202,48 ; vinsertps $0x30,%xmm2,%xmm1,%xmm1 DB 196,129,122,16,20,152 ; vmovss (%r8,%r11,4),%xmm2 DB 196,131,105,33,20,136,16 ; vinsertps $0x10,(%r8,%r9,4),%xmm2,%xmm2 DB 196,129,122,16,28,176 ; vmovss (%r8,%r14,4),%xmm3 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2 DB 196,129,122,16,28,144 ; vmovss (%r8,%r10,4),%xmm3 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2 DB 196,227,109,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm2,%ymm1 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 196,193,57,108,210 ; vpunpcklqdq %xmm10,%xmm8,%xmm2 DB 196,193,105,105,220 ; vpunpckhwd %xmm12,%xmm2,%xmm3 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2 DB 196,227,109,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm2,%ymm2 DB 196,193,108,84,209 ; vandps %ymm9,%ymm2,%ymm2 DB 196,193,249,126,208 ; vmovq %xmm2,%r8 DB 69,137,194 ; mov %r8d,%r10d DB 196,195,249,22,209,1 ; vpextrq $0x1,%xmm2,%r9 DB 69,137,203 ; mov %r9d,%r11d DB 73,193,233,32 ; shr $0x20,%r9 DB 73,193,232,32 ; shr $0x20,%r8 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,225,249,126,213 ; vmovq %xmm2,%rbp DB 65,137,238 ; mov %ebp,%r14d DB 196,227,249,22,211,1 ; vpextrq $0x1,%xmm2,%rbx DB 65,137,223 ; mov %ebx,%r15d DB 72,193,235,32 ; shr $0x20,%rbx DB 72,193,237,32 ; shr $0x20,%rbp DB 196,161,122,16,20,176 ; vmovss (%rax,%r14,4),%xmm2 DB 196,227,105,33,20,168,16 ; vinsertps $0x10,(%rax,%rbp,4),%xmm2,%xmm2 DB 196,161,122,16,28,184 ; vmovss (%rax,%r15,4),%xmm3 DB 196,227,105,33,211,32 ; vinsertps $0x20,%xmm3,%xmm2,%xmm2 DB 197,250,16,28,152 ; vmovss (%rax,%rbx,4),%xmm3 DB 196,99,105,33,195,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm8 DB 196,161,122,16,28,144 ; vmovss (%rax,%r10,4),%xmm3 DB 196,163,97,33,28,128,16 ; vinsertps $0x10,(%rax,%r8,4),%xmm3,%xmm3 DB 196,161,122,16,20,152 ; vmovss (%rax,%r11,4),%xmm2 DB 196,227,97,33,210,32 ; vinsertps $0x20,%xmm2,%xmm3,%xmm2 DB 196,161,122,16,28,136 ; vmovss (%rax,%r9,4),%xmm3 DB 196,227,105,33,211,48 ; vinsertps $0x30,%xmm3,%xmm2,%xmm2 DB 196,195,109,24,208,1 ; vinsertf128 $0x1,%xmm8,%ymm2,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax DB 196,129,121,110,4,72 ; vmovd (%r8,%r9,2),%xmm0 DB 196,129,121,196,68,72,4,2 ; vpinsrw $0x2,0x4(%r8,%r9,2),%xmm0,%xmm0 DB 72,131,249,1 ; cmp $0x1,%rcx DB 117,5 ; jne 1f38 <_sk_load_tables_rgb_u16_be_avx+0x2bd> DB 233,137,253,255,255 ; jmpq 1cc1 <_sk_load_tables_rgb_u16_be_avx+0x46> DB 196,129,121,110,76,72,6 ; vmovd 0x6(%r8,%r9,2),%xmm1 DB 196,1,113,196,68,72,10,2 ; vpinsrw $0x2,0xa(%r8,%r9,2),%xmm1,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,26 ; jb 1f67 <_sk_load_tables_rgb_u16_be_avx+0x2ec> DB 196,129,121,110,76,72,12 ; vmovd 0xc(%r8,%r9,2),%xmm1 DB 196,129,113,196,84,72,16,2 ; vpinsrw $0x2,0x10(%r8,%r9,2),%xmm1,%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 117,10 ; jne 1f6c <_sk_load_tables_rgb_u16_be_avx+0x2f1> DB 233,90,253,255,255 ; jmpq 1cc1 <_sk_load_tables_rgb_u16_be_avx+0x46> DB 233,85,253,255,255 ; jmpq 1cc1 <_sk_load_tables_rgb_u16_be_avx+0x46> DB 196,129,121,110,76,72,18 ; vmovd 0x12(%r8,%r9,2),%xmm1 DB 196,1,113,196,76,72,22,2 ; vpinsrw $0x2,0x16(%r8,%r9,2),%xmm1,%xmm9 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,26 ; jb 1f9b <_sk_load_tables_rgb_u16_be_avx+0x320> DB 196,129,121,110,76,72,24 ; vmovd 0x18(%r8,%r9,2),%xmm1 DB 196,129,113,196,76,72,28,2 ; vpinsrw $0x2,0x1c(%r8,%r9,2),%xmm1,%xmm1 DB 72,131,249,5 ; cmp $0x5,%rcx DB 117,10 ; jne 1fa0 <_sk_load_tables_rgb_u16_be_avx+0x325> DB 233,38,253,255,255 ; jmpq 1cc1 <_sk_load_tables_rgb_u16_be_avx+0x46> DB 233,33,253,255,255 ; jmpq 1cc1 <_sk_load_tables_rgb_u16_be_avx+0x46> DB 196,129,121,110,92,72,30 ; vmovd 0x1e(%r8,%r9,2),%xmm3 DB 196,1,97,196,92,72,34,2 ; vpinsrw $0x2,0x22(%r8,%r9,2),%xmm3,%xmm11 DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,20 ; jb 1fc9 <_sk_load_tables_rgb_u16_be_avx+0x34e> DB 196,129,121,110,92,72,36 ; vmovd 0x24(%r8,%r9,2),%xmm3 DB 196,129,97,196,92,72,40,2 ; vpinsrw $0x2,0x28(%r8,%r9,2),%xmm3,%xmm3 DB 233,248,252,255,255 ; jmpq 1cc1 <_sk_load_tables_rgb_u16_be_avx+0x46> DB 233,243,252,255,255 ; jmpq 1cc1 <_sk_load_tables_rgb_u16_be_avx+0x46> PUBLIC _sk_byte_tables_avx _sk_byte_tables_avx LABEL PROC DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,127,67 ; mov $0x437f0000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8 DB 68,137,197 ; mov %r8d,%ebp DB 77,137,194 ; mov %r8,%r10 DB 73,193,234,32 ; shr $0x20,%r10 DB 196,193,249,126,192 ; vmovq %xmm0,%r8 DB 69,137,195 ; mov %r8d,%r11d DB 77,137,199 ; mov %r8,%r15 DB 73,193,239,32 ; shr $0x20,%r15 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8 DB 69,137,198 ; mov %r8d,%r14d DB 77,137,196 ; mov %r8,%r12 DB 73,193,236,32 ; shr $0x20,%r12 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,221 ; mov %ebx,%r13d DB 72,193,235,32 ; shr $0x20,%rbx DB 76,139,8 ; mov (%rax),%r9 DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 196,131,121,32,4,25,0 ; vpinsrb $0x0,(%r9,%r11,1),%xmm0,%xmm0 DB 196,131,121,32,4,57,1 ; vpinsrb $0x1,(%r9,%r15,1),%xmm0,%xmm0 DB 65,15,182,44,41 ; movzbl (%r9,%rbp,1),%ebp DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0 DB 67,15,182,44,17 ; movzbl (%r9,%r10,1),%ebp DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0 DB 196,98,121,49,200 ; vpmovzxbd %xmm0,%xmm9 DB 196,131,121,32,4,41,0 ; vpinsrb $0x0,(%r9,%r13,1),%xmm0,%xmm0 DB 196,195,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%rbx,1),%xmm0,%xmm0 DB 67,15,182,44,49 ; movzbl (%r9,%r14,1),%ebp DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0 DB 67,15,182,44,33 ; movzbl (%r9,%r12,1),%ebp DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0 DB 196,227,53,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm0 DB 197,124,91,208 ; vcvtdq2ps %ymm0,%ymm10 DB 189,129,128,128,59 ; mov $0x3b808081,%ebp DB 197,249,110,197 ; vmovd %ebp,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,99,125,24,200,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm9 DB 196,193,44,89,193 ; vmulps %ymm9,%ymm10,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1 DB 196,227,249,22,205,1 ; vpextrq $0x1,%xmm1,%rbp DB 65,137,233 ; mov %ebp,%r9d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,203 ; vmovq %xmm1,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1 DB 196,195,249,22,203,1 ; vpextrq $0x1,%xmm1,%r11 DB 69,137,222 ; mov %r11d,%r14d DB 73,193,235,32 ; shr $0x20,%r11 DB 196,193,249,126,207 ; vmovq %xmm1,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,131,121,32,12,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm1 DB 196,195,113,32,12,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm1,%xmm1 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1 DB 196,98,121,49,209 ; vpmovzxbd %xmm1,%xmm10 DB 196,131,121,32,12,32,0 ; vpinsrb $0x0,(%r8,%r12,1),%xmm0,%xmm1 DB 196,131,113,32,12,56,1 ; vpinsrb $0x1,(%r8,%r15,1),%xmm1,%xmm1 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp DB 196,227,113,32,205,2 ; vpinsrb $0x2,%ebp,%xmm1,%xmm1 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1 DB 196,226,121,49,201 ; vpmovzxbd %xmm1,%xmm1 DB 196,227,45,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm10,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1 DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp DB 65,137,233 ; mov %ebp,%r9d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,211 ; vmovq %xmm2,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,195,249,22,211,1 ; vpextrq $0x1,%xmm2,%r11 DB 69,137,222 ; mov %r11d,%r14d DB 73,193,235,32 ; shr $0x20,%r11 DB 196,193,249,126,215 ; vmovq %xmm2,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,131,121,32,20,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm2 DB 196,195,105,32,20,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm2,%xmm2 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx DB 196,227,105,32,211,2 ; vpinsrb $0x2,%ebx,%xmm2,%xmm2 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2 DB 196,98,121,49,210 ; vpmovzxbd %xmm2,%xmm10 DB 196,131,121,32,20,32,0 ; vpinsrb $0x0,(%r8,%r12,1),%xmm0,%xmm2 DB 196,131,105,32,20,56,1 ; vpinsrb $0x1,(%r8,%r15,1),%xmm2,%xmm2 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp DB 196,227,105,32,213,2 ; vpinsrb $0x2,%ebp,%xmm2,%xmm2 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2 DB 196,226,121,49,210 ; vpmovzxbd %xmm2,%xmm2 DB 196,227,45,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm10,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3 DB 196,227,249,22,221,1 ; vpextrq $0x1,%xmm3,%rbp DB 65,137,232 ; mov %ebp,%r8d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,219 ; vmovq %xmm3,%rbx DB 65,137,217 ; mov %ebx,%r9d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,25,219,1 ; vextractf128 $0x1,%ymm3,%xmm3 DB 196,195,249,22,218,1 ; vpextrq $0x1,%xmm3,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,193,249,126,222 ; vmovq %xmm3,%r14 DB 69,137,247 ; mov %r14d,%r15d DB 73,193,238,32 ; shr $0x20,%r14 DB 196,163,121,32,28,8,0 ; vpinsrb $0x0,(%rax,%r9,1),%xmm0,%xmm3 DB 196,227,97,32,28,24,1 ; vpinsrb $0x1,(%rax,%rbx,1),%xmm3,%xmm3 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx DB 196,227,97,32,219,2 ; vpinsrb $0x2,%ebx,%xmm3,%xmm3 DB 15,182,44,40 ; movzbl (%rax,%rbp,1),%ebp DB 196,227,97,32,221,3 ; vpinsrb $0x3,%ebp,%xmm3,%xmm3 DB 196,98,121,49,195 ; vpmovzxbd %xmm3,%xmm8 DB 196,163,121,32,28,56,0 ; vpinsrb $0x0,(%rax,%r15,1),%xmm0,%xmm3 DB 196,163,97,32,28,48,1 ; vpinsrb $0x1,(%rax,%r14,1),%xmm3,%xmm3 DB 66,15,182,44,24 ; movzbl (%rax,%r11,1),%ebp DB 196,227,97,32,221,2 ; vpinsrb $0x2,%ebp,%xmm3,%xmm3 DB 66,15,182,4,16 ; movzbl (%rax,%r10,1),%eax DB 196,227,97,32,216,3 ; vpinsrb $0x3,%eax,%xmm3,%xmm3 DB 196,226,121,49,219 ; vpmovzxbd %xmm3,%xmm3 DB 196,227,61,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 197,180,89,219 ; vmulps %ymm3,%ymm9,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax PUBLIC _sk_byte_tables_rgb_avx _sk_byte_tables_rgb_avx LABEL PROC DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 68,139,64,24 ; mov 0x18(%rax),%r8d DB 65,255,200 ; dec %r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8 DB 68,137,197 ; mov %r8d,%ebp DB 77,137,194 ; mov %r8,%r10 DB 73,193,234,32 ; shr $0x20,%r10 DB 196,193,249,126,192 ; vmovq %xmm0,%r8 DB 69,137,195 ; mov %r8d,%r11d DB 77,137,199 ; mov %r8,%r15 DB 73,193,239,32 ; shr $0x20,%r15 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0 DB 196,195,249,22,192,1 ; vpextrq $0x1,%xmm0,%r8 DB 69,137,198 ; mov %r8d,%r14d DB 77,137,196 ; mov %r8,%r12 DB 73,193,236,32 ; shr $0x20,%r12 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,221 ; mov %ebx,%r13d DB 72,193,235,32 ; shr $0x20,%rbx DB 76,139,8 ; mov (%rax),%r9 DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 196,131,121,32,4,25,0 ; vpinsrb $0x0,(%r9,%r11,1),%xmm0,%xmm0 DB 196,131,121,32,4,57,1 ; vpinsrb $0x1,(%r9,%r15,1),%xmm0,%xmm0 DB 65,15,182,44,41 ; movzbl (%r9,%rbp,1),%ebp DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0 DB 67,15,182,44,17 ; movzbl (%r9,%r10,1),%ebp DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0 DB 196,98,121,49,200 ; vpmovzxbd %xmm0,%xmm9 DB 196,131,121,32,4,41,0 ; vpinsrb $0x0,(%r9,%r13,1),%xmm0,%xmm0 DB 196,195,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%rbx,1),%xmm0,%xmm0 DB 67,15,182,44,49 ; movzbl (%r9,%r14,1),%ebp DB 196,227,121,32,197,2 ; vpinsrb $0x2,%ebp,%xmm0,%xmm0 DB 67,15,182,44,33 ; movzbl (%r9,%r12,1),%ebp DB 196,227,121,32,197,3 ; vpinsrb $0x3,%ebp,%xmm0,%xmm0 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0 DB 196,227,53,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm0 DB 197,124,91,208 ; vcvtdq2ps %ymm0,%ymm10 DB 189,129,128,128,59 ; mov $0x3b808081,%ebp DB 197,249,110,197 ; vmovd %ebp,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,99,125,24,200,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm9 DB 196,193,44,89,193 ; vmulps %ymm9,%ymm10,%ymm0 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1 DB 196,227,249,22,205,1 ; vpextrq $0x1,%xmm1,%rbp DB 65,137,233 ; mov %ebp,%r9d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,203 ; vmovq %xmm1,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1 DB 196,195,249,22,203,1 ; vpextrq $0x1,%xmm1,%r11 DB 69,137,222 ; mov %r11d,%r14d DB 73,193,235,32 ; shr $0x20,%r11 DB 196,193,249,126,207 ; vmovq %xmm1,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,131,121,32,12,16,0 ; vpinsrb $0x0,(%r8,%r10,1),%xmm0,%xmm1 DB 196,195,113,32,12,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm1,%xmm1 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1 DB 65,15,182,44,40 ; movzbl (%r8,%rbp,1),%ebp DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1 DB 196,98,121,49,209 ; vpmovzxbd %xmm1,%xmm10 DB 196,131,121,32,12,32,0 ; vpinsrb $0x0,(%r8,%r12,1),%xmm0,%xmm1 DB 196,131,113,32,12,56,1 ; vpinsrb $0x1,(%r8,%r15,1),%xmm1,%xmm1 DB 67,15,182,44,48 ; movzbl (%r8,%r14,1),%ebp DB 196,227,113,32,205,2 ; vpinsrb $0x2,%ebp,%xmm1,%xmm1 DB 67,15,182,44,24 ; movzbl (%r8,%r11,1),%ebp DB 196,227,113,32,205,3 ; vpinsrb $0x3,%ebp,%xmm1,%xmm1 DB 196,226,121,49,201 ; vpmovzxbd %xmm1,%xmm1 DB 196,227,45,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm10,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1 DB 72,139,64,16 ; mov 0x10(%rax),%rax DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2 DB 196,227,249,22,213,1 ; vpextrq $0x1,%xmm2,%rbp DB 65,137,232 ; mov %ebp,%r8d DB 72,193,237,32 ; shr $0x20,%rbp DB 196,225,249,126,211 ; vmovq %xmm2,%rbx DB 65,137,217 ; mov %ebx,%r9d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,195,249,22,210,1 ; vpextrq $0x1,%xmm2,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,193,249,126,214 ; vmovq %xmm2,%r14 DB 69,137,247 ; mov %r14d,%r15d DB 73,193,238,32 ; shr $0x20,%r14 DB 196,163,121,32,20,8,0 ; vpinsrb $0x0,(%rax,%r9,1),%xmm0,%xmm2 DB 196,227,105,32,20,24,1 ; vpinsrb $0x1,(%rax,%rbx,1),%xmm2,%xmm2 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx DB 196,227,105,32,211,2 ; vpinsrb $0x2,%ebx,%xmm2,%xmm2 DB 15,182,44,40 ; movzbl (%rax,%rbp,1),%ebp DB 196,227,105,32,213,3 ; vpinsrb $0x3,%ebp,%xmm2,%xmm2 DB 196,98,121,49,194 ; vpmovzxbd %xmm2,%xmm8 DB 196,163,121,32,20,56,0 ; vpinsrb $0x0,(%rax,%r15,1),%xmm0,%xmm2 DB 196,163,105,32,20,48,1 ; vpinsrb $0x1,(%rax,%r14,1),%xmm2,%xmm2 DB 66,15,182,44,24 ; movzbl (%rax,%r11,1),%ebp DB 196,227,105,32,213,2 ; vpinsrb $0x2,%ebp,%xmm2,%xmm2 DB 66,15,182,4,16 ; movzbl (%rax,%r10,1),%eax DB 196,227,105,32,208,3 ; vpinsrb $0x3,%eax,%xmm2,%xmm2 DB 196,226,121,49,210 ; vpmovzxbd %xmm2,%xmm2 DB 196,227,61,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm8,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax PUBLIC _sk_table_r_avx _sk_table_r_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,194 ; vmovq %xmm0,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,227,125,25,192,1 ; vextractf128 $0x1,%ymm0,%xmm0 DB 196,227,249,22,195,1 ; vpextrq $0x1,%xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,199 ; vmovq %xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,129,122,16,4,160 ; vmovss (%r8,%r12,4),%xmm0 DB 196,3,121,33,4,184,16 ; vinsertps $0x10,(%r8,%r15,4),%xmm0,%xmm8 DB 196,129,122,16,4,176 ; vmovss (%r8,%r14,4),%xmm0 DB 196,99,57,33,192,32 ; vinsertps $0x20,%xmm0,%xmm8,%xmm8 DB 196,193,122,16,4,152 ; vmovss (%r8,%rbx,4),%xmm0 DB 196,99,57,33,192,48 ; vinsertps $0x30,%xmm0,%xmm8,%xmm8 DB 196,129,122,16,4,152 ; vmovss (%r8,%r11,4),%xmm0 DB 196,3,121,33,12,144,16 ; vinsertps $0x10,(%r8,%r10,4),%xmm0,%xmm9 DB 196,129,122,16,4,136 ; vmovss (%r8,%r9,4),%xmm0 DB 196,99,49,33,200,32 ; vinsertps $0x20,%xmm0,%xmm9,%xmm9 DB 196,193,122,16,4,128 ; vmovss (%r8,%rax,4),%xmm0 DB 196,227,49,33,192,48 ; vinsertps $0x30,%xmm0,%xmm9,%xmm0 DB 196,195,125,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm0,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_table_g_avx _sk_table_g_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1 DB 196,227,249,22,200,1 ; vpextrq $0x1,%xmm1,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,202 ; vmovq %xmm1,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1 DB 196,227,249,22,203,1 ; vpextrq $0x1,%xmm1,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,207 ; vmovq %xmm1,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,129,122,16,12,160 ; vmovss (%r8,%r12,4),%xmm1 DB 196,3,113,33,4,184,16 ; vinsertps $0x10,(%r8,%r15,4),%xmm1,%xmm8 DB 196,129,122,16,12,176 ; vmovss (%r8,%r14,4),%xmm1 DB 196,99,57,33,193,32 ; vinsertps $0x20,%xmm1,%xmm8,%xmm8 DB 196,193,122,16,12,152 ; vmovss (%r8,%rbx,4),%xmm1 DB 196,99,57,33,193,48 ; vinsertps $0x30,%xmm1,%xmm8,%xmm8 DB 196,129,122,16,12,152 ; vmovss (%r8,%r11,4),%xmm1 DB 196,3,113,33,12,144,16 ; vinsertps $0x10,(%r8,%r10,4),%xmm1,%xmm9 DB 196,129,122,16,12,136 ; vmovss (%r8,%r9,4),%xmm1 DB 196,99,49,33,201,32 ; vinsertps $0x20,%xmm1,%xmm9,%xmm9 DB 196,193,122,16,12,128 ; vmovss (%r8,%rax,4),%xmm1 DB 196,227,49,33,201,48 ; vinsertps $0x30,%xmm1,%xmm9,%xmm1 DB 196,195,117,24,200,1 ; vinsertf128 $0x1,%xmm8,%ymm1,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_table_b_avx _sk_table_b_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,210 ; vmovq %xmm2,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,227,249,22,211,1 ; vpextrq $0x1,%xmm2,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,215 ; vmovq %xmm2,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,129,122,16,20,160 ; vmovss (%r8,%r12,4),%xmm2 DB 196,3,105,33,4,184,16 ; vinsertps $0x10,(%r8,%r15,4),%xmm2,%xmm8 DB 196,129,122,16,20,176 ; vmovss (%r8,%r14,4),%xmm2 DB 196,99,57,33,194,32 ; vinsertps $0x20,%xmm2,%xmm8,%xmm8 DB 196,193,122,16,20,152 ; vmovss (%r8,%rbx,4),%xmm2 DB 196,99,57,33,194,48 ; vinsertps $0x30,%xmm2,%xmm8,%xmm8 DB 196,129,122,16,20,152 ; vmovss (%r8,%r11,4),%xmm2 DB 196,3,105,33,12,144,16 ; vinsertps $0x10,(%r8,%r10,4),%xmm2,%xmm9 DB 196,129,122,16,20,136 ; vmovss (%r8,%r9,4),%xmm2 DB 196,99,49,33,202,32 ; vinsertps $0x20,%xmm2,%xmm9,%xmm9 DB 196,193,122,16,20,128 ; vmovss (%r8,%rax,4),%xmm2 DB 196,227,49,33,210,48 ; vinsertps $0x30,%xmm2,%xmm9,%xmm2 DB 196,195,109,24,208,1 ; vinsertf128 $0x1,%xmm8,%ymm2,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_table_a_avx _sk_table_a_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,65,121,112,192,0 ; vpshufd $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 196,65,124,91,192 ; vcvtdq2ps %ymm8,%ymm8 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3 DB 196,227,249,22,216,1 ; vpextrq $0x1,%xmm3,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,218 ; vmovq %xmm3,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 196,227,125,25,219,1 ; vextractf128 $0x1,%ymm3,%xmm3 DB 196,227,249,22,219,1 ; vpextrq $0x1,%xmm3,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,249,126,223 ; vmovq %xmm3,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 196,129,122,16,28,160 ; vmovss (%r8,%r12,4),%xmm3 DB 196,3,97,33,4,184,16 ; vinsertps $0x10,(%r8,%r15,4),%xmm3,%xmm8 DB 196,129,122,16,28,176 ; vmovss (%r8,%r14,4),%xmm3 DB 196,99,57,33,195,32 ; vinsertps $0x20,%xmm3,%xmm8,%xmm8 DB 196,193,122,16,28,152 ; vmovss (%r8,%rbx,4),%xmm3 DB 196,99,57,33,195,48 ; vinsertps $0x30,%xmm3,%xmm8,%xmm8 DB 196,129,122,16,28,152 ; vmovss (%r8,%r11,4),%xmm3 DB 196,3,97,33,12,144,16 ; vinsertps $0x10,(%r8,%r10,4),%xmm3,%xmm9 DB 196,129,122,16,28,136 ; vmovss (%r8,%r9,4),%xmm3 DB 196,99,49,33,203,32 ; vinsertps $0x20,%xmm3,%xmm9,%xmm9 DB 196,193,122,16,28,128 ; vmovss (%r8,%rax,4),%xmm3 DB 196,227,49,33,219,48 ; vinsertps $0x30,%xmm3,%xmm9,%xmm3 DB 196,195,101,24,216,1 ; vinsertf128 $0x1,%xmm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_r_avx _sk_parametric_r_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,65,124,194,192,2 ; vcmpleps %ymm8,%ymm0,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 197,52,89,200 ; vmulps %ymm0,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0 DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0 DB 196,98,125,24,16 ; vbroadcastss (%rax),%ymm10 DB 197,124,91,216 ; vcvtdq2ps %ymm0,%ymm11 DB 196,98,125,24,37,210,52,0,0 ; vbroadcastss 0x34d2(%rip),%ymm12 # 5d0c <_sk_callback_avx+0x122> DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,200,52,0,0 ; vbroadcastss 0x34c8(%rip),%ymm12 # 5d10 <_sk_callback_avx+0x126> DB 196,193,124,84,196 ; vandps %ymm12,%ymm0,%ymm0 DB 196,98,125,24,37,190,52,0,0 ; vbroadcastss 0x34be(%rip),%ymm12 # 5d14 <_sk_callback_avx+0x12a> DB 196,193,124,86,196 ; vorps %ymm12,%ymm0,%ymm0 DB 196,98,125,24,37,180,52,0,0 ; vbroadcastss 0x34b4(%rip),%ymm12 # 5d18 <_sk_callback_avx+0x12e> DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,170,52,0,0 ; vbroadcastss 0x34aa(%rip),%ymm12 # 5d1c <_sk_callback_avx+0x132> DB 196,65,124,89,228 ; vmulps %ymm12,%ymm0,%ymm12 DB 196,65,36,92,220 ; vsubps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,155,52,0,0 ; vbroadcastss 0x349b(%rip),%ymm12 # 5d20 <_sk_callback_avx+0x136> DB 196,193,124,88,196 ; vaddps %ymm12,%ymm0,%ymm0 DB 196,98,125,24,37,145,52,0,0 ; vbroadcastss 0x3491(%rip),%ymm12 # 5d24 <_sk_callback_avx+0x13a> DB 197,156,94,192 ; vdivps %ymm0,%ymm12,%ymm0 DB 197,164,92,192 ; vsubps %ymm0,%ymm11,%ymm0 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0 DB 196,99,125,8,208,1 ; vroundps $0x1,%ymm0,%ymm10 DB 196,65,124,92,210 ; vsubps %ymm10,%ymm0,%ymm10 DB 196,98,125,24,29,117,52,0,0 ; vbroadcastss 0x3475(%rip),%ymm11 # 5d28 <_sk_callback_avx+0x13e> DB 196,193,124,88,195 ; vaddps %ymm11,%ymm0,%ymm0 DB 196,98,125,24,29,107,52,0,0 ; vbroadcastss 0x346b(%rip),%ymm11 # 5d2c <_sk_callback_avx+0x142> DB 196,65,44,89,219 ; vmulps %ymm11,%ymm10,%ymm11 DB 196,193,124,92,195 ; vsubps %ymm11,%ymm0,%ymm0 DB 196,98,125,24,29,92,52,0,0 ; vbroadcastss 0x345c(%rip),%ymm11 # 5d30 <_sk_callback_avx+0x146> DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10 DB 196,98,125,24,29,82,52,0,0 ; vbroadcastss 0x3452(%rip),%ymm11 # 5d34 <_sk_callback_avx+0x14a> DB 196,65,36,94,210 ; vdivps %ymm10,%ymm11,%ymm10 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0 DB 196,98,125,24,21,67,52,0,0 ; vbroadcastss 0x3443(%rip),%ymm10 # 5d38 <_sk_callback_avx+0x14e> DB 196,193,124,89,194 ; vmulps %ymm10,%ymm0,%ymm0 DB 197,253,91,192 ; vcvtps2dq %ymm0,%ymm0 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,193,124,88,194 ; vaddps %ymm10,%ymm0,%ymm0 DB 196,195,125,74,193,128 ; vblendvps %ymm8,%ymm9,%ymm0,%ymm0 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,124,95,192 ; vmaxps %ymm8,%ymm0,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,188,93,192 ; vminps %ymm0,%ymm8,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_g_avx _sk_parametric_g_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,65,116,194,192,2 ; vcmpleps %ymm8,%ymm1,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1 DB 196,98,125,24,16 ; vbroadcastss (%rax),%ymm10 DB 197,124,91,217 ; vcvtdq2ps %ymm1,%ymm11 DB 196,98,125,24,37,188,51,0,0 ; vbroadcastss 0x33bc(%rip),%ymm12 # 5d3c <_sk_callback_avx+0x152> DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,178,51,0,0 ; vbroadcastss 0x33b2(%rip),%ymm12 # 5d40 <_sk_callback_avx+0x156> DB 196,193,116,84,204 ; vandps %ymm12,%ymm1,%ymm1 DB 196,98,125,24,37,168,51,0,0 ; vbroadcastss 0x33a8(%rip),%ymm12 # 5d44 <_sk_callback_avx+0x15a> DB 196,193,116,86,204 ; vorps %ymm12,%ymm1,%ymm1 DB 196,98,125,24,37,158,51,0,0 ; vbroadcastss 0x339e(%rip),%ymm12 # 5d48 <_sk_callback_avx+0x15e> DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,148,51,0,0 ; vbroadcastss 0x3394(%rip),%ymm12 # 5d4c <_sk_callback_avx+0x162> DB 196,65,116,89,228 ; vmulps %ymm12,%ymm1,%ymm12 DB 196,65,36,92,220 ; vsubps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,133,51,0,0 ; vbroadcastss 0x3385(%rip),%ymm12 # 5d50 <_sk_callback_avx+0x166> DB 196,193,116,88,204 ; vaddps %ymm12,%ymm1,%ymm1 DB 196,98,125,24,37,123,51,0,0 ; vbroadcastss 0x337b(%rip),%ymm12 # 5d54 <_sk_callback_avx+0x16a> DB 197,156,94,201 ; vdivps %ymm1,%ymm12,%ymm1 DB 197,164,92,201 ; vsubps %ymm1,%ymm11,%ymm1 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1 DB 196,99,125,8,209,1 ; vroundps $0x1,%ymm1,%ymm10 DB 196,65,116,92,210 ; vsubps %ymm10,%ymm1,%ymm10 DB 196,98,125,24,29,95,51,0,0 ; vbroadcastss 0x335f(%rip),%ymm11 # 5d58 <_sk_callback_avx+0x16e> DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1 DB 196,98,125,24,29,85,51,0,0 ; vbroadcastss 0x3355(%rip),%ymm11 # 5d5c <_sk_callback_avx+0x172> DB 196,65,44,89,219 ; vmulps %ymm11,%ymm10,%ymm11 DB 196,193,116,92,203 ; vsubps %ymm11,%ymm1,%ymm1 DB 196,98,125,24,29,70,51,0,0 ; vbroadcastss 0x3346(%rip),%ymm11 # 5d60 <_sk_callback_avx+0x176> DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10 DB 196,98,125,24,29,60,51,0,0 ; vbroadcastss 0x333c(%rip),%ymm11 # 5d64 <_sk_callback_avx+0x17a> DB 196,65,36,94,210 ; vdivps %ymm10,%ymm11,%ymm10 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1 DB 196,98,125,24,21,45,51,0,0 ; vbroadcastss 0x332d(%rip),%ymm10 # 5d68 <_sk_callback_avx+0x17e> DB 196,193,116,89,202 ; vmulps %ymm10,%ymm1,%ymm1 DB 197,253,91,201 ; vcvtps2dq %ymm1,%ymm1 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,193,116,88,202 ; vaddps %ymm10,%ymm1,%ymm1 DB 196,195,117,74,201,128 ; vblendvps %ymm8,%ymm9,%ymm1,%ymm1 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,116,95,192 ; vmaxps %ymm8,%ymm1,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,188,93,201 ; vminps %ymm1,%ymm8,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_b_avx _sk_parametric_b_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,65,108,194,192,2 ; vcmpleps %ymm8,%ymm2,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 197,52,89,202 ; vmulps %ymm2,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2 DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2 DB 196,98,125,24,16 ; vbroadcastss (%rax),%ymm10 DB 197,124,91,218 ; vcvtdq2ps %ymm2,%ymm11 DB 196,98,125,24,37,166,50,0,0 ; vbroadcastss 0x32a6(%rip),%ymm12 # 5d6c <_sk_callback_avx+0x182> DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,156,50,0,0 ; vbroadcastss 0x329c(%rip),%ymm12 # 5d70 <_sk_callback_avx+0x186> DB 196,193,108,84,212 ; vandps %ymm12,%ymm2,%ymm2 DB 196,98,125,24,37,146,50,0,0 ; vbroadcastss 0x3292(%rip),%ymm12 # 5d74 <_sk_callback_avx+0x18a> DB 196,193,108,86,212 ; vorps %ymm12,%ymm2,%ymm2 DB 196,98,125,24,37,136,50,0,0 ; vbroadcastss 0x3288(%rip),%ymm12 # 5d78 <_sk_callback_avx+0x18e> DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,126,50,0,0 ; vbroadcastss 0x327e(%rip),%ymm12 # 5d7c <_sk_callback_avx+0x192> DB 196,65,108,89,228 ; vmulps %ymm12,%ymm2,%ymm12 DB 196,65,36,92,220 ; vsubps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,111,50,0,0 ; vbroadcastss 0x326f(%rip),%ymm12 # 5d80 <_sk_callback_avx+0x196> DB 196,193,108,88,212 ; vaddps %ymm12,%ymm2,%ymm2 DB 196,98,125,24,37,101,50,0,0 ; vbroadcastss 0x3265(%rip),%ymm12 # 5d84 <_sk_callback_avx+0x19a> DB 197,156,94,210 ; vdivps %ymm2,%ymm12,%ymm2 DB 197,164,92,210 ; vsubps %ymm2,%ymm11,%ymm2 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2 DB 196,99,125,8,210,1 ; vroundps $0x1,%ymm2,%ymm10 DB 196,65,108,92,210 ; vsubps %ymm10,%ymm2,%ymm10 DB 196,98,125,24,29,73,50,0,0 ; vbroadcastss 0x3249(%rip),%ymm11 # 5d88 <_sk_callback_avx+0x19e> DB 196,193,108,88,211 ; vaddps %ymm11,%ymm2,%ymm2 DB 196,98,125,24,29,63,50,0,0 ; vbroadcastss 0x323f(%rip),%ymm11 # 5d8c <_sk_callback_avx+0x1a2> DB 196,65,44,89,219 ; vmulps %ymm11,%ymm10,%ymm11 DB 196,193,108,92,211 ; vsubps %ymm11,%ymm2,%ymm2 DB 196,98,125,24,29,48,50,0,0 ; vbroadcastss 0x3230(%rip),%ymm11 # 5d90 <_sk_callback_avx+0x1a6> DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10 DB 196,98,125,24,29,38,50,0,0 ; vbroadcastss 0x3226(%rip),%ymm11 # 5d94 <_sk_callback_avx+0x1aa> DB 196,65,36,94,210 ; vdivps %ymm10,%ymm11,%ymm10 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2 DB 196,98,125,24,21,23,50,0,0 ; vbroadcastss 0x3217(%rip),%ymm10 # 5d98 <_sk_callback_avx+0x1ae> DB 196,193,108,89,210 ; vmulps %ymm10,%ymm2,%ymm2 DB 197,253,91,210 ; vcvtps2dq %ymm2,%ymm2 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,193,108,88,210 ; vaddps %ymm10,%ymm2,%ymm2 DB 196,195,109,74,209,128 ; vblendvps %ymm8,%ymm9,%ymm2,%ymm2 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,108,95,192 ; vmaxps %ymm8,%ymm2,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,188,93,210 ; vminps %ymm2,%ymm8,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_a_avx _sk_parametric_a_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,65,100,194,192,2 ; vcmpleps %ymm8,%ymm3,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 197,52,89,203 ; vmulps %ymm3,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 196,98,125,24,80,4 ; vbroadcastss 0x4(%rax),%ymm10 DB 196,98,125,24,88,8 ; vbroadcastss 0x8(%rax),%ymm11 DB 197,172,89,219 ; vmulps %ymm3,%ymm10,%ymm3 DB 196,193,100,88,219 ; vaddps %ymm11,%ymm3,%ymm3 DB 196,98,125,24,16 ; vbroadcastss (%rax),%ymm10 DB 197,124,91,219 ; vcvtdq2ps %ymm3,%ymm11 DB 196,98,125,24,37,144,49,0,0 ; vbroadcastss 0x3190(%rip),%ymm12 # 5d9c <_sk_callback_avx+0x1b2> DB 196,65,36,89,220 ; vmulps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,134,49,0,0 ; vbroadcastss 0x3186(%rip),%ymm12 # 5da0 <_sk_callback_avx+0x1b6> DB 196,193,100,84,220 ; vandps %ymm12,%ymm3,%ymm3 DB 196,98,125,24,37,124,49,0,0 ; vbroadcastss 0x317c(%rip),%ymm12 # 5da4 <_sk_callback_avx+0x1ba> DB 196,193,100,86,220 ; vorps %ymm12,%ymm3,%ymm3 DB 196,98,125,24,37,114,49,0,0 ; vbroadcastss 0x3172(%rip),%ymm12 # 5da8 <_sk_callback_avx+0x1be> DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,104,49,0,0 ; vbroadcastss 0x3168(%rip),%ymm12 # 5dac <_sk_callback_avx+0x1c2> DB 196,65,100,89,228 ; vmulps %ymm12,%ymm3,%ymm12 DB 196,65,36,92,220 ; vsubps %ymm12,%ymm11,%ymm11 DB 196,98,125,24,37,89,49,0,0 ; vbroadcastss 0x3159(%rip),%ymm12 # 5db0 <_sk_callback_avx+0x1c6> DB 196,193,100,88,220 ; vaddps %ymm12,%ymm3,%ymm3 DB 196,98,125,24,37,79,49,0,0 ; vbroadcastss 0x314f(%rip),%ymm12 # 5db4 <_sk_callback_avx+0x1ca> DB 197,156,94,219 ; vdivps %ymm3,%ymm12,%ymm3 DB 197,164,92,219 ; vsubps %ymm3,%ymm11,%ymm3 DB 197,172,89,219 ; vmulps %ymm3,%ymm10,%ymm3 DB 196,99,125,8,211,1 ; vroundps $0x1,%ymm3,%ymm10 DB 196,65,100,92,210 ; vsubps %ymm10,%ymm3,%ymm10 DB 196,98,125,24,29,51,49,0,0 ; vbroadcastss 0x3133(%rip),%ymm11 # 5db8 <_sk_callback_avx+0x1ce> DB 196,193,100,88,219 ; vaddps %ymm11,%ymm3,%ymm3 DB 196,98,125,24,29,41,49,0,0 ; vbroadcastss 0x3129(%rip),%ymm11 # 5dbc <_sk_callback_avx+0x1d2> DB 196,65,44,89,219 ; vmulps %ymm11,%ymm10,%ymm11 DB 196,193,100,92,219 ; vsubps %ymm11,%ymm3,%ymm3 DB 196,98,125,24,29,26,49,0,0 ; vbroadcastss 0x311a(%rip),%ymm11 # 5dc0 <_sk_callback_avx+0x1d6> DB 196,65,36,92,210 ; vsubps %ymm10,%ymm11,%ymm10 DB 196,98,125,24,29,16,49,0,0 ; vbroadcastss 0x3110(%rip),%ymm11 # 5dc4 <_sk_callback_avx+0x1da> DB 196,65,36,94,210 ; vdivps %ymm10,%ymm11,%ymm10 DB 196,193,100,88,218 ; vaddps %ymm10,%ymm3,%ymm3 DB 196,98,125,24,21,1,49,0,0 ; vbroadcastss 0x3101(%rip),%ymm10 # 5dc8 <_sk_callback_avx+0x1de> DB 196,193,100,89,218 ; vmulps %ymm10,%ymm3,%ymm3 DB 197,253,91,219 ; vcvtps2dq %ymm3,%ymm3 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,193,100,88,218 ; vaddps %ymm10,%ymm3,%ymm3 DB 196,195,101,74,217,128 ; vblendvps %ymm8,%ymm9,%ymm3,%ymm3 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 196,65,100,95,192 ; vmaxps %ymm8,%ymm3,%ymm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,188,93,219 ; vminps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lab_to_xyz_avx _sk_lab_to_xyz_avx LABEL PROC DB 184,0,0,200,66 ; mov $0x42c80000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8 DB 184,0,0,127,67 ; mov $0x437f0000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,124,89,201 ; vmulps %ymm1,%ymm0,%ymm9 DB 184,0,0,0,67 ; mov $0x43000000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,52,92,201 ; vsubps %ymm1,%ymm9,%ymm9 DB 197,252,89,194 ; vmulps %ymm2,%ymm0,%ymm0 DB 197,124,92,209 ; vsubps %ymm1,%ymm0,%ymm10 DB 184,0,0,128,65 ; mov $0x41800000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,188,88,192 ; vaddps %ymm0,%ymm8,%ymm0 DB 184,203,61,13,60 ; mov $0x3c0d3dcb,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,252,89,194 ; vmulps %ymm2,%ymm0,%ymm0 DB 184,111,18,3,59 ; mov $0x3b03126f,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,180,89,210 ; vmulps %ymm2,%ymm9,%ymm2 DB 197,252,88,210 ; vaddps %ymm2,%ymm0,%ymm2 DB 184,10,215,163,59 ; mov $0x3ba3d70a,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1 DB 197,124,92,193 ; vsubps %ymm1,%ymm0,%ymm8 DB 197,236,89,202 ; vmulps %ymm2,%ymm2,%ymm1 DB 197,108,89,201 ; vmulps %ymm1,%ymm2,%ymm9 DB 184,194,24,17,60 ; mov $0x3c1118c2,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,99,117,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm10 DB 196,65,44,194,217,1 ; vcmpltps %ymm9,%ymm10,%ymm11 DB 184,203,61,13,62 ; mov $0x3e0d3dcb,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,99,117,24,225,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm12 DB 196,193,108,92,204 ; vsubps %ymm12,%ymm2,%ymm1 DB 184,80,128,3,62 ; mov $0x3e038050,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1 DB 196,67,117,74,201,176 ; vblendvps %ymm11,%ymm9,%ymm1,%ymm9 DB 197,252,89,200 ; vmulps %ymm0,%ymm0,%ymm1 DB 197,252,89,201 ; vmulps %ymm1,%ymm0,%ymm1 DB 197,44,194,217,1 ; vcmpltps %ymm1,%ymm10,%ymm11 DB 196,193,124,92,196 ; vsubps %ymm12,%ymm0,%ymm0 DB 197,252,89,194 ; vmulps %ymm2,%ymm0,%ymm0 DB 196,227,125,74,201,176 ; vblendvps %ymm11,%ymm1,%ymm0,%ymm1 DB 196,193,60,89,192 ; vmulps %ymm8,%ymm8,%ymm0 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,44,194,208,1 ; vcmpltps %ymm0,%ymm10,%ymm10 DB 196,65,60,92,196 ; vsubps %ymm12,%ymm8,%ymm8 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 196,99,109,74,192,160 ; vblendvps %ymm10,%ymm0,%ymm2,%ymm8 DB 184,31,215,118,63 ; mov $0x3f76d71f,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0 DB 184,246,64,83,63 ; mov $0x3f5340f6,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_a8_avx _sk_load_a8_avx LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,1,248 ; add %rdi,%rax DB 77,133,192 ; test %r8,%r8 DB 117,74 ; jne 2eec <_sk_load_a8_avx+0x5a> DB 197,250,126,0 ; vmovq (%rax),%xmm0 DB 196,226,121,49,200 ; vpmovzxbd %xmm0,%xmm1 DB 196,227,121,4,192,229 ; vpermilps $0xe5,%xmm0,%xmm0 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,252,89,217 ; vmulps %ymm1,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 76,137,193 ; mov %r8,%rcx DB 255,224 ; jmpq *%rax DB 49,201 ; xor %ecx,%ecx DB 77,137,194 ; mov %r8,%r10 DB 69,49,201 ; xor %r9d,%r9d DB 68,15,182,24 ; movzbl (%rax),%r11d DB 72,255,192 ; inc %rax DB 73,211,227 ; shl %cl,%r11 DB 77,9,217 ; or %r11,%r9 DB 72,131,193,8 ; add $0x8,%rcx DB 73,255,202 ; dec %r10 DB 117,234 ; jne 2ef4 <_sk_load_a8_avx+0x62> DB 196,193,249,110,193 ; vmovq %r9,%xmm0 DB 235,149 ; jmp 2ea6 <_sk_load_a8_avx+0x14> PUBLIC _sk_gather_a8_avx _sk_gather_a8_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,210 ; vmovq %xmm2,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 72,193,235,32 ; shr $0x20,%rbx DB 196,131,121,32,4,48,0 ; vpinsrb $0x0,(%r8,%r14,1),%xmm0,%xmm0 DB 196,195,121,32,4,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm0,%xmm0 DB 67,15,182,28,32 ; movzbl (%r8,%r12,1),%ebx DB 196,227,121,32,195,2 ; vpinsrb $0x2,%ebx,%xmm0,%xmm0 DB 67,15,182,28,56 ; movzbl (%r8,%r15,1),%ebx DB 196,227,121,32,195,3 ; vpinsrb $0x3,%ebx,%xmm0,%xmm0 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0 DB 196,131,121,32,12,24,0 ; vpinsrb $0x0,(%r8,%r11,1),%xmm0,%xmm1 DB 196,131,113,32,12,16,1 ; vpinsrb $0x1,(%r8,%r10,1),%xmm1,%xmm1 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1 DB 65,15,182,4,0 ; movzbl (%r8,%rax,1),%eax DB 196,227,113,32,200,3 ; vpinsrb $0x3,%eax,%xmm1,%xmm1 DB 196,226,121,49,201 ; vpmovzxbd %xmm1,%xmm1 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,252,89,217 ; vmulps %ymm1,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_store_a8_avx _sk_store_a8_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 184,0,0,127,67 ; mov $0x437f0000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8 DB 196,65,57,103,192 ; vpackuswb %xmm8,%xmm8,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,10 ; jne 304d <_sk_store_a8_avx+0x42> DB 196,65,123,17,4,57 ; vmovsd %xmm8,(%r9,%rdi,1) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 119,236 ; ja 3049 <_sk_store_a8_avx+0x3e> DB 196,66,121,48,192 ; vpmovzxbw %xmm8,%xmm8 DB 65,15,182,192 ; movzbl %r8b,%eax DB 76,141,5,67,0,0,0 ; lea 0x43(%rip),%r8 # 30b0 <_sk_store_a8_avx+0xa5> DB 73,99,4,128 ; movslq (%r8,%rax,4),%rax DB 76,1,192 ; add %r8,%rax DB 255,224 ; jmpq *%rax DB 196,67,121,20,68,57,6,12 ; vpextrb $0xc,%xmm8,0x6(%r9,%rdi,1) DB 196,67,121,20,68,57,5,10 ; vpextrb $0xa,%xmm8,0x5(%r9,%rdi,1) DB 196,67,121,20,68,57,4,8 ; vpextrb $0x8,%xmm8,0x4(%r9,%rdi,1) DB 196,67,121,20,68,57,3,6 ; vpextrb $0x6,%xmm8,0x3(%r9,%rdi,1) DB 196,67,121,20,68,57,2,4 ; vpextrb $0x4,%xmm8,0x2(%r9,%rdi,1) DB 196,67,121,20,68,57,1,2 ; vpextrb $0x2,%xmm8,0x1(%r9,%rdi,1) DB 196,67,121,20,4,57,0 ; vpextrb $0x0,%xmm8,(%r9,%rdi,1) DB 235,154 ; jmp 3049 <_sk_store_a8_avx+0x3e> DB 144 ; nop DB 246,255 ; idiv %bh DB 255 ; (bad) DB 255 ; (bad) DB 238 ; out %al,(%dx) DB 255 ; (bad) DB 255 ; (bad) DB 255,230 ; jmpq *%rsi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 222,255 ; fdivrp %st,%st(7) DB 255 ; (bad) DB 255,214 ; callq *%rsi DB 255 ; (bad) DB 255 ; (bad) DB 255,206 ; dec %esi DB 255 ; (bad) DB 255 ; (bad) DB 255,198 ; inc %esi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_g8_avx _sk_load_g8_avx LABEL PROC DB 73,137,200 ; mov %rcx,%r8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,1,248 ; add %rdi,%rax DB 77,133,192 ; test %r8,%r8 DB 117,91 ; jne 3137 <_sk_load_g8_avx+0x6b> DB 197,250,126,0 ; vmovq (%rax),%xmm0 DB 196,226,121,49,200 ; vpmovzxbd %xmm0,%xmm1 DB 196,227,121,4,192,229 ; vpermilps $0xe5,%xmm0,%xmm0 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0 DB 196,227,117,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm1,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,193 ; mov %r8,%rcx DB 197,252,40,200 ; vmovaps %ymm0,%ymm1 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2 DB 255,224 ; jmpq *%rax DB 49,201 ; xor %ecx,%ecx DB 77,137,194 ; mov %r8,%r10 DB 69,49,201 ; xor %r9d,%r9d DB 68,15,182,24 ; movzbl (%rax),%r11d DB 72,255,192 ; inc %rax DB 73,211,227 ; shl %cl,%r11 DB 77,9,217 ; or %r11,%r9 DB 72,131,193,8 ; add $0x8,%rcx DB 73,255,202 ; dec %r10 DB 117,234 ; jne 313f <_sk_load_g8_avx+0x73> DB 196,193,249,110,193 ; vmovq %r9,%xmm0 DB 235,132 ; jmp 30e0 <_sk_load_g8_avx+0x14> PUBLIC _sk_gather_g8_avx _sk_gather_g8_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,210 ; vmovq %xmm2,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 72,193,235,32 ; shr $0x20,%rbx DB 196,131,121,32,4,48,0 ; vpinsrb $0x0,(%r8,%r14,1),%xmm0,%xmm0 DB 196,195,121,32,4,24,1 ; vpinsrb $0x1,(%r8,%rbx,1),%xmm0,%xmm0 DB 67,15,182,28,32 ; movzbl (%r8,%r12,1),%ebx DB 196,227,121,32,195,2 ; vpinsrb $0x2,%ebx,%xmm0,%xmm0 DB 67,15,182,28,56 ; movzbl (%r8,%r15,1),%ebx DB 196,227,121,32,195,3 ; vpinsrb $0x3,%ebx,%xmm0,%xmm0 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0 DB 196,131,121,32,12,24,0 ; vpinsrb $0x0,(%r8,%r11,1),%xmm0,%xmm1 DB 196,131,113,32,12,16,1 ; vpinsrb $0x1,(%r8,%r10,1),%xmm1,%xmm1 DB 67,15,182,28,8 ; movzbl (%r8,%r9,1),%ebx DB 196,227,113,32,203,2 ; vpinsrb $0x2,%ebx,%xmm1,%xmm1 DB 65,15,182,4,0 ; movzbl (%r8,%rax,1),%eax DB 196,227,113,32,200,3 ; vpinsrb $0x3,%eax,%xmm1,%xmm1 DB 196,226,121,49,201 ; vpmovzxbd %xmm1,%xmm1 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,40,200 ; vmovaps %ymm0,%ymm1 DB 197,252,40,208 ; vmovaps %ymm0,%ymm2 DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_i8_avx _sk_gather_i8_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 73,137,192 ; mov %rax,%r8 DB 77,133,192 ; test %r8,%r8 DB 116,5 ; je 3276 <_sk_gather_i8_avx+0xf> DB 76,137,192 ; mov %r8,%rax DB 235,2 ; jmp 3278 <_sk_gather_i8_avx+0x11> DB 72,173 ; lods %ds:(%rsi),%rax DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 76,139,8 ; mov (%rax),%r9 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax DB 65,137,194 ; mov %eax,%r10d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,211 ; vmovq %xmm2,%r11 DB 69,137,222 ; mov %r11d,%r14d DB 73,193,235,32 ; shr $0x20,%r11 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,223 ; mov %ebx,%r15d DB 196,195,249,22,196,1 ; vpextrq $0x1,%xmm0,%r12 DB 69,137,229 ; mov %r12d,%r13d DB 73,193,236,32 ; shr $0x20,%r12 DB 72,193,235,32 ; shr $0x20,%rbx DB 196,131,121,32,4,49,0 ; vpinsrb $0x0,(%r9,%r14,1),%xmm0,%xmm0 DB 196,131,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%r11,1),%xmm0,%xmm0 DB 196,131,121,32,4,17,2 ; vpinsrb $0x2,(%r9,%r10,1),%xmm0,%xmm0 DB 196,195,121,32,4,1,3 ; vpinsrb $0x3,(%r9,%rax,1),%xmm0,%xmm0 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0 DB 196,195,249,22,194,1 ; vpextrq $0x1,%xmm0,%r10 DB 196,193,249,126,195 ; vmovq %xmm0,%r11 DB 196,131,121,32,4,57,0 ; vpinsrb $0x0,(%r9,%r15,1),%xmm0,%xmm0 DB 196,195,121,32,4,25,1 ; vpinsrb $0x1,(%r9,%rbx,1),%xmm0,%xmm0 DB 196,131,121,32,4,41,2 ; vpinsrb $0x2,(%r9,%r13,1),%xmm0,%xmm0 DB 196,131,121,32,4,33,3 ; vpinsrb $0x3,(%r9,%r12,1),%xmm0,%xmm0 DB 196,226,121,49,192 ; vpmovzxbd %xmm0,%xmm0 DB 73,139,88,8 ; mov 0x8(%r8),%rbx DB 196,193,249,126,193 ; vmovq %xmm0,%r9 DB 69,137,200 ; mov %r9d,%r8d DB 73,193,233,30 ; shr $0x1e,%r9 DB 196,227,249,22,192,1 ; vpextrq $0x1,%xmm0,%rax DB 65,137,198 ; mov %eax,%r14d DB 72,193,232,30 ; shr $0x1e,%rax DB 69,137,223 ; mov %r11d,%r15d DB 73,193,235,30 ; shr $0x1e,%r11 DB 69,137,212 ; mov %r10d,%r12d DB 73,193,234,30 ; shr $0x1e,%r10 DB 196,161,121,110,4,131 ; vmovd (%rbx,%r8,4),%xmm0 DB 196,163,121,34,4,11,1 ; vpinsrd $0x1,(%rbx,%r9,1),%xmm0,%xmm0 DB 196,163,121,34,4,179,2 ; vpinsrd $0x2,(%rbx,%r14,4),%xmm0,%xmm0 DB 196,99,121,34,4,3,3 ; vpinsrd $0x3,(%rbx,%rax,1),%xmm0,%xmm8 DB 196,161,121,110,4,187 ; vmovd (%rbx,%r15,4),%xmm0 DB 196,163,121,34,4,27,1 ; vpinsrd $0x1,(%rbx,%r11,1),%xmm0,%xmm0 DB 196,163,121,34,4,163,2 ; vpinsrd $0x2,(%rbx,%r12,4),%xmm0,%xmm0 DB 196,163,121,34,28,19,3 ; vpinsrd $0x3,(%rbx,%r10,1),%xmm0,%xmm3 DB 196,227,61,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm0 DB 184,255,0,0,0 ; mov $0xff,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 197,249,112,201,0 ; vpshufd $0x0,%xmm1,%xmm1 DB 196,99,117,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm11 DB 197,164,84,192 ; vandps %ymm0,%ymm11,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,99,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm9 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0 DB 196,193,41,114,208,8 ; vpsrld $0x8,%xmm8,%xmm10 DB 197,241,114,211,8 ; vpsrld $0x8,%xmm3,%xmm1 DB 196,227,45,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm10,%ymm1 DB 197,164,84,201 ; vandps %ymm1,%ymm11,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 196,193,116,89,201 ; vmulps %ymm9,%ymm1,%ymm1 DB 196,193,41,114,208,16 ; vpsrld $0x10,%xmm8,%xmm10 DB 197,233,114,211,16 ; vpsrld $0x10,%xmm3,%xmm2 DB 196,227,45,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm10,%ymm2 DB 197,164,84,210 ; vandps %ymm2,%ymm11,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 196,193,108,89,209 ; vmulps %ymm9,%ymm2,%ymm2 DB 196,193,57,114,208,24 ; vpsrld $0x18,%xmm8,%xmm8 DB 197,225,114,211,24 ; vpsrld $0x18,%xmm3,%xmm3 DB 196,227,61,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 196,193,100,89,217 ; vmulps %ymm9,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_load_565_avx _sk_load_565_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 72,133,201 ; test %rcx,%rcx DB 15,133,209,0,0,0 ; jne 3512 <_sk_load_565_avx+0xdf> DB 196,193,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm0 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,227,125,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm2 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 197,249,112,192,0 ; vpshufd $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,84,194 ; vandps %ymm2,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 197,249,112,201,0 ; vpshufd $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,244,84,202 ; vandps %ymm2,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 197,249,112,219,0 ; vpshufd $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,228,84,210 ; vandps %ymm2,%ymm3,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0 DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 15,135,29,255,255,255 ; ja 3447 <_sk_load_565_avx+0x14> DB 69,15,182,192 ; movzbl %r8b,%r8d DB 76,141,13,75,0,0,0 ; lea 0x4b(%rip),%r9 # 3580 <_sk_load_565_avx+0x14d> DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax DB 76,1,200 ; add %r9,%rax DB 255,224 ; jmpq *%rax DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0 DB 196,193,121,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm0,%xmm0 DB 233,201,254,255,255 ; jmpq 3447 <_sk_load_565_avx+0x14> DB 102,144 ; xchg %ax,%ax DB 242,255 ; repnz (bad) DB 255 ; (bad) DB 255 ; (bad) DB 234 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 255,226 ; jmpq *%rdx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 218,255 ; (bad) DB 255 ; (bad) DB 255,210 ; callq *%rdx DB 255 ; (bad) DB 255 ; (bad) DB 255,202 ; dec %edx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 190 ; .byte 0xbe DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_gather_565_avx _sk_gather_565_avx LABEL PROC DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,210 ; vmovq %xmm2,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 72,193,235,32 ; shr $0x20,%rbx DB 65,15,183,28,88 ; movzwl (%r8,%rbx,2),%ebx DB 67,15,183,44,112 ; movzwl (%r8,%r14,2),%ebp DB 197,249,110,197 ; vmovd %ebp,%xmm0 DB 197,249,196,195,1 ; vpinsrw $0x1,%ebx,%xmm0,%xmm0 DB 67,15,183,28,96 ; movzwl (%r8,%r12,2),%ebx DB 197,249,196,195,2 ; vpinsrw $0x2,%ebx,%xmm0,%xmm0 DB 67,15,183,28,120 ; movzwl (%r8,%r15,2),%ebx DB 197,249,196,195,3 ; vpinsrw $0x3,%ebx,%xmm0,%xmm0 DB 67,15,183,44,88 ; movzwl (%r8,%r11,2),%ebp DB 197,249,196,197,4 ; vpinsrw $0x4,%ebp,%xmm0,%xmm0 DB 67,15,183,44,80 ; movzwl (%r8,%r10,2),%ebp DB 197,249,196,197,5 ; vpinsrw $0x5,%ebp,%xmm0,%xmm0 DB 67,15,183,44,72 ; movzwl (%r8,%r9,2),%ebp DB 197,249,196,197,6 ; vpinsrw $0x6,%ebp,%xmm0,%xmm0 DB 65,15,183,4,64 ; movzwl (%r8,%rax,2),%eax DB 197,249,196,192,7 ; vpinsrw $0x7,%eax,%xmm0,%xmm0 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,227,125,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm2 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 197,249,112,192,0 ; vpshufd $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,84,194 ; vandps %ymm2,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 197,249,112,201,0 ; vpshufd $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,244,84,202 ; vandps %ymm2,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,244,89,203 ; vmulps %ymm3,%ymm1,%ymm1 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 197,249,112,219,0 ; vpshufd $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,228,84,210 ; vandps %ymm2,%ymm3,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,236,89,211 ; vmulps %ymm3,%ymm2,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax PUBLIC _sk_store_565_avx _sk_store_565_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 184,0,0,248,65 ; mov $0x41f80000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9 DB 196,193,41,114,241,11 ; vpslld $0xb,%xmm9,%xmm10 DB 196,67,125,25,201,1 ; vextractf128 $0x1,%ymm9,%xmm9 DB 196,193,49,114,241,11 ; vpslld $0xb,%xmm9,%xmm9 DB 196,67,45,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm10,%ymm9 DB 184,0,0,124,66 ; mov $0x427c0000,%eax DB 197,121,110,208 ; vmovd %eax,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 197,44,89,209 ; vmulps %ymm1,%ymm10,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,33,114,242,5 ; vpslld $0x5,%xmm10,%xmm11 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10 DB 196,193,41,114,242,5 ; vpslld $0x5,%xmm10,%xmm10 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10 DB 196,65,45,86,201 ; vorpd %ymm9,%ymm10,%ymm9 DB 197,60,89,194 ; vmulps %ymm2,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,65,53,86,192 ; vorpd %ymm8,%ymm9,%ymm8 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,10 ; jne 37cb <_sk_store_565_avx+0x9e> DB 196,65,122,127,4,121 ; vmovdqu %xmm8,(%r9,%rdi,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 119,236 ; ja 37c7 <_sk_store_565_avx+0x9a> DB 65,15,182,192 ; movzbl %r8b,%eax DB 76,141,5,66,0,0,0 ; lea 0x42(%rip),%r8 # 3828 <_sk_store_565_avx+0xfb> DB 73,99,4,128 ; movslq (%r8,%rax,4),%rax DB 76,1,192 ; add %r8,%rax DB 255,224 ; jmpq *%rax DB 196,67,121,21,68,121,12,6 ; vpextrw $0x6,%xmm8,0xc(%r9,%rdi,2) DB 196,67,121,21,68,121,10,5 ; vpextrw $0x5,%xmm8,0xa(%r9,%rdi,2) DB 196,67,121,21,68,121,8,4 ; vpextrw $0x4,%xmm8,0x8(%r9,%rdi,2) DB 196,67,121,21,68,121,6,3 ; vpextrw $0x3,%xmm8,0x6(%r9,%rdi,2) DB 196,67,121,21,68,121,4,2 ; vpextrw $0x2,%xmm8,0x4(%r9,%rdi,2) DB 196,67,121,21,68,121,2,1 ; vpextrw $0x1,%xmm8,0x2(%r9,%rdi,2) DB 196,67,121,21,4,121,0 ; vpextrw $0x0,%xmm8,(%r9,%rdi,2) DB 235,159 ; jmp 37c7 <_sk_store_565_avx+0x9a> DB 247,255 ; idiv %edi DB 255 ; (bad) DB 255 ; (bad) DB 239 ; out %eax,(%dx) DB 255 ; (bad) DB 255 ; (bad) DB 255,231 ; jmpq *%rdi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 223,255 ; (bad) DB 255 ; (bad) DB 255,215 ; callq *%rdi DB 255 ; (bad) DB 255 ; (bad) DB 255,207 ; dec %edi DB 255 ; (bad) DB 255 ; (bad) DB 255,199 ; inc %edi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_4444_avx _sk_load_4444_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 72,133,201 ; test %rcx,%rcx DB 15,133,245,0,0,0 ; jne 3947 <_sk_load_4444_avx+0x103> DB 196,193,122,111,4,122 ; vmovdqu (%r10,%rdi,2),%xmm0 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,99,125,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm9 DB 184,0,240,0,0 ; mov $0xf000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 197,249,112,192,0 ; vpshufd $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 196,193,124,84,193 ; vandps %ymm9,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,137,136,136,55 ; mov $0x37888889,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,0,15,0,0 ; mov $0xf00,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 197,249,112,201,0 ; vpshufd $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 196,193,116,84,201 ; vandps %ymm9,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 184,137,136,136,57 ; mov $0x39888889,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1 DB 184,240,0,0,0 ; mov $0xf0,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 197,249,112,210,0 ; vpshufd $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 196,193,108,84,209 ; vandps %ymm9,%ymm2,%ymm2 DB 197,124,91,194 ; vcvtdq2ps %ymm2,%ymm8 DB 184,137,136,136,59 ; mov $0x3b888889,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 184,15,0,0,0 ; mov $0xf,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 197,249,112,219,0 ; vpshufd $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 196,193,100,84,217 ; vandps %ymm9,%ymm3,%ymm3 DB 197,124,91,195 ; vcvtdq2ps %ymm3,%ymm8 DB 184,137,136,136,61 ; mov $0x3d888889,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0 DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 15,135,249,254,255,255 ; ja 3858 <_sk_load_4444_avx+0x14> DB 69,15,182,192 ; movzbl %r8b,%r8d DB 76,141,13,74,0,0,0 ; lea 0x4a(%rip),%r9 # 39b4 <_sk_load_4444_avx+0x170> DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax DB 76,1,200 ; add %r9,%rax DB 255,224 ; jmpq *%rax DB 197,249,239,192 ; vpxor %xmm0,%xmm0,%xmm0 DB 196,193,121,196,68,122,12,6 ; vpinsrw $0x6,0xc(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,10,5 ; vpinsrw $0x5,0xa(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,8,4 ; vpinsrw $0x4,0x8(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,6,3 ; vpinsrw $0x3,0x6(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,4,2 ; vpinsrw $0x2,0x4(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,68,122,2,1 ; vpinsrw $0x1,0x2(%r10,%rdi,2),%xmm0,%xmm0 DB 196,193,121,196,4,122,0 ; vpinsrw $0x0,(%r10,%rdi,2),%xmm0,%xmm0 DB 233,165,254,255,255 ; jmpq 3858 <_sk_load_4444_avx+0x14> DB 144 ; nop DB 243,255 ; repz (bad) DB 255 ; (bad) DB 255 ; (bad) DB 235,255 ; jmp 39b9 <_sk_load_4444_avx+0x175> DB 255 ; (bad) DB 255,227 ; jmpq *%rbx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 219,255 ; (bad) DB 255 ; (bad) DB 255,211 ; callq *%rbx DB 255 ; (bad) DB 255 ; (bad) DB 255,203 ; dec %ebx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 191 ; .byte 0xbf DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_gather_4444_avx _sk_gather_4444_avx LABEL PROC DB 85 ; push %rbp DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,210 ; vmovq %xmm2,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 72,193,235,32 ; shr $0x20,%rbx DB 65,15,183,28,88 ; movzwl (%r8,%rbx,2),%ebx DB 67,15,183,44,112 ; movzwl (%r8,%r14,2),%ebp DB 197,249,110,197 ; vmovd %ebp,%xmm0 DB 197,249,196,195,1 ; vpinsrw $0x1,%ebx,%xmm0,%xmm0 DB 67,15,183,28,96 ; movzwl (%r8,%r12,2),%ebx DB 197,249,196,195,2 ; vpinsrw $0x2,%ebx,%xmm0,%xmm0 DB 67,15,183,28,120 ; movzwl (%r8,%r15,2),%ebx DB 197,249,196,195,3 ; vpinsrw $0x3,%ebx,%xmm0,%xmm0 DB 67,15,183,44,88 ; movzwl (%r8,%r11,2),%ebp DB 197,249,196,197,4 ; vpinsrw $0x4,%ebp,%xmm0,%xmm0 DB 67,15,183,44,80 ; movzwl (%r8,%r10,2),%ebp DB 197,249,196,197,5 ; vpinsrw $0x5,%ebp,%xmm0,%xmm0 DB 67,15,183,44,72 ; movzwl (%r8,%r9,2),%ebp DB 197,249,196,197,6 ; vpinsrw $0x6,%ebp,%xmm0,%xmm0 DB 65,15,183,4,64 ; movzwl (%r8,%rax,2),%eax DB 197,249,196,192,7 ; vpinsrw $0x7,%eax,%xmm0,%xmm0 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,99,125,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm9 DB 184,0,240,0,0 ; mov $0xf000,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 197,249,112,192,0 ; vpshufd $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 196,193,124,84,193 ; vandps %ymm9,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,137,136,136,55 ; mov $0x37888889,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,252,89,193 ; vmulps %ymm1,%ymm0,%ymm0 DB 184,0,15,0,0 ; mov $0xf00,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 197,249,112,201,0 ; vpshufd $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 196,193,116,84,201 ; vandps %ymm9,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 184,137,136,136,57 ; mov $0x39888889,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1 DB 184,240,0,0,0 ; mov $0xf0,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 197,249,112,210,0 ; vpshufd $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 196,193,108,84,209 ; vandps %ymm9,%ymm2,%ymm2 DB 197,124,91,194 ; vcvtdq2ps %ymm2,%ymm8 DB 184,137,136,136,59 ; mov $0x3b888889,%eax DB 197,249,110,208 ; vmovd %eax,%xmm2 DB 196,227,121,4,210,0 ; vpermilps $0x0,%xmm2,%xmm2 DB 196,227,109,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm2,%ymm2 DB 197,188,89,210 ; vmulps %ymm2,%ymm8,%ymm2 DB 184,15,0,0,0 ; mov $0xf,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 197,249,112,219,0 ; vpshufd $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 196,193,100,84,217 ; vandps %ymm9,%ymm3,%ymm3 DB 197,124,91,195 ; vcvtdq2ps %ymm3,%ymm8 DB 184,137,136,136,61 ; mov $0x3d888889,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,188,89,219 ; vmulps %ymm3,%ymm8,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 93 ; pop %rbp DB 255,224 ; jmpq *%rax PUBLIC _sk_store_4444_avx _sk_store_4444_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 184,0,0,112,65 ; mov $0x41700000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9 DB 196,193,41,114,241,12 ; vpslld $0xc,%xmm9,%xmm10 DB 196,67,125,25,201,1 ; vextractf128 $0x1,%ymm9,%xmm9 DB 196,193,49,114,241,12 ; vpslld $0xc,%xmm9,%xmm9 DB 196,67,45,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm10,%ymm9 DB 197,60,89,209 ; vmulps %ymm1,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,33,114,242,8 ; vpslld $0x8,%xmm10,%xmm11 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10 DB 196,193,41,114,242,8 ; vpslld $0x8,%xmm10,%xmm10 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10 DB 196,65,45,86,201 ; vorpd %ymm9,%ymm10,%ymm9 DB 197,60,89,210 ; vmulps %ymm2,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,33,114,242,4 ; vpslld $0x4,%xmm10,%xmm11 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10 DB 196,193,41,114,242,4 ; vpslld $0x4,%xmm10,%xmm10 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,65,45,86,192 ; vorpd %ymm8,%ymm10,%ymm8 DB 196,65,53,86,192 ; vorpd %ymm8,%ymm9,%ymm8 DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9 DB 196,66,57,43,193 ; vpackusdw %xmm9,%xmm8,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,10 ; jne 3c34 <_sk_store_4444_avx+0xaf> DB 196,65,122,127,4,121 ; vmovdqu %xmm8,(%r9,%rdi,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 119,236 ; ja 3c30 <_sk_store_4444_avx+0xab> DB 65,15,182,192 ; movzbl %r8b,%eax DB 76,141,5,69,0,0,0 ; lea 0x45(%rip),%r8 # 3c94 <_sk_store_4444_avx+0x10f> DB 73,99,4,128 ; movslq (%r8,%rax,4),%rax DB 76,1,192 ; add %r8,%rax DB 255,224 ; jmpq *%rax DB 196,67,121,21,68,121,12,6 ; vpextrw $0x6,%xmm8,0xc(%r9,%rdi,2) DB 196,67,121,21,68,121,10,5 ; vpextrw $0x5,%xmm8,0xa(%r9,%rdi,2) DB 196,67,121,21,68,121,8,4 ; vpextrw $0x4,%xmm8,0x8(%r9,%rdi,2) DB 196,67,121,21,68,121,6,3 ; vpextrw $0x3,%xmm8,0x6(%r9,%rdi,2) DB 196,67,121,21,68,121,4,2 ; vpextrw $0x2,%xmm8,0x4(%r9,%rdi,2) DB 196,67,121,21,68,121,2,1 ; vpextrw $0x1,%xmm8,0x2(%r9,%rdi,2) DB 196,67,121,21,4,121,0 ; vpextrw $0x0,%xmm8,(%r9,%rdi,2) DB 235,159 ; jmp 3c30 <_sk_store_4444_avx+0xab> DB 15,31,0 ; nopl (%rax) DB 244 ; hlt DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 236 ; in (%dx),%al DB 255 ; (bad) DB 255 ; (bad) DB 255,228 ; jmpq *%rsp DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 220,255 ; fdivr %st,%st(7) DB 255 ; (bad) DB 255,212 ; callq *%rsp DB 255 ; (bad) DB 255 ; (bad) DB 255,204 ; dec %esp DB 255 ; (bad) DB 255 ; (bad) DB 255,196 ; inc %esp DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_8888_avx _sk_load_8888_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 72,133,201 ; test %rcx,%rcx DB 15,133,157,0,0,0 ; jne 3d5b <_sk_load_8888_avx+0xab> DB 196,65,124,16,12,186 ; vmovups (%r10,%rdi,4),%ymm9 DB 184,255,0,0,0 ; mov $0xff,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 197,249,112,192,0 ; vpshufd $0x0,%xmm0,%xmm0 DB 196,99,125,24,216,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm11 DB 196,193,36,84,193 ; vandps %ymm9,%ymm11,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,99,117,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm8 DB 196,193,124,89,192 ; vmulps %ymm8,%ymm0,%ymm0 DB 196,193,41,114,209,8 ; vpsrld $0x8,%xmm9,%xmm10 DB 196,99,125,25,203,1 ; vextractf128 $0x1,%ymm9,%xmm3 DB 197,241,114,211,8 ; vpsrld $0x8,%xmm3,%xmm1 DB 196,227,45,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm10,%ymm1 DB 197,164,84,201 ; vandps %ymm1,%ymm11,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 196,193,116,89,200 ; vmulps %ymm8,%ymm1,%ymm1 DB 196,193,41,114,209,16 ; vpsrld $0x10,%xmm9,%xmm10 DB 197,233,114,211,16 ; vpsrld $0x10,%xmm3,%xmm2 DB 196,227,45,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm10,%ymm2 DB 197,164,84,210 ; vandps %ymm2,%ymm11,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 196,193,108,89,208 ; vmulps %ymm8,%ymm2,%ymm2 DB 196,193,49,114,209,24 ; vpsrld $0x18,%xmm9,%xmm9 DB 197,225,114,211,24 ; vpsrld $0x18,%xmm3,%xmm3 DB 196,227,53,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm9,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 196,193,100,89,216 ; vmulps %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9 DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 15,135,80,255,255,255 ; ja 3cc4 <_sk_load_8888_avx+0x14> DB 69,15,182,192 ; movzbl %r8b,%r8d DB 76,141,13,137,0,0,0 ; lea 0x89(%rip),%r9 # 3e08 <_sk_load_8888_avx+0x158> DB 75,99,4,129 ; movslq (%r9,%r8,4),%rax DB 76,1,200 ; add %r9,%rax DB 255,224 ; jmpq *%rax DB 196,193,121,110,68,186,24 ; vmovd 0x18(%r10,%rdi,4),%xmm0 DB 197,249,112,192,68 ; vpshufd $0x44,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 196,99,117,12,200,64 ; vblendps $0x40,%ymm0,%ymm1,%ymm9 DB 196,99,125,25,200,1 ; vextractf128 $0x1,%ymm9,%xmm0 DB 196,195,121,34,68,186,20,1 ; vpinsrd $0x1,0x14(%r10,%rdi,4),%xmm0,%xmm0 DB 196,99,53,24,200,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm9 DB 196,99,125,25,200,1 ; vextractf128 $0x1,%ymm9,%xmm0 DB 196,195,121,34,68,186,16,0 ; vpinsrd $0x0,0x10(%r10,%rdi,4),%xmm0,%xmm0 DB 196,99,53,24,200,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm9 DB 196,195,49,34,68,186,12,3 ; vpinsrd $0x3,0xc(%r10,%rdi,4),%xmm9,%xmm0 DB 196,99,53,12,200,15 ; vblendps $0xf,%ymm0,%ymm9,%ymm9 DB 196,195,49,34,68,186,8,2 ; vpinsrd $0x2,0x8(%r10,%rdi,4),%xmm9,%xmm0 DB 196,99,53,12,200,15 ; vblendps $0xf,%ymm0,%ymm9,%ymm9 DB 196,195,49,34,68,186,4,1 ; vpinsrd $0x1,0x4(%r10,%rdi,4),%xmm9,%xmm0 DB 196,99,53,12,200,15 ; vblendps $0xf,%ymm0,%ymm9,%ymm9 DB 196,195,49,34,4,186,0 ; vpinsrd $0x0,(%r10,%rdi,4),%xmm9,%xmm0 DB 196,99,53,12,200,15 ; vblendps $0xf,%ymm0,%ymm9,%ymm9 DB 233,188,254,255,255 ; jmpq 3cc4 <_sk_load_8888_avx+0x14> DB 238 ; out %al,(%dx) DB 255 ; (bad) DB 255 ; (bad) DB 255,224 ; jmpq *%rax DB 255 ; (bad) DB 255 ; (bad) DB 255,210 ; callq *%rdx DB 255 ; (bad) DB 255 ; (bad) DB 255,196 ; inc %esp DB 255 ; (bad) DB 255 ; (bad) DB 255,176,255,255,255,156 ; pushq -0x63000001(%rax) DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff DB 128,255,255 ; cmp $0xff,%bh DB 255 ; .byte 0xff PUBLIC _sk_gather_8888_avx _sk_gather_8888_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,201 ; vcvttps2dq %ymm1,%ymm1 DB 197,249,110,80,16 ; vmovd 0x10(%rax),%xmm2 DB 197,249,112,210,0 ; vpshufd $0x0,%xmm2,%xmm2 DB 196,226,105,64,217 ; vpmulld %xmm1,%xmm2,%xmm3 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1 DB 196,226,105,64,201 ; vpmulld %xmm1,%xmm2,%xmm1 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 196,227,125,25,194,1 ; vextractf128 $0x1,%ymm0,%xmm2 DB 197,241,254,202 ; vpaddd %xmm2,%xmm1,%xmm1 DB 196,225,249,126,200 ; vmovq %xmm1,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,195,249,22,202,1 ; vpextrq $0x1,%xmm1,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 197,225,254,192 ; vpaddd %xmm0,%xmm3,%xmm0 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 72,193,235,32 ; shr $0x20,%rbx DB 73,193,239,32 ; shr $0x20,%r15 DB 196,129,121,110,4,176 ; vmovd (%r8,%r14,4),%xmm0 DB 196,195,121,34,4,152,1 ; vpinsrd $0x1,(%r8,%rbx,4),%xmm0,%xmm0 DB 196,131,121,34,4,160,2 ; vpinsrd $0x2,(%r8,%r12,4),%xmm0,%xmm0 DB 196,3,121,34,4,184,3 ; vpinsrd $0x3,(%r8,%r15,4),%xmm0,%xmm8 DB 196,129,121,110,4,136 ; vmovd (%r8,%r9,4),%xmm0 DB 196,195,121,34,4,128,1 ; vpinsrd $0x1,(%r8,%rax,4),%xmm0,%xmm0 DB 196,131,121,34,4,152,2 ; vpinsrd $0x2,(%r8,%r11,4),%xmm0,%xmm0 DB 196,131,121,34,28,144,3 ; vpinsrd $0x3,(%r8,%r10,4),%xmm0,%xmm3 DB 196,227,61,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm0 DB 184,255,0,0,0 ; mov $0xff,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 197,249,112,201,0 ; vpshufd $0x0,%xmm1,%xmm1 DB 196,99,117,24,217,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm11 DB 197,164,84,192 ; vandps %ymm0,%ymm11,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,99,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm9 DB 196,193,124,89,193 ; vmulps %ymm9,%ymm0,%ymm0 DB 196,193,41,114,208,8 ; vpsrld $0x8,%xmm8,%xmm10 DB 197,241,114,211,8 ; vpsrld $0x8,%xmm3,%xmm1 DB 196,227,45,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm10,%ymm1 DB 197,164,84,201 ; vandps %ymm1,%ymm11,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 196,193,116,89,201 ; vmulps %ymm9,%ymm1,%ymm1 DB 196,193,41,114,208,16 ; vpsrld $0x10,%xmm8,%xmm10 DB 197,233,114,211,16 ; vpsrld $0x10,%xmm3,%xmm2 DB 196,227,45,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm10,%ymm2 DB 197,164,84,210 ; vandps %ymm2,%ymm11,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 196,193,108,89,209 ; vmulps %ymm9,%ymm2,%ymm2 DB 196,193,57,114,208,24 ; vpsrld $0x18,%xmm8,%xmm8 DB 197,225,114,211,24 ; vpsrld $0x18,%xmm3,%xmm3 DB 196,227,61,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm8,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 196,193,100,89,217 ; vmulps %ymm9,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_store_8888_avx _sk_store_8888_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 184,0,0,127,67 ; mov $0x437f0000,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9 DB 197,60,89,209 ; vmulps %ymm1,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,33,114,242,8 ; vpslld $0x8,%xmm10,%xmm11 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10 DB 196,193,41,114,242,8 ; vpslld $0x8,%xmm10,%xmm10 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10 DB 196,65,45,86,201 ; vorpd %ymm9,%ymm10,%ymm9 DB 197,60,89,210 ; vmulps %ymm2,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,193,33,114,242,16 ; vpslld $0x10,%xmm10,%xmm11 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10 DB 196,193,41,114,242,16 ; vpslld $0x10,%xmm10,%xmm10 DB 196,67,37,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm11,%ymm10 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,193,33,114,240,24 ; vpslld $0x18,%xmm8,%xmm11 DB 196,67,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm8 DB 196,193,57,114,240,24 ; vpslld $0x18,%xmm8,%xmm8 DB 196,67,37,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm11,%ymm8 DB 196,65,45,86,192 ; vorpd %ymm8,%ymm10,%ymm8 DB 196,65,53,86,192 ; vorpd %ymm8,%ymm9,%ymm8 DB 72,133,201 ; test %rcx,%rcx DB 117,10 ; jne 4009 <_sk_store_8888_avx+0xa4> DB 196,65,124,17,4,185 ; vmovups %ymm8,(%r9,%rdi,4) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 65,137,200 ; mov %ecx,%r8d DB 65,128,224,7 ; and $0x7,%r8b DB 65,254,200 ; dec %r8b DB 65,128,248,6 ; cmp $0x6,%r8b DB 119,236 ; ja 4005 <_sk_store_8888_avx+0xa0> DB 65,15,182,192 ; movzbl %r8b,%eax DB 76,141,5,84,0,0,0 ; lea 0x54(%rip),%r8 # 4078 <_sk_store_8888_avx+0x113> DB 73,99,4,128 ; movslq (%r8,%rax,4),%rax DB 76,1,192 ; add %r8,%rax DB 255,224 ; jmpq *%rax DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9 DB 196,67,121,22,76,185,24,2 ; vpextrd $0x2,%xmm9,0x18(%r9,%rdi,4) DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9 DB 196,67,121,22,76,185,20,1 ; vpextrd $0x1,%xmm9,0x14(%r9,%rdi,4) DB 196,67,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm9 DB 196,65,122,17,76,185,16 ; vmovss %xmm9,0x10(%r9,%rdi,4) DB 196,67,121,22,68,185,12,3 ; vpextrd $0x3,%xmm8,0xc(%r9,%rdi,4) DB 196,67,121,22,68,185,8,2 ; vpextrd $0x2,%xmm8,0x8(%r9,%rdi,4) DB 196,67,121,22,68,185,4,1 ; vpextrd $0x1,%xmm8,0x4(%r9,%rdi,4) DB 196,65,121,126,4,185 ; vmovd %xmm8,(%r9,%rdi,4) DB 235,143 ; jmp 4005 <_sk_store_8888_avx+0xa0> DB 102,144 ; xchg %ax,%ax DB 246,255 ; idiv %bh DB 255 ; (bad) DB 255 ; (bad) DB 238 ; out %al,(%dx) DB 255 ; (bad) DB 255 ; (bad) DB 255,230 ; jmpq *%rsi DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 222,255 ; fdivrp %st,%st(7) DB 255 ; (bad) DB 255,209 ; callq *%rcx DB 255 ; (bad) DB 255 ; (bad) DB 255,195 ; inc %ebx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; .byte 0xff DB 181,255 ; mov $0xff,%ch DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_load_f16_avx _sk_load_f16_avx LABEL PROC DB 72,129,236,152,0,0,0 ; sub $0x98,%rsp DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,133,201 ; test %rcx,%rcx DB 197,252,17,124,36,96 ; vmovups %ymm7,0x60(%rsp) DB 197,252,17,116,36,64 ; vmovups %ymm6,0x40(%rsp) DB 197,252,17,108,36,32 ; vmovups %ymm5,0x20(%rsp) DB 197,254,127,36,36 ; vmovdqu %ymm4,(%rsp) DB 15,133,143,2,0,0 ; jne 434f <_sk_load_f16_avx+0x2bb> DB 197,121,16,4,248 ; vmovupd (%rax,%rdi,8),%xmm8 DB 197,249,16,84,248,16 ; vmovupd 0x10(%rax,%rdi,8),%xmm2 DB 197,249,16,76,248,32 ; vmovupd 0x20(%rax,%rdi,8),%xmm1 DB 197,122,111,76,248,48 ; vmovdqu 0x30(%rax,%rdi,8),%xmm9 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2 DB 196,193,113,97,217 ; vpunpcklwd %xmm9,%xmm1,%xmm3 DB 196,193,113,105,201 ; vpunpckhwd %xmm9,%xmm1,%xmm1 DB 197,121,97,250 ; vpunpcklwd %xmm2,%xmm0,%xmm15 DB 197,121,105,194 ; vpunpckhwd %xmm2,%xmm0,%xmm8 DB 197,225,97,209 ; vpunpcklwd %xmm1,%xmm3,%xmm2 DB 197,97,105,201 ; vpunpckhwd %xmm1,%xmm3,%xmm9 DB 197,129,108,194 ; vpunpcklqdq %xmm2,%xmm15,%xmm0 DB 197,241,239,201 ; vpxor %xmm1,%xmm1,%xmm1 DB 197,249,105,201 ; vpunpckhwd %xmm1,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0 DB 196,98,125,24,37,179,28,0,0 ; vbroadcastss 0x1cb3(%rip),%ymm12 # 5dcc <_sk_callback_avx+0x1e2> DB 196,193,124,84,204 ; vandps %ymm12,%ymm0,%ymm1 DB 197,252,87,193 ; vxorps %ymm1,%ymm0,%ymm0 DB 196,195,125,25,198,1 ; vextractf128 $0x1,%ymm0,%xmm14 DB 196,98,121,24,29,159,28,0,0 ; vbroadcastss 0x1c9f(%rip),%xmm11 # 5dd0 <_sk_callback_avx+0x1e6> DB 196,193,8,87,219 ; vxorps %xmm11,%xmm14,%xmm3 DB 196,98,121,24,45,149,28,0,0 ; vbroadcastss 0x1c95(%rip),%xmm13 # 5dd4 <_sk_callback_avx+0x1ea> DB 197,145,102,219 ; vpcmpgtd %xmm3,%xmm13,%xmm3 DB 196,65,120,87,211 ; vxorps %xmm11,%xmm0,%xmm10 DB 196,65,17,102,210 ; vpcmpgtd %xmm10,%xmm13,%xmm10 DB 196,99,45,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm10,%ymm10 DB 197,225,114,241,16 ; vpslld $0x10,%xmm1,%xmm3 DB 196,227,125,25,201,1 ; vextractf128 $0x1,%ymm1,%xmm1 DB 197,241,114,241,16 ; vpslld $0x10,%xmm1,%xmm1 DB 196,227,101,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm3,%ymm1 DB 197,249,114,240,13 ; vpslld $0xd,%xmm0,%xmm0 DB 196,193,97,114,246,13 ; vpslld $0xd,%xmm14,%xmm3 DB 196,227,125,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm0,%ymm0 DB 197,252,86,193 ; vorps %ymm1,%ymm0,%ymm0 DB 196,227,125,25,193,1 ; vextractf128 $0x1,%ymm0,%xmm1 DB 196,226,121,24,29,75,28,0,0 ; vbroadcastss 0x1c4b(%rip),%xmm3 # 5dd8 <_sk_callback_avx+0x1ee> DB 197,241,254,203 ; vpaddd %xmm3,%xmm1,%xmm1 DB 197,249,254,195 ; vpaddd %xmm3,%xmm0,%xmm0 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0 DB 196,65,12,87,246 ; vxorps %ymm14,%ymm14,%ymm14 DB 196,195,125,74,198,160 ; vblendvps %ymm10,%ymm14,%ymm0,%ymm0 DB 197,129,109,202 ; vpunpckhqdq %xmm2,%xmm15,%xmm1 DB 197,217,239,228 ; vpxor %xmm4,%xmm4,%xmm4 DB 197,241,105,212 ; vpunpckhwd %xmm4,%xmm1,%xmm2 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 196,193,116,84,212 ; vandps %ymm12,%ymm1,%ymm2 DB 197,244,87,202 ; vxorps %ymm2,%ymm1,%ymm1 DB 196,195,125,25,202,1 ; vextractf128 $0x1,%ymm1,%xmm10 DB 196,193,40,87,251 ; vxorps %xmm11,%xmm10,%xmm7 DB 197,145,102,255 ; vpcmpgtd %xmm7,%xmm13,%xmm7 DB 196,193,112,87,243 ; vxorps %xmm11,%xmm1,%xmm6 DB 197,145,102,246 ; vpcmpgtd %xmm6,%xmm13,%xmm6 DB 196,227,77,24,247,1 ; vinsertf128 $0x1,%xmm7,%ymm6,%ymm6 DB 197,193,114,242,16 ; vpslld $0x10,%xmm2,%xmm7 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 197,233,114,242,16 ; vpslld $0x10,%xmm2,%xmm2 DB 196,227,69,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm7,%ymm2 DB 197,241,114,241,13 ; vpslld $0xd,%xmm1,%xmm1 DB 196,193,65,114,242,13 ; vpslld $0xd,%xmm10,%xmm7 DB 196,227,117,24,207,1 ; vinsertf128 $0x1,%xmm7,%ymm1,%ymm1 DB 197,244,86,202 ; vorps %ymm2,%ymm1,%ymm1 DB 196,227,125,25,202,1 ; vextractf128 $0x1,%ymm1,%xmm2 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 197,241,254,203 ; vpaddd %xmm3,%xmm1,%xmm1 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 196,195,117,74,206,96 ; vblendvps %ymm6,%ymm14,%ymm1,%ymm1 DB 196,193,57,108,209 ; vpunpcklqdq %xmm9,%xmm8,%xmm2 DB 197,233,105,244 ; vpunpckhwd %xmm4,%xmm2,%xmm6 DB 196,65,41,239,210 ; vpxor %xmm10,%xmm10,%xmm10 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2 DB 196,227,109,24,214,1 ; vinsertf128 $0x1,%xmm6,%ymm2,%ymm2 DB 196,193,108,84,244 ; vandps %ymm12,%ymm2,%ymm6 DB 197,236,87,214 ; vxorps %ymm6,%ymm2,%ymm2 DB 196,227,125,25,215,1 ; vextractf128 $0x1,%ymm2,%xmm7 DB 196,193,64,87,235 ; vxorps %xmm11,%xmm7,%xmm5 DB 197,145,102,237 ; vpcmpgtd %xmm5,%xmm13,%xmm5 DB 196,193,104,87,227 ; vxorps %xmm11,%xmm2,%xmm4 DB 197,145,102,228 ; vpcmpgtd %xmm4,%xmm13,%xmm4 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4 DB 197,209,114,246,16 ; vpslld $0x10,%xmm6,%xmm5 DB 196,227,125,25,246,1 ; vextractf128 $0x1,%ymm6,%xmm6 DB 197,201,114,246,16 ; vpslld $0x10,%xmm6,%xmm6 DB 196,227,85,24,238,1 ; vinsertf128 $0x1,%xmm6,%ymm5,%ymm5 DB 197,233,114,242,13 ; vpslld $0xd,%xmm2,%xmm2 DB 197,201,114,247,13 ; vpslld $0xd,%xmm7,%xmm6 DB 196,227,109,24,214,1 ; vinsertf128 $0x1,%xmm6,%ymm2,%ymm2 DB 197,236,86,213 ; vorps %ymm5,%ymm2,%ymm2 DB 196,227,125,25,213,1 ; vextractf128 $0x1,%ymm2,%xmm5 DB 197,209,254,235 ; vpaddd %xmm3,%xmm5,%xmm5 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 196,227,109,24,213,1 ; vinsertf128 $0x1,%xmm5,%ymm2,%ymm2 DB 196,195,109,74,214,64 ; vblendvps %ymm4,%ymm14,%ymm2,%ymm2 DB 196,193,57,109,225 ; vpunpckhqdq %xmm9,%xmm8,%xmm4 DB 196,193,89,105,234 ; vpunpckhwd %xmm10,%xmm4,%xmm5 DB 196,226,121,51,228 ; vpmovzxwd %xmm4,%xmm4 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4 DB 196,193,92,84,236 ; vandps %ymm12,%ymm4,%ymm5 DB 197,220,87,229 ; vxorps %ymm5,%ymm4,%ymm4 DB 196,227,125,25,230,1 ; vextractf128 $0x1,%ymm4,%xmm6 DB 196,193,72,87,251 ; vxorps %xmm11,%xmm6,%xmm7 DB 197,17,102,199 ; vpcmpgtd %xmm7,%xmm13,%xmm8 DB 196,193,88,87,251 ; vxorps %xmm11,%xmm4,%xmm7 DB 197,145,102,255 ; vpcmpgtd %xmm7,%xmm13,%xmm7 DB 196,195,69,24,248,1 ; vinsertf128 $0x1,%xmm8,%ymm7,%ymm7 DB 197,185,114,245,16 ; vpslld $0x10,%xmm5,%xmm8 DB 196,227,125,25,237,1 ; vextractf128 $0x1,%ymm5,%xmm5 DB 197,209,114,245,16 ; vpslld $0x10,%xmm5,%xmm5 DB 196,227,61,24,237,1 ; vinsertf128 $0x1,%xmm5,%ymm8,%ymm5 DB 197,217,114,244,13 ; vpslld $0xd,%xmm4,%xmm4 DB 197,201,114,246,13 ; vpslld $0xd,%xmm6,%xmm6 DB 196,227,93,24,230,1 ; vinsertf128 $0x1,%xmm6,%ymm4,%ymm4 DB 197,220,86,229 ; vorps %ymm5,%ymm4,%ymm4 DB 196,227,125,25,229,1 ; vextractf128 $0x1,%ymm4,%xmm5 DB 197,209,254,235 ; vpaddd %xmm3,%xmm5,%xmm5 DB 197,217,254,219 ; vpaddd %xmm3,%xmm4,%xmm3 DB 196,227,101,24,221,1 ; vinsertf128 $0x1,%xmm5,%ymm3,%ymm3 DB 196,195,101,74,222,112 ; vblendvps %ymm7,%ymm14,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,16,36,36 ; vmovups (%rsp),%ymm4 DB 197,252,16,108,36,32 ; vmovups 0x20(%rsp),%ymm5 DB 197,252,16,116,36,64 ; vmovups 0x40(%rsp),%ymm6 DB 197,252,16,124,36,96 ; vmovups 0x60(%rsp),%ymm7 DB 72,129,196,152,0,0,0 ; add $0x98,%rsp DB 255,224 ; jmpq *%rax DB 197,123,16,4,248 ; vmovsd (%rax,%rdi,8),%xmm8 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9 DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,79 ; je 43ae <_sk_load_f16_avx+0x31a> DB 197,57,22,68,248,8 ; vmovhpd 0x8(%rax,%rdi,8),%xmm8,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,67 ; jb 43ae <_sk_load_f16_avx+0x31a> DB 197,251,16,84,248,16 ; vmovsd 0x10(%rax,%rdi,8),%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 116,68 ; je 43bb <_sk_load_f16_avx+0x327> DB 197,233,22,84,248,24 ; vmovhpd 0x18(%rax,%rdi,8),%xmm2,%xmm2 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,56 ; jb 43bb <_sk_load_f16_avx+0x327> DB 197,251,16,76,248,32 ; vmovsd 0x20(%rax,%rdi,8),%xmm1 DB 72,131,249,5 ; cmp $0x5,%rcx DB 15,132,68,253,255,255 ; je 40d7 <_sk_load_f16_avx+0x43> DB 197,241,22,76,248,40 ; vmovhpd 0x28(%rax,%rdi,8),%xmm1,%xmm1 DB 72,131,249,7 ; cmp $0x7,%rcx DB 15,130,52,253,255,255 ; jb 40d7 <_sk_load_f16_avx+0x43> DB 197,122,126,76,248,48 ; vmovq 0x30(%rax,%rdi,8),%xmm9 DB 233,41,253,255,255 ; jmpq 40d7 <_sk_load_f16_avx+0x43> DB 197,241,87,201 ; vxorpd %xmm1,%xmm1,%xmm1 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2 DB 233,28,253,255,255 ; jmpq 40d7 <_sk_load_f16_avx+0x43> DB 197,241,87,201 ; vxorpd %xmm1,%xmm1,%xmm1 DB 233,19,253,255,255 ; jmpq 40d7 <_sk_load_f16_avx+0x43> PUBLIC _sk_gather_f16_avx _sk_gather_f16_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,84 ; push %r12 DB 83 ; push %rbx DB 72,129,236,152,0,0,0 ; sub $0x98,%rsp DB 197,252,17,124,36,96 ; vmovups %ymm7,0x60(%rsp) DB 197,252,17,116,36,64 ; vmovups %ymm6,0x40(%rsp) DB 197,252,17,108,36,32 ; vmovups %ymm5,0x20(%rsp) DB 197,254,127,36,36 ; vmovdqu %ymm4,(%rsp) DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 197,254,91,209 ; vcvttps2dq %ymm1,%ymm2 DB 197,249,110,72,16 ; vmovd 0x10(%rax),%xmm1 DB 197,249,112,217,0 ; vpshufd $0x0,%xmm1,%xmm3 DB 196,226,97,64,202 ; vpmulld %xmm2,%xmm3,%xmm1 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 196,226,97,64,210 ; vpmulld %xmm2,%xmm3,%xmm2 DB 197,254,91,192 ; vcvttps2dq %ymm0,%ymm0 DB 196,227,125,25,195,1 ; vextractf128 $0x1,%ymm0,%xmm3 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 196,227,249,22,208,1 ; vpextrq $0x1,%xmm2,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 196,193,249,126,210 ; vmovq %xmm2,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 197,241,254,192 ; vpaddd %xmm0,%xmm1,%xmm0 DB 196,225,249,126,195 ; vmovq %xmm0,%rbx DB 65,137,222 ; mov %ebx,%r14d DB 196,195,249,22,199,1 ; vpextrq $0x1,%xmm0,%r15 DB 69,137,252 ; mov %r15d,%r12d DB 73,193,239,32 ; shr $0x20,%r15 DB 72,193,235,32 ; shr $0x20,%rbx DB 196,193,122,126,4,216 ; vmovq (%r8,%rbx,8),%xmm0 DB 196,129,122,126,12,240 ; vmovq (%r8,%r14,8),%xmm1 DB 197,113,108,200 ; vpunpcklqdq %xmm0,%xmm1,%xmm9 DB 196,129,122,126,12,248 ; vmovq (%r8,%r15,8),%xmm1 DB 196,129,122,126,20,224 ; vmovq (%r8,%r12,8),%xmm2 DB 197,233,108,201 ; vpunpcklqdq %xmm1,%xmm2,%xmm1 DB 196,129,122,126,20,208 ; vmovq (%r8,%r10,8),%xmm2 DB 196,129,122,126,28,216 ; vmovq (%r8,%r11,8),%xmm3 DB 197,97,108,210 ; vpunpcklqdq %xmm2,%xmm3,%xmm10 DB 196,65,122,126,4,192 ; vmovq (%r8,%rax,8),%xmm8 DB 196,129,122,126,28,200 ; vmovq (%r8,%r9,8),%xmm3 DB 196,193,97,108,216 ; vpunpcklqdq %xmm8,%xmm3,%xmm3 DB 197,177,97,193 ; vpunpcklwd %xmm1,%xmm9,%xmm0 DB 197,177,105,201 ; vpunpckhwd %xmm1,%xmm9,%xmm1 DB 197,169,97,211 ; vpunpcklwd %xmm3,%xmm10,%xmm2 DB 197,169,105,219 ; vpunpckhwd %xmm3,%xmm10,%xmm3 DB 197,121,97,249 ; vpunpcklwd %xmm1,%xmm0,%xmm15 DB 197,121,105,193 ; vpunpckhwd %xmm1,%xmm0,%xmm8 DB 197,233,97,203 ; vpunpcklwd %xmm3,%xmm2,%xmm1 DB 197,105,105,203 ; vpunpckhwd %xmm3,%xmm2,%xmm9 DB 197,129,108,193 ; vpunpcklqdq %xmm1,%xmm15,%xmm0 DB 197,233,239,210 ; vpxor %xmm2,%xmm2,%xmm2 DB 197,249,105,210 ; vpunpckhwd %xmm2,%xmm0,%xmm2 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,227,125,24,194,1 ; vinsertf128 $0x1,%xmm2,%ymm0,%ymm0 DB 196,98,125,24,37,11,25,0,0 ; vbroadcastss 0x190b(%rip),%ymm12 # 5ddc <_sk_callback_avx+0x1f2> DB 196,193,124,84,212 ; vandps %ymm12,%ymm0,%ymm2 DB 197,252,87,194 ; vxorps %ymm2,%ymm0,%ymm0 DB 196,195,125,25,198,1 ; vextractf128 $0x1,%ymm0,%xmm14 DB 196,98,121,24,29,247,24,0,0 ; vbroadcastss 0x18f7(%rip),%xmm11 # 5de0 <_sk_callback_avx+0x1f6> DB 196,193,8,87,219 ; vxorps %xmm11,%xmm14,%xmm3 DB 196,98,121,24,45,237,24,0,0 ; vbroadcastss 0x18ed(%rip),%xmm13 # 5de4 <_sk_callback_avx+0x1fa> DB 197,145,102,219 ; vpcmpgtd %xmm3,%xmm13,%xmm3 DB 196,65,120,87,211 ; vxorps %xmm11,%xmm0,%xmm10 DB 196,65,17,102,210 ; vpcmpgtd %xmm10,%xmm13,%xmm10 DB 196,99,45,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm10,%ymm10 DB 197,225,114,242,16 ; vpslld $0x10,%xmm2,%xmm3 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 197,233,114,242,16 ; vpslld $0x10,%xmm2,%xmm2 DB 196,227,101,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm3,%ymm2 DB 197,249,114,240,13 ; vpslld $0xd,%xmm0,%xmm0 DB 196,193,97,114,246,13 ; vpslld $0xd,%xmm14,%xmm3 DB 196,227,125,24,195,1 ; vinsertf128 $0x1,%xmm3,%ymm0,%ymm0 DB 197,252,86,194 ; vorps %ymm2,%ymm0,%ymm0 DB 196,227,125,25,194,1 ; vextractf128 $0x1,%ymm0,%xmm2 DB 196,226,121,24,29,163,24,0,0 ; vbroadcastss 0x18a3(%rip),%xmm3 # 5de8 <_sk_callback_avx+0x1fe> DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 197,249,254,195 ; vpaddd %xmm3,%xmm0,%xmm0 DB 196,227,125,24,194,1 ; vinsertf128 $0x1,%xmm2,%ymm0,%ymm0 DB 196,65,12,87,246 ; vxorps %ymm14,%ymm14,%ymm14 DB 196,195,125,74,198,160 ; vblendvps %ymm10,%ymm14,%ymm0,%ymm0 DB 197,129,109,201 ; vpunpckhqdq %xmm1,%xmm15,%xmm1 DB 197,217,239,228 ; vpxor %xmm4,%xmm4,%xmm4 DB 197,241,105,212 ; vpunpckhwd %xmm4,%xmm1,%xmm2 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 196,193,116,84,212 ; vandps %ymm12,%ymm1,%ymm2 DB 197,244,87,202 ; vxorps %ymm2,%ymm1,%ymm1 DB 196,195,125,25,202,1 ; vextractf128 $0x1,%ymm1,%xmm10 DB 196,193,40,87,251 ; vxorps %xmm11,%xmm10,%xmm7 DB 197,145,102,255 ; vpcmpgtd %xmm7,%xmm13,%xmm7 DB 196,193,112,87,243 ; vxorps %xmm11,%xmm1,%xmm6 DB 197,145,102,246 ; vpcmpgtd %xmm6,%xmm13,%xmm6 DB 196,227,77,24,247,1 ; vinsertf128 $0x1,%xmm7,%ymm6,%ymm6 DB 197,193,114,242,16 ; vpslld $0x10,%xmm2,%xmm7 DB 196,227,125,25,210,1 ; vextractf128 $0x1,%ymm2,%xmm2 DB 197,233,114,242,16 ; vpslld $0x10,%xmm2,%xmm2 DB 196,227,69,24,210,1 ; vinsertf128 $0x1,%xmm2,%ymm7,%ymm2 DB 197,241,114,241,13 ; vpslld $0xd,%xmm1,%xmm1 DB 196,193,65,114,242,13 ; vpslld $0xd,%xmm10,%xmm7 DB 196,227,117,24,207,1 ; vinsertf128 $0x1,%xmm7,%ymm1,%ymm1 DB 197,244,86,202 ; vorps %ymm2,%ymm1,%ymm1 DB 196,227,125,25,202,1 ; vextractf128 $0x1,%ymm1,%xmm2 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 197,241,254,203 ; vpaddd %xmm3,%xmm1,%xmm1 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 196,195,117,74,206,96 ; vblendvps %ymm6,%ymm14,%ymm1,%ymm1 DB 196,193,57,108,209 ; vpunpcklqdq %xmm9,%xmm8,%xmm2 DB 197,233,105,244 ; vpunpckhwd %xmm4,%xmm2,%xmm6 DB 196,65,41,239,210 ; vpxor %xmm10,%xmm10,%xmm10 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2 DB 196,227,109,24,214,1 ; vinsertf128 $0x1,%xmm6,%ymm2,%ymm2 DB 196,193,108,84,244 ; vandps %ymm12,%ymm2,%ymm6 DB 197,236,87,214 ; vxorps %ymm6,%ymm2,%ymm2 DB 196,227,125,25,215,1 ; vextractf128 $0x1,%ymm2,%xmm7 DB 196,193,64,87,235 ; vxorps %xmm11,%xmm7,%xmm5 DB 197,145,102,237 ; vpcmpgtd %xmm5,%xmm13,%xmm5 DB 196,193,104,87,227 ; vxorps %xmm11,%xmm2,%xmm4 DB 197,145,102,228 ; vpcmpgtd %xmm4,%xmm13,%xmm4 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4 DB 197,209,114,246,16 ; vpslld $0x10,%xmm6,%xmm5 DB 196,227,125,25,246,1 ; vextractf128 $0x1,%ymm6,%xmm6 DB 197,201,114,246,16 ; vpslld $0x10,%xmm6,%xmm6 DB 196,227,85,24,238,1 ; vinsertf128 $0x1,%xmm6,%ymm5,%ymm5 DB 197,233,114,242,13 ; vpslld $0xd,%xmm2,%xmm2 DB 197,201,114,247,13 ; vpslld $0xd,%xmm7,%xmm6 DB 196,227,109,24,214,1 ; vinsertf128 $0x1,%xmm6,%ymm2,%ymm2 DB 197,236,86,213 ; vorps %ymm5,%ymm2,%ymm2 DB 196,227,125,25,213,1 ; vextractf128 $0x1,%ymm2,%xmm5 DB 197,209,254,235 ; vpaddd %xmm3,%xmm5,%xmm5 DB 197,233,254,211 ; vpaddd %xmm3,%xmm2,%xmm2 DB 196,227,109,24,213,1 ; vinsertf128 $0x1,%xmm5,%ymm2,%ymm2 DB 196,195,109,74,214,64 ; vblendvps %ymm4,%ymm14,%ymm2,%ymm2 DB 196,193,57,109,225 ; vpunpckhqdq %xmm9,%xmm8,%xmm4 DB 196,193,89,105,234 ; vpunpckhwd %xmm10,%xmm4,%xmm5 DB 196,226,121,51,228 ; vpmovzxwd %xmm4,%xmm4 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4 DB 196,193,92,84,236 ; vandps %ymm12,%ymm4,%ymm5 DB 197,220,87,229 ; vxorps %ymm5,%ymm4,%ymm4 DB 196,227,125,25,230,1 ; vextractf128 $0x1,%ymm4,%xmm6 DB 196,193,72,87,251 ; vxorps %xmm11,%xmm6,%xmm7 DB 197,17,102,199 ; vpcmpgtd %xmm7,%xmm13,%xmm8 DB 196,193,88,87,251 ; vxorps %xmm11,%xmm4,%xmm7 DB 197,145,102,255 ; vpcmpgtd %xmm7,%xmm13,%xmm7 DB 196,195,69,24,248,1 ; vinsertf128 $0x1,%xmm8,%ymm7,%ymm7 DB 197,185,114,245,16 ; vpslld $0x10,%xmm5,%xmm8 DB 196,227,125,25,237,1 ; vextractf128 $0x1,%ymm5,%xmm5 DB 197,209,114,245,16 ; vpslld $0x10,%xmm5,%xmm5 DB 196,227,61,24,237,1 ; vinsertf128 $0x1,%xmm5,%ymm8,%ymm5 DB 197,217,114,244,13 ; vpslld $0xd,%xmm4,%xmm4 DB 197,201,114,246,13 ; vpslld $0xd,%xmm6,%xmm6 DB 196,227,93,24,230,1 ; vinsertf128 $0x1,%xmm6,%ymm4,%ymm4 DB 197,220,86,229 ; vorps %ymm5,%ymm4,%ymm4 DB 196,227,125,25,229,1 ; vextractf128 $0x1,%ymm4,%xmm5 DB 197,209,254,235 ; vpaddd %xmm3,%xmm5,%xmm5 DB 197,217,254,219 ; vpaddd %xmm3,%xmm4,%xmm3 DB 196,227,101,24,221,1 ; vinsertf128 $0x1,%xmm5,%ymm3,%ymm3 DB 196,195,101,74,222,112 ; vblendvps %ymm7,%ymm14,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,16,36,36 ; vmovups (%rsp),%ymm4 DB 197,252,16,108,36,32 ; vmovups 0x20(%rsp),%ymm5 DB 197,252,16,116,36,64 ; vmovups 0x40(%rsp),%ymm6 DB 197,252,16,124,36,96 ; vmovups 0x60(%rsp),%ymm7 DB 72,129,196,152,0,0,0 ; add $0x98,%rsp DB 91 ; pop %rbx DB 65,92 ; pop %r12 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax PUBLIC _sk_store_f16_avx _sk_store_f16_avx LABEL PROC DB 72,129,236,216,0,0,0 ; sub $0xd8,%rsp DB 197,252,17,188,36,160,0,0,0 ; vmovups %ymm7,0xa0(%rsp) DB 197,252,17,180,36,128,0,0,0 ; vmovups %ymm6,0x80(%rsp) DB 197,252,17,108,36,96 ; vmovups %ymm5,0x60(%rsp) DB 197,252,17,100,36,64 ; vmovups %ymm4,0x40(%rsp) DB 196,98,125,24,13,176,22,0,0 ; vbroadcastss 0x16b0(%rip),%ymm9 # 5dec <_sk_callback_avx+0x202> DB 196,65,124,84,209 ; vandps %ymm9,%ymm0,%ymm10 DB 197,252,17,4,36 ; vmovups %ymm0,(%rsp) DB 196,65,124,87,218 ; vxorps %ymm10,%ymm0,%ymm11 DB 196,67,125,25,220,1 ; vextractf128 $0x1,%ymm11,%xmm12 DB 196,98,121,24,5,150,22,0,0 ; vbroadcastss 0x1696(%rip),%xmm8 # 5df0 <_sk_callback_avx+0x206> DB 196,65,57,102,236 ; vpcmpgtd %xmm12,%xmm8,%xmm13 DB 196,65,57,102,243 ; vpcmpgtd %xmm11,%xmm8,%xmm14 DB 196,67,13,24,237,1 ; vinsertf128 $0x1,%xmm13,%ymm14,%ymm13 DB 196,193,9,114,210,16 ; vpsrld $0x10,%xmm10,%xmm14 DB 196,67,125,25,210,1 ; vextractf128 $0x1,%ymm10,%xmm10 DB 196,193,41,114,210,16 ; vpsrld $0x10,%xmm10,%xmm10 DB 196,67,13,24,242,1 ; vinsertf128 $0x1,%xmm10,%ymm14,%ymm14 DB 196,193,33,114,211,13 ; vpsrld $0xd,%xmm11,%xmm11 DB 196,193,25,114,212,13 ; vpsrld $0xd,%xmm12,%xmm12 DB 196,98,125,24,21,93,22,0,0 ; vbroadcastss 0x165d(%rip),%ymm10 # 5df4 <_sk_callback_avx+0x20a> DB 196,65,12,86,242 ; vorps %ymm10,%ymm14,%ymm14 DB 196,67,125,25,247,1 ; vextractf128 $0x1,%ymm14,%xmm15 DB 196,65,1,254,228 ; vpaddd %xmm12,%xmm15,%xmm12 DB 196,65,9,254,219 ; vpaddd %xmm11,%xmm14,%xmm11 DB 196,67,37,24,228,1 ; vinsertf128 $0x1,%xmm12,%ymm11,%ymm12 DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 196,99,29,74,224,208 ; vblendvps %ymm13,%ymm0,%ymm12,%ymm12 DB 196,65,116,84,233 ; vandps %ymm9,%ymm1,%ymm13 DB 197,252,17,76,36,32 ; vmovups %ymm1,0x20(%rsp) DB 196,65,116,87,245 ; vxorps %ymm13,%ymm1,%ymm14 DB 196,67,125,25,247,1 ; vextractf128 $0x1,%ymm14,%xmm15 DB 196,193,57,102,255 ; vpcmpgtd %xmm15,%xmm8,%xmm7 DB 196,65,57,102,222 ; vpcmpgtd %xmm14,%xmm8,%xmm11 DB 196,227,37,24,255,1 ; vinsertf128 $0x1,%xmm7,%ymm11,%ymm7 DB 196,193,33,114,213,16 ; vpsrld $0x10,%xmm13,%xmm11 DB 196,99,125,25,238,1 ; vextractf128 $0x1,%ymm13,%xmm6 DB 197,201,114,214,16 ; vpsrld $0x10,%xmm6,%xmm6 DB 196,227,37,24,246,1 ; vinsertf128 $0x1,%xmm6,%ymm11,%ymm6 DB 196,193,33,114,215,13 ; vpsrld $0xd,%xmm15,%xmm11 DB 196,193,76,86,242 ; vorps %ymm10,%ymm6,%ymm6 DB 196,227,125,25,245,1 ; vextractf128 $0x1,%ymm6,%xmm5 DB 196,193,81,254,235 ; vpaddd %xmm11,%xmm5,%xmm5 DB 196,193,89,114,214,13 ; vpsrld $0xd,%xmm14,%xmm4 DB 197,201,254,228 ; vpaddd %xmm4,%xmm6,%xmm4 DB 196,227,93,24,229,1 ; vinsertf128 $0x1,%xmm5,%ymm4,%ymm4 DB 196,99,93,74,232,112 ; vblendvps %ymm7,%ymm0,%ymm4,%ymm13 DB 196,193,108,84,225 ; vandps %ymm9,%ymm2,%ymm4 DB 197,236,87,236 ; vxorps %ymm4,%ymm2,%ymm5 DB 196,227,125,25,238,1 ; vextractf128 $0x1,%ymm5,%xmm6 DB 197,185,102,254 ; vpcmpgtd %xmm6,%xmm8,%xmm7 DB 197,57,102,221 ; vpcmpgtd %xmm5,%xmm8,%xmm11 DB 196,227,37,24,255,1 ; vinsertf128 $0x1,%xmm7,%ymm11,%ymm7 DB 197,161,114,212,16 ; vpsrld $0x10,%xmm4,%xmm11 DB 196,227,125,25,228,1 ; vextractf128 $0x1,%ymm4,%xmm4 DB 197,217,114,212,16 ; vpsrld $0x10,%xmm4,%xmm4 DB 196,227,37,24,228,1 ; vinsertf128 $0x1,%xmm4,%ymm11,%ymm4 DB 197,201,114,214,13 ; vpsrld $0xd,%xmm6,%xmm6 DB 196,193,92,86,226 ; vorps %ymm10,%ymm4,%ymm4 DB 196,227,125,25,225,1 ; vextractf128 $0x1,%ymm4,%xmm1 DB 197,241,254,206 ; vpaddd %xmm6,%xmm1,%xmm1 DB 197,209,114,213,13 ; vpsrld $0xd,%xmm5,%xmm5 DB 197,217,254,229 ; vpaddd %xmm5,%xmm4,%xmm4 DB 196,227,93,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm4,%ymm1 DB 196,99,117,74,216,112 ; vblendvps %ymm7,%ymm0,%ymm1,%ymm11 DB 196,193,100,84,225 ; vandps %ymm9,%ymm3,%ymm4 DB 197,228,87,236 ; vxorps %ymm4,%ymm3,%ymm5 DB 196,227,125,25,238,1 ; vextractf128 $0x1,%ymm5,%xmm6 DB 197,185,102,254 ; vpcmpgtd %xmm6,%xmm8,%xmm7 DB 197,57,102,197 ; vpcmpgtd %xmm5,%xmm8,%xmm8 DB 196,227,61,24,255,1 ; vinsertf128 $0x1,%xmm7,%ymm8,%ymm7 DB 197,185,114,212,16 ; vpsrld $0x10,%xmm4,%xmm8 DB 196,227,125,25,228,1 ; vextractf128 $0x1,%ymm4,%xmm4 DB 197,217,114,212,16 ; vpsrld $0x10,%xmm4,%xmm4 DB 196,227,61,24,228,1 ; vinsertf128 $0x1,%xmm4,%ymm8,%ymm4 DB 196,193,92,86,226 ; vorps %ymm10,%ymm4,%ymm4 DB 197,201,114,214,13 ; vpsrld $0xd,%xmm6,%xmm6 DB 196,227,125,25,225,1 ; vextractf128 $0x1,%ymm4,%xmm1 DB 197,241,254,206 ; vpaddd %xmm6,%xmm1,%xmm1 DB 197,209,114,213,13 ; vpsrld $0xd,%xmm5,%xmm5 DB 197,217,254,229 ; vpaddd %xmm5,%xmm4,%xmm4 DB 196,227,93,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm4,%ymm1 DB 196,227,117,74,200,112 ; vblendvps %ymm7,%ymm0,%ymm1,%ymm1 DB 196,99,125,25,224,1 ; vextractf128 $0x1,%ymm12,%xmm0 DB 196,226,25,43,192 ; vpackusdw %xmm0,%xmm12,%xmm0 DB 196,99,125,25,236,1 ; vextractf128 $0x1,%ymm13,%xmm4 DB 196,226,17,43,228 ; vpackusdw %xmm4,%xmm13,%xmm4 DB 196,99,125,25,221,1 ; vextractf128 $0x1,%ymm11,%xmm5 DB 196,226,33,43,245 ; vpackusdw %xmm5,%xmm11,%xmm6 DB 196,227,125,25,205,1 ; vextractf128 $0x1,%ymm1,%xmm5 DB 196,226,113,43,205 ; vpackusdw %xmm5,%xmm1,%xmm1 DB 197,249,97,236 ; vpunpcklwd %xmm4,%xmm0,%xmm5 DB 197,249,105,196 ; vpunpckhwd %xmm4,%xmm0,%xmm0 DB 197,201,97,225 ; vpunpcklwd %xmm1,%xmm6,%xmm4 DB 197,201,105,201 ; vpunpckhwd %xmm1,%xmm6,%xmm1 DB 197,81,98,220 ; vpunpckldq %xmm4,%xmm5,%xmm11 DB 197,81,106,212 ; vpunpckhdq %xmm4,%xmm5,%xmm10 DB 197,121,98,201 ; vpunpckldq %xmm1,%xmm0,%xmm9 DB 197,121,106,193 ; vpunpckhdq %xmm1,%xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,133,201 ; test %rcx,%rcx DB 117,75 ; jne 497e <_sk_store_f16_avx+0x270> DB 197,120,17,28,248 ; vmovups %xmm11,(%rax,%rdi,8) DB 197,120,17,84,248,16 ; vmovups %xmm10,0x10(%rax,%rdi,8) DB 197,120,17,76,248,32 ; vmovups %xmm9,0x20(%rax,%rdi,8) DB 197,122,127,68,248,48 ; vmovdqu %xmm8,0x30(%rax,%rdi,8) DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,16,4,36 ; vmovups (%rsp),%ymm0 DB 197,252,16,76,36,32 ; vmovups 0x20(%rsp),%ymm1 DB 197,252,16,100,36,64 ; vmovups 0x40(%rsp),%ymm4 DB 197,252,16,108,36,96 ; vmovups 0x60(%rsp),%ymm5 DB 197,252,16,180,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm6 DB 197,252,16,188,36,160,0,0,0 ; vmovups 0xa0(%rsp),%ymm7 DB 72,129,196,216,0,0,0 ; add $0xd8,%rsp DB 255,224 ; jmpq *%rax DB 197,121,214,28,248 ; vmovq %xmm11,(%rax,%rdi,8) DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,193 ; je 494a <_sk_store_f16_avx+0x23c> DB 197,121,23,92,248,8 ; vmovhpd %xmm11,0x8(%rax,%rdi,8) DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,181 ; jb 494a <_sk_store_f16_avx+0x23c> DB 197,121,214,84,248,16 ; vmovq %xmm10,0x10(%rax,%rdi,8) DB 116,173 ; je 494a <_sk_store_f16_avx+0x23c> DB 197,121,23,84,248,24 ; vmovhpd %xmm10,0x18(%rax,%rdi,8) DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,161 ; jb 494a <_sk_store_f16_avx+0x23c> DB 197,121,214,76,248,32 ; vmovq %xmm9,0x20(%rax,%rdi,8) DB 116,153 ; je 494a <_sk_store_f16_avx+0x23c> DB 197,121,23,76,248,40 ; vmovhpd %xmm9,0x28(%rax,%rdi,8) DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,141 ; jb 494a <_sk_store_f16_avx+0x23c> DB 197,121,214,68,248,48 ; vmovq %xmm8,0x30(%rax,%rdi,8) DB 235,133 ; jmp 494a <_sk_store_f16_avx+0x23c> PUBLIC _sk_load_u16_be_avx _sk_load_u16_be_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax DB 72,133,201 ; test %rcx,%rcx DB 15,133,5,1,0,0 ; jne 4ae0 <_sk_load_u16_be_avx+0x11b> DB 196,65,121,16,4,64 ; vmovupd (%r8,%rax,2),%xmm8 DB 196,193,121,16,84,64,16 ; vmovupd 0x10(%r8,%rax,2),%xmm2 DB 196,193,121,16,92,64,32 ; vmovupd 0x20(%r8,%rax,2),%xmm3 DB 196,65,122,111,76,64,48 ; vmovdqu 0x30(%r8,%rax,2),%xmm9 DB 197,185,97,194 ; vpunpcklwd %xmm2,%xmm8,%xmm0 DB 197,185,105,210 ; vpunpckhwd %xmm2,%xmm8,%xmm2 DB 196,193,97,97,201 ; vpunpcklwd %xmm9,%xmm3,%xmm1 DB 196,193,97,105,217 ; vpunpckhwd %xmm9,%xmm3,%xmm3 DB 197,121,97,210 ; vpunpcklwd %xmm2,%xmm0,%xmm10 DB 197,121,105,194 ; vpunpckhwd %xmm2,%xmm0,%xmm8 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,113,105,203 ; vpunpckhwd %xmm3,%xmm1,%xmm9 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,99,125,24,224,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm12 DB 197,169,108,194 ; vpunpcklqdq %xmm2,%xmm10,%xmm0 DB 197,241,113,240,8 ; vpsllw $0x8,%xmm0,%xmm1 DB 197,249,113,208,8 ; vpsrlw $0x8,%xmm0,%xmm0 DB 197,241,235,192 ; vpor %xmm0,%xmm1,%xmm0 DB 196,65,33,239,219 ; vpxor %xmm11,%xmm11,%xmm11 DB 196,193,121,105,203 ; vpunpckhwd %xmm11,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 197,156,89,192 ; vmulps %ymm0,%ymm12,%ymm0 DB 197,169,109,202 ; vpunpckhqdq %xmm2,%xmm10,%xmm1 DB 197,233,113,241,8 ; vpsllw $0x8,%xmm1,%xmm2 DB 197,241,113,209,8 ; vpsrlw $0x8,%xmm1,%xmm1 DB 197,233,235,201 ; vpor %xmm1,%xmm2,%xmm1 DB 196,193,113,105,211 ; vpunpckhwd %xmm11,%xmm1,%xmm2 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 197,156,89,201 ; vmulps %ymm1,%ymm12,%ymm1 DB 196,193,57,108,209 ; vpunpcklqdq %xmm9,%xmm8,%xmm2 DB 197,169,113,242,8 ; vpsllw $0x8,%xmm2,%xmm10 DB 197,233,113,210,8 ; vpsrlw $0x8,%xmm2,%xmm2 DB 197,169,235,210 ; vpor %xmm2,%xmm10,%xmm2 DB 196,65,105,105,211 ; vpunpckhwd %xmm11,%xmm2,%xmm10 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2 DB 196,195,109,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,156,89,210 ; vmulps %ymm2,%ymm12,%ymm2 DB 196,193,57,109,217 ; vpunpckhqdq %xmm9,%xmm8,%xmm3 DB 197,185,113,243,8 ; vpsllw $0x8,%xmm3,%xmm8 DB 197,225,113,211,8 ; vpsrlw $0x8,%xmm3,%xmm3 DB 197,185,235,219 ; vpor %xmm3,%xmm8,%xmm3 DB 196,65,97,105,195 ; vpunpckhwd %xmm11,%xmm3,%xmm8 DB 196,226,121,51,219 ; vpmovzxwd %xmm3,%xmm3 DB 196,195,101,24,216,1 ; vinsertf128 $0x1,%xmm8,%ymm3,%ymm3 DB 197,252,91,219 ; vcvtdq2ps %ymm3,%ymm3 DB 197,156,89,219 ; vmulps %ymm3,%ymm12,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,65,123,16,4,64 ; vmovsd (%r8,%rax,2),%xmm8 DB 196,65,49,239,201 ; vpxor %xmm9,%xmm9,%xmm9 DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,85 ; je 4b46 <_sk_load_u16_be_avx+0x181> DB 196,65,57,22,68,64,8 ; vmovhpd 0x8(%r8,%rax,2),%xmm8,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,72 ; jb 4b46 <_sk_load_u16_be_avx+0x181> DB 196,193,123,16,84,64,16 ; vmovsd 0x10(%r8,%rax,2),%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 116,72 ; je 4b53 <_sk_load_u16_be_avx+0x18e> DB 196,193,105,22,84,64,24 ; vmovhpd 0x18(%r8,%rax,2),%xmm2,%xmm2 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,59 ; jb 4b53 <_sk_load_u16_be_avx+0x18e> DB 196,193,123,16,92,64,32 ; vmovsd 0x20(%r8,%rax,2),%xmm3 DB 72,131,249,5 ; cmp $0x5,%rcx DB 15,132,205,254,255,255 ; je 49f6 <_sk_load_u16_be_avx+0x31> DB 196,193,97,22,92,64,40 ; vmovhpd 0x28(%r8,%rax,2),%xmm3,%xmm3 DB 72,131,249,7 ; cmp $0x7,%rcx DB 15,130,188,254,255,255 ; jb 49f6 <_sk_load_u16_be_avx+0x31> DB 196,65,122,126,76,64,48 ; vmovq 0x30(%r8,%rax,2),%xmm9 DB 233,176,254,255,255 ; jmpq 49f6 <_sk_load_u16_be_avx+0x31> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 197,233,87,210 ; vxorpd %xmm2,%xmm2,%xmm2 DB 233,163,254,255,255 ; jmpq 49f6 <_sk_load_u16_be_avx+0x31> DB 197,225,87,219 ; vxorpd %xmm3,%xmm3,%xmm3 DB 233,154,254,255,255 ; jmpq 49f6 <_sk_load_u16_be_avx+0x31> PUBLIC _sk_load_rgb_u16_be_avx _sk_load_rgb_u16_be_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 72,141,4,127 ; lea (%rdi,%rdi,2),%rax DB 72,133,201 ; test %rcx,%rcx DB 15,133,8,1,0,0 ; jne 4c76 <_sk_load_rgb_u16_be_avx+0x11a> DB 196,193,122,111,4,64 ; vmovdqu (%r8,%rax,2),%xmm0 DB 196,193,122,111,84,64,12 ; vmovdqu 0xc(%r8,%rax,2),%xmm2 DB 196,193,122,111,76,64,24 ; vmovdqu 0x18(%r8,%rax,2),%xmm1 DB 196,193,122,111,92,64,32 ; vmovdqu 0x20(%r8,%rax,2),%xmm3 DB 197,225,115,219,4 ; vpsrldq $0x4,%xmm3,%xmm3 DB 197,185,115,216,6 ; vpsrldq $0x6,%xmm0,%xmm8 DB 197,177,115,218,6 ; vpsrldq $0x6,%xmm2,%xmm9 DB 197,161,115,217,6 ; vpsrldq $0x6,%xmm1,%xmm11 DB 197,169,115,219,6 ; vpsrldq $0x6,%xmm3,%xmm10 DB 197,249,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm0 DB 196,193,57,97,209 ; vpunpcklwd %xmm9,%xmm8,%xmm2 DB 197,241,97,203 ; vpunpcklwd %xmm3,%xmm1,%xmm1 DB 196,193,33,97,218 ; vpunpcklwd %xmm10,%xmm11,%xmm3 DB 197,121,97,194 ; vpunpcklwd %xmm2,%xmm0,%xmm8 DB 197,121,105,202 ; vpunpckhwd %xmm2,%xmm0,%xmm9 DB 197,241,97,211 ; vpunpcklwd %xmm3,%xmm1,%xmm2 DB 197,113,105,219 ; vpunpckhwd %xmm3,%xmm1,%xmm11 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 197,249,110,192 ; vmovd %eax,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,99,125,24,208,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm10 DB 197,185,108,194 ; vpunpcklqdq %xmm2,%xmm8,%xmm0 DB 197,241,113,240,8 ; vpsllw $0x8,%xmm0,%xmm1 DB 197,249,113,208,8 ; vpsrlw $0x8,%xmm0,%xmm0 DB 197,241,235,192 ; vpor %xmm0,%xmm1,%xmm0 DB 196,65,25,239,228 ; vpxor %xmm12,%xmm12,%xmm12 DB 196,193,121,105,204 ; vpunpckhwd %xmm12,%xmm0,%xmm1 DB 196,226,121,51,192 ; vpmovzxwd %xmm0,%xmm0 DB 196,227,125,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm0,%ymm0 DB 197,252,91,192 ; vcvtdq2ps %ymm0,%ymm0 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0 DB 197,185,109,202 ; vpunpckhqdq %xmm2,%xmm8,%xmm1 DB 197,233,113,241,8 ; vpsllw $0x8,%xmm1,%xmm2 DB 197,241,113,209,8 ; vpsrlw $0x8,%xmm1,%xmm1 DB 197,233,235,201 ; vpor %xmm1,%xmm2,%xmm1 DB 196,193,113,105,212 ; vpunpckhwd %xmm12,%xmm1,%xmm2 DB 196,226,121,51,201 ; vpmovzxwd %xmm1,%xmm1 DB 196,227,117,24,202,1 ; vinsertf128 $0x1,%xmm2,%ymm1,%ymm1 DB 197,252,91,201 ; vcvtdq2ps %ymm1,%ymm1 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1 DB 196,193,49,108,211 ; vpunpcklqdq %xmm11,%xmm9,%xmm2 DB 197,225,113,242,8 ; vpsllw $0x8,%xmm2,%xmm3 DB 197,233,113,210,8 ; vpsrlw $0x8,%xmm2,%xmm2 DB 197,225,235,210 ; vpor %xmm2,%xmm3,%xmm2 DB 196,193,105,105,220 ; vpunpckhwd %xmm12,%xmm2,%xmm3 DB 196,226,121,51,210 ; vpmovzxwd %xmm2,%xmm2 DB 196,227,109,24,211,1 ; vinsertf128 $0x1,%xmm3,%ymm2,%ymm2 DB 197,252,91,210 ; vcvtdq2ps %ymm2,%ymm2 DB 197,172,89,210 ; vmulps %ymm2,%ymm10,%ymm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,193,121,110,4,64 ; vmovd (%r8,%rax,2),%xmm0 DB 196,193,121,196,68,64,4,2 ; vpinsrw $0x2,0x4(%r8,%rax,2),%xmm0,%xmm0 DB 72,131,249,1 ; cmp $0x1,%rcx DB 117,5 ; jne 4c8f <_sk_load_rgb_u16_be_avx+0x133> DB 233,19,255,255,255 ; jmpq 4ba2 <_sk_load_rgb_u16_be_avx+0x46> DB 196,193,121,110,76,64,6 ; vmovd 0x6(%r8,%rax,2),%xmm1 DB 196,65,113,196,68,64,10,2 ; vpinsrw $0x2,0xa(%r8,%rax,2),%xmm1,%xmm8 DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,26 ; jb 4cbe <_sk_load_rgb_u16_be_avx+0x162> DB 196,193,121,110,76,64,12 ; vmovd 0xc(%r8,%rax,2),%xmm1 DB 196,193,113,196,84,64,16,2 ; vpinsrw $0x2,0x10(%r8,%rax,2),%xmm1,%xmm2 DB 72,131,249,3 ; cmp $0x3,%rcx DB 117,10 ; jne 4cc3 <_sk_load_rgb_u16_be_avx+0x167> DB 233,228,254,255,255 ; jmpq 4ba2 <_sk_load_rgb_u16_be_avx+0x46> DB 233,223,254,255,255 ; jmpq 4ba2 <_sk_load_rgb_u16_be_avx+0x46> DB 196,193,121,110,76,64,18 ; vmovd 0x12(%r8,%rax,2),%xmm1 DB 196,65,113,196,76,64,22,2 ; vpinsrw $0x2,0x16(%r8,%rax,2),%xmm1,%xmm9 DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,26 ; jb 4cf2 <_sk_load_rgb_u16_be_avx+0x196> DB 196,193,121,110,76,64,24 ; vmovd 0x18(%r8,%rax,2),%xmm1 DB 196,193,113,196,76,64,28,2 ; vpinsrw $0x2,0x1c(%r8,%rax,2),%xmm1,%xmm1 DB 72,131,249,5 ; cmp $0x5,%rcx DB 117,10 ; jne 4cf7 <_sk_load_rgb_u16_be_avx+0x19b> DB 233,176,254,255,255 ; jmpq 4ba2 <_sk_load_rgb_u16_be_avx+0x46> DB 233,171,254,255,255 ; jmpq 4ba2 <_sk_load_rgb_u16_be_avx+0x46> DB 196,193,121,110,92,64,30 ; vmovd 0x1e(%r8,%rax,2),%xmm3 DB 196,65,97,196,92,64,34,2 ; vpinsrw $0x2,0x22(%r8,%rax,2),%xmm3,%xmm11 DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,20 ; jb 4d20 <_sk_load_rgb_u16_be_avx+0x1c4> DB 196,193,121,110,92,64,36 ; vmovd 0x24(%r8,%rax,2),%xmm3 DB 196,193,97,196,92,64,40,2 ; vpinsrw $0x2,0x28(%r8,%rax,2),%xmm3,%xmm3 DB 233,130,254,255,255 ; jmpq 4ba2 <_sk_load_rgb_u16_be_avx+0x46> DB 233,125,254,255,255 ; jmpq 4ba2 <_sk_load_rgb_u16_be_avx+0x46> PUBLIC _sk_store_u16_be_avx _sk_store_u16_be_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 184,0,255,127,71 ; mov $0x477fff00,%eax DB 197,121,110,192 ; vmovd %eax,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 196,65,125,91,201 ; vcvtps2dq %ymm9,%ymm9 DB 196,67,125,25,202,1 ; vextractf128 $0x1,%ymm9,%xmm10 DB 196,66,49,43,202 ; vpackusdw %xmm10,%xmm9,%xmm9 DB 196,193,41,113,241,8 ; vpsllw $0x8,%xmm9,%xmm10 DB 196,193,49,113,209,8 ; vpsrlw $0x8,%xmm9,%xmm9 DB 196,65,41,235,201 ; vpor %xmm9,%xmm10,%xmm9 DB 197,60,89,209 ; vmulps %ymm1,%ymm8,%ymm10 DB 196,65,125,91,210 ; vcvtps2dq %ymm10,%ymm10 DB 196,67,125,25,211,1 ; vextractf128 $0x1,%ymm10,%xmm11 DB 196,66,41,43,211 ; vpackusdw %xmm11,%xmm10,%xmm10 DB 196,193,33,113,242,8 ; vpsllw $0x8,%xmm10,%xmm11 DB 196,193,41,113,210,8 ; vpsrlw $0x8,%xmm10,%xmm10 DB 196,65,33,235,210 ; vpor %xmm10,%xmm11,%xmm10 DB 197,60,89,218 ; vmulps %ymm2,%ymm8,%ymm11 DB 196,65,125,91,219 ; vcvtps2dq %ymm11,%ymm11 DB 196,67,125,25,220,1 ; vextractf128 $0x1,%ymm11,%xmm12 DB 196,66,33,43,220 ; vpackusdw %xmm12,%xmm11,%xmm11 DB 196,193,25,113,243,8 ; vpsllw $0x8,%xmm11,%xmm12 DB 196,193,33,113,211,8 ; vpsrlw $0x8,%xmm11,%xmm11 DB 196,65,25,235,219 ; vpor %xmm11,%xmm12,%xmm11 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 196,65,125,91,192 ; vcvtps2dq %ymm8,%ymm8 DB 196,67,125,25,196,1 ; vextractf128 $0x1,%ymm8,%xmm12 DB 196,66,57,43,196 ; vpackusdw %xmm12,%xmm8,%xmm8 DB 196,193,25,113,240,8 ; vpsllw $0x8,%xmm8,%xmm12 DB 196,193,57,113,208,8 ; vpsrlw $0x8,%xmm8,%xmm8 DB 196,65,25,235,192 ; vpor %xmm8,%xmm12,%xmm8 DB 196,65,49,97,226 ; vpunpcklwd %xmm10,%xmm9,%xmm12 DB 196,65,49,105,234 ; vpunpckhwd %xmm10,%xmm9,%xmm13 DB 196,65,33,97,200 ; vpunpcklwd %xmm8,%xmm11,%xmm9 DB 196,65,33,105,192 ; vpunpckhwd %xmm8,%xmm11,%xmm8 DB 196,65,25,98,217 ; vpunpckldq %xmm9,%xmm12,%xmm11 DB 196,65,25,106,209 ; vpunpckhdq %xmm9,%xmm12,%xmm10 DB 196,65,17,98,200 ; vpunpckldq %xmm8,%xmm13,%xmm9 DB 196,65,17,106,192 ; vpunpckhdq %xmm8,%xmm13,%xmm8 DB 72,133,201 ; test %rcx,%rcx DB 117,31 ; jne 4e27 <_sk_store_u16_be_avx+0x102> DB 196,1,120,17,28,72 ; vmovups %xmm11,(%r8,%r9,2) DB 196,1,120,17,84,72,16 ; vmovups %xmm10,0x10(%r8,%r9,2) DB 196,1,120,17,76,72,32 ; vmovups %xmm9,0x20(%r8,%r9,2) DB 196,1,122,127,68,72,48 ; vmovdqu %xmm8,0x30(%r8,%r9,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,1,121,214,28,72 ; vmovq %xmm11,(%r8,%r9,2) DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,240 ; je 4e23 <_sk_store_u16_be_avx+0xfe> DB 196,1,121,23,92,72,8 ; vmovhpd %xmm11,0x8(%r8,%r9,2) DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,227 ; jb 4e23 <_sk_store_u16_be_avx+0xfe> DB 196,1,121,214,84,72,16 ; vmovq %xmm10,0x10(%r8,%r9,2) DB 116,218 ; je 4e23 <_sk_store_u16_be_avx+0xfe> DB 196,1,121,23,84,72,24 ; vmovhpd %xmm10,0x18(%r8,%r9,2) DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,205 ; jb 4e23 <_sk_store_u16_be_avx+0xfe> DB 196,1,121,214,76,72,32 ; vmovq %xmm9,0x20(%r8,%r9,2) DB 116,196 ; je 4e23 <_sk_store_u16_be_avx+0xfe> DB 196,1,121,23,76,72,40 ; vmovhpd %xmm9,0x28(%r8,%r9,2) DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,183 ; jb 4e23 <_sk_store_u16_be_avx+0xfe> DB 196,1,121,214,68,72,48 ; vmovq %xmm8,0x30(%r8,%r9,2) DB 235,174 ; jmp 4e23 <_sk_store_u16_be_avx+0xfe> PUBLIC _sk_load_f32_avx _sk_load_f32_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,131,249,7 ; cmp $0x7,%rcx DB 119,110 ; ja 4eeb <_sk_load_f32_avx+0x76> DB 76,139,0 ; mov (%rax),%r8 DB 76,141,12,189,0,0,0,0 ; lea 0x0(,%rdi,4),%r9 DB 76,141,21,133,0,0,0 ; lea 0x85(%rip),%r10 # 4f14 <_sk_load_f32_avx+0x9f> DB 73,99,4,138 ; movslq (%r10,%rcx,4),%rax DB 76,1,208 ; add %r10,%rax DB 255,224 ; jmpq *%rax DB 196,3,125,24,68,136,112,1 ; vinsertf128 $0x1,0x70(%r8,%r9,4),%ymm0,%ymm8 DB 196,131,125,24,92,136,96,1 ; vinsertf128 $0x1,0x60(%r8,%r9,4),%ymm0,%ymm3 DB 196,131,125,24,76,136,80,1 ; vinsertf128 $0x1,0x50(%r8,%r9,4),%ymm0,%ymm1 DB 196,131,125,24,84,136,64,1 ; vinsertf128 $0x1,0x40(%r8,%r9,4),%ymm0,%ymm2 DB 196,129,121,16,68,136,48 ; vmovupd 0x30(%r8,%r9,4),%xmm0 DB 196,195,125,13,192,12 ; vblendpd $0xc,%ymm8,%ymm0,%ymm0 DB 196,1,121,16,68,136,32 ; vmovupd 0x20(%r8,%r9,4),%xmm8 DB 196,99,61,13,203,12 ; vblendpd $0xc,%ymm3,%ymm8,%ymm9 DB 196,129,121,16,92,136,16 ; vmovupd 0x10(%r8,%r9,4),%xmm3 DB 196,99,101,13,209,12 ; vblendpd $0xc,%ymm1,%ymm3,%ymm10 DB 196,129,121,16,12,136 ; vmovupd (%r8,%r9,4),%xmm1 DB 196,227,117,13,202,12 ; vblendpd $0xc,%ymm2,%ymm1,%ymm1 DB 196,193,116,20,210 ; vunpcklps %ymm10,%ymm1,%ymm2 DB 196,193,116,21,218 ; vunpckhps %ymm10,%ymm1,%ymm3 DB 197,180,20,200 ; vunpcklps %ymm0,%ymm9,%ymm1 DB 197,52,21,192 ; vunpckhps %ymm0,%ymm9,%ymm8 DB 197,237,20,193 ; vunpcklpd %ymm1,%ymm2,%ymm0 DB 197,237,21,201 ; vunpckhpd %ymm1,%ymm2,%ymm1 DB 196,193,101,20,208 ; vunpcklpd %ymm8,%ymm3,%ymm2 DB 196,193,101,21,216 ; vunpckhpd %ymm8,%ymm3,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 144 ; nop DB 132,255 ; test %bh,%bh DB 255 ; (bad) DB 255,203 ; dec %ebx DB 255 ; (bad) DB 255 ; (bad) DB 255 ; (bad) DB 190,255,255,255,177 ; mov $0xb1ffffff,%esi DB 255 ; (bad) DB 255 ; (bad) DB 255,164,255,255,255,156,255 ; jmpq *-0x630001(%rdi,%rdi,8) DB 255 ; (bad) DB 255,148,255,255,255,140,255 ; callq *-0x730001(%rdi,%rdi,8) DB 255 ; (bad) DB 255 ; .byte 0xff PUBLIC _sk_store_f32_avx _sk_store_f32_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,0 ; mov (%rax),%r8 DB 72,141,4,189,0,0,0,0 ; lea 0x0(,%rdi,4),%rax DB 197,124,20,193 ; vunpcklps %ymm1,%ymm0,%ymm8 DB 197,124,21,217 ; vunpckhps %ymm1,%ymm0,%ymm11 DB 197,108,20,203 ; vunpcklps %ymm3,%ymm2,%ymm9 DB 197,108,21,227 ; vunpckhps %ymm3,%ymm2,%ymm12 DB 196,65,61,20,209 ; vunpcklpd %ymm9,%ymm8,%ymm10 DB 196,65,61,21,201 ; vunpckhpd %ymm9,%ymm8,%ymm9 DB 196,65,37,20,196 ; vunpcklpd %ymm12,%ymm11,%ymm8 DB 196,65,37,21,220 ; vunpckhpd %ymm12,%ymm11,%ymm11 DB 72,133,201 ; test %rcx,%rcx DB 117,55 ; jne 4fa1 <_sk_store_f32_avx+0x6d> DB 196,67,45,24,225,1 ; vinsertf128 $0x1,%xmm9,%ymm10,%ymm12 DB 196,67,61,24,235,1 ; vinsertf128 $0x1,%xmm11,%ymm8,%ymm13 DB 196,67,45,6,201,49 ; vperm2f128 $0x31,%ymm9,%ymm10,%ymm9 DB 196,67,61,6,195,49 ; vperm2f128 $0x31,%ymm11,%ymm8,%ymm8 DB 196,65,125,17,36,128 ; vmovupd %ymm12,(%r8,%rax,4) DB 196,65,125,17,108,128,32 ; vmovupd %ymm13,0x20(%r8,%rax,4) DB 196,65,125,17,76,128,64 ; vmovupd %ymm9,0x40(%r8,%rax,4) DB 196,65,125,17,68,128,96 ; vmovupd %ymm8,0x60(%r8,%rax,4) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax DB 196,65,121,17,20,128 ; vmovupd %xmm10,(%r8,%rax,4) DB 72,131,249,1 ; cmp $0x1,%rcx DB 116,240 ; je 4f9d <_sk_store_f32_avx+0x69> DB 196,65,121,17,76,128,16 ; vmovupd %xmm9,0x10(%r8,%rax,4) DB 72,131,249,3 ; cmp $0x3,%rcx DB 114,227 ; jb 4f9d <_sk_store_f32_avx+0x69> DB 196,65,121,17,68,128,32 ; vmovupd %xmm8,0x20(%r8,%rax,4) DB 116,218 ; je 4f9d <_sk_store_f32_avx+0x69> DB 196,65,121,17,92,128,48 ; vmovupd %xmm11,0x30(%r8,%rax,4) DB 72,131,249,5 ; cmp $0x5,%rcx DB 114,205 ; jb 4f9d <_sk_store_f32_avx+0x69> DB 196,67,125,25,84,128,64,1 ; vextractf128 $0x1,%ymm10,0x40(%r8,%rax,4) DB 116,195 ; je 4f9d <_sk_store_f32_avx+0x69> DB 196,67,125,25,76,128,80,1 ; vextractf128 $0x1,%ymm9,0x50(%r8,%rax,4) DB 72,131,249,7 ; cmp $0x7,%rcx DB 114,181 ; jb 4f9d <_sk_store_f32_avx+0x69> DB 196,67,125,25,68,128,96,1 ; vextractf128 $0x1,%ymm8,0x60(%r8,%rax,4) DB 235,171 ; jmp 4f9d <_sk_store_f32_avx+0x69> PUBLIC _sk_clamp_x_avx _sk_clamp_x_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 197,60,95,200 ; vmaxps %ymm0,%ymm8,%ymm9 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,99,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm0 DB 196,65,41,118,210 ; vpcmpeqd %xmm10,%xmm10,%xmm10 DB 196,193,121,254,194 ; vpaddd %xmm10,%xmm0,%xmm0 DB 196,65,57,254,194 ; vpaddd %xmm10,%xmm8,%xmm8 DB 196,227,61,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm8,%ymm0 DB 197,180,93,192 ; vminps %ymm0,%ymm9,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_y_avx _sk_clamp_y_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 197,60,95,201 ; vmaxps %ymm1,%ymm8,%ymm9 DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,99,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm1 DB 196,65,41,118,210 ; vpcmpeqd %xmm10,%xmm10,%xmm10 DB 196,193,113,254,202 ; vpaddd %xmm10,%xmm1,%xmm1 DB 196,65,57,254,194 ; vpaddd %xmm10,%xmm8,%xmm8 DB 196,227,61,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm8,%ymm1 DB 197,180,93,201 ; vminps %ymm1,%ymm9,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_repeat_x_avx _sk_repeat_x_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,65,124,94,200 ; vdivps %ymm8,%ymm0,%ymm9 DB 196,67,125,8,201,1 ; vroundps $0x1,%ymm9,%ymm9 DB 196,65,52,89,200 ; vmulps %ymm8,%ymm9,%ymm9 DB 196,65,124,92,201 ; vsubps %ymm9,%ymm0,%ymm9 DB 196,99,125,25,192,1 ; vextractf128 $0x1,%ymm8,%xmm0 DB 196,65,41,118,210 ; vpcmpeqd %xmm10,%xmm10,%xmm10 DB 196,193,121,254,194 ; vpaddd %xmm10,%xmm0,%xmm0 DB 196,65,57,254,194 ; vpaddd %xmm10,%xmm8,%xmm8 DB 196,227,61,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm8,%ymm0 DB 197,180,93,192 ; vminps %ymm0,%ymm9,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_repeat_y_avx _sk_repeat_y_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,65,116,94,200 ; vdivps %ymm8,%ymm1,%ymm9 DB 196,67,125,8,201,1 ; vroundps $0x1,%ymm9,%ymm9 DB 196,65,52,89,200 ; vmulps %ymm8,%ymm9,%ymm9 DB 196,65,116,92,201 ; vsubps %ymm9,%ymm1,%ymm9 DB 196,99,125,25,193,1 ; vextractf128 $0x1,%ymm8,%xmm1 DB 196,65,41,118,210 ; vpcmpeqd %xmm10,%xmm10,%xmm10 DB 196,193,113,254,202 ; vpaddd %xmm10,%xmm1,%xmm1 DB 196,65,57,254,194 ; vpaddd %xmm10,%xmm8,%xmm8 DB 196,227,61,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm8,%ymm1 DB 197,180,93,201 ; vminps %ymm1,%ymm9,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_mirror_x_avx _sk_mirror_x_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,121,110,0 ; vmovd (%rax),%xmm8 DB 196,65,121,112,200,0 ; vpshufd $0x0,%xmm8,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 196,65,124,92,209 ; vsubps %ymm9,%ymm0,%ymm10 DB 196,193,58,88,192 ; vaddss %xmm8,%xmm8,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,44,94,192 ; vdivps %ymm0,%ymm10,%ymm8 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8 DB 197,188,89,192 ; vmulps %ymm0,%ymm8,%ymm0 DB 197,172,92,192 ; vsubps %ymm0,%ymm10,%ymm0 DB 196,193,124,92,193 ; vsubps %ymm9,%ymm0,%ymm0 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 197,60,92,192 ; vsubps %ymm0,%ymm8,%ymm8 DB 197,60,84,192 ; vandps %ymm0,%ymm8,%ymm8 DB 196,99,125,25,200,1 ; vextractf128 $0x1,%ymm9,%xmm0 DB 196,65,41,118,210 ; vpcmpeqd %xmm10,%xmm10,%xmm10 DB 196,193,121,254,194 ; vpaddd %xmm10,%xmm0,%xmm0 DB 196,65,49,254,202 ; vpaddd %xmm10,%xmm9,%xmm9 DB 196,227,53,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm9,%ymm0 DB 197,188,93,192 ; vminps %ymm0,%ymm8,%ymm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_mirror_y_avx _sk_mirror_y_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,121,110,0 ; vmovd (%rax),%xmm8 DB 196,65,121,112,200,0 ; vpshufd $0x0,%xmm8,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 196,65,116,92,209 ; vsubps %ymm9,%ymm1,%ymm10 DB 196,193,58,88,200 ; vaddss %xmm8,%xmm8,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,44,94,193 ; vdivps %ymm1,%ymm10,%ymm8 DB 196,67,125,8,192,1 ; vroundps $0x1,%ymm8,%ymm8 DB 197,188,89,201 ; vmulps %ymm1,%ymm8,%ymm1 DB 197,172,92,201 ; vsubps %ymm1,%ymm10,%ymm1 DB 196,193,116,92,201 ; vsubps %ymm9,%ymm1,%ymm1 DB 196,65,60,87,192 ; vxorps %ymm8,%ymm8,%ymm8 DB 197,60,92,193 ; vsubps %ymm1,%ymm8,%ymm8 DB 197,60,84,193 ; vandps %ymm1,%ymm8,%ymm8 DB 196,99,125,25,201,1 ; vextractf128 $0x1,%ymm9,%xmm1 DB 196,65,41,118,210 ; vpcmpeqd %xmm10,%xmm10,%xmm10 DB 196,193,113,254,202 ; vpaddd %xmm10,%xmm1,%xmm1 DB 196,65,49,254,202 ; vpaddd %xmm10,%xmm9,%xmm9 DB 196,227,53,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm9,%ymm1 DB 197,188,93,201 ; vminps %ymm1,%ymm8,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_luminance_to_alpha_avx _sk_luminance_to_alpha_avx LABEL PROC DB 184,208,179,89,62 ; mov $0x3e59b3d0,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,228,89,192 ; vmulps %ymm0,%ymm3,%ymm0 DB 184,89,23,55,63 ; mov $0x3f371759,%eax DB 197,249,110,216 ; vmovd %eax,%xmm3 DB 196,227,121,4,219,0 ; vpermilps $0x0,%xmm3,%xmm3 DB 196,227,101,24,219,1 ; vinsertf128 $0x1,%xmm3,%ymm3,%ymm3 DB 197,228,89,201 ; vmulps %ymm1,%ymm3,%ymm1 DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0 DB 184,152,221,147,61 ; mov $0x3d93dd98,%eax DB 197,249,110,200 ; vmovd %eax,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,244,89,202 ; vmulps %ymm2,%ymm1,%ymm1 DB 197,252,88,217 ; vaddps %ymm1,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,252,87,192 ; vxorps %ymm0,%ymm0,%ymm0 DB 197,244,87,201 ; vxorps %ymm1,%ymm1,%ymm1 DB 197,236,87,210 ; vxorps %ymm2,%ymm2,%ymm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_2x3_avx _sk_matrix_2x3_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,98,125,24,72,8 ; vbroadcastss 0x8(%rax),%ymm9 DB 196,98,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm10 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9 DB 196,98,125,24,80,12 ; vbroadcastss 0xc(%rax),%ymm10 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11 DB 197,172,89,201 ; vmulps %ymm1,%ymm10,%ymm1 DB 196,193,116,88,203 ; vaddps %ymm11,%ymm1,%ymm1 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0 DB 197,252,88,201 ; vaddps %ymm1,%ymm0,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_3x4_avx _sk_matrix_3x4_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 196,98,125,24,88,36 ; vbroadcastss 0x24(%rax),%ymm11 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9 DB 196,98,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm10 DB 196,98,125,24,88,28 ; vbroadcastss 0x1c(%rax),%ymm11 DB 196,98,125,24,96,40 ; vbroadcastss 0x28(%rax),%ymm12 DB 197,36,89,218 ; vmulps %ymm2,%ymm11,%ymm11 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 197,44,89,209 ; vmulps %ymm1,%ymm10,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 197,52,89,200 ; vmulps %ymm0,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11 DB 196,98,125,24,96,32 ; vbroadcastss 0x20(%rax),%ymm12 DB 196,98,125,24,104,44 ; vbroadcastss 0x2c(%rax),%ymm13 DB 197,156,89,210 ; vmulps %ymm2,%ymm12,%ymm2 DB 196,193,108,88,213 ; vaddps %ymm13,%ymm2,%ymm2 DB 197,164,89,201 ; vmulps %ymm1,%ymm11,%ymm1 DB 197,244,88,202 ; vaddps %ymm2,%ymm1,%ymm1 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0 DB 197,252,88,209 ; vaddps %ymm1,%ymm0,%ymm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_4x5_avx _sk_matrix_4x5_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,98,125,24,72,16 ; vbroadcastss 0x10(%rax),%ymm9 DB 196,98,125,24,80,32 ; vbroadcastss 0x20(%rax),%ymm10 DB 196,98,125,24,88,48 ; vbroadcastss 0x30(%rax),%ymm11 DB 196,98,125,24,96,64 ; vbroadcastss 0x40(%rax),%ymm12 DB 197,36,89,219 ; vmulps %ymm3,%ymm11,%ymm11 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 197,44,89,210 ; vmulps %ymm2,%ymm10,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9 DB 196,98,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm10 DB 196,98,125,24,88,36 ; vbroadcastss 0x24(%rax),%ymm11 DB 196,98,125,24,96,52 ; vbroadcastss 0x34(%rax),%ymm12 DB 196,98,125,24,104,68 ; vbroadcastss 0x44(%rax),%ymm13 DB 197,28,89,227 ; vmulps %ymm3,%ymm12,%ymm12 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12 DB 197,36,89,218 ; vmulps %ymm2,%ymm11,%ymm11 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 197,44,89,209 ; vmulps %ymm1,%ymm10,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 197,52,89,200 ; vmulps %ymm0,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10 DB 196,98,125,24,88,24 ; vbroadcastss 0x18(%rax),%ymm11 DB 196,98,125,24,96,40 ; vbroadcastss 0x28(%rax),%ymm12 DB 196,98,125,24,104,56 ; vbroadcastss 0x38(%rax),%ymm13 DB 196,98,125,24,112,72 ; vbroadcastss 0x48(%rax),%ymm14 DB 197,20,89,235 ; vmulps %ymm3,%ymm13,%ymm13 DB 196,65,20,88,238 ; vaddps %ymm14,%ymm13,%ymm13 DB 197,28,89,226 ; vmulps %ymm2,%ymm12,%ymm12 DB 196,65,28,88,229 ; vaddps %ymm13,%ymm12,%ymm12 DB 197,36,89,217 ; vmulps %ymm1,%ymm11,%ymm11 DB 196,65,36,88,220 ; vaddps %ymm12,%ymm11,%ymm11 DB 197,44,89,208 ; vmulps %ymm0,%ymm10,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 196,98,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm11 DB 196,98,125,24,96,28 ; vbroadcastss 0x1c(%rax),%ymm12 DB 196,98,125,24,104,44 ; vbroadcastss 0x2c(%rax),%ymm13 DB 196,98,125,24,112,60 ; vbroadcastss 0x3c(%rax),%ymm14 DB 196,98,125,24,120,76 ; vbroadcastss 0x4c(%rax),%ymm15 DB 197,140,89,219 ; vmulps %ymm3,%ymm14,%ymm3 DB 196,193,100,88,223 ; vaddps %ymm15,%ymm3,%ymm3 DB 197,148,89,210 ; vmulps %ymm2,%ymm13,%ymm2 DB 197,236,88,211 ; vaddps %ymm3,%ymm2,%ymm2 DB 197,156,89,201 ; vmulps %ymm1,%ymm12,%ymm1 DB 197,244,88,202 ; vaddps %ymm2,%ymm1,%ymm1 DB 197,164,89,192 ; vmulps %ymm0,%ymm11,%ymm0 DB 197,252,88,217 ; vaddps %ymm1,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 197,124,41,201 ; vmovaps %ymm9,%ymm1 DB 197,124,41,210 ; vmovaps %ymm10,%ymm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_perspective_avx _sk_matrix_perspective_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,0 ; vbroadcastss (%rax),%ymm8 DB 196,98,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm9 DB 196,98,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm10 DB 197,52,89,201 ; vmulps %ymm1,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 197,60,89,192 ; vmulps %ymm0,%ymm8,%ymm8 DB 196,65,60,88,193 ; vaddps %ymm9,%ymm8,%ymm8 DB 196,98,125,24,72,12 ; vbroadcastss 0xc(%rax),%ymm9 DB 196,98,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm10 DB 196,98,125,24,88,20 ; vbroadcastss 0x14(%rax),%ymm11 DB 197,44,89,209 ; vmulps %ymm1,%ymm10,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 197,52,89,200 ; vmulps %ymm0,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 196,98,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm10 DB 196,98,125,24,88,28 ; vbroadcastss 0x1c(%rax),%ymm11 DB 196,98,125,24,96,32 ; vbroadcastss 0x20(%rax),%ymm12 DB 197,164,89,201 ; vmulps %ymm1,%ymm11,%ymm1 DB 196,193,116,88,204 ; vaddps %ymm12,%ymm1,%ymm1 DB 197,172,89,192 ; vmulps %ymm0,%ymm10,%ymm0 DB 197,252,88,193 ; vaddps %ymm1,%ymm0,%ymm0 DB 197,252,83,200 ; vrcpps %ymm0,%ymm1 DB 197,188,89,193 ; vmulps %ymm1,%ymm8,%ymm0 DB 197,180,89,201 ; vmulps %ymm1,%ymm9,%ymm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_linear_gradient_avx _sk_linear_gradient_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,98,125,24,64,16 ; vbroadcastss 0x10(%rax),%ymm8 DB 196,226,125,24,72,20 ; vbroadcastss 0x14(%rax),%ymm1 DB 196,226,125,24,80,24 ; vbroadcastss 0x18(%rax),%ymm2 DB 196,226,125,24,88,28 ; vbroadcastss 0x1c(%rax),%ymm3 DB 76,139,0 ; mov (%rax),%r8 DB 77,133,192 ; test %r8,%r8 DB 15,132,146,0,0,0 ; je 5555 <_sk_linear_gradient_avx+0xb8> DB 72,139,64,8 ; mov 0x8(%rax),%rax DB 72,131,192,32 ; add $0x20,%rax DB 196,65,28,87,228 ; vxorps %ymm12,%ymm12,%ymm12 DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9 DB 196,65,44,87,210 ; vxorps %ymm10,%ymm10,%ymm10 DB 196,65,36,87,219 ; vxorps %ymm11,%ymm11,%ymm11 DB 196,98,125,24,104,224 ; vbroadcastss -0x20(%rax),%ymm13 DB 196,65,124,194,237,1 ; vcmpltps %ymm13,%ymm0,%ymm13 DB 196,98,125,24,112,228 ; vbroadcastss -0x1c(%rax),%ymm14 DB 196,67,13,74,228,208 ; vblendvps %ymm13,%ymm12,%ymm14,%ymm12 DB 196,98,125,24,112,232 ; vbroadcastss -0x18(%rax),%ymm14 DB 196,67,13,74,219,208 ; vblendvps %ymm13,%ymm11,%ymm14,%ymm11 DB 196,98,125,24,112,236 ; vbroadcastss -0x14(%rax),%ymm14 DB 196,67,13,74,210,208 ; vblendvps %ymm13,%ymm10,%ymm14,%ymm10 DB 196,98,125,24,112,240 ; vbroadcastss -0x10(%rax),%ymm14 DB 196,67,13,74,201,208 ; vblendvps %ymm13,%ymm9,%ymm14,%ymm9 DB 196,98,125,24,112,244 ; vbroadcastss -0xc(%rax),%ymm14 DB 196,67,13,74,192,208 ; vblendvps %ymm13,%ymm8,%ymm14,%ymm8 DB 196,98,125,24,112,248 ; vbroadcastss -0x8(%rax),%ymm14 DB 196,227,13,74,201,208 ; vblendvps %ymm13,%ymm1,%ymm14,%ymm1 DB 196,98,125,24,112,252 ; vbroadcastss -0x4(%rax),%ymm14 DB 196,227,13,74,210,208 ; vblendvps %ymm13,%ymm2,%ymm14,%ymm2 DB 196,98,125,24,48 ; vbroadcastss (%rax),%ymm14 DB 196,227,13,74,219,208 ; vblendvps %ymm13,%ymm3,%ymm14,%ymm3 DB 72,131,192,36 ; add $0x24,%rax DB 73,255,200 ; dec %r8 DB 117,140 ; jne 54df <_sk_linear_gradient_avx+0x42> DB 235,20 ; jmp 5569 <_sk_linear_gradient_avx+0xcc> DB 196,65,36,87,219 ; vxorps %ymm11,%ymm11,%ymm11 DB 196,65,44,87,210 ; vxorps %ymm10,%ymm10,%ymm10 DB 196,65,52,87,201 ; vxorps %ymm9,%ymm9,%ymm9 DB 196,65,28,87,228 ; vxorps %ymm12,%ymm12,%ymm12 DB 197,28,89,224 ; vmulps %ymm0,%ymm12,%ymm12 DB 196,65,60,88,196 ; vaddps %ymm12,%ymm8,%ymm8 DB 197,36,89,216 ; vmulps %ymm0,%ymm11,%ymm11 DB 197,164,88,201 ; vaddps %ymm1,%ymm11,%ymm1 DB 197,44,89,208 ; vmulps %ymm0,%ymm10,%ymm10 DB 197,172,88,210 ; vaddps %ymm2,%ymm10,%ymm2 DB 197,180,89,192 ; vmulps %ymm0,%ymm9,%ymm0 DB 197,252,88,219 ; vaddps %ymm3,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_linear_gradient_2stops_avx _sk_linear_gradient_2stops_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 196,226,125,24,8 ; vbroadcastss (%rax),%ymm1 DB 196,226,125,24,80,16 ; vbroadcastss 0x10(%rax),%ymm2 DB 197,244,89,200 ; vmulps %ymm0,%ymm1,%ymm1 DB 197,116,88,194 ; vaddps %ymm2,%ymm1,%ymm8 DB 196,226,125,24,72,4 ; vbroadcastss 0x4(%rax),%ymm1 DB 196,226,125,24,80,20 ; vbroadcastss 0x14(%rax),%ymm2 DB 197,244,89,200 ; vmulps %ymm0,%ymm1,%ymm1 DB 197,244,88,202 ; vaddps %ymm2,%ymm1,%ymm1 DB 196,226,125,24,80,8 ; vbroadcastss 0x8(%rax),%ymm2 DB 196,226,125,24,88,24 ; vbroadcastss 0x18(%rax),%ymm3 DB 197,236,89,208 ; vmulps %ymm0,%ymm2,%ymm2 DB 197,236,88,211 ; vaddps %ymm3,%ymm2,%ymm2 DB 196,226,125,24,88,12 ; vbroadcastss 0xc(%rax),%ymm3 DB 196,98,125,24,72,28 ; vbroadcastss 0x1c(%rax),%ymm9 DB 197,228,89,192 ; vmulps %ymm0,%ymm3,%ymm0 DB 196,193,124,88,217 ; vaddps %ymm9,%ymm0,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,41,192 ; vmovaps %ymm8,%ymm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_save_xy_avx _sk_save_xy_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,88,200 ; vaddps %ymm0,%ymm8,%ymm9 DB 196,67,125,8,209,1 ; vroundps $0x1,%ymm9,%ymm10 DB 196,65,52,92,202 ; vsubps %ymm10,%ymm9,%ymm9 DB 197,60,88,193 ; vaddps %ymm1,%ymm8,%ymm8 DB 196,67,125,8,208,1 ; vroundps $0x1,%ymm8,%ymm10 DB 196,65,60,92,194 ; vsubps %ymm10,%ymm8,%ymm8 DB 197,252,17,0 ; vmovups %ymm0,(%rax) DB 197,252,17,72,32 ; vmovups %ymm1,0x20(%rax) DB 197,124,17,72,64 ; vmovups %ymm9,0x40(%rax) DB 197,124,17,64,96 ; vmovups %ymm8,0x60(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_accumulate_avx _sk_accumulate_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 197,124,16,128,128,0,0,0 ; vmovups 0x80(%rax),%ymm8 DB 197,60,89,128,160,0,0,0 ; vmulps 0xa0(%rax),%ymm8,%ymm8 DB 197,60,89,200 ; vmulps %ymm0,%ymm8,%ymm9 DB 197,180,88,228 ; vaddps %ymm4,%ymm9,%ymm4 DB 197,60,89,201 ; vmulps %ymm1,%ymm8,%ymm9 DB 197,180,88,237 ; vaddps %ymm5,%ymm9,%ymm5 DB 197,60,89,202 ; vmulps %ymm2,%ymm8,%ymm9 DB 197,180,88,246 ; vaddps %ymm6,%ymm9,%ymm6 DB 197,60,89,195 ; vmulps %ymm3,%ymm8,%ymm8 DB 197,188,88,255 ; vaddps %ymm7,%ymm8,%ymm7 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_nx_avx _sk_bilinear_nx_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,191 ; mov $0xbf000000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_px_avx _sk_bilinear_px_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,124,16,64,64 ; vmovups 0x40(%rax),%ymm8 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_ny_avx _sk_bilinear_ny_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,191 ; mov $0xbf000000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_py_avx _sk_bilinear_py_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,124,16,64,96 ; vmovups 0x60(%rax),%ymm8 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n3x_avx _sk_bicubic_n3x_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,192,191 ; mov $0xbfc00000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9 DB 65,184,114,28,199,62 ; mov $0x3ec71c72,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 65,184,171,170,170,190 ; mov $0xbeaaaaab,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 196,65,44,89,192 ; vmulps %ymm8,%ymm10,%ymm8 DB 196,65,60,88,195 ; vaddps %ymm11,%ymm8,%ymm8 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n1x_avx _sk_bicubic_n1x_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,191 ; mov $0xbf000000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,64,64 ; vsubps 0x40(%rax),%ymm8,%ymm8 DB 65,184,85,85,149,191 ; mov $0xbf955555,%r8d DB 196,65,121,110,200 ; vmovd %r8d,%xmm9 DB 196,67,121,4,201,0 ; vpermilps $0x0,%xmm9,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 196,65,52,89,200 ; vmulps %ymm8,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 196,65,60,89,201 ; vmulps %ymm9,%ymm8,%ymm9 DB 196,65,44,88,201 ; vaddps %ymm9,%ymm10,%ymm9 DB 65,184,57,142,99,61 ; mov $0x3d638e39,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8 DB 196,65,44,88,192 ; vaddps %ymm8,%ymm10,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p1x_avx _sk_bicubic_p1x_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,99,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm8 DB 197,188,88,0 ; vaddps (%rax),%ymm8,%ymm0 DB 197,124,16,72,64 ; vmovups 0x40(%rax),%ymm9 DB 65,184,85,85,149,191 ; mov $0xbf955555,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10 DB 196,65,60,88,194 ; vaddps %ymm10,%ymm8,%ymm8 DB 65,184,57,142,99,61 ; mov $0x3d638e39,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8 DB 196,65,44,88,192 ; vaddps %ymm8,%ymm10,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p3x_avx _sk_bicubic_p3x_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,193,121,110,192 ; vmovd %r8d,%xmm0 DB 196,227,121,4,192,0 ; vpermilps $0x0,%xmm0,%xmm0 DB 196,227,125,24,192,1 ; vinsertf128 $0x1,%xmm0,%ymm0,%ymm0 DB 197,252,88,0 ; vaddps (%rax),%ymm0,%ymm0 DB 197,124,16,64,64 ; vmovups 0x40(%rax),%ymm8 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9 DB 65,184,114,28,199,62 ; mov $0x3ec71c72,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 65,184,171,170,170,190 ; mov $0xbeaaaaab,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 196,65,60,89,194 ; vmulps %ymm10,%ymm8,%ymm8 DB 196,65,60,88,195 ; vaddps %ymm11,%ymm8,%ymm8 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8 DB 197,124,17,128,128,0,0,0 ; vmovups %ymm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n3y_avx _sk_bicubic_n3y_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,192,191 ; mov $0xbfc00000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9 DB 65,184,114,28,199,62 ; mov $0x3ec71c72,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 65,184,171,170,170,190 ; mov $0xbeaaaaab,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 196,65,44,89,192 ; vmulps %ymm8,%ymm10,%ymm8 DB 196,65,60,88,195 ; vaddps %ymm11,%ymm8,%ymm8 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n1y_avx _sk_bicubic_n1y_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,191 ; mov $0xbf000000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 65,184,0,0,128,63 ; mov $0x3f800000,%r8d DB 196,65,121,110,192 ; vmovd %r8d,%xmm8 DB 196,67,121,4,192,0 ; vpermilps $0x0,%xmm8,%xmm8 DB 196,67,61,24,192,1 ; vinsertf128 $0x1,%xmm8,%ymm8,%ymm8 DB 197,60,92,64,96 ; vsubps 0x60(%rax),%ymm8,%ymm8 DB 65,184,85,85,149,191 ; mov $0xbf955555,%r8d DB 196,65,121,110,200 ; vmovd %r8d,%xmm9 DB 196,67,121,4,201,0 ; vpermilps $0x0,%xmm9,%xmm9 DB 196,67,53,24,201,1 ; vinsertf128 $0x1,%xmm9,%ymm9,%ymm9 DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 196,65,52,89,200 ; vmulps %ymm8,%ymm9,%ymm9 DB 196,65,52,88,202 ; vaddps %ymm10,%ymm9,%ymm9 DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 196,65,60,89,201 ; vmulps %ymm9,%ymm8,%ymm9 DB 196,65,44,88,201 ; vaddps %ymm9,%ymm10,%ymm9 DB 65,184,57,142,99,61 ; mov $0x3d638e39,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 196,65,60,89,193 ; vmulps %ymm9,%ymm8,%ymm8 DB 196,65,44,88,192 ; vaddps %ymm8,%ymm10,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p1y_avx _sk_bicubic_p1y_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,0,63 ; mov $0x3f000000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,99,117,24,193,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm8 DB 197,188,88,72,32 ; vaddps 0x20(%rax),%ymm8,%ymm1 DB 197,124,16,72,96 ; vmovups 0x60(%rax),%ymm9 DB 65,184,85,85,149,191 ; mov $0xbf955555,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10 DB 196,65,44,88,211 ; vaddps %ymm11,%ymm10,%ymm10 DB 196,65,52,89,210 ; vmulps %ymm10,%ymm9,%ymm10 DB 196,65,60,88,194 ; vaddps %ymm10,%ymm8,%ymm8 DB 65,184,57,142,99,61 ; mov $0x3d638e39,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8 DB 196,65,44,88,192 ; vaddps %ymm8,%ymm10,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p3y_avx _sk_bicubic_p3y_avx LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 65,184,0,0,192,63 ; mov $0x3fc00000,%r8d DB 196,193,121,110,200 ; vmovd %r8d,%xmm1 DB 196,227,121,4,201,0 ; vpermilps $0x0,%xmm1,%xmm1 DB 196,227,117,24,201,1 ; vinsertf128 $0x1,%xmm1,%ymm1,%ymm1 DB 197,244,88,72,32 ; vaddps 0x20(%rax),%ymm1,%ymm1 DB 197,124,16,64,96 ; vmovups 0x60(%rax),%ymm8 DB 196,65,60,89,200 ; vmulps %ymm8,%ymm8,%ymm9 DB 65,184,114,28,199,62 ; mov $0x3ec71c72,%r8d DB 196,65,121,110,208 ; vmovd %r8d,%xmm10 DB 196,67,121,4,210,0 ; vpermilps $0x0,%xmm10,%xmm10 DB 196,67,45,24,210,1 ; vinsertf128 $0x1,%xmm10,%ymm10,%ymm10 DB 65,184,171,170,170,190 ; mov $0xbeaaaaab,%r8d DB 196,65,121,110,216 ; vmovd %r8d,%xmm11 DB 196,67,121,4,219,0 ; vpermilps $0x0,%xmm11,%xmm11 DB 196,67,37,24,219,1 ; vinsertf128 $0x1,%xmm11,%ymm11,%ymm11 DB 196,65,60,89,194 ; vmulps %ymm10,%ymm8,%ymm8 DB 196,65,60,88,195 ; vaddps %ymm11,%ymm8,%ymm8 DB 196,65,52,89,192 ; vmulps %ymm8,%ymm9,%ymm8 DB 197,124,17,128,160,0,0,0 ; vmovups %ymm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_callback_avx _sk_callback_avx LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 83 ; push %rbx DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp DB 197,252,17,188,36,128,0,0,0 ; vmovups %ymm7,0x80(%rsp) DB 197,252,17,116,36,96 ; vmovups %ymm6,0x60(%rsp) DB 197,252,17,108,36,64 ; vmovups %ymm5,0x40(%rsp) DB 197,252,17,100,36,32 ; vmovups %ymm4,0x20(%rsp) DB 73,137,207 ; mov %rcx,%r15 DB 73,137,214 ; mov %rdx,%r14 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,137,195 ; mov %rax,%rbx DB 197,252,20,225 ; vunpcklps %ymm1,%ymm0,%ymm4 DB 197,252,21,193 ; vunpckhps %ymm1,%ymm0,%ymm0 DB 197,236,20,203 ; vunpcklps %ymm3,%ymm2,%ymm1 DB 197,236,21,211 ; vunpckhps %ymm3,%ymm2,%ymm2 DB 197,221,20,217 ; vunpcklpd %ymm1,%ymm4,%ymm3 DB 197,221,21,201 ; vunpckhpd %ymm1,%ymm4,%ymm1 DB 197,253,20,226 ; vunpcklpd %ymm2,%ymm0,%ymm4 DB 197,253,21,194 ; vunpckhpd %ymm2,%ymm0,%ymm0 DB 196,227,101,24,209,1 ; vinsertf128 $0x1,%xmm1,%ymm3,%ymm2 DB 196,227,93,24,232,1 ; vinsertf128 $0x1,%xmm0,%ymm4,%ymm5 DB 196,227,101,6,201,49 ; vperm2f128 $0x31,%ymm1,%ymm3,%ymm1 DB 196,227,93,6,192,49 ; vperm2f128 $0x31,%ymm0,%ymm4,%ymm0 DB 197,253,17,83,8 ; vmovupd %ymm2,0x8(%rbx) DB 197,253,17,107,40 ; vmovupd %ymm5,0x28(%rbx) DB 197,253,17,75,72 ; vmovupd %ymm1,0x48(%rbx) DB 197,253,17,67,104 ; vmovupd %ymm0,0x68(%rbx) DB 77,133,255 ; test %r15,%r15 DB 186,8,0,0,0 ; mov $0x8,%edx DB 65,15,69,215 ; cmovne %r15d,%edx DB 72,137,217 ; mov %rbx,%rcx DB 197,248,119 ; vzeroupper DB 255,19 ; callq *(%rbx) DB 72,139,131,136,0,0,0 ; mov 0x88(%rbx),%rax DB 197,248,16,0 ; vmovups (%rax),%xmm0 DB 197,248,16,72,16 ; vmovups 0x10(%rax),%xmm1 DB 197,248,16,80,32 ; vmovups 0x20(%rax),%xmm2 DB 197,248,16,88,48 ; vmovups 0x30(%rax),%xmm3 DB 196,227,101,24,88,112,1 ; vinsertf128 $0x1,0x70(%rax),%ymm3,%ymm3 DB 196,227,109,24,80,96,1 ; vinsertf128 $0x1,0x60(%rax),%ymm2,%ymm2 DB 196,227,117,24,72,80,1 ; vinsertf128 $0x1,0x50(%rax),%ymm1,%ymm1 DB 196,227,125,24,64,64,1 ; vinsertf128 $0x1,0x40(%rax),%ymm0,%ymm0 DB 197,252,20,225 ; vunpcklps %ymm1,%ymm0,%ymm4 DB 197,252,21,233 ; vunpckhps %ymm1,%ymm0,%ymm5 DB 197,236,20,203 ; vunpcklps %ymm3,%ymm2,%ymm1 DB 197,236,21,219 ; vunpckhps %ymm3,%ymm2,%ymm3 DB 197,221,20,193 ; vunpcklpd %ymm1,%ymm4,%ymm0 DB 197,221,21,201 ; vunpckhpd %ymm1,%ymm4,%ymm1 DB 197,213,20,211 ; vunpcklpd %ymm3,%ymm5,%ymm2 DB 197,213,21,219 ; vunpckhpd %ymm3,%ymm5,%ymm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,242 ; mov %r14,%rdx DB 76,137,249 ; mov %r15,%rcx DB 197,252,16,100,36,32 ; vmovups 0x20(%rsp),%ymm4 DB 197,252,16,108,36,64 ; vmovups 0x40(%rsp),%ymm5 DB 197,252,16,116,36,96 ; vmovups 0x60(%rsp),%ymm6 DB 197,252,16,188,36,128,0,0,0 ; vmovups 0x80(%rsp),%ymm7 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp DB 91 ; pop %rbx DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 255,224 ; jmpq *%rax ALIGN 4 DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 5d14 <.literal4+0x10> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 5d8d <.literal4+0x89> DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 5d44 <.literal4+0x40> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 5dbd <.literal4+0xb9> DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 5d74 <.literal4+0x70> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 5ded <.literal4+0xe9> DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 5da4 <.literal4+0xa0> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 5e1d <_sk_callback_avx+0x233> DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,249,68,180 ; mov $0xb444f93f,%edi DB 62,163,233,220,63,81,140,242,66,141 ; movabs %eax,%ds:0x8d42f28c513fdce9 DB 188,190,63,248,245 ; mov $0xf5f83fbe,%esp DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 128,0,0 ; addb $0x0,(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,4,0,128 ; add %al,-0x7ffffc00(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,128,0,0,0,0 ; add %al,0x0(%rax) DB 0,128,0,4,0,128 ; add %al,-0x7ffffc00(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,128,56 ; add %al,0x38800000(%rax) DB 0,64,254 ; add %al,-0x2(%rax) DB 255 ; .byte 0xff ALIGN 32 PUBLIC _sk_start_pipeline_sse41 _sk_start_pipeline_sse41 LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 86 ; push %rsi DB 87 ; push %rdi DB 83 ; push %rbx DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp DB 68,15,41,188,36,144,0,0,0 ; movaps %xmm15,0x90(%rsp) DB 68,15,41,180,36,128,0,0,0 ; movaps %xmm14,0x80(%rsp) DB 68,15,41,108,36,112 ; movaps %xmm13,0x70(%rsp) DB 68,15,41,100,36,96 ; movaps %xmm12,0x60(%rsp) DB 68,15,41,92,36,80 ; movaps %xmm11,0x50(%rsp) DB 68,15,41,84,36,64 ; movaps %xmm10,0x40(%rsp) DB 68,15,41,76,36,48 ; movaps %xmm9,0x30(%rsp) DB 68,15,41,68,36,32 ; movaps %xmm8,0x20(%rsp) DB 15,41,124,36,16 ; movaps %xmm7,0x10(%rsp) DB 15,41,52,36 ; movaps %xmm6,(%rsp) DB 77,137,207 ; mov %r9,%r15 DB 77,137,198 ; mov %r8,%r14 DB 72,137,203 ; mov %rcx,%rbx DB 72,137,214 ; mov %rdx,%rsi DB 72,173 ; lods %ds:(%rsi),%rax DB 73,137,196 ; mov %rax,%r12 DB 73,137,245 ; mov %rsi,%r13 DB 72,141,67,4 ; lea 0x4(%rbx),%rax DB 76,57,248 ; cmp %r15,%rax DB 118,5 ; jbe 73 <_sk_start_pipeline_sse41+0x73> DB 72,137,216 ; mov %rbx,%rax DB 235,52 ; jmp a7 <_sk_start_pipeline_sse41+0xa7> DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 15,87,219 ; xorps %xmm3,%xmm3 DB 15,87,228 ; xorps %xmm4,%xmm4 DB 15,87,237 ; xorps %xmm5,%xmm5 DB 15,87,246 ; xorps %xmm6,%xmm6 DB 15,87,255 ; xorps %xmm7,%xmm7 DB 72,137,223 ; mov %rbx,%rdi DB 76,137,238 ; mov %r13,%rsi DB 76,137,242 ; mov %r14,%rdx DB 65,255,212 ; callq *%r12 DB 72,141,67,4 ; lea 0x4(%rbx),%rax DB 72,131,195,8 ; add $0x8,%rbx DB 76,57,251 ; cmp %r15,%rbx DB 72,137,195 ; mov %rax,%rbx DB 118,204 ; jbe 73 <_sk_start_pipeline_sse41+0x73> DB 15,40,52,36 ; movaps (%rsp),%xmm6 DB 15,40,124,36,16 ; movaps 0x10(%rsp),%xmm7 DB 68,15,40,68,36,32 ; movaps 0x20(%rsp),%xmm8 DB 68,15,40,76,36,48 ; movaps 0x30(%rsp),%xmm9 DB 68,15,40,84,36,64 ; movaps 0x40(%rsp),%xmm10 DB 68,15,40,92,36,80 ; movaps 0x50(%rsp),%xmm11 DB 68,15,40,100,36,96 ; movaps 0x60(%rsp),%xmm12 DB 68,15,40,108,36,112 ; movaps 0x70(%rsp),%xmm13 DB 68,15,40,180,36,128,0,0,0 ; movaps 0x80(%rsp),%xmm14 DB 68,15,40,188,36,144,0,0,0 ; movaps 0x90(%rsp),%xmm15 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp DB 91 ; pop %rbx DB 95 ; pop %rdi DB 94 ; pop %rsi DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 195 ; retq PUBLIC _sk_just_return_sse41 _sk_just_return_sse41 LABEL PROC DB 195 ; retq PUBLIC _sk_seed_shader_sse41 _sk_seed_shader_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 102,15,110,199 ; movd %edi,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 15,40,21,193,62,0,0 ; movaps 0x3ec1(%rip),%xmm2 # 3fd0 <_sk_callback_sse41+0xb4> DB 15,88,202 ; addps %xmm2,%xmm1 DB 15,16,2 ; movups (%rdx),%xmm0 DB 15,88,193 ; addps %xmm1,%xmm0 DB 102,15,110,8 ; movd (%rax),%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 15,88,202 ; addps %xmm2,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,21,176,62,0,0 ; movaps 0x3eb0(%rip),%xmm2 # 3fe0 <_sk_callback_sse41+0xc4> DB 15,87,219 ; xorps %xmm3,%xmm3 DB 15,87,228 ; xorps %xmm4,%xmm4 DB 15,87,237 ; xorps %xmm5,%xmm5 DB 15,87,246 ; xorps %xmm6,%xmm6 DB 15,87,255 ; xorps %xmm7,%xmm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_constant_color_sse41 _sk_constant_color_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clear_sse41 _sk_clear_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 15,87,219 ; xorps %xmm3,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_srcatop_sse41 _sk_srcatop_sse41 LABEL PROC DB 15,89,199 ; mulps %xmm7,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 65,15,88,193 ; addps %xmm9,%xmm0 DB 15,89,207 ; mulps %xmm7,%xmm1 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 65,15,88,201 ; addps %xmm9,%xmm1 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,88,209 ; addps %xmm9,%xmm2 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 65,15,88,216 ; addps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstatop_sse41 _sk_dstatop_sse41 LABEL PROC DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,89,196 ; mulps %xmm4,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,92,207 ; subps %xmm7,%xmm9 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,89,197 ; mulps %xmm5,%xmm8 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,89,198 ; mulps %xmm6,%xmm8 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 65,15,88,208 ; addps %xmm8,%xmm2 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 65,15,88,217 ; addps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcin_sse41 _sk_srcin_sse41 LABEL PROC DB 15,89,199 ; mulps %xmm7,%xmm0 DB 15,89,207 ; mulps %xmm7,%xmm1 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstin_sse41 _sk_dstin_sse41 LABEL PROC DB 15,40,195 ; movaps %xmm3,%xmm0 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 15,40,211 ; movaps %xmm3,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcout_sse41 _sk_srcout_sse41 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,199 ; subps %xmm7,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstout_sse41 _sk_dstout_sse41 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,216 ; movaps %xmm8,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_srcover_sse41 _sk_srcover_sse41 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 65,15,88,193 ; addps %xmm9,%xmm0 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 65,15,88,201 ; addps %xmm9,%xmm1 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,88,209 ; addps %xmm9,%xmm2 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 65,15,88,216 ; addps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstover_sse41 _sk_dstover_sse41 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,199 ; subps %xmm7,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,88,196 ; addps %xmm4,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 15,88,223 ; addps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_modulate_sse41 _sk_modulate_sse41 LABEL PROC DB 15,89,196 ; mulps %xmm4,%xmm0 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_multiply_sse41 _sk_multiply_sse41 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,92,207 ; subps %xmm7,%xmm9 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 68,15,89,220 ; mulps %xmm4,%xmm11 DB 69,15,88,218 ; addps %xmm10,%xmm11 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 65,15,88,195 ; addps %xmm11,%xmm0 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 68,15,89,221 ; mulps %xmm5,%xmm11 DB 69,15,88,218 ; addps %xmm10,%xmm11 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 65,15,88,203 ; addps %xmm11,%xmm1 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,210 ; mulps %xmm2,%xmm10 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 68,15,89,222 ; mulps %xmm6,%xmm11 DB 69,15,88,218 ; addps %xmm10,%xmm11 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 65,15,88,211 ; addps %xmm11,%xmm2 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 69,15,88,193 ; addps %xmm9,%xmm8 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 65,15,88,216 ; addps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_plus__sse41 _sk_plus__sse41 LABEL PROC DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,88,205 ; addps %xmm5,%xmm1 DB 15,88,214 ; addps %xmm6,%xmm2 DB 15,88,223 ; addps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_screen_sse41 _sk_screen_sse41 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 68,15,88,196 ; addps %xmm4,%xmm8 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 68,15,92,192 ; subps %xmm0,%xmm8 DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,88,205 ; addps %xmm5,%xmm9 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 68,15,92,201 ; subps %xmm1,%xmm9 DB 68,15,40,210 ; movaps %xmm2,%xmm10 DB 68,15,88,214 ; addps %xmm6,%xmm10 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 68,15,92,210 ; subps %xmm2,%xmm10 DB 68,15,40,219 ; movaps %xmm3,%xmm11 DB 68,15,88,223 ; addps %xmm7,%xmm11 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 68,15,92,219 ; subps %xmm3,%xmm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,40,201 ; movaps %xmm9,%xmm1 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 65,15,40,219 ; movaps %xmm11,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_xor__sse41 _sk_xor__sse41 LABEL PROC DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,92,207 ; subps %xmm7,%xmm9 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,92,216 ; subps %xmm8,%xmm3 DB 68,15,40,211 ; movaps %xmm3,%xmm10 DB 68,15,89,212 ; mulps %xmm4,%xmm10 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 68,15,40,211 ; movaps %xmm3,%xmm10 DB 68,15,89,213 ; mulps %xmm5,%xmm10 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 68,15,40,211 ; movaps %xmm3,%xmm10 DB 68,15,89,214 ; mulps %xmm6,%xmm10 DB 65,15,88,210 ; addps %xmm10,%xmm2 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 65,15,88,217 ; addps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_darken_sse41 _sk_darken_sse41 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 15,88,196 ; addps %xmm4,%xmm0 DB 68,15,89,207 ; mulps %xmm7,%xmm9 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 68,15,95,201 ; maxps %xmm1,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 69,15,95,193 ; maxps %xmm9,%xmm8 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,95,209 ; maxps %xmm9,%xmm2 DB 68,15,92,194 ; subps %xmm2,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,88,218 ; addps %xmm2,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_lighten_sse41 _sk_lighten_sse41 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 15,88,196 ; addps %xmm4,%xmm0 DB 68,15,89,207 ; mulps %xmm7,%xmm9 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 68,15,93,201 ; minps %xmm1,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 69,15,93,193 ; minps %xmm9,%xmm8 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,93,209 ; minps %xmm9,%xmm2 DB 68,15,92,194 ; subps %xmm2,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,88,218 ; addps %xmm2,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_difference_sse41 _sk_difference_sse41 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 15,88,196 ; addps %xmm4,%xmm0 DB 68,15,89,207 ; mulps %xmm7,%xmm9 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 68,15,93,201 ; minps %xmm1,%xmm9 DB 69,15,88,201 ; addps %xmm9,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 69,15,93,193 ; minps %xmm9,%xmm8 DB 69,15,88,192 ; addps %xmm8,%xmm8 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,93,209 ; minps %xmm9,%xmm2 DB 15,88,210 ; addps %xmm2,%xmm2 DB 68,15,92,194 ; subps %xmm2,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,88,218 ; addps %xmm2,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_exclusion_sse41 _sk_exclusion_sse41 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 15,40,200 ; movaps %xmm0,%xmm1 DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 15,88,201 ; addps %xmm1,%xmm1 DB 15,92,193 ; subps %xmm1,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 68,15,89,197 ; mulps %xmm5,%xmm8 DB 69,15,88,192 ; addps %xmm8,%xmm8 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 15,88,210 ; addps %xmm2,%xmm2 DB 68,15,92,194 ; subps %xmm2,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,88,218 ; addps %xmm2,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_colorburn_sse41 _sk_colorburn_sse41 LABEL PROC DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,40,218 ; movaps %xmm10,%xmm11 DB 68,15,92,223 ; subps %xmm7,%xmm11 DB 69,15,40,227 ; movaps %xmm11,%xmm12 DB 69,15,89,225 ; mulps %xmm9,%xmm12 DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 15,40,199 ; movaps %xmm7,%xmm0 DB 15,92,196 ; subps %xmm4,%xmm0 DB 15,89,195 ; mulps %xmm3,%xmm0 DB 65,15,94,193 ; divps %xmm9,%xmm0 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,93,232 ; minps %xmm0,%xmm13 DB 68,15,40,247 ; movaps %xmm7,%xmm14 DB 69,15,92,245 ; subps %xmm13,%xmm14 DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 65,15,194,192,0 ; cmpeqps %xmm8,%xmm0 DB 68,15,92,211 ; subps %xmm3,%xmm10 DB 68,15,89,243 ; mulps %xmm3,%xmm14 DB 69,15,88,244 ; addps %xmm12,%xmm14 DB 102,69,15,56,20,241 ; blendvps %xmm0,%xmm9,%xmm14 DB 69,15,40,202 ; movaps %xmm10,%xmm9 DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 68,15,88,228 ; addps %xmm4,%xmm12 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,194,199,0 ; cmpeqps %xmm7,%xmm0 DB 69,15,88,206 ; addps %xmm14,%xmm9 DB 102,69,15,56,20,204 ; blendvps %xmm0,%xmm12,%xmm9 DB 69,15,40,227 ; movaps %xmm11,%xmm12 DB 68,15,89,225 ; mulps %xmm1,%xmm12 DB 15,40,199 ; movaps %xmm7,%xmm0 DB 15,92,197 ; subps %xmm5,%xmm0 DB 15,89,195 ; mulps %xmm3,%xmm0 DB 15,94,193 ; divps %xmm1,%xmm0 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,93,232 ; minps %xmm0,%xmm13 DB 68,15,40,247 ; movaps %xmm7,%xmm14 DB 69,15,92,245 ; subps %xmm13,%xmm14 DB 15,40,193 ; movaps %xmm1,%xmm0 DB 65,15,194,192,0 ; cmpeqps %xmm8,%xmm0 DB 68,15,89,243 ; mulps %xmm3,%xmm14 DB 69,15,88,244 ; addps %xmm12,%xmm14 DB 102,68,15,56,20,241 ; blendvps %xmm0,%xmm1,%xmm14 DB 65,15,40,202 ; movaps %xmm10,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 68,15,88,229 ; addps %xmm5,%xmm12 DB 65,15,88,206 ; addps %xmm14,%xmm1 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 15,194,199,0 ; cmpeqps %xmm7,%xmm0 DB 102,65,15,56,20,204 ; blendvps %xmm0,%xmm12,%xmm1 DB 15,40,199 ; movaps %xmm7,%xmm0 DB 15,92,198 ; subps %xmm6,%xmm0 DB 15,89,195 ; mulps %xmm3,%xmm0 DB 15,94,194 ; divps %xmm2,%xmm0 DB 68,15,40,231 ; movaps %xmm7,%xmm12 DB 68,15,93,224 ; minps %xmm0,%xmm12 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 69,15,92,236 ; subps %xmm12,%xmm13 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 68,15,194,194,0 ; cmpeqps %xmm2,%xmm8 DB 68,15,89,235 ; mulps %xmm3,%xmm13 DB 69,15,88,235 ; addps %xmm11,%xmm13 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 102,68,15,56,20,234 ; blendvps %xmm0,%xmm2,%xmm13 DB 68,15,88,222 ; addps %xmm6,%xmm11 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 65,15,88,213 ; addps %xmm13,%xmm2 DB 15,40,198 ; movaps %xmm6,%xmm0 DB 15,194,199,0 ; cmpeqps %xmm7,%xmm0 DB 102,65,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm2 DB 68,15,89,215 ; mulps %xmm7,%xmm10 DB 65,15,88,218 ; addps %xmm10,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_colordodge_sse41 _sk_colordodge_sse41 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,40,218 ; movaps %xmm10,%xmm11 DB 68,15,92,223 ; subps %xmm7,%xmm11 DB 69,15,40,227 ; movaps %xmm11,%xmm12 DB 69,15,89,224 ; mulps %xmm8,%xmm12 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 15,40,195 ; movaps %xmm3,%xmm0 DB 65,15,92,192 ; subps %xmm8,%xmm0 DB 68,15,94,200 ; divps %xmm0,%xmm9 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,40,247 ; movaps %xmm7,%xmm14 DB 69,15,93,241 ; minps %xmm9,%xmm14 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 15,194,195,0 ; cmpeqps %xmm3,%xmm0 DB 68,15,89,243 ; mulps %xmm3,%xmm14 DB 69,15,88,244 ; addps %xmm12,%xmm14 DB 102,69,15,56,20,240 ; blendvps %xmm0,%xmm8,%xmm14 DB 69,15,87,201 ; xorps %xmm9,%xmm9 DB 68,15,92,211 ; subps %xmm3,%xmm10 DB 69,15,40,194 ; movaps %xmm10,%xmm8 DB 68,15,89,196 ; mulps %xmm4,%xmm8 DB 68,15,88,228 ; addps %xmm4,%xmm12 DB 69,15,88,198 ; addps %xmm14,%xmm8 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 65,15,194,193,0 ; cmpeqps %xmm9,%xmm0 DB 102,69,15,56,20,196 ; blendvps %xmm0,%xmm12,%xmm8 DB 68,15,40,227 ; movaps %xmm3,%xmm12 DB 68,15,89,229 ; mulps %xmm5,%xmm12 DB 15,40,195 ; movaps %xmm3,%xmm0 DB 15,92,193 ; subps %xmm1,%xmm0 DB 68,15,94,224 ; divps %xmm0,%xmm12 DB 69,15,40,243 ; movaps %xmm11,%xmm14 DB 68,15,89,241 ; mulps %xmm1,%xmm14 DB 69,15,93,236 ; minps %xmm12,%xmm13 DB 15,40,193 ; movaps %xmm1,%xmm0 DB 15,194,195,0 ; cmpeqps %xmm3,%xmm0 DB 68,15,89,235 ; mulps %xmm3,%xmm13 DB 69,15,88,238 ; addps %xmm14,%xmm13 DB 102,68,15,56,20,233 ; blendvps %xmm0,%xmm1,%xmm13 DB 65,15,40,202 ; movaps %xmm10,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 68,15,88,245 ; addps %xmm5,%xmm14 DB 65,15,88,205 ; addps %xmm13,%xmm1 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 65,15,194,193,0 ; cmpeqps %xmm9,%xmm0 DB 102,65,15,56,20,206 ; blendvps %xmm0,%xmm14,%xmm1 DB 68,15,40,227 ; movaps %xmm3,%xmm12 DB 68,15,89,230 ; mulps %xmm6,%xmm12 DB 15,40,195 ; movaps %xmm3,%xmm0 DB 15,92,194 ; subps %xmm2,%xmm0 DB 68,15,94,224 ; divps %xmm0,%xmm12 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,93,236 ; minps %xmm12,%xmm13 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 15,194,195,0 ; cmpeqps %xmm3,%xmm0 DB 68,15,89,235 ; mulps %xmm3,%xmm13 DB 69,15,88,235 ; addps %xmm11,%xmm13 DB 102,68,15,56,20,234 ; blendvps %xmm0,%xmm2,%xmm13 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 65,15,88,213 ; addps %xmm13,%xmm2 DB 68,15,194,206,0 ; cmpeqps %xmm6,%xmm9 DB 68,15,88,222 ; addps %xmm6,%xmm11 DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 102,65,15,56,20,211 ; blendvps %xmm0,%xmm11,%xmm2 DB 68,15,89,215 ; mulps %xmm7,%xmm10 DB 65,15,88,218 ; addps %xmm10,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_hardlight_sse41 _sk_hardlight_sse41 LABEL PROC DB 72,131,236,24 ; sub $0x18,%rsp DB 15,41,52,36 ; movaps %xmm6,(%rsp) DB 68,15,40,229 ; movaps %xmm5,%xmm12 DB 15,40,244 ; movaps %xmm4,%xmm6 DB 15,40,227 ; movaps %xmm3,%xmm4 DB 15,40,234 ; movaps %xmm2,%xmm5 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 15,92,215 ; subps %xmm7,%xmm2 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 68,15,92,212 ; subps %xmm4,%xmm10 DB 69,15,40,194 ; movaps %xmm10,%xmm8 DB 68,15,89,198 ; mulps %xmm6,%xmm8 DB 68,15,88,192 ; addps %xmm0,%xmm8 DB 68,15,40,252 ; movaps %xmm4,%xmm15 DB 69,15,92,249 ; subps %xmm9,%xmm15 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,40,247 ; movaps %xmm7,%xmm14 DB 15,40,199 ; movaps %xmm7,%xmm0 DB 15,92,198 ; subps %xmm6,%xmm0 DB 65,15,89,199 ; mulps %xmm15,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 68,15,40,251 ; movaps %xmm3,%xmm15 DB 68,15,92,248 ; subps %xmm0,%xmm15 DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,196,2 ; cmpleps %xmm4,%xmm0 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 69,15,88,201 ; addps %xmm9,%xmm9 DB 102,69,15,56,20,249 ; blendvps %xmm0,%xmm9,%xmm15 DB 68,15,40,218 ; movaps %xmm2,%xmm11 DB 68,15,89,217 ; mulps %xmm1,%xmm11 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,92,193 ; subps %xmm1,%xmm0 DB 69,15,40,204 ; movaps %xmm12,%xmm9 DB 69,15,92,233 ; subps %xmm9,%xmm13 DB 68,15,89,232 ; mulps %xmm0,%xmm13 DB 69,15,88,237 ; addps %xmm13,%xmm13 DB 68,15,40,227 ; movaps %xmm3,%xmm12 DB 69,15,92,229 ; subps %xmm13,%xmm12 DB 15,40,193 ; movaps %xmm1,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,196,2 ; cmpleps %xmm4,%xmm0 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 69,15,40,233 ; movaps %xmm9,%xmm13 DB 15,88,201 ; addps %xmm1,%xmm1 DB 102,68,15,56,20,225 ; blendvps %xmm0,%xmm1,%xmm12 DB 65,15,40,202 ; movaps %xmm10,%xmm1 DB 69,15,40,202 ; movaps %xmm10,%xmm9 DB 68,15,89,215 ; mulps %xmm7,%xmm10 DB 69,15,88,199 ; addps %xmm15,%xmm8 DB 65,15,89,205 ; mulps %xmm13,%xmm1 DB 65,15,88,203 ; addps %xmm11,%xmm1 DB 65,15,88,204 ; addps %xmm12,%xmm1 DB 15,89,213 ; mulps %xmm5,%xmm2 DB 68,15,40,28,36 ; movaps (%rsp),%xmm11 DB 69,15,89,203 ; mulps %xmm11,%xmm9 DB 68,15,88,202 ; addps %xmm2,%xmm9 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,196,2 ; cmpleps %xmm4,%xmm0 DB 15,40,212 ; movaps %xmm4,%xmm2 DB 15,92,213 ; subps %xmm5,%xmm2 DB 65,15,89,235 ; mulps %xmm11,%xmm5 DB 15,88,237 ; addps %xmm5,%xmm5 DB 69,15,92,243 ; subps %xmm11,%xmm14 DB 68,15,89,242 ; mulps %xmm2,%xmm14 DB 69,15,88,246 ; addps %xmm14,%xmm14 DB 65,15,92,222 ; subps %xmm14,%xmm3 DB 102,15,56,20,221 ; blendvps %xmm0,%xmm5,%xmm3 DB 68,15,88,203 ; addps %xmm3,%xmm9 DB 65,15,88,226 ; addps %xmm10,%xmm4 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,40,209 ; movaps %xmm9,%xmm2 DB 15,40,220 ; movaps %xmm4,%xmm3 DB 15,40,230 ; movaps %xmm6,%xmm4 DB 65,15,40,237 ; movaps %xmm13,%xmm5 DB 65,15,40,243 ; movaps %xmm11,%xmm6 DB 72,131,196,24 ; add $0x18,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_overlay_sse41 _sk_overlay_sse41 LABEL PROC DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,40,240 ; movaps %xmm0,%xmm14 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,40,218 ; movaps %xmm10,%xmm11 DB 68,15,92,223 ; subps %xmm7,%xmm11 DB 65,15,40,195 ; movaps %xmm11,%xmm0 DB 65,15,89,198 ; mulps %xmm14,%xmm0 DB 68,15,92,211 ; subps %xmm3,%xmm10 DB 69,15,40,194 ; movaps %xmm10,%xmm8 DB 68,15,89,196 ; mulps %xmm4,%xmm8 DB 68,15,88,192 ; addps %xmm0,%xmm8 DB 68,15,40,235 ; movaps %xmm3,%xmm13 DB 69,15,92,238 ; subps %xmm14,%xmm13 DB 68,15,89,244 ; mulps %xmm4,%xmm14 DB 15,40,207 ; movaps %xmm7,%xmm1 DB 15,92,204 ; subps %xmm4,%xmm1 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0 DB 69,15,88,246 ; addps %xmm14,%xmm14 DB 68,15,40,227 ; movaps %xmm3,%xmm12 DB 68,15,89,231 ; mulps %xmm7,%xmm12 DB 65,15,89,205 ; mulps %xmm13,%xmm1 DB 15,88,201 ; addps %xmm1,%xmm1 DB 69,15,40,236 ; movaps %xmm12,%xmm13 DB 68,15,92,233 ; subps %xmm1,%xmm13 DB 102,69,15,56,20,238 ; blendvps %xmm0,%xmm14,%xmm13 DB 69,15,88,197 ; addps %xmm13,%xmm8 DB 65,15,40,195 ; movaps %xmm11,%xmm0 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,40,202 ; movaps %xmm10,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 15,88,200 ; addps %xmm0,%xmm1 DB 68,15,40,235 ; movaps %xmm3,%xmm13 DB 69,15,92,233 ; subps %xmm9,%xmm13 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 68,15,40,247 ; movaps %xmm7,%xmm14 DB 68,15,92,245 ; subps %xmm5,%xmm14 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0 DB 69,15,88,201 ; addps %xmm9,%xmm9 DB 69,15,89,245 ; mulps %xmm13,%xmm14 DB 69,15,88,246 ; addps %xmm14,%xmm14 DB 69,15,40,236 ; movaps %xmm12,%xmm13 DB 69,15,92,238 ; subps %xmm14,%xmm13 DB 102,69,15,56,20,233 ; blendvps %xmm0,%xmm9,%xmm13 DB 65,15,88,205 ; addps %xmm13,%xmm1 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,40,202 ; movaps %xmm10,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 69,15,88,203 ; addps %xmm11,%xmm9 DB 68,15,40,219 ; movaps %xmm3,%xmm11 DB 68,15,92,218 ; subps %xmm2,%xmm11 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,92,238 ; subps %xmm6,%xmm13 DB 15,40,198 ; movaps %xmm6,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0 DB 15,88,210 ; addps %xmm2,%xmm2 DB 69,15,89,235 ; mulps %xmm11,%xmm13 DB 69,15,88,237 ; addps %xmm13,%xmm13 DB 69,15,92,229 ; subps %xmm13,%xmm12 DB 102,68,15,56,20,226 ; blendvps %xmm0,%xmm2,%xmm12 DB 69,15,88,204 ; addps %xmm12,%xmm9 DB 68,15,89,215 ; mulps %xmm7,%xmm10 DB 65,15,88,218 ; addps %xmm10,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,40,209 ; movaps %xmm9,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_softlight_sse41 _sk_softlight_sse41 LABEL PROC DB 72,131,236,56 ; sub $0x38,%rsp DB 15,41,116,36,16 ; movaps %xmm6,0x10(%rsp) DB 15,40,244 ; movaps %xmm4,%xmm6 DB 15,41,84,36,32 ; movaps %xmm2,0x20(%rsp) DB 68,15,40,225 ; movaps %xmm1,%xmm12 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 15,87,228 ; xorps %xmm4,%xmm4 DB 15,194,231,1 ; cmpltps %xmm7,%xmm4 DB 15,40,198 ; movaps %xmm6,%xmm0 DB 15,94,199 ; divps %xmm7,%xmm0 DB 15,84,196 ; andps %xmm4,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 68,15,40,209 ; movaps %xmm1,%xmm10 DB 68,15,92,208 ; subps %xmm0,%xmm10 DB 68,15,40,240 ; movaps %xmm0,%xmm14 DB 68,15,40,248 ; movaps %xmm0,%xmm15 DB 15,82,208 ; rsqrtps %xmm0,%xmm2 DB 68,15,83,218 ; rcpps %xmm2,%xmm11 DB 68,15,92,216 ; subps %xmm0,%xmm11 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 15,89,210 ; mulps %xmm2,%xmm2 DB 15,88,208 ; addps %xmm0,%xmm2 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 69,15,88,201 ; addps %xmm9,%xmm9 DB 68,15,92,241 ; subps %xmm1,%xmm14 DB 68,15,89,242 ; mulps %xmm2,%xmm14 DB 184,0,0,224,64 ; mov $0x40e00000,%eax DB 102,68,15,110,232 ; movd %eax,%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,89,253 ; mulps %xmm13,%xmm15 DB 69,15,88,254 ; addps %xmm14,%xmm15 DB 15,40,198 ; movaps %xmm6,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0 DB 102,69,15,56,20,223 ; blendvps %xmm0,%xmm15,%xmm11 DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 15,92,195 ; subps %xmm3,%xmm0 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 68,15,88,211 ; addps %xmm3,%xmm10 DB 68,15,89,214 ; mulps %xmm6,%xmm10 DB 15,40,211 ; movaps %xmm3,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 15,89,199 ; mulps %xmm7,%xmm0 DB 68,15,89,216 ; mulps %xmm0,%xmm11 DB 68,15,88,218 ; addps %xmm2,%xmm11 DB 68,15,194,203,2 ; cmpleps %xmm3,%xmm9 DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 102,69,15,56,20,218 ; blendvps %xmm0,%xmm10,%xmm11 DB 68,15,40,213 ; movaps %xmm5,%xmm10 DB 68,15,94,215 ; divps %xmm7,%xmm10 DB 68,15,84,212 ; andps %xmm4,%xmm10 DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 69,15,92,202 ; subps %xmm10,%xmm9 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 15,88,210 ; addps %xmm2,%xmm2 DB 15,88,210 ; addps %xmm2,%xmm2 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 15,89,192 ; mulps %xmm0,%xmm0 DB 15,88,194 ; addps %xmm2,%xmm0 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 15,92,209 ; subps %xmm1,%xmm2 DB 15,89,208 ; mulps %xmm0,%xmm2 DB 65,15,82,194 ; rsqrtps %xmm10,%xmm0 DB 68,15,83,240 ; rcpps %xmm0,%xmm14 DB 69,15,92,242 ; subps %xmm10,%xmm14 DB 69,15,89,213 ; mulps %xmm13,%xmm10 DB 68,15,88,210 ; addps %xmm2,%xmm10 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0 DB 102,69,15,56,20,242 ; blendvps %xmm0,%xmm10,%xmm14 DB 65,15,40,196 ; movaps %xmm12,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 68,15,88,203 ; addps %xmm3,%xmm9 DB 15,41,44,36 ; movaps %xmm5,(%rsp) DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 68,15,89,242 ; mulps %xmm2,%xmm14 DB 15,40,211 ; movaps %xmm3,%xmm2 DB 15,89,213 ; mulps %xmm5,%xmm2 DB 68,15,88,242 ; addps %xmm2,%xmm14 DB 68,15,40,249 ; movaps %xmm1,%xmm15 DB 15,194,195,2 ; cmpleps %xmm3,%xmm0 DB 102,69,15,56,20,241 ; blendvps %xmm0,%xmm9,%xmm14 DB 68,15,40,209 ; movaps %xmm1,%xmm10 DB 15,40,108,36,16 ; movaps 0x10(%rsp),%xmm5 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 15,94,199 ; divps %xmm7,%xmm0 DB 15,84,196 ; andps %xmm4,%xmm0 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 15,92,209 ; subps %xmm1,%xmm2 DB 15,92,200 ; subps %xmm0,%xmm1 DB 68,15,89,232 ; mulps %xmm0,%xmm13 DB 15,82,224 ; rsqrtps %xmm0,%xmm4 DB 68,15,83,204 ; rcpps %xmm4,%xmm9 DB 68,15,92,200 ; subps %xmm0,%xmm9 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,40,224 ; movaps %xmm0,%xmm4 DB 15,89,228 ; mulps %xmm4,%xmm4 DB 15,88,224 ; addps %xmm0,%xmm4 DB 15,89,226 ; mulps %xmm2,%xmm4 DB 68,15,88,236 ; addps %xmm4,%xmm13 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,194,199,2 ; cmpleps %xmm7,%xmm0 DB 102,69,15,56,20,205 ; blendvps %xmm0,%xmm13,%xmm9 DB 68,15,40,108,36,32 ; movaps 0x20(%rsp),%xmm13 DB 65,15,40,197 ; movaps %xmm13,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,202 ; mulps %xmm2,%xmm1 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 15,40,211 ; movaps %xmm3,%xmm2 DB 15,89,213 ; mulps %xmm5,%xmm2 DB 68,15,88,202 ; addps %xmm2,%xmm9 DB 15,88,203 ; addps %xmm3,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 15,40,213 ; movaps %xmm5,%xmm2 DB 15,194,195,2 ; cmpleps %xmm3,%xmm0 DB 102,68,15,56,20,201 ; blendvps %xmm0,%xmm1,%xmm9 DB 68,15,92,255 ; subps %xmm7,%xmm15 DB 69,15,89,199 ; mulps %xmm15,%xmm8 DB 69,15,89,231 ; mulps %xmm15,%xmm12 DB 69,15,89,253 ; mulps %xmm13,%xmm15 DB 68,15,92,211 ; subps %xmm3,%xmm10 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 15,89,198 ; mulps %xmm6,%xmm0 DB 68,15,88,192 ; addps %xmm0,%xmm8 DB 69,15,88,195 ; addps %xmm11,%xmm8 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 15,40,44,36 ; movaps (%rsp),%xmm5 DB 15,89,197 ; mulps %xmm5,%xmm0 DB 68,15,88,224 ; addps %xmm0,%xmm12 DB 69,15,88,230 ; addps %xmm14,%xmm12 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 15,89,194 ; mulps %xmm2,%xmm0 DB 65,15,88,199 ; addps %xmm15,%xmm0 DB 68,15,88,200 ; addps %xmm0,%xmm9 DB 68,15,89,215 ; mulps %xmm7,%xmm10 DB 65,15,88,218 ; addps %xmm10,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,230 ; movaps %xmm6,%xmm4 DB 15,40,242 ; movaps %xmm2,%xmm6 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,40,204 ; movaps %xmm12,%xmm1 DB 65,15,40,209 ; movaps %xmm9,%xmm2 DB 72,131,196,56 ; add $0x38,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_0_sse41 _sk_clamp_0_sse41 LABEL PROC DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 65,15,95,192 ; maxps %xmm8,%xmm0 DB 65,15,95,200 ; maxps %xmm8,%xmm1 DB 65,15,95,208 ; maxps %xmm8,%xmm2 DB 65,15,95,216 ; maxps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_1_sse41 _sk_clamp_1_sse41 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,93,192 ; minps %xmm8,%xmm0 DB 65,15,93,200 ; minps %xmm8,%xmm1 DB 65,15,93,208 ; minps %xmm8,%xmm2 DB 65,15,93,216 ; minps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_a_sse41 _sk_clamp_a_sse41 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,93,216 ; minps %xmm8,%xmm3 DB 15,93,195 ; minps %xmm3,%xmm0 DB 15,93,203 ; minps %xmm3,%xmm1 DB 15,93,211 ; minps %xmm3,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_set_rgb_sse41 _sk_set_rgb_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_swap_rb_sse41 _sk_swap_rb_sse41 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,194 ; movaps %xmm2,%xmm0 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_swap_sse41 _sk_swap_sse41 LABEL PROC DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,40,202 ; movaps %xmm2,%xmm9 DB 68,15,40,209 ; movaps %xmm1,%xmm10 DB 68,15,40,216 ; movaps %xmm0,%xmm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,40,205 ; movaps %xmm5,%xmm1 DB 15,40,214 ; movaps %xmm6,%xmm2 DB 15,40,223 ; movaps %xmm7,%xmm3 DB 65,15,40,227 ; movaps %xmm11,%xmm4 DB 65,15,40,234 ; movaps %xmm10,%xmm5 DB 65,15,40,241 ; movaps %xmm9,%xmm6 DB 65,15,40,248 ; movaps %xmm8,%xmm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_move_src_dst_sse41 _sk_move_src_dst_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,224 ; movaps %xmm0,%xmm4 DB 15,40,233 ; movaps %xmm1,%xmm5 DB 15,40,242 ; movaps %xmm2,%xmm6 DB 15,40,251 ; movaps %xmm3,%xmm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_move_dst_src_sse41 _sk_move_dst_src_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,40,205 ; movaps %xmm5,%xmm1 DB 15,40,214 ; movaps %xmm6,%xmm2 DB 15,40,223 ; movaps %xmm7,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_premul_sse41 _sk_premul_sse41 LABEL PROC DB 15,89,195 ; mulps %xmm3,%xmm0 DB 15,89,203 ; mulps %xmm3,%xmm1 DB 15,89,211 ; mulps %xmm3,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_unpremul_sse41 _sk_unpremul_sse41 LABEL PROC DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,94,203 ; divps %xmm3,%xmm9 DB 68,15,194,195,4 ; cmpneqps %xmm3,%xmm8 DB 69,15,84,193 ; andps %xmm9,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_from_srgb_sse41 _sk_from_srgb_sse41 LABEL PROC DB 184,145,131,158,61 ; mov $0x3d9e8391,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,40,211 ; movaps %xmm11,%xmm10 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 68,15,40,240 ; movaps %xmm0,%xmm14 DB 69,15,89,246 ; mulps %xmm14,%xmm14 DB 184,154,153,153,62 ; mov $0x3e99999a,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 184,92,143,50,63 ; mov $0x3f328f5c,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 69,15,88,204 ; addps %xmm12,%xmm9 DB 184,10,215,35,59 ; mov $0x3b23d70a,%eax DB 102,68,15,110,232 ; movd %eax,%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,89,206 ; mulps %xmm14,%xmm9 DB 69,15,88,205 ; addps %xmm13,%xmm9 DB 184,174,71,97,61 ; mov $0x3d6147ae,%eax DB 102,68,15,110,240 ; movd %eax,%xmm14 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 65,15,194,198,1 ; cmpltps %xmm14,%xmm0 DB 102,69,15,56,20,202 ; blendvps %xmm0,%xmm10,%xmm9 DB 69,15,40,251 ; movaps %xmm11,%xmm15 DB 68,15,89,249 ; mulps %xmm1,%xmm15 DB 15,40,193 ; movaps %xmm1,%xmm0 DB 15,89,192 ; mulps %xmm0,%xmm0 DB 69,15,40,208 ; movaps %xmm8,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 69,15,88,212 ; addps %xmm12,%xmm10 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 69,15,88,213 ; addps %xmm13,%xmm10 DB 65,15,194,206,1 ; cmpltps %xmm14,%xmm1 DB 15,40,193 ; movaps %xmm1,%xmm0 DB 102,69,15,56,20,215 ; blendvps %xmm0,%xmm15,%xmm10 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 15,89,192 ; mulps %xmm0,%xmm0 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 69,15,88,196 ; addps %xmm12,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 69,15,88,197 ; addps %xmm13,%xmm8 DB 65,15,194,214,1 ; cmpltps %xmm14,%xmm2 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 102,69,15,56,20,195 ; blendvps %xmm0,%xmm11,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 65,15,40,202 ; movaps %xmm10,%xmm1 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_to_srgb_sse41 _sk_to_srgb_sse41 LABEL PROC DB 72,131,236,24 ; sub $0x18,%rsp DB 15,41,60,36 ; movaps %xmm7,(%rsp) DB 15,40,254 ; movaps %xmm6,%xmm7 DB 15,40,245 ; movaps %xmm5,%xmm6 DB 15,40,236 ; movaps %xmm4,%xmm5 DB 15,40,227 ; movaps %xmm3,%xmm4 DB 15,40,218 ; movaps %xmm2,%xmm3 DB 15,40,209 ; movaps %xmm1,%xmm2 DB 68,15,82,192 ; rsqrtps %xmm0,%xmm8 DB 69,15,83,200 ; rcpps %xmm8,%xmm9 DB 69,15,82,248 ; rsqrtps %xmm8,%xmm15 DB 184,41,92,71,65 ; mov $0x41475c29,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,40,211 ; movaps %xmm11,%xmm10 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 184,194,135,210,62 ; mov $0x3ed287c2,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 184,206,111,48,63 ; mov $0x3f306fce,%eax DB 102,68,15,110,232 ; movd %eax,%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 184,168,87,202,61 ; mov $0x3dca57a8,%eax DB 53,0,0,0,128 ; xor $0x80000000,%eax DB 102,68,15,110,240 ; movd %eax,%xmm14 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 69,15,89,205 ; mulps %xmm13,%xmm9 DB 69,15,88,206 ; addps %xmm14,%xmm9 DB 69,15,89,252 ; mulps %xmm12,%xmm15 DB 69,15,88,249 ; addps %xmm9,%xmm15 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 69,15,93,207 ; minps %xmm15,%xmm9 DB 184,4,231,140,59 ; mov $0x3b8ce704,%eax DB 102,68,15,110,248 ; movd %eax,%xmm15 DB 69,15,198,255,0 ; shufps $0x0,%xmm15,%xmm15 DB 65,15,194,199,1 ; cmpltps %xmm15,%xmm0 DB 102,69,15,56,20,202 ; blendvps %xmm0,%xmm10,%xmm9 DB 68,15,82,210 ; rsqrtps %xmm2,%xmm10 DB 65,15,83,194 ; rcpps %xmm10,%xmm0 DB 69,15,82,210 ; rsqrtps %xmm10,%xmm10 DB 65,15,89,197 ; mulps %xmm13,%xmm0 DB 65,15,88,198 ; addps %xmm14,%xmm0 DB 69,15,89,212 ; mulps %xmm12,%xmm10 DB 68,15,88,208 ; addps %xmm0,%xmm10 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 65,15,93,202 ; minps %xmm10,%xmm1 DB 69,15,40,211 ; movaps %xmm11,%xmm10 DB 68,15,89,210 ; mulps %xmm2,%xmm10 DB 65,15,194,215,1 ; cmpltps %xmm15,%xmm2 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 102,65,15,56,20,202 ; blendvps %xmm0,%xmm10,%xmm1 DB 15,82,195 ; rsqrtps %xmm3,%xmm0 DB 15,83,208 ; rcpps %xmm0,%xmm2 DB 65,15,89,213 ; mulps %xmm13,%xmm2 DB 65,15,88,214 ; addps %xmm14,%xmm2 DB 15,82,192 ; rsqrtps %xmm0,%xmm0 DB 65,15,89,196 ; mulps %xmm12,%xmm0 DB 15,88,194 ; addps %xmm2,%xmm0 DB 68,15,93,192 ; minps %xmm0,%xmm8 DB 68,15,89,219 ; mulps %xmm3,%xmm11 DB 65,15,194,223,1 ; cmpltps %xmm15,%xmm3 DB 15,40,195 ; movaps %xmm3,%xmm0 DB 102,69,15,56,20,195 ; blendvps %xmm0,%xmm11,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 15,40,220 ; movaps %xmm4,%xmm3 DB 15,40,229 ; movaps %xmm5,%xmm4 DB 15,40,238 ; movaps %xmm6,%xmm5 DB 15,40,247 ; movaps %xmm7,%xmm6 DB 15,40,60,36 ; movaps (%rsp),%xmm7 DB 72,131,196,24 ; add $0x18,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_rgb_to_hsl_sse41 _sk_rgb_to_hsl_sse41 LABEL PROC DB 72,131,236,24 ; sub $0x18,%rsp DB 15,41,60,36 ; movaps %xmm7,(%rsp) DB 15,40,254 ; movaps %xmm6,%xmm7 DB 15,40,245 ; movaps %xmm5,%xmm6 DB 15,40,236 ; movaps %xmm4,%xmm5 DB 15,40,227 ; movaps %xmm3,%xmm4 DB 15,40,218 ; movaps %xmm2,%xmm3 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 65,184,171,170,42,62 ; mov $0x3e2aaaab,%r8d DB 65,185,0,0,192,64 ; mov $0x40c00000,%r9d DB 184,0,0,0,64 ; mov $0x40000000,%eax DB 185,0,0,128,64 ; mov $0x40800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 68,15,40,224 ; movaps %xmm0,%xmm12 DB 68,15,95,225 ; maxps %xmm1,%xmm12 DB 68,15,95,227 ; maxps %xmm3,%xmm12 DB 68,15,40,232 ; movaps %xmm0,%xmm13 DB 68,15,93,233 ; minps %xmm1,%xmm13 DB 68,15,93,235 ; minps %xmm3,%xmm13 DB 69,15,40,204 ; movaps %xmm12,%xmm9 DB 68,15,194,200,0 ; cmpeqps %xmm0,%xmm9 DB 68,15,40,241 ; movaps %xmm1,%xmm14 DB 68,15,92,243 ; subps %xmm3,%xmm14 DB 68,15,40,249 ; movaps %xmm1,%xmm15 DB 68,15,194,251,1 ; cmpltps %xmm3,%xmm15 DB 69,15,40,212 ; movaps %xmm12,%xmm10 DB 68,15,194,209,0 ; cmpeqps %xmm1,%xmm10 DB 15,92,216 ; subps %xmm0,%xmm3 DB 15,92,193 ; subps %xmm1,%xmm0 DB 65,15,40,212 ; movaps %xmm12,%xmm2 DB 65,15,92,213 ; subps %xmm13,%xmm2 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 68,15,94,218 ; divps %xmm2,%xmm11 DB 65,15,89,195 ; mulps %xmm11,%xmm0 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,88,192 ; addps %xmm0,%xmm8 DB 102,15,110,200 ; movd %eax,%xmm1 DB 65,15,89,219 ; mulps %xmm11,%xmm3 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,88,217 ; addps %xmm1,%xmm3 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 102,68,15,56,20,195 ; blendvps %xmm0,%xmm3,%xmm8 DB 69,15,89,243 ; mulps %xmm11,%xmm14 DB 102,65,15,110,217 ; movd %r9d,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,84,223 ; andps %xmm15,%xmm3 DB 65,15,88,222 ; addps %xmm14,%xmm3 DB 184,0,0,0,63 ; mov $0x3f000000,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 102,68,15,56,20,195 ; blendvps %xmm0,%xmm3,%xmm8 DB 65,15,40,220 ; movaps %xmm12,%xmm3 DB 65,15,92,204 ; subps %xmm12,%xmm1 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,40,204 ; movaps %xmm12,%xmm9 DB 69,15,89,202 ; mulps %xmm10,%xmm9 DB 69,15,194,209,1 ; cmpltps %xmm9,%xmm10 DB 65,15,92,205 ; subps %xmm13,%xmm1 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 102,68,15,56,20,225 ; blendvps %xmm0,%xmm1,%xmm12 DB 65,15,194,221,4 ; cmpneqps %xmm13,%xmm3 DB 102,65,15,110,192 ; movd %r8d,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 68,15,84,195 ; andps %xmm3,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 65,15,94,212 ; divps %xmm12,%xmm2 DB 15,84,211 ; andps %xmm3,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 15,40,202 ; movaps %xmm2,%xmm1 DB 65,15,40,209 ; movaps %xmm9,%xmm2 DB 15,40,220 ; movaps %xmm4,%xmm3 DB 15,40,229 ; movaps %xmm5,%xmm4 DB 15,40,238 ; movaps %xmm6,%xmm5 DB 15,40,247 ; movaps %xmm7,%xmm6 DB 15,40,60,36 ; movaps (%rsp),%xmm7 DB 72,131,196,24 ; add $0x18,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_hsl_to_rgb_sse41 _sk_hsl_to_rgb_sse41 LABEL PROC DB 72,129,236,152,0,0,0 ; sub $0x98,%rsp DB 15,41,188,36,128,0,0,0 ; movaps %xmm7,0x80(%rsp) DB 15,41,116,36,112 ; movaps %xmm6,0x70(%rsp) DB 15,41,108,36,96 ; movaps %xmm5,0x60(%rsp) DB 15,41,100,36,80 ; movaps %xmm4,0x50(%rsp) DB 15,41,92,36,64 ; movaps %xmm3,0x40(%rsp) DB 68,15,40,208 ; movaps %xmm0,%xmm10 DB 184,0,0,0,63 ; mov $0x3f000000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,41,28,36 ; movaps %xmm3,(%rsp) DB 15,40,194 ; movaps %xmm2,%xmm0 DB 15,194,195,1 ; cmpltps %xmm3,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,40,224 ; movaps %xmm8,%xmm4 DB 15,88,225 ; addps %xmm1,%xmm4 DB 15,89,226 ; mulps %xmm2,%xmm4 DB 15,40,217 ; movaps %xmm1,%xmm3 DB 15,40,249 ; movaps %xmm1,%xmm7 DB 15,88,250 ; addps %xmm2,%xmm7 DB 15,89,218 ; mulps %xmm2,%xmm3 DB 15,40,234 ; movaps %xmm2,%xmm5 DB 15,92,251 ; subps %xmm3,%xmm7 DB 102,15,56,20,252 ; blendvps %xmm0,%xmm4,%xmm7 DB 184,0,0,0,64 ; mov $0x40000000,%eax DB 185,171,170,170,62 ; mov $0x3eaaaaab,%ecx DB 102,15,110,209 ; movd %ecx,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,41,84,36,48 ; movaps %xmm2,0x30(%rsp) DB 65,15,88,210 ; addps %xmm10,%xmm2 DB 185,0,0,0,0 ; mov $0x0,%ecx DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 15,194,194,1 ; cmpltps %xmm2,%xmm0 DB 15,40,218 ; movaps %xmm2,%xmm3 DB 65,15,92,216 ; subps %xmm8,%xmm3 DB 68,15,40,226 ; movaps %xmm2,%xmm12 DB 102,68,15,56,20,227 ; blendvps %xmm0,%xmm3,%xmm12 DB 102,68,15,110,241 ; movd %ecx,%xmm14 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 65,15,194,198,1 ; cmpltps %xmm14,%xmm0 DB 68,15,41,116,36,32 ; movaps %xmm14,0x20(%rsp) DB 65,15,40,216 ; movaps %xmm8,%xmm3 DB 15,88,218 ; addps %xmm2,%xmm3 DB 102,68,15,56,20,227 ; blendvps %xmm0,%xmm3,%xmm12 DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 15,40,229 ; movaps %xmm5,%xmm4 DB 15,41,100,36,16 ; movaps %xmm4,0x10(%rsp) DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 68,15,92,207 ; subps %xmm7,%xmm9 DB 184,171,170,42,62 ; mov $0x3e2aaaab,%eax DB 15,40,199 ; movaps %xmm7,%xmm0 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 185,0,0,192,64 ; mov $0x40c00000,%ecx DB 102,15,110,241 ; movd %ecx,%xmm6 DB 15,198,246,0 ; shufps $0x0,%xmm6,%xmm6 DB 15,89,240 ; mulps %xmm0,%xmm6 DB 185,171,170,42,63 ; mov $0x3f2aaaab,%ecx DB 102,15,110,217 ; movd %ecx,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,40,235 ; movaps %xmm3,%xmm5 DB 65,15,92,236 ; subps %xmm12,%xmm5 DB 69,15,40,236 ; movaps %xmm12,%xmm13 DB 69,15,40,252 ; movaps %xmm12,%xmm15 DB 68,15,194,227,1 ; cmpltps %xmm3,%xmm12 DB 15,89,238 ; mulps %xmm6,%xmm5 DB 65,15,88,233 ; addps %xmm9,%xmm5 DB 69,15,40,217 ; movaps %xmm9,%xmm11 DB 65,15,40,196 ; movaps %xmm12,%xmm0 DB 102,68,15,56,20,221 ; blendvps %xmm0,%xmm5,%xmm11 DB 68,15,194,60,36,1 ; cmpltps (%rsp),%xmm15 DB 65,15,40,199 ; movaps %xmm15,%xmm0 DB 102,68,15,56,20,223 ; blendvps %xmm0,%xmm7,%xmm11 DB 102,15,110,232 ; movd %eax,%xmm5 DB 15,198,237,0 ; shufps $0x0,%xmm5,%xmm5 DB 68,15,194,237,1 ; cmpltps %xmm5,%xmm13 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 65,15,88,209 ; addps %xmm9,%xmm2 DB 65,15,40,197 ; movaps %xmm13,%xmm0 DB 102,68,15,56,20,218 ; blendvps %xmm0,%xmm2,%xmm11 DB 69,15,87,228 ; xorps %xmm12,%xmm12 DB 68,15,194,225,0 ; cmpeqps %xmm1,%xmm12 DB 65,15,40,196 ; movaps %xmm12,%xmm0 DB 102,68,15,56,20,220 ; blendvps %xmm0,%xmm4,%xmm11 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,194,194,1 ; cmpltps %xmm10,%xmm0 DB 65,15,40,202 ; movaps %xmm10,%xmm1 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 69,15,40,234 ; movaps %xmm10,%xmm13 DB 102,68,15,56,20,233 ; blendvps %xmm0,%xmm1,%xmm13 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 65,15,194,198,1 ; cmpltps %xmm14,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 102,68,15,56,20,233 ; blendvps %xmm0,%xmm1,%xmm13 DB 68,15,40,243 ; movaps %xmm3,%xmm14 DB 69,15,92,245 ; subps %xmm13,%xmm14 DB 65,15,40,229 ; movaps %xmm13,%xmm4 DB 69,15,40,253 ; movaps %xmm13,%xmm15 DB 68,15,194,235,1 ; cmpltps %xmm3,%xmm13 DB 68,15,89,246 ; mulps %xmm6,%xmm14 DB 69,15,88,241 ; addps %xmm9,%xmm14 DB 65,15,40,201 ; movaps %xmm9,%xmm1 DB 65,15,40,197 ; movaps %xmm13,%xmm0 DB 102,65,15,56,20,206 ; blendvps %xmm0,%xmm14,%xmm1 DB 68,15,40,52,36 ; movaps (%rsp),%xmm14 DB 69,15,194,254,1 ; cmpltps %xmm14,%xmm15 DB 65,15,40,199 ; movaps %xmm15,%xmm0 DB 102,15,56,20,207 ; blendvps %xmm0,%xmm7,%xmm1 DB 15,194,229,1 ; cmpltps %xmm5,%xmm4 DB 15,40,214 ; movaps %xmm6,%xmm2 DB 65,15,89,210 ; mulps %xmm10,%xmm2 DB 65,15,88,209 ; addps %xmm9,%xmm2 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 102,15,56,20,202 ; blendvps %xmm0,%xmm2,%xmm1 DB 65,15,40,196 ; movaps %xmm12,%xmm0 DB 68,15,40,124,36,16 ; movaps 0x10(%rsp),%xmm15 DB 102,65,15,56,20,207 ; blendvps %xmm0,%xmm15,%xmm1 DB 68,15,92,84,36,48 ; subps 0x30(%rsp),%xmm10 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 65,15,92,208 ; subps %xmm8,%xmm2 DB 69,15,40,232 ; movaps %xmm8,%xmm13 DB 69,15,194,194,1 ; cmpltps %xmm10,%xmm8 DB 65,15,40,226 ; movaps %xmm10,%xmm4 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 102,15,56,20,226 ; blendvps %xmm0,%xmm2,%xmm4 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 15,194,68,36,32,1 ; cmpltps 0x20(%rsp),%xmm0 DB 69,15,88,234 ; addps %xmm10,%xmm13 DB 102,65,15,56,20,229 ; blendvps %xmm0,%xmm13,%xmm4 DB 68,15,89,214 ; mulps %xmm6,%xmm10 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,194,195,1 ; cmpltps %xmm3,%xmm0 DB 15,92,220 ; subps %xmm4,%xmm3 DB 15,89,222 ; mulps %xmm6,%xmm3 DB 69,15,88,209 ; addps %xmm9,%xmm10 DB 65,15,88,217 ; addps %xmm9,%xmm3 DB 102,68,15,56,20,203 ; blendvps %xmm0,%xmm3,%xmm9 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 65,15,194,198,1 ; cmpltps %xmm14,%xmm0 DB 102,68,15,56,20,207 ; blendvps %xmm0,%xmm7,%xmm9 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,194,197,1 ; cmpltps %xmm5,%xmm0 DB 102,69,15,56,20,202 ; blendvps %xmm0,%xmm10,%xmm9 DB 65,15,40,196 ; movaps %xmm12,%xmm0 DB 102,69,15,56,20,207 ; blendvps %xmm0,%xmm15,%xmm9 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,195 ; movaps %xmm11,%xmm0 DB 65,15,40,209 ; movaps %xmm9,%xmm2 DB 15,40,92,36,64 ; movaps 0x40(%rsp),%xmm3 DB 15,40,100,36,80 ; movaps 0x50(%rsp),%xmm4 DB 15,40,108,36,96 ; movaps 0x60(%rsp),%xmm5 DB 15,40,116,36,112 ; movaps 0x70(%rsp),%xmm6 DB 15,40,188,36,128,0,0,0 ; movaps 0x80(%rsp),%xmm7 DB 72,129,196,152,0,0,0 ; add $0x98,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_scale_1_float_sse41 _sk_scale_1_float_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_scale_u8_sse41 _sk_scale_u8_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,68,15,56,49,4,56 ; pmovzxbd (%rax,%rdi,1),%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 65,15,89,217 ; mulps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lerp_1_float_sse41 _sk_lerp_1_float_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,92,196 ; subps %xmm4,%xmm0 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,92,205 ; subps %xmm5,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 15,92,214 ; subps %xmm6,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 15,92,223 ; subps %xmm7,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 15,88,223 ; addps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lerp_u8_sse41 _sk_lerp_u8_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,68,15,56,49,4,56 ; pmovzxbd (%rax,%rdi,1),%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 15,92,196 ; subps %xmm4,%xmm0 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,92,205 ; subps %xmm5,%xmm1 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 15,92,214 ; subps %xmm6,%xmm2 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 15,92,223 ; subps %xmm7,%xmm3 DB 65,15,89,217 ; mulps %xmm9,%xmm3 DB 15,88,223 ; addps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lerp_565_sse41 _sk_lerp_565_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,68,15,56,51,4,120 ; pmovzxwd (%rax,%rdi,2),%xmm8 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,216 ; pand %xmm8,%xmm3 DB 68,15,91,203 ; cvtdq2ps %xmm3,%xmm9 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,216 ; pand %xmm8,%xmm3 DB 68,15,91,203 ; cvtdq2ps %xmm3,%xmm9 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,217 ; mulps %xmm9,%xmm11 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,216 ; pand %xmm8,%xmm3 DB 68,15,91,195 ; cvtdq2ps %xmm3,%xmm8 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 15,92,196 ; subps %xmm4,%xmm0 DB 65,15,89,194 ; mulps %xmm10,%xmm0 DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,92,205 ; subps %xmm5,%xmm1 DB 65,15,89,203 ; mulps %xmm11,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 15,92,214 ; subps %xmm6,%xmm2 DB 15,89,211 ; mulps %xmm3,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_tables_sse41 _sk_load_tables_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,8 ; mov (%rax),%rcx DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 243,68,15,111,4,185 ; movdqu (%rcx,%rdi,4),%xmm8 DB 185,255,0,0,0 ; mov $0xff,%ecx DB 102,15,110,193 ; movd %ecx,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,65,15,111,200 ; movdqa %xmm8,%xmm1 DB 102,15,114,209,8 ; psrld $0x8,%xmm1 DB 102,15,219,200 ; pand %xmm0,%xmm1 DB 102,65,15,111,208 ; movdqa %xmm8,%xmm2 DB 102,15,114,210,16 ; psrld $0x10,%xmm2 DB 102,15,219,208 ; pand %xmm0,%xmm2 DB 102,65,15,219,192 ; pand %xmm8,%xmm0 DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx DB 65,137,201 ; mov %ecx,%r9d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,73,15,126,194 ; movq %xmm0,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 243,67,15,16,4,152 ; movss (%r8,%r11,4),%xmm0 DB 102,67,15,58,33,4,144,16 ; insertps $0x10,(%r8,%r10,4),%xmm0 DB 102,67,15,58,33,4,136,32 ; insertps $0x20,(%r8,%r9,4),%xmm0 DB 102,65,15,58,33,4,136,48 ; insertps $0x30,(%r8,%rcx,4),%xmm0 DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 102,73,15,58,22,202,1 ; pextrq $0x1,%xmm1,%r10 DB 77,137,209 ; mov %r10,%r9 DB 73,193,233,32 ; shr $0x20,%r9 DB 102,72,15,126,201 ; movq %xmm1,%rcx DB 65,137,203 ; mov %ecx,%r11d DB 65,129,227,255,255,255,0 ; and $0xffffff,%r11d DB 72,193,233,30 ; shr $0x1e,%rcx DB 65,129,226,255,255,255,0 ; and $0xffffff,%r10d DB 243,67,15,16,12,152 ; movss (%r8,%r11,4),%xmm1 DB 102,65,15,58,33,12,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm1 DB 243,67,15,16,28,144 ; movss (%r8,%r10,4),%xmm3 DB 102,15,58,33,203,32 ; insertps $0x20,%xmm3,%xmm1 DB 243,67,15,16,28,136 ; movss (%r8,%r9,4),%xmm3 DB 102,15,58,33,203,48 ; insertps $0x30,%xmm3,%xmm1 DB 76,139,72,24 ; mov 0x18(%rax),%r9 DB 102,72,15,58,22,209,1 ; pextrq $0x1,%xmm2,%rcx DB 68,15,183,193 ; movzwl %cx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,72,15,126,208 ; movq %xmm2,%rax DB 68,15,183,208 ; movzwl %ax,%r10d DB 72,193,232,30 ; shr $0x1e,%rax DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2 DB 102,65,15,58,33,20,1,16 ; insertps $0x10,(%r9,%rax,1),%xmm2 DB 243,67,15,16,28,129 ; movss (%r9,%r8,4),%xmm3 DB 102,15,58,33,211,32 ; insertps $0x20,%xmm3,%xmm2 DB 243,65,15,16,28,137 ; movss (%r9,%rcx,4),%xmm3 DB 102,15,58,33,211,48 ; insertps $0x30,%xmm3,%xmm2 DB 102,65,15,114,208,24 ; psrld $0x18,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_tables_u16_be_sse41 _sk_load_tables_u16_be_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,8 ; mov (%rax),%rcx DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 243,15,111,4,249 ; movdqu (%rcx,%rdi,8),%xmm0 DB 243,15,111,76,249,16 ; movdqu 0x10(%rcx,%rdi,8),%xmm1 DB 102,15,111,216 ; movdqa %xmm0,%xmm3 DB 102,15,97,217 ; punpcklwd %xmm1,%xmm3 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1 DB 102,15,105,216 ; punpckhwd %xmm0,%xmm3 DB 102,15,56,51,193 ; pmovzxwd %xmm1,%xmm0 DB 185,255,0,0,0 ; mov $0xff,%ecx DB 102,15,110,209 ; movd %ecx,%xmm2 DB 102,68,15,112,194,0 ; pshufd $0x0,%xmm2,%xmm8 DB 102,65,15,219,192 ; pand %xmm8,%xmm0 DB 102,73,15,58,22,193,1 ; pextrq $0x1,%xmm0,%r9 DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,30 ; shr $0x1e,%rcx DB 69,137,203 ; mov %r9d,%r11d DB 73,193,233,30 ; shr $0x1e,%r9 DB 243,67,15,16,4,144 ; movss (%r8,%r10,4),%xmm0 DB 102,65,15,58,33,4,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm0 DB 102,67,15,58,33,4,152,32 ; insertps $0x20,(%r8,%r11,4),%xmm0 DB 102,67,15,58,33,4,8,48 ; insertps $0x30,(%r8,%r9,1),%xmm0 DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 102,15,115,217,8 ; psrldq $0x8,%xmm1 DB 102,15,56,51,201 ; pmovzxwd %xmm1,%xmm1 DB 102,65,15,219,200 ; pand %xmm8,%xmm1 DB 102,73,15,58,22,201,1 ; pextrq $0x1,%xmm1,%r9 DB 102,72,15,126,201 ; movq %xmm1,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,30 ; shr $0x1e,%rcx DB 69,137,203 ; mov %r9d,%r11d DB 73,193,233,30 ; shr $0x1e,%r9 DB 243,67,15,16,12,144 ; movss (%r8,%r10,4),%xmm1 DB 102,65,15,58,33,12,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm1 DB 243,67,15,16,20,152 ; movss (%r8,%r11,4),%xmm2 DB 102,15,58,33,202,32 ; insertps $0x20,%xmm2,%xmm1 DB 243,67,15,16,20,8 ; movss (%r8,%r9,1),%xmm2 DB 102,15,58,33,202,48 ; insertps $0x30,%xmm2,%xmm1 DB 76,139,64,24 ; mov 0x18(%rax),%r8 DB 102,15,56,51,211 ; pmovzxwd %xmm3,%xmm2 DB 102,65,15,219,208 ; pand %xmm8,%xmm2 DB 102,72,15,58,22,209,1 ; pextrq $0x1,%xmm2,%rcx DB 102,72,15,126,208 ; movq %xmm2,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,30 ; shr $0x1e,%rax DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,30 ; shr $0x1e,%rcx DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2 DB 102,65,15,58,33,20,0,16 ; insertps $0x10,(%r8,%rax,1),%xmm2 DB 102,67,15,58,33,20,144,32 ; insertps $0x20,(%r8,%r10,4),%xmm2 DB 102,65,15,58,33,20,8,48 ; insertps $0x30,(%r8,%rcx,1),%xmm2 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 102,15,112,219,78 ; pshufd $0x4e,%xmm3,%xmm3 DB 102,68,15,111,203 ; movdqa %xmm3,%xmm9 DB 102,65,15,113,241,8 ; psllw $0x8,%xmm9 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3 DB 102,65,15,235,217 ; por %xmm9,%xmm3 DB 102,15,56,51,219 ; pmovzxwd %xmm3,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_tables_rgb_u16_be_sse41 _sk_load_tables_rgb_u16_be_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,141,12,127 ; lea (%rdi,%rdi,2),%r9 DB 72,139,8 ; mov (%rax),%rcx DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 243,66,15,111,20,73 ; movdqu (%rcx,%r9,2),%xmm2 DB 243,66,15,111,68,73,8 ; movdqu 0x8(%rcx,%r9,2),%xmm0 DB 102,15,115,216,4 ; psrldq $0x4,%xmm0 DB 102,15,111,202 ; movdqa %xmm2,%xmm1 DB 102,15,115,217,6 ; psrldq $0x6,%xmm1 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2 DB 102,15,115,216,6 ; psrldq $0x6,%xmm0 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1 DB 102,15,111,194 ; movdqa %xmm2,%xmm0 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0 DB 102,68,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm8 DB 102,15,105,209 ; punpckhwd %xmm1,%xmm2 DB 102,15,56,51,192 ; pmovzxwd %xmm0,%xmm0 DB 185,255,0,0,0 ; mov $0xff,%ecx DB 102,15,110,201 ; movd %ecx,%xmm1 DB 102,68,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm9 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 102,73,15,58,22,193,1 ; pextrq $0x1,%xmm0,%r9 DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,30 ; shr $0x1e,%rcx DB 69,137,203 ; mov %r9d,%r11d DB 73,193,233,30 ; shr $0x1e,%r9 DB 243,67,15,16,4,144 ; movss (%r8,%r10,4),%xmm0 DB 102,65,15,58,33,4,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm0 DB 102,67,15,58,33,4,152,32 ; insertps $0x20,(%r8,%r11,4),%xmm0 DB 102,67,15,58,33,4,8,48 ; insertps $0x30,(%r8,%r9,1),%xmm0 DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 102,65,15,56,51,200 ; pmovzxwd %xmm8,%xmm1 DB 102,65,15,219,201 ; pand %xmm9,%xmm1 DB 102,73,15,58,22,201,1 ; pextrq $0x1,%xmm1,%r9 DB 102,72,15,126,201 ; movq %xmm1,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,30 ; shr $0x1e,%rcx DB 69,137,203 ; mov %r9d,%r11d DB 73,193,233,30 ; shr $0x1e,%r9 DB 243,67,15,16,12,144 ; movss (%r8,%r10,4),%xmm1 DB 102,65,15,58,33,12,8,16 ; insertps $0x10,(%r8,%rcx,1),%xmm1 DB 243,67,15,16,28,152 ; movss (%r8,%r11,4),%xmm3 DB 102,15,58,33,203,32 ; insertps $0x20,%xmm3,%xmm1 DB 243,67,15,16,28,8 ; movss (%r8,%r9,1),%xmm3 DB 102,15,58,33,203,48 ; insertps $0x30,%xmm3,%xmm1 DB 76,139,64,24 ; mov 0x18(%rax),%r8 DB 102,15,56,51,210 ; pmovzxwd %xmm2,%xmm2 DB 102,65,15,219,209 ; pand %xmm9,%xmm2 DB 102,72,15,58,22,209,1 ; pextrq $0x1,%xmm2,%rcx DB 102,72,15,126,208 ; movq %xmm2,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,30 ; shr $0x1e,%rax DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,30 ; shr $0x1e,%rcx DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2 DB 102,65,15,58,33,20,0,16 ; insertps $0x10,(%r8,%rax,1),%xmm2 DB 102,67,15,58,33,20,144,32 ; insertps $0x20,(%r8,%r10,4),%xmm2 DB 102,65,15,58,33,20,8,48 ; insertps $0x30,(%r8,%rcx,1),%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_byte_tables_sse41 _sk_byte_tables_sse41 LABEL PROC DB 65,86 ; push %r14 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,127,67 ; mov $0x437f0000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 102,15,91,192 ; cvtps2dq %xmm0,%xmm0 DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,73,15,126,193 ; movq %xmm0,%r9 DB 69,137,202 ; mov %r9d,%r10d DB 77,137,203 ; mov %r9,%r11 DB 73,193,235,32 ; shr $0x20,%r11 DB 76,139,48 ; mov (%rax),%r14 DB 76,139,72,8 ; mov 0x8(%rax),%r9 DB 102,67,15,58,32,4,22,0 ; pinsrb $0x0,(%r14,%r10,1),%xmm0 DB 102,67,15,58,32,4,30,1 ; pinsrb $0x1,(%r14,%r11,1),%xmm0 DB 67,15,182,28,6 ; movzbl (%r14,%r8,1),%ebx DB 102,15,58,32,195,2 ; pinsrb $0x2,%ebx,%xmm0 DB 65,15,182,12,14 ; movzbl (%r14,%rcx,1),%ecx DB 102,15,58,32,193,3 ; pinsrb $0x3,%ecx,%xmm0 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 185,129,128,128,59 ; mov $0x3b808081,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 102,15,91,201 ; cvtps2dq %xmm1,%xmm1 DB 102,72,15,58,22,201,1 ; pextrq $0x1,%xmm1,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,72,15,126,203 ; movq %xmm1,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 102,67,15,58,32,12,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm1 DB 102,65,15,58,32,12,25,1 ; pinsrb $0x1,(%r9,%rbx,1),%xmm1 DB 67,15,182,28,1 ; movzbl (%r9,%r8,1),%ebx DB 102,15,58,32,203,2 ; pinsrb $0x2,%ebx,%xmm1 DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx DB 102,15,58,32,201,3 ; pinsrb $0x3,%ecx,%xmm1 DB 102,15,56,49,201 ; pmovzxbd %xmm1,%xmm1 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 76,139,72,16 ; mov 0x10(%rax),%r9 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,91,210 ; cvtps2dq %xmm2,%xmm2 DB 102,72,15,58,22,211,1 ; pextrq $0x1,%xmm2,%rbx DB 65,137,216 ; mov %ebx,%r8d DB 72,193,235,32 ; shr $0x20,%rbx DB 102,72,15,126,209 ; movq %xmm2,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,67,15,58,32,20,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm2 DB 102,65,15,58,32,20,9,1 ; pinsrb $0x1,(%r9,%rcx,1),%xmm2 DB 67,15,182,12,1 ; movzbl (%r9,%r8,1),%ecx DB 102,15,58,32,209,2 ; pinsrb $0x2,%ecx,%xmm2 DB 65,15,182,12,25 ; movzbl (%r9,%rbx,1),%ecx DB 102,15,58,32,209,3 ; pinsrb $0x3,%ecx,%xmm2 DB 102,15,56,49,210 ; pmovzxbd %xmm2,%xmm2 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,65,15,91,216 ; cvtps2dq %xmm8,%xmm3 DB 102,72,15,58,22,217,1 ; pextrq $0x1,%xmm3,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,72,15,126,219 ; movq %xmm3,%rbx DB 65,137,217 ; mov %ebx,%r9d DB 72,193,235,32 ; shr $0x20,%rbx DB 102,66,15,58,32,28,8,0 ; pinsrb $0x0,(%rax,%r9,1),%xmm3 DB 102,15,58,32,28,24,1 ; pinsrb $0x1,(%rax,%rbx,1),%xmm3 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx DB 102,15,58,32,219,2 ; pinsrb $0x2,%ebx,%xmm3 DB 15,182,4,8 ; movzbl (%rax,%rcx,1),%eax DB 102,15,58,32,216,3 ; pinsrb $0x3,%eax,%xmm3 DB 102,15,56,49,219 ; pmovzxbd %xmm3,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,217 ; mulps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,94 ; pop %r14 DB 255,224 ; jmpq *%rax PUBLIC _sk_byte_tables_rgb_sse41 _sk_byte_tables_rgb_sse41 LABEL PROC DB 65,86 ; push %r14 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 139,72,24 ; mov 0x18(%rax),%ecx DB 255,201 ; dec %ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 102,15,91,192 ; cvtps2dq %xmm0,%xmm0 DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,73,15,126,193 ; movq %xmm0,%r9 DB 69,137,202 ; mov %r9d,%r10d DB 77,137,203 ; mov %r9,%r11 DB 73,193,235,32 ; shr $0x20,%r11 DB 76,139,48 ; mov (%rax),%r14 DB 76,139,72,8 ; mov 0x8(%rax),%r9 DB 102,67,15,58,32,4,22,0 ; pinsrb $0x0,(%r14,%r10,1),%xmm0 DB 102,67,15,58,32,4,30,1 ; pinsrb $0x1,(%r14,%r11,1),%xmm0 DB 67,15,182,28,6 ; movzbl (%r14,%r8,1),%ebx DB 102,15,58,32,195,2 ; pinsrb $0x2,%ebx,%xmm0 DB 65,15,182,12,14 ; movzbl (%r14,%rcx,1),%ecx DB 102,15,58,32,193,3 ; pinsrb $0x3,%ecx,%xmm0 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 185,129,128,128,59 ; mov $0x3b808081,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 102,15,91,201 ; cvtps2dq %xmm1,%xmm1 DB 102,72,15,58,22,201,1 ; pextrq $0x1,%xmm1,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,72,15,126,203 ; movq %xmm1,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 102,67,15,58,32,12,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm1 DB 102,65,15,58,32,12,25,1 ; pinsrb $0x1,(%r9,%rbx,1),%xmm1 DB 67,15,182,28,1 ; movzbl (%r9,%r8,1),%ebx DB 102,15,58,32,203,2 ; pinsrb $0x2,%ebx,%xmm1 DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx DB 102,15,58,32,201,3 ; pinsrb $0x3,%ecx,%xmm1 DB 102,15,56,49,201 ; pmovzxbd %xmm1,%xmm1 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 72,139,64,16 ; mov 0x10(%rax),%rax DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,91,210 ; cvtps2dq %xmm2,%xmm2 DB 102,72,15,58,22,209,1 ; pextrq $0x1,%xmm2,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,72,15,126,211 ; movq %xmm2,%rbx DB 65,137,217 ; mov %ebx,%r9d DB 72,193,235,32 ; shr $0x20,%rbx DB 102,66,15,58,32,20,8,0 ; pinsrb $0x0,(%rax,%r9,1),%xmm2 DB 102,15,58,32,20,24,1 ; pinsrb $0x1,(%rax,%rbx,1),%xmm2 DB 66,15,182,28,0 ; movzbl (%rax,%r8,1),%ebx DB 102,15,58,32,211,2 ; pinsrb $0x2,%ebx,%xmm2 DB 15,182,4,8 ; movzbl (%rax,%rcx,1),%eax DB 102,15,58,32,208,3 ; pinsrb $0x3,%eax,%xmm2 DB 102,15,56,49,210 ; pmovzxbd %xmm2,%xmm2 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,94 ; pop %r14 DB 255,224 ; jmpq *%rax PUBLIC _sk_table_r_sse41 _sk_table_r_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 102,65,15,91,192 ; cvtps2dq %xmm8,%xmm0 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,67,15,16,4,145 ; movss (%r9,%r10,4),%xmm0 DB 102,65,15,58,33,4,137,16 ; insertps $0x10,(%r9,%rcx,4),%xmm0 DB 243,71,15,16,4,129 ; movss (%r9,%r8,4),%xmm8 DB 102,65,15,58,33,192,32 ; insertps $0x20,%xmm8,%xmm0 DB 243,69,15,16,4,129 ; movss (%r9,%rax,4),%xmm8 DB 102,65,15,58,33,192,48 ; insertps $0x30,%xmm8,%xmm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_g_sse41 _sk_table_g_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 68,15,89,193 ; mulps %xmm1,%xmm8 DB 102,65,15,91,200 ; cvtps2dq %xmm8,%xmm1 DB 102,72,15,58,22,200,1 ; pextrq $0x1,%xmm1,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,201 ; movq %xmm1,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,67,15,16,12,145 ; movss (%r9,%r10,4),%xmm1 DB 102,65,15,58,33,12,137,16 ; insertps $0x10,(%r9,%rcx,4),%xmm1 DB 243,71,15,16,4,129 ; movss (%r9,%r8,4),%xmm8 DB 102,65,15,58,33,200,32 ; insertps $0x20,%xmm8,%xmm1 DB 243,69,15,16,4,129 ; movss (%r9,%rax,4),%xmm8 DB 102,65,15,58,33,200,48 ; insertps $0x30,%xmm8,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_b_sse41 _sk_table_b_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 102,65,15,91,208 ; cvtps2dq %xmm8,%xmm2 DB 102,72,15,58,22,208,1 ; pextrq $0x1,%xmm2,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,209 ; movq %xmm2,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2 DB 102,65,15,58,33,20,137,16 ; insertps $0x10,(%r9,%rcx,4),%xmm2 DB 243,71,15,16,4,129 ; movss (%r9,%r8,4),%xmm8 DB 102,65,15,58,33,208,32 ; insertps $0x20,%xmm8,%xmm2 DB 243,69,15,16,4,129 ; movss (%r9,%rax,4),%xmm8 DB 102,65,15,58,33,208,48 ; insertps $0x30,%xmm8,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_a_sse41 _sk_table_a_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,65,15,91,216 ; cvtps2dq %xmm8,%xmm3 DB 102,72,15,58,22,216,1 ; pextrq $0x1,%xmm3,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,217 ; movq %xmm3,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,67,15,16,28,145 ; movss (%r9,%r10,4),%xmm3 DB 102,65,15,58,33,28,137,16 ; insertps $0x10,(%r9,%rcx,4),%xmm3 DB 243,71,15,16,4,129 ; movss (%r9,%r8,4),%xmm8 DB 102,65,15,58,33,216,32 ; insertps $0x20,%xmm8,%xmm3 DB 243,69,15,16,4,129 ; movss (%r9,%rax,4),%xmm8 DB 102,65,15,58,33,216,48 ; insertps $0x30,%xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_r_sse41 _sk_parametric_r_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,64,16 ; movss 0x10(%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 65,15,194,192,2 ; cmpleps %xmm8,%xmm0 DB 243,68,15,16,64,24 ; movss 0x18(%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,88,200 ; addps %xmm8,%xmm9 DB 243,68,15,16,24 ; movss (%rax),%xmm11 DB 243,68,15,16,64,8 ; movss 0x8(%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,91,194 ; cvtdq2ps %xmm10,%xmm8 DB 68,15,89,5,111,33,0,0 ; mulps 0x216f(%rip),%xmm8 # 3ff0 <_sk_callback_sse41+0xd4> DB 68,15,84,21,119,33,0,0 ; andps 0x2177(%rip),%xmm10 # 4000 <_sk_callback_sse41+0xe4> DB 68,15,86,21,127,33,0,0 ; orps 0x217f(%rip),%xmm10 # 4010 <_sk_callback_sse41+0xf4> DB 68,15,88,5,135,33,0,0 ; addps 0x2187(%rip),%xmm8 # 4020 <_sk_callback_sse41+0x104> DB 68,15,40,37,143,33,0,0 ; movaps 0x218f(%rip),%xmm12 # 4030 <_sk_callback_sse41+0x114> DB 69,15,89,226 ; mulps %xmm10,%xmm12 DB 69,15,92,196 ; subps %xmm12,%xmm8 DB 68,15,88,21,143,33,0,0 ; addps 0x218f(%rip),%xmm10 # 4040 <_sk_callback_sse41+0x124> DB 68,15,40,37,151,33,0,0 ; movaps 0x2197(%rip),%xmm12 # 4050 <_sk_callback_sse41+0x134> DB 69,15,94,226 ; divps %xmm10,%xmm12 DB 69,15,92,196 ; subps %xmm12,%xmm8 DB 69,15,89,195 ; mulps %xmm11,%xmm8 DB 102,69,15,58,8,208,1 ; roundps $0x1,%xmm8,%xmm10 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 69,15,92,218 ; subps %xmm10,%xmm11 DB 68,15,88,5,132,33,0,0 ; addps 0x2184(%rip),%xmm8 # 4060 <_sk_callback_sse41+0x144> DB 68,15,40,21,140,33,0,0 ; movaps 0x218c(%rip),%xmm10 # 4070 <_sk_callback_sse41+0x154> DB 69,15,89,211 ; mulps %xmm11,%xmm10 DB 69,15,92,194 ; subps %xmm10,%xmm8 DB 68,15,40,21,140,33,0,0 ; movaps 0x218c(%rip),%xmm10 # 4080 <_sk_callback_sse41+0x164> DB 69,15,92,211 ; subps %xmm11,%xmm10 DB 68,15,40,29,144,33,0,0 ; movaps 0x2190(%rip),%xmm11 # 4090 <_sk_callback_sse41+0x174> DB 69,15,94,218 ; divps %xmm10,%xmm11 DB 69,15,88,216 ; addps %xmm8,%xmm11 DB 68,15,89,29,144,33,0,0 ; mulps 0x2190(%rip),%xmm11 # 40a0 <_sk_callback_sse41+0x184> DB 102,69,15,91,211 ; cvtps2dq %xmm11,%xmm10 DB 243,68,15,16,64,20 ; movss 0x14(%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,88,194 ; addps %xmm10,%xmm8 DB 102,69,15,56,20,193 ; blendvps %xmm0,%xmm9,%xmm8 DB 15,87,192 ; xorps %xmm0,%xmm0 DB 68,15,95,192 ; maxps %xmm0,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 68,15,93,192 ; minps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_g_sse41 _sk_parametric_g_sse41 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,89,201 ; mulps %xmm1,%xmm9 DB 243,68,15,16,88,4 ; movss 0x4(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 68,15,89,217 ; mulps %xmm1,%xmm11 DB 15,40,193 ; movaps %xmm1,%xmm0 DB 65,15,194,194,2 ; cmpleps %xmm10,%xmm0 DB 243,15,16,72,24 ; movss 0x18(%rax),%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 68,15,88,201 ; addps %xmm1,%xmm9 DB 243,68,15,16,16 ; movss (%rax),%xmm10 DB 243,15,16,72,8 ; movss 0x8(%rax),%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 68,15,88,217 ; addps %xmm1,%xmm11 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,91,227 ; cvtdq2ps %xmm11,%xmm12 DB 68,15,89,37,255,32,0,0 ; mulps 0x20ff(%rip),%xmm12 # 40b0 <_sk_callback_sse41+0x194> DB 68,15,84,29,7,33,0,0 ; andps 0x2107(%rip),%xmm11 # 40c0 <_sk_callback_sse41+0x1a4> DB 68,15,86,29,15,33,0,0 ; orps 0x210f(%rip),%xmm11 # 40d0 <_sk_callback_sse41+0x1b4> DB 68,15,88,37,23,33,0,0 ; addps 0x2117(%rip),%xmm12 # 40e0 <_sk_callback_sse41+0x1c4> DB 15,40,13,32,33,0,0 ; movaps 0x2120(%rip),%xmm1 # 40f0 <_sk_callback_sse41+0x1d4> DB 65,15,89,203 ; mulps %xmm11,%xmm1 DB 68,15,92,225 ; subps %xmm1,%xmm12 DB 68,15,88,29,32,33,0,0 ; addps 0x2120(%rip),%xmm11 # 4100 <_sk_callback_sse41+0x1e4> DB 15,40,13,41,33,0,0 ; movaps 0x2129(%rip),%xmm1 # 4110 <_sk_callback_sse41+0x1f4> DB 65,15,94,203 ; divps %xmm11,%xmm1 DB 68,15,92,225 ; subps %xmm1,%xmm12 DB 69,15,89,226 ; mulps %xmm10,%xmm12 DB 102,69,15,58,8,212,1 ; roundps $0x1,%xmm12,%xmm10 DB 69,15,40,220 ; movaps %xmm12,%xmm11 DB 69,15,92,218 ; subps %xmm10,%xmm11 DB 68,15,88,37,22,33,0,0 ; addps 0x2116(%rip),%xmm12 # 4120 <_sk_callback_sse41+0x204> DB 15,40,13,31,33,0,0 ; movaps 0x211f(%rip),%xmm1 # 4130 <_sk_callback_sse41+0x214> DB 65,15,89,203 ; mulps %xmm11,%xmm1 DB 68,15,92,225 ; subps %xmm1,%xmm12 DB 68,15,40,21,31,33,0,0 ; movaps 0x211f(%rip),%xmm10 # 4140 <_sk_callback_sse41+0x224> DB 69,15,92,211 ; subps %xmm11,%xmm10 DB 15,40,13,36,33,0,0 ; movaps 0x2124(%rip),%xmm1 # 4150 <_sk_callback_sse41+0x234> DB 65,15,94,202 ; divps %xmm10,%xmm1 DB 65,15,88,204 ; addps %xmm12,%xmm1 DB 15,89,13,37,33,0,0 ; mulps 0x2125(%rip),%xmm1 # 4160 <_sk_callback_sse41+0x244> DB 102,68,15,91,209 ; cvtps2dq %xmm1,%xmm10 DB 243,15,16,72,20 ; movss 0x14(%rax),%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 102,65,15,56,20,201 ; blendvps %xmm0,%xmm9,%xmm1 DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,95,200 ; maxps %xmm0,%xmm1 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,93,200 ; minps %xmm0,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_b_sse41 _sk_parametric_b_sse41 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 243,68,15,16,88,4 ; movss 0x4(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 65,15,194,194,2 ; cmpleps %xmm10,%xmm0 DB 243,15,16,80,24 ; movss 0x18(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 68,15,88,202 ; addps %xmm2,%xmm9 DB 243,68,15,16,16 ; movss (%rax),%xmm10 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 68,15,88,218 ; addps %xmm2,%xmm11 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,91,227 ; cvtdq2ps %xmm11,%xmm12 DB 68,15,89,37,152,32,0,0 ; mulps 0x2098(%rip),%xmm12 # 4170 <_sk_callback_sse41+0x254> DB 68,15,84,29,160,32,0,0 ; andps 0x20a0(%rip),%xmm11 # 4180 <_sk_callback_sse41+0x264> DB 68,15,86,29,168,32,0,0 ; orps 0x20a8(%rip),%xmm11 # 4190 <_sk_callback_sse41+0x274> DB 68,15,88,37,176,32,0,0 ; addps 0x20b0(%rip),%xmm12 # 41a0 <_sk_callback_sse41+0x284> DB 15,40,21,185,32,0,0 ; movaps 0x20b9(%rip),%xmm2 # 41b0 <_sk_callback_sse41+0x294> DB 65,15,89,211 ; mulps %xmm11,%xmm2 DB 68,15,92,226 ; subps %xmm2,%xmm12 DB 68,15,88,29,185,32,0,0 ; addps 0x20b9(%rip),%xmm11 # 41c0 <_sk_callback_sse41+0x2a4> DB 15,40,21,194,32,0,0 ; movaps 0x20c2(%rip),%xmm2 # 41d0 <_sk_callback_sse41+0x2b4> DB 65,15,94,211 ; divps %xmm11,%xmm2 DB 68,15,92,226 ; subps %xmm2,%xmm12 DB 69,15,89,226 ; mulps %xmm10,%xmm12 DB 102,69,15,58,8,212,1 ; roundps $0x1,%xmm12,%xmm10 DB 69,15,40,220 ; movaps %xmm12,%xmm11 DB 69,15,92,218 ; subps %xmm10,%xmm11 DB 68,15,88,37,175,32,0,0 ; addps 0x20af(%rip),%xmm12 # 41e0 <_sk_callback_sse41+0x2c4> DB 15,40,21,184,32,0,0 ; movaps 0x20b8(%rip),%xmm2 # 41f0 <_sk_callback_sse41+0x2d4> DB 65,15,89,211 ; mulps %xmm11,%xmm2 DB 68,15,92,226 ; subps %xmm2,%xmm12 DB 68,15,40,21,184,32,0,0 ; movaps 0x20b8(%rip),%xmm10 # 4200 <_sk_callback_sse41+0x2e4> DB 69,15,92,211 ; subps %xmm11,%xmm10 DB 15,40,21,189,32,0,0 ; movaps 0x20bd(%rip),%xmm2 # 4210 <_sk_callback_sse41+0x2f4> DB 65,15,94,210 ; divps %xmm10,%xmm2 DB 65,15,88,212 ; addps %xmm12,%xmm2 DB 15,89,21,190,32,0,0 ; mulps 0x20be(%rip),%xmm2 # 4220 <_sk_callback_sse41+0x304> DB 102,68,15,91,210 ; cvtps2dq %xmm2,%xmm10 DB 243,15,16,80,20 ; movss 0x14(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,88,210 ; addps %xmm10,%xmm2 DB 102,65,15,56,20,209 ; blendvps %xmm0,%xmm9,%xmm2 DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,95,208 ; maxps %xmm0,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,93,208 ; minps %xmm0,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_a_sse41 _sk_parametric_a_sse41 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 243,68,15,16,88,4 ; movss 0x4(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 68,15,89,219 ; mulps %xmm3,%xmm11 DB 15,40,195 ; movaps %xmm3,%xmm0 DB 65,15,194,194,2 ; cmpleps %xmm10,%xmm0 DB 243,15,16,88,24 ; movss 0x18(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 68,15,88,203 ; addps %xmm3,%xmm9 DB 243,68,15,16,16 ; movss (%rax),%xmm10 DB 243,15,16,88,8 ; movss 0x8(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 68,15,88,219 ; addps %xmm3,%xmm11 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,91,227 ; cvtdq2ps %xmm11,%xmm12 DB 68,15,89,37,49,32,0,0 ; mulps 0x2031(%rip),%xmm12 # 4230 <_sk_callback_sse41+0x314> DB 68,15,84,29,57,32,0,0 ; andps 0x2039(%rip),%xmm11 # 4240 <_sk_callback_sse41+0x324> DB 68,15,86,29,65,32,0,0 ; orps 0x2041(%rip),%xmm11 # 4250 <_sk_callback_sse41+0x334> DB 68,15,88,37,73,32,0,0 ; addps 0x2049(%rip),%xmm12 # 4260 <_sk_callback_sse41+0x344> DB 15,40,29,82,32,0,0 ; movaps 0x2052(%rip),%xmm3 # 4270 <_sk_callback_sse41+0x354> DB 65,15,89,219 ; mulps %xmm11,%xmm3 DB 68,15,92,227 ; subps %xmm3,%xmm12 DB 68,15,88,29,82,32,0,0 ; addps 0x2052(%rip),%xmm11 # 4280 <_sk_callback_sse41+0x364> DB 15,40,29,91,32,0,0 ; movaps 0x205b(%rip),%xmm3 # 4290 <_sk_callback_sse41+0x374> DB 65,15,94,219 ; divps %xmm11,%xmm3 DB 68,15,92,227 ; subps %xmm3,%xmm12 DB 69,15,89,226 ; mulps %xmm10,%xmm12 DB 102,69,15,58,8,212,1 ; roundps $0x1,%xmm12,%xmm10 DB 69,15,40,220 ; movaps %xmm12,%xmm11 DB 69,15,92,218 ; subps %xmm10,%xmm11 DB 68,15,88,37,72,32,0,0 ; addps 0x2048(%rip),%xmm12 # 42a0 <_sk_callback_sse41+0x384> DB 15,40,29,81,32,0,0 ; movaps 0x2051(%rip),%xmm3 # 42b0 <_sk_callback_sse41+0x394> DB 65,15,89,219 ; mulps %xmm11,%xmm3 DB 68,15,92,227 ; subps %xmm3,%xmm12 DB 68,15,40,21,81,32,0,0 ; movaps 0x2051(%rip),%xmm10 # 42c0 <_sk_callback_sse41+0x3a4> DB 69,15,92,211 ; subps %xmm11,%xmm10 DB 15,40,29,86,32,0,0 ; movaps 0x2056(%rip),%xmm3 # 42d0 <_sk_callback_sse41+0x3b4> DB 65,15,94,218 ; divps %xmm10,%xmm3 DB 65,15,88,220 ; addps %xmm12,%xmm3 DB 15,89,29,87,32,0,0 ; mulps 0x2057(%rip),%xmm3 # 42e0 <_sk_callback_sse41+0x3c4> DB 102,68,15,91,211 ; cvtps2dq %xmm3,%xmm10 DB 243,15,16,88,20 ; movss 0x14(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,88,218 ; addps %xmm10,%xmm3 DB 102,65,15,56,20,217 ; blendvps %xmm0,%xmm9,%xmm3 DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,95,216 ; maxps %xmm0,%xmm3 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,93,216 ; minps %xmm0,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_lab_to_xyz_sse41 _sk_lab_to_xyz_sse41 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 184,0,0,200,66 ; mov $0x42c80000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 184,0,0,127,67 ; mov $0x437f0000,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,194 ; mulps %xmm10,%xmm8 DB 184,0,0,0,67 ; mov $0x43000000,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 68,15,92,193 ; subps %xmm1,%xmm8 DB 68,15,89,210 ; mulps %xmm2,%xmm10 DB 68,15,92,209 ; subps %xmm1,%xmm10 DB 184,0,0,128,65 ; mov $0x41800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,88,209 ; addps %xmm9,%xmm2 DB 184,203,61,13,60 ; mov $0x3c0d3dcb,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,202 ; mulps %xmm2,%xmm1 DB 184,111,18,3,59 ; mov $0x3b03126f,%eax DB 102,68,15,110,232 ; movd %eax,%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,89,232 ; mulps %xmm8,%xmm13 DB 68,15,88,233 ; addps %xmm1,%xmm13 DB 184,10,215,163,59 ; mov $0x3ba3d70a,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 65,15,89,194 ; mulps %xmm10,%xmm0 DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,92,200 ; subps %xmm0,%xmm9 DB 69,15,40,221 ; movaps %xmm13,%xmm11 DB 69,15,89,219 ; mulps %xmm11,%xmm11 DB 69,15,89,221 ; mulps %xmm13,%xmm11 DB 184,194,24,17,60 ; mov $0x3c1118c2,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,194,195,1 ; cmpltps %xmm11,%xmm0 DB 184,203,61,13,62 ; mov $0x3e0d3dcb,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,92,234 ; subps %xmm10,%xmm13 DB 184,80,128,3,62 ; mov $0x3e038050,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 69,15,89,236 ; mulps %xmm12,%xmm13 DB 102,69,15,56,20,235 ; blendvps %xmm0,%xmm11,%xmm13 DB 15,40,209 ; movaps %xmm1,%xmm2 DB 15,89,210 ; mulps %xmm2,%xmm2 DB 15,89,209 ; mulps %xmm1,%xmm2 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 15,194,194,1 ; cmpltps %xmm2,%xmm0 DB 65,15,92,202 ; subps %xmm10,%xmm1 DB 65,15,89,204 ; mulps %xmm12,%xmm1 DB 102,15,56,20,202 ; blendvps %xmm0,%xmm2,%xmm1 DB 65,15,40,209 ; movaps %xmm9,%xmm2 DB 15,89,210 ; mulps %xmm2,%xmm2 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 68,15,194,194,1 ; cmpltps %xmm2,%xmm8 DB 69,15,92,202 ; subps %xmm10,%xmm9 DB 69,15,89,204 ; mulps %xmm12,%xmm9 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 102,68,15,56,20,202 ; blendvps %xmm0,%xmm2,%xmm9 DB 184,31,215,118,63 ; mov $0x3f76d71f,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 65,15,89,197 ; mulps %xmm13,%xmm0 DB 184,246,64,83,63 ; mov $0x3f5340f6,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_a8_sse41 _sk_load_a8_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,15,56,49,4,56 ; pmovzxbd (%rax,%rdi,1),%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,89,216 ; mulps %xmm0,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_a8_sse41 _sk_gather_a8_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,194 ; paddd %xmm2,%xmm0 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,67,15,58,32,4,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm0 DB 102,65,15,58,32,4,9,1 ; pinsrb $0x1,(%r9,%rcx,1),%xmm0 DB 67,15,182,12,1 ; movzbl (%r9,%r8,1),%ecx DB 102,15,58,32,193,2 ; pinsrb $0x2,%ecx,%xmm0 DB 65,15,182,4,1 ; movzbl (%r9,%rax,1),%eax DB 102,15,58,32,192,3 ; pinsrb $0x3,%eax,%xmm0 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,89,216 ; mulps %xmm0,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,87,192 ; xorps %xmm0,%xmm0 DB 102,15,239,201 ; pxor %xmm1,%xmm1 DB 102,15,239,210 ; pxor %xmm2,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_store_a8_sse41 _sk_store_a8_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,0,127,67 ; mov $0x437f0000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8 DB 102,69,15,103,192 ; packuswb %xmm8,%xmm8 DB 102,68,15,126,4,56 ; movd %xmm8,(%rax,%rdi,1) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_g8_sse41 _sk_load_g8_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,15,56,49,4,56 ; pmovzxbd (%rax,%rdi,1),%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,200 ; movaps %xmm0,%xmm1 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_g8_sse41 _sk_gather_g8_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,194 ; paddd %xmm2,%xmm0 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,67,15,58,32,4,17,0 ; pinsrb $0x0,(%r9,%r10,1),%xmm0 DB 102,65,15,58,32,4,9,1 ; pinsrb $0x1,(%r9,%rcx,1),%xmm0 DB 67,15,182,12,1 ; movzbl (%r9,%r8,1),%ecx DB 102,15,58,32,193,2 ; pinsrb $0x2,%ecx,%xmm0 DB 65,15,182,4,1 ; movzbl (%r9,%rax,1),%eax DB 102,15,58,32,192,3 ; pinsrb $0x3,%eax,%xmm0 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,200 ; movaps %xmm0,%xmm1 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_i8_sse41 _sk_gather_i8_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 73,137,192 ; mov %rax,%r8 DB 77,133,192 ; test %r8,%r8 DB 116,5 ; je 25c0 <_sk_gather_i8_sse41+0xf> DB 76,137,192 ; mov %r8,%rax DB 235,2 ; jmp 25c2 <_sk_gather_i8_sse41+0x11> DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,194 ; paddd %xmm2,%xmm0 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,203 ; mov %ecx,%r11d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,67,15,58,32,4,26,0 ; pinsrb $0x0,(%r10,%r11,1),%xmm0 DB 102,65,15,58,32,4,10,1 ; pinsrb $0x1,(%r10,%rcx,1),%xmm0 DB 102,67,15,58,32,4,10,2 ; pinsrb $0x2,(%r10,%r9,1),%xmm0 DB 102,65,15,58,32,4,2,3 ; pinsrb $0x3,(%r10,%rax,1),%xmm0 DB 102,15,56,49,192 ; pmovzxbd %xmm0,%xmm0 DB 102,73,15,58,22,193,1 ; pextrq $0x1,%xmm0,%r9 DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 73,139,64,8 ; mov 0x8(%r8),%rax DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,30 ; shr $0x1e,%rcx DB 69,137,202 ; mov %r9d,%r10d DB 73,193,233,30 ; shr $0x1e,%r9 DB 102,66,15,110,28,128 ; movd (%rax,%r8,4),%xmm3 DB 102,15,58,34,28,8,1 ; pinsrd $0x1,(%rax,%rcx,1),%xmm3 DB 102,66,15,58,34,28,144,2 ; pinsrd $0x2,(%rax,%r10,4),%xmm3 DB 102,66,15,58,34,28,8,3 ; pinsrd $0x3,(%rax,%r9,1),%xmm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,114,209,8 ; psrld $0x8,%xmm1 DB 102,15,219,200 ; pand %xmm0,%xmm1 DB 102,15,111,211 ; movdqa %xmm3,%xmm2 DB 102,15,114,210,16 ; psrld $0x10,%xmm2 DB 102,15,219,208 ; pand %xmm0,%xmm2 DB 102,15,219,195 ; pand %xmm3,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,114,211,24 ; psrld $0x18,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_565_sse41 _sk_load_565_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,15,56,51,20,120 ; pmovzxwd (%rax,%rdi,2),%xmm2 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,219,194 ; pand %xmm2,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 102,15,219,202 ; pand %xmm2,%xmm1 DB 15,91,217 ; cvtdq2ps %xmm1,%xmm3 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,203 ; mulps %xmm3,%xmm1 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,15,219,218 ; pand %xmm2,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,89,211 ; mulps %xmm3,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_565_sse41 _sk_gather_565_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,194 ; paddd %xmm2,%xmm0 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,67,15,196,4,81,0 ; pinsrw $0x0,(%r9,%r10,2),%xmm0 DB 102,65,15,196,4,73,1 ; pinsrw $0x1,(%r9,%rcx,2),%xmm0 DB 67,15,183,12,65 ; movzwl (%r9,%r8,2),%ecx DB 102,15,196,193,2 ; pinsrw $0x2,%ecx,%xmm0 DB 65,15,183,4,65 ; movzwl (%r9,%rax,2),%eax DB 102,15,196,192,3 ; pinsrw $0x3,%eax,%xmm0 DB 102,15,56,51,208 ; pmovzxwd %xmm0,%xmm2 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,219,194 ; pand %xmm2,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 102,15,219,202 ; pand %xmm2,%xmm1 DB 15,91,217 ; cvtdq2ps %xmm1,%xmm3 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,203 ; mulps %xmm3,%xmm1 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,15,219,218 ; pand %xmm2,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,89,211 ; mulps %xmm3,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_565_sse41 _sk_store_565_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,0,248,65 ; mov $0x41f80000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,11 ; pslld $0xb,%xmm9 DB 185,0,0,124,66 ; mov $0x427c0000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10 DB 102,65,15,114,242,5 ; pslld $0x5,%xmm10 DB 102,69,15,235,209 ; por %xmm9,%xmm10 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,69,15,86,194 ; orpd %xmm10,%xmm8 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8 DB 102,68,15,214,4,120 ; movq %xmm8,(%rax,%rdi,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_4444_sse41 _sk_load_4444_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,68,15,56,51,12,120 ; pmovzxwd (%rax,%rdi,2),%xmm9 DB 184,0,240,0,0 ; mov $0xf000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,137,136,136,55 ; mov $0x37888889,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,0,15,0,0 ; mov $0xf00,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 102,65,15,219,201 ; pand %xmm9,%xmm1 DB 15,91,209 ; cvtdq2ps %xmm1,%xmm2 DB 184,137,136,136,57 ; mov $0x39888889,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,202 ; mulps %xmm2,%xmm1 DB 184,240,0,0,0 ; mov $0xf0,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,65,15,219,209 ; pand %xmm9,%xmm2 DB 68,15,91,194 ; cvtdq2ps %xmm2,%xmm8 DB 184,137,136,136,59 ; mov $0x3b888889,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 184,15,0,0,0 ; mov $0xf,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,217 ; pand %xmm9,%xmm3 DB 68,15,91,195 ; cvtdq2ps %xmm3,%xmm8 DB 184,137,136,136,61 ; mov $0x3d888889,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_4444_sse41 _sk_gather_4444_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,194 ; paddd %xmm2,%xmm0 DB 102,72,15,58,22,192,1 ; pextrq $0x1,%xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,67,15,196,4,81,0 ; pinsrw $0x0,(%r9,%r10,2),%xmm0 DB 102,65,15,196,4,73,1 ; pinsrw $0x1,(%r9,%rcx,2),%xmm0 DB 67,15,183,12,65 ; movzwl (%r9,%r8,2),%ecx DB 102,15,196,193,2 ; pinsrw $0x2,%ecx,%xmm0 DB 65,15,183,4,65 ; movzwl (%r9,%rax,2),%eax DB 102,15,196,192,3 ; pinsrw $0x3,%eax,%xmm0 DB 102,68,15,56,51,200 ; pmovzxwd %xmm0,%xmm9 DB 184,0,240,0,0 ; mov $0xf000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,137,136,136,55 ; mov $0x37888889,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,0,15,0,0 ; mov $0xf00,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 102,65,15,219,201 ; pand %xmm9,%xmm1 DB 15,91,209 ; cvtdq2ps %xmm1,%xmm2 DB 184,137,136,136,57 ; mov $0x39888889,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,202 ; mulps %xmm2,%xmm1 DB 184,240,0,0,0 ; mov $0xf0,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,65,15,219,209 ; pand %xmm9,%xmm2 DB 68,15,91,194 ; cvtdq2ps %xmm2,%xmm8 DB 184,137,136,136,59 ; mov $0x3b888889,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 184,15,0,0,0 ; mov $0xf,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,217 ; pand %xmm9,%xmm3 DB 68,15,91,195 ; cvtdq2ps %xmm3,%xmm8 DB 184,137,136,136,61 ; mov $0x3d888889,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_4444_sse41 _sk_store_4444_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,0,112,65 ; mov $0x41700000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,12 ; pslld $0xc,%xmm9 DB 69,15,40,208 ; movaps %xmm8,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10 DB 102,65,15,114,242,8 ; pslld $0x8,%xmm10 DB 102,69,15,235,209 ; por %xmm9,%xmm10 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,4 ; pslld $0x4,%xmm9 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,69,15,86,193 ; orpd %xmm9,%xmm8 DB 102,69,15,86,194 ; orpd %xmm10,%xmm8 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8 DB 102,68,15,214,4,120 ; movq %xmm8,(%rax,%rdi,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_8888_sse41 _sk_load_8888_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,15,111,28,184 ; movdqu (%rax,%rdi,4),%xmm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,114,209,8 ; psrld $0x8,%xmm1 DB 102,15,219,200 ; pand %xmm0,%xmm1 DB 102,15,111,211 ; movdqa %xmm3,%xmm2 DB 102,15,114,210,16 ; psrld $0x10,%xmm2 DB 102,15,219,208 ; pand %xmm0,%xmm2 DB 102,15,219,195 ; pand %xmm3,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,114,211,24 ; psrld $0x18,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_8888_sse41 _sk_gather_8888_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,194 ; paddd %xmm2,%xmm0 DB 102,72,15,126,192 ; movq %xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,67,15,110,28,129 ; movd (%r9,%r8,4),%xmm3 DB 102,65,15,58,34,28,129,1 ; pinsrd $0x1,(%r9,%rax,4),%xmm3 DB 102,67,15,58,34,28,145,2 ; pinsrd $0x2,(%r9,%r10,4),%xmm3 DB 102,65,15,58,34,28,137,3 ; pinsrd $0x3,(%r9,%rcx,4),%xmm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,114,209,8 ; psrld $0x8,%xmm1 DB 102,15,219,200 ; pand %xmm0,%xmm1 DB 102,15,111,211 ; movdqa %xmm3,%xmm2 DB 102,15,114,210,16 ; psrld $0x10,%xmm2 DB 102,15,219,208 ; pand %xmm0,%xmm2 DB 102,15,219,195 ; pand %xmm3,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,114,211,24 ; psrld $0x18,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_8888_sse41 _sk_store_8888_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,0,127,67 ; mov $0x437f0000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 69,15,40,208 ; movaps %xmm8,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10 DB 102,65,15,114,242,8 ; pslld $0x8,%xmm10 DB 102,69,15,235,209 ; por %xmm9,%xmm10 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,65,15,114,240,24 ; pslld $0x18,%xmm8 DB 102,69,15,235,193 ; por %xmm9,%xmm8 DB 102,69,15,235,194 ; por %xmm10,%xmm8 DB 243,68,15,127,4,184 ; movdqu %xmm8,(%rax,%rdi,4) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_f16_sse41 _sk_load_f16_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,15,111,4,248 ; movdqu (%rax,%rdi,8),%xmm0 DB 243,15,111,76,248,16 ; movdqu 0x10(%rax,%rdi,8),%xmm1 DB 102,68,15,111,200 ; movdqa %xmm0,%xmm9 DB 102,68,15,97,201 ; punpcklwd %xmm1,%xmm9 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0 DB 102,69,15,111,217 ; movdqa %xmm9,%xmm11 DB 102,68,15,97,216 ; punpcklwd %xmm0,%xmm11 DB 102,68,15,105,200 ; punpckhwd %xmm0,%xmm9 DB 102,65,15,56,51,203 ; pmovzxwd %xmm11,%xmm1 DB 102,68,15,111,5,114,22,0,0 ; movdqa 0x1672(%rip),%xmm8 # 42f0 <_sk_callback_sse41+0x3d4> DB 102,15,111,209 ; movdqa %xmm1,%xmm2 DB 102,65,15,219,208 ; pand %xmm8,%xmm2 DB 102,15,239,202 ; pxor %xmm2,%xmm1 DB 102,15,111,29,109,22,0,0 ; movdqa 0x166d(%rip),%xmm3 # 4300 <_sk_callback_sse41+0x3e4> DB 102,15,114,242,16 ; pslld $0x10,%xmm2 DB 102,15,111,193 ; movdqa %xmm1,%xmm0 DB 102,15,56,63,195 ; pmaxud %xmm3,%xmm0 DB 102,15,118,193 ; pcmpeqd %xmm1,%xmm0 DB 102,15,114,241,13 ; pslld $0xd,%xmm1 DB 102,15,235,202 ; por %xmm2,%xmm1 DB 102,68,15,111,21,89,22,0,0 ; movdqa 0x1659(%rip),%xmm10 # 4310 <_sk_callback_sse41+0x3f4> DB 102,65,15,254,202 ; paddd %xmm10,%xmm1 DB 102,15,219,193 ; pand %xmm1,%xmm0 DB 102,65,15,115,219,8 ; psrldq $0x8,%xmm11 DB 102,69,15,56,51,219 ; pmovzxwd %xmm11,%xmm11 DB 102,65,15,111,211 ; movdqa %xmm11,%xmm2 DB 102,65,15,219,208 ; pand %xmm8,%xmm2 DB 102,68,15,239,218 ; pxor %xmm2,%xmm11 DB 102,15,114,242,16 ; pslld $0x10,%xmm2 DB 102,65,15,111,203 ; movdqa %xmm11,%xmm1 DB 102,15,56,63,203 ; pmaxud %xmm3,%xmm1 DB 102,65,15,118,203 ; pcmpeqd %xmm11,%xmm1 DB 102,65,15,114,243,13 ; pslld $0xd,%xmm11 DB 102,68,15,235,218 ; por %xmm2,%xmm11 DB 102,69,15,254,218 ; paddd %xmm10,%xmm11 DB 102,65,15,219,203 ; pand %xmm11,%xmm1 DB 102,69,15,56,51,217 ; pmovzxwd %xmm9,%xmm11 DB 102,69,15,111,227 ; movdqa %xmm11,%xmm12 DB 102,69,15,219,224 ; pand %xmm8,%xmm12 DB 102,69,15,239,220 ; pxor %xmm12,%xmm11 DB 102,65,15,114,244,16 ; pslld $0x10,%xmm12 DB 102,65,15,111,211 ; movdqa %xmm11,%xmm2 DB 102,15,56,63,211 ; pmaxud %xmm3,%xmm2 DB 102,65,15,118,211 ; pcmpeqd %xmm11,%xmm2 DB 102,65,15,114,243,13 ; pslld $0xd,%xmm11 DB 102,69,15,235,220 ; por %xmm12,%xmm11 DB 102,69,15,254,218 ; paddd %xmm10,%xmm11 DB 102,65,15,219,211 ; pand %xmm11,%xmm2 DB 102,65,15,115,217,8 ; psrldq $0x8,%xmm9 DB 102,69,15,56,51,201 ; pmovzxwd %xmm9,%xmm9 DB 102,69,15,219,193 ; pand %xmm9,%xmm8 DB 102,69,15,239,200 ; pxor %xmm8,%xmm9 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8 DB 102,65,15,56,63,217 ; pmaxud %xmm9,%xmm3 DB 102,65,15,118,217 ; pcmpeqd %xmm9,%xmm3 DB 102,65,15,114,241,13 ; pslld $0xd,%xmm9 DB 102,69,15,235,200 ; por %xmm8,%xmm9 DB 102,69,15,254,202 ; paddd %xmm10,%xmm9 DB 102,65,15,219,217 ; pand %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_f16_sse41 _sk_gather_f16_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,56,64,209 ; pmulld %xmm1,%xmm2 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,194 ; paddd %xmm2,%xmm0 DB 102,72,15,126,192 ; movq %xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,58,22,193,1 ; pextrq $0x1,%xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,65,15,126,4,201 ; movq (%r9,%rcx,8),%xmm0 DB 243,67,15,126,12,209 ; movq (%r9,%r10,8),%xmm1 DB 102,15,108,200 ; punpcklqdq %xmm0,%xmm1 DB 243,65,15,126,4,193 ; movq (%r9,%rax,8),%xmm0 DB 243,67,15,126,20,193 ; movq (%r9,%r8,8),%xmm2 DB 102,15,108,208 ; punpcklqdq %xmm0,%xmm2 DB 102,68,15,111,202 ; movdqa %xmm2,%xmm9 DB 102,68,15,97,201 ; punpcklwd %xmm1,%xmm9 DB 102,15,105,209 ; punpckhwd %xmm1,%xmm2 DB 102,69,15,111,217 ; movdqa %xmm9,%xmm11 DB 102,68,15,97,218 ; punpcklwd %xmm2,%xmm11 DB 102,68,15,105,202 ; punpckhwd %xmm2,%xmm9 DB 102,65,15,56,51,203 ; pmovzxwd %xmm11,%xmm1 DB 102,68,15,111,5,23,21,0,0 ; movdqa 0x1517(%rip),%xmm8 # 4320 <_sk_callback_sse41+0x404> DB 102,15,111,209 ; movdqa %xmm1,%xmm2 DB 102,65,15,219,208 ; pand %xmm8,%xmm2 DB 102,15,239,202 ; pxor %xmm2,%xmm1 DB 102,15,111,29,18,21,0,0 ; movdqa 0x1512(%rip),%xmm3 # 4330 <_sk_callback_sse41+0x414> DB 102,15,114,242,16 ; pslld $0x10,%xmm2 DB 102,15,111,193 ; movdqa %xmm1,%xmm0 DB 102,15,56,63,195 ; pmaxud %xmm3,%xmm0 DB 102,15,118,193 ; pcmpeqd %xmm1,%xmm0 DB 102,15,114,241,13 ; pslld $0xd,%xmm1 DB 102,15,235,202 ; por %xmm2,%xmm1 DB 102,68,15,111,21,254,20,0,0 ; movdqa 0x14fe(%rip),%xmm10 # 4340 <_sk_callback_sse41+0x424> DB 102,65,15,254,202 ; paddd %xmm10,%xmm1 DB 102,15,219,193 ; pand %xmm1,%xmm0 DB 102,65,15,115,219,8 ; psrldq $0x8,%xmm11 DB 102,69,15,56,51,219 ; pmovzxwd %xmm11,%xmm11 DB 102,65,15,111,211 ; movdqa %xmm11,%xmm2 DB 102,65,15,219,208 ; pand %xmm8,%xmm2 DB 102,68,15,239,218 ; pxor %xmm2,%xmm11 DB 102,15,114,242,16 ; pslld $0x10,%xmm2 DB 102,65,15,111,203 ; movdqa %xmm11,%xmm1 DB 102,15,56,63,203 ; pmaxud %xmm3,%xmm1 DB 102,65,15,118,203 ; pcmpeqd %xmm11,%xmm1 DB 102,65,15,114,243,13 ; pslld $0xd,%xmm11 DB 102,68,15,235,218 ; por %xmm2,%xmm11 DB 102,69,15,254,218 ; paddd %xmm10,%xmm11 DB 102,65,15,219,203 ; pand %xmm11,%xmm1 DB 102,69,15,56,51,217 ; pmovzxwd %xmm9,%xmm11 DB 102,69,15,111,227 ; movdqa %xmm11,%xmm12 DB 102,69,15,219,224 ; pand %xmm8,%xmm12 DB 102,69,15,239,220 ; pxor %xmm12,%xmm11 DB 102,65,15,114,244,16 ; pslld $0x10,%xmm12 DB 102,65,15,111,211 ; movdqa %xmm11,%xmm2 DB 102,15,56,63,211 ; pmaxud %xmm3,%xmm2 DB 102,65,15,118,211 ; pcmpeqd %xmm11,%xmm2 DB 102,65,15,114,243,13 ; pslld $0xd,%xmm11 DB 102,69,15,235,220 ; por %xmm12,%xmm11 DB 102,69,15,254,218 ; paddd %xmm10,%xmm11 DB 102,65,15,219,211 ; pand %xmm11,%xmm2 DB 102,65,15,115,217,8 ; psrldq $0x8,%xmm9 DB 102,69,15,56,51,201 ; pmovzxwd %xmm9,%xmm9 DB 102,69,15,219,193 ; pand %xmm9,%xmm8 DB 102,69,15,239,200 ; pxor %xmm8,%xmm9 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8 DB 102,65,15,56,63,217 ; pmaxud %xmm9,%xmm3 DB 102,65,15,118,217 ; pcmpeqd %xmm9,%xmm3 DB 102,65,15,114,241,13 ; pslld $0xd,%xmm9 DB 102,69,15,235,200 ; por %xmm8,%xmm9 DB 102,69,15,254,202 ; paddd %xmm10,%xmm9 DB 102,65,15,219,217 ; pand %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_f16_sse41 _sk_store_f16_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,68,15,111,21,52,20,0,0 ; movdqa 0x1434(%rip),%xmm10 # 4350 <_sk_callback_sse41+0x434> DB 102,68,15,111,224 ; movdqa %xmm0,%xmm12 DB 102,68,15,111,232 ; movdqa %xmm0,%xmm13 DB 102,69,15,219,234 ; pand %xmm10,%xmm13 DB 102,69,15,239,229 ; pxor %xmm13,%xmm12 DB 102,68,15,111,13,39,20,0,0 ; movdqa 0x1427(%rip),%xmm9 # 4360 <_sk_callback_sse41+0x444> DB 102,65,15,114,213,16 ; psrld $0x10,%xmm13 DB 102,69,15,111,193 ; movdqa %xmm9,%xmm8 DB 102,69,15,102,196 ; pcmpgtd %xmm12,%xmm8 DB 102,65,15,114,212,13 ; psrld $0xd,%xmm12 DB 102,68,15,111,29,24,20,0,0 ; movdqa 0x1418(%rip),%xmm11 # 4370 <_sk_callback_sse41+0x454> DB 102,69,15,235,235 ; por %xmm11,%xmm13 DB 102,69,15,254,236 ; paddd %xmm12,%xmm13 DB 102,69,15,223,197 ; pandn %xmm13,%xmm8 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8 DB 102,68,15,111,233 ; movdqa %xmm1,%xmm13 DB 102,68,15,111,241 ; movdqa %xmm1,%xmm14 DB 102,69,15,219,242 ; pand %xmm10,%xmm14 DB 102,69,15,239,238 ; pxor %xmm14,%xmm13 DB 102,65,15,114,214,16 ; psrld $0x10,%xmm14 DB 102,69,15,111,225 ; movdqa %xmm9,%xmm12 DB 102,69,15,102,229 ; pcmpgtd %xmm13,%xmm12 DB 102,65,15,114,213,13 ; psrld $0xd,%xmm13 DB 102,69,15,235,243 ; por %xmm11,%xmm14 DB 102,69,15,254,245 ; paddd %xmm13,%xmm14 DB 102,69,15,223,230 ; pandn %xmm14,%xmm12 DB 102,69,15,56,43,228 ; packusdw %xmm12,%xmm12 DB 102,68,15,111,242 ; movdqa %xmm2,%xmm14 DB 102,68,15,111,250 ; movdqa %xmm2,%xmm15 DB 102,69,15,219,250 ; pand %xmm10,%xmm15 DB 102,69,15,239,247 ; pxor %xmm15,%xmm14 DB 102,65,15,114,215,16 ; psrld $0x10,%xmm15 DB 102,69,15,111,233 ; movdqa %xmm9,%xmm13 DB 102,69,15,102,238 ; pcmpgtd %xmm14,%xmm13 DB 102,65,15,114,214,13 ; psrld $0xd,%xmm14 DB 102,69,15,235,251 ; por %xmm11,%xmm15 DB 102,69,15,254,254 ; paddd %xmm14,%xmm15 DB 102,69,15,223,239 ; pandn %xmm15,%xmm13 DB 102,69,15,56,43,237 ; packusdw %xmm13,%xmm13 DB 102,68,15,219,211 ; pand %xmm3,%xmm10 DB 102,68,15,111,243 ; movdqa %xmm3,%xmm14 DB 102,69,15,239,242 ; pxor %xmm10,%xmm14 DB 102,65,15,114,210,16 ; psrld $0x10,%xmm10 DB 102,69,15,102,206 ; pcmpgtd %xmm14,%xmm9 DB 102,65,15,114,214,13 ; psrld $0xd,%xmm14 DB 102,69,15,235,211 ; por %xmm11,%xmm10 DB 102,69,15,254,214 ; paddd %xmm14,%xmm10 DB 102,69,15,223,202 ; pandn %xmm10,%xmm9 DB 102,69,15,56,43,201 ; packusdw %xmm9,%xmm9 DB 102,69,15,97,196 ; punpcklwd %xmm12,%xmm8 DB 102,69,15,97,233 ; punpcklwd %xmm9,%xmm13 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9 DB 102,69,15,98,205 ; punpckldq %xmm13,%xmm9 DB 243,68,15,127,12,248 ; movdqu %xmm9,(%rax,%rdi,8) DB 102,69,15,106,197 ; punpckhdq %xmm13,%xmm8 DB 243,68,15,127,68,248,16 ; movdqu %xmm8,0x10(%rax,%rdi,8) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_u16_be_sse41 _sk_load_u16_be_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,15,111,4,248 ; movdqu (%rax,%rdi,8),%xmm0 DB 243,15,111,76,248,16 ; movdqu 0x10(%rax,%rdi,8),%xmm1 DB 102,15,111,208 ; movdqa %xmm0,%xmm2 DB 102,15,97,209 ; punpcklwd %xmm1,%xmm2 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0 DB 102,15,111,202 ; movdqa %xmm2,%xmm1 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1 DB 102,15,105,208 ; punpckhwd %xmm0,%xmm2 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 102,15,111,193 ; movdqa %xmm1,%xmm0 DB 102,15,113,240,8 ; psllw $0x8,%xmm0 DB 102,15,112,217,78 ; pshufd $0x4e,%xmm1,%xmm3 DB 102,15,113,209,8 ; psrlw $0x8,%xmm1 DB 102,15,235,200 ; por %xmm0,%xmm1 DB 102,15,56,51,193 ; pmovzxwd %xmm1,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,113,241,8 ; psllw $0x8,%xmm1 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3 DB 102,15,235,217 ; por %xmm1,%xmm3 DB 102,15,56,51,203 ; pmovzxwd %xmm3,%xmm1 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 102,68,15,111,202 ; movdqa %xmm2,%xmm9 DB 102,65,15,113,241,8 ; psllw $0x8,%xmm9 DB 102,15,112,218,78 ; pshufd $0x4e,%xmm2,%xmm3 DB 102,15,113,210,8 ; psrlw $0x8,%xmm2 DB 102,65,15,235,209 ; por %xmm9,%xmm2 DB 102,15,56,51,210 ; pmovzxwd %xmm2,%xmm2 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,68,15,111,203 ; movdqa %xmm3,%xmm9 DB 102,65,15,113,241,8 ; psllw $0x8,%xmm9 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3 DB 102,65,15,235,217 ; por %xmm9,%xmm3 DB 102,15,56,51,219 ; pmovzxwd %xmm3,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_rgb_u16_be_sse41 _sk_load_rgb_u16_be_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,141,12,127 ; lea (%rdi,%rdi,2),%rcx DB 243,15,111,20,72 ; movdqu (%rax,%rcx,2),%xmm2 DB 243,15,111,68,72,8 ; movdqu 0x8(%rax,%rcx,2),%xmm0 DB 102,15,115,216,4 ; psrldq $0x4,%xmm0 DB 102,15,111,202 ; movdqa %xmm2,%xmm1 DB 102,15,115,217,6 ; psrldq $0x6,%xmm1 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2 DB 102,15,115,216,6 ; psrldq $0x6,%xmm0 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1 DB 102,15,111,194 ; movdqa %xmm2,%xmm0 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3 DB 102,15,105,209 ; punpckhwd %xmm1,%xmm2 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 102,15,111,200 ; movdqa %xmm0,%xmm1 DB 102,15,113,241,8 ; psllw $0x8,%xmm1 DB 102,15,113,208,8 ; psrlw $0x8,%xmm0 DB 102,15,235,193 ; por %xmm1,%xmm0 DB 102,15,56,51,192 ; pmovzxwd %xmm0,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,113,241,8 ; psllw $0x8,%xmm1 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3 DB 102,15,235,217 ; por %xmm1,%xmm3 DB 102,15,56,51,203 ; pmovzxwd %xmm3,%xmm1 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 102,15,111,218 ; movdqa %xmm2,%xmm3 DB 102,15,113,243,8 ; psllw $0x8,%xmm3 DB 102,15,113,210,8 ; psrlw $0x8,%xmm2 DB 102,15,235,211 ; por %xmm3,%xmm2 DB 102,15,56,51,210 ; pmovzxwd %xmm2,%xmm2 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_u16_be_sse41 _sk_store_u16_be_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,255,127,71 ; mov $0x477fff00,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,69,15,56,43,192 ; packusdw %xmm8,%xmm8 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10 DB 102,65,15,113,242,8 ; psllw $0x8,%xmm10 DB 102,65,15,113,208,8 ; psrlw $0x8,%xmm8 DB 102,69,15,235,194 ; por %xmm10,%xmm8 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10 DB 102,69,15,56,43,210 ; packusdw %xmm10,%xmm10 DB 102,69,15,111,218 ; movdqa %xmm10,%xmm11 DB 102,65,15,113,243,8 ; psllw $0x8,%xmm11 DB 102,65,15,113,210,8 ; psrlw $0x8,%xmm10 DB 102,69,15,235,211 ; por %xmm11,%xmm10 DB 69,15,40,217 ; movaps %xmm9,%xmm11 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 102,69,15,91,219 ; cvtps2dq %xmm11,%xmm11 DB 102,69,15,56,43,219 ; packusdw %xmm11,%xmm11 DB 102,69,15,111,227 ; movdqa %xmm11,%xmm12 DB 102,65,15,113,244,8 ; psllw $0x8,%xmm12 DB 102,65,15,113,211,8 ; psrlw $0x8,%xmm11 DB 102,69,15,235,220 ; por %xmm12,%xmm11 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,69,15,56,43,201 ; packusdw %xmm9,%xmm9 DB 102,69,15,111,225 ; movdqa %xmm9,%xmm12 DB 102,65,15,113,244,8 ; psllw $0x8,%xmm12 DB 102,65,15,113,209,8 ; psrlw $0x8,%xmm9 DB 102,69,15,235,204 ; por %xmm12,%xmm9 DB 102,69,15,97,194 ; punpcklwd %xmm10,%xmm8 DB 102,69,15,97,217 ; punpcklwd %xmm9,%xmm11 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9 DB 102,69,15,98,203 ; punpckldq %xmm11,%xmm9 DB 243,68,15,127,12,248 ; movdqu %xmm9,(%rax,%rdi,8) DB 102,69,15,106,195 ; punpckhdq %xmm11,%xmm8 DB 243,68,15,127,68,248,16 ; movdqu %xmm8,0x10(%rax,%rdi,8) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_f32_sse41 _sk_load_f32_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,137,249 ; mov %rdi,%rcx DB 72,193,225,4 ; shl $0x4,%rcx DB 68,15,16,4,8 ; movups (%rax,%rcx,1),%xmm8 DB 15,16,68,8,16 ; movups 0x10(%rax,%rcx,1),%xmm0 DB 15,16,92,8,32 ; movups 0x20(%rax,%rcx,1),%xmm3 DB 68,15,16,76,8,48 ; movups 0x30(%rax,%rcx,1),%xmm9 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 15,20,208 ; unpcklps %xmm0,%xmm2 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 65,15,20,201 ; unpcklps %xmm9,%xmm1 DB 68,15,21,192 ; unpckhps %xmm0,%xmm8 DB 65,15,21,217 ; unpckhps %xmm9,%xmm3 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 102,15,20,193 ; unpcklpd %xmm1,%xmm0 DB 15,18,202 ; movhlps %xmm2,%xmm1 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 102,15,20,211 ; unpcklpd %xmm3,%xmm2 DB 65,15,18,216 ; movhlps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_f32_sse41 _sk_store_f32_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,137,249 ; mov %rdi,%rcx DB 72,193,225,4 ; shl $0x4,%rcx DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 68,15,20,201 ; unpcklps %xmm1,%xmm9 DB 68,15,40,210 ; movaps %xmm2,%xmm10 DB 68,15,40,218 ; movaps %xmm2,%xmm11 DB 68,15,20,219 ; unpcklps %xmm3,%xmm11 DB 68,15,21,193 ; unpckhps %xmm1,%xmm8 DB 68,15,21,211 ; unpckhps %xmm3,%xmm10 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 102,69,15,20,227 ; unpcklpd %xmm11,%xmm12 DB 69,15,18,217 ; movhlps %xmm9,%xmm11 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 102,69,15,20,202 ; unpcklpd %xmm10,%xmm9 DB 69,15,18,208 ; movhlps %xmm8,%xmm10 DB 102,68,15,17,36,8 ; movupd %xmm12,(%rax,%rcx,1) DB 68,15,17,92,8,16 ; movups %xmm11,0x10(%rax,%rcx,1) DB 102,68,15,17,76,8,32 ; movupd %xmm9,0x20(%rax,%rcx,1) DB 68,15,17,84,8,48 ; movups %xmm10,0x30(%rax,%rcx,1) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_x_sse41 _sk_clamp_x_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 68,15,95,192 ; maxps %xmm0,%xmm8 DB 243,68,15,16,8 ; movss (%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 102,15,118,192 ; pcmpeqd %xmm0,%xmm0 DB 102,65,15,254,193 ; paddd %xmm9,%xmm0 DB 68,15,93,192 ; minps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_y_sse41 _sk_clamp_y_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 68,15,95,193 ; maxps %xmm1,%xmm8 DB 243,68,15,16,8 ; movss (%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 102,15,118,201 ; pcmpeqd %xmm1,%xmm1 DB 102,65,15,254,201 ; paddd %xmm9,%xmm1 DB 68,15,93,193 ; minps %xmm1,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 255,224 ; jmpq *%rax PUBLIC _sk_repeat_x_sse41 _sk_repeat_x_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 69,15,94,200 ; divps %xmm8,%xmm9 DB 102,69,15,58,8,201,1 ; roundps $0x1,%xmm9,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 102,69,15,118,201 ; pcmpeqd %xmm9,%xmm9 DB 102,69,15,254,200 ; paddd %xmm8,%xmm9 DB 65,15,93,193 ; minps %xmm9,%xmm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_repeat_y_sse41 _sk_repeat_y_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 69,15,94,200 ; divps %xmm8,%xmm9 DB 102,69,15,58,8,201,1 ; roundps $0x1,%xmm9,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 65,15,92,201 ; subps %xmm9,%xmm1 DB 102,69,15,118,201 ; pcmpeqd %xmm9,%xmm9 DB 102,69,15,254,200 ; paddd %xmm8,%xmm9 DB 65,15,93,201 ; minps %xmm9,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_mirror_x_sse41 _sk_mirror_x_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 243,69,15,88,192 ; addss %xmm8,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,40,208 ; movaps %xmm0,%xmm10 DB 69,15,94,208 ; divps %xmm8,%xmm10 DB 102,69,15,58,8,210,1 ; roundps $0x1,%xmm10,%xmm10 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 65,15,92,194 ; subps %xmm10,%xmm0 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 68,15,92,192 ; subps %xmm0,%xmm8 DB 65,15,84,192 ; andps %xmm8,%xmm0 DB 102,69,15,118,192 ; pcmpeqd %xmm8,%xmm8 DB 102,69,15,254,193 ; paddd %xmm9,%xmm8 DB 65,15,93,192 ; minps %xmm8,%xmm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_mirror_y_sse41 _sk_mirror_y_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 65,15,92,201 ; subps %xmm9,%xmm1 DB 243,69,15,88,192 ; addss %xmm8,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,40,209 ; movaps %xmm1,%xmm10 DB 69,15,94,208 ; divps %xmm8,%xmm10 DB 102,69,15,58,8,210,1 ; roundps $0x1,%xmm10,%xmm10 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 65,15,92,202 ; subps %xmm10,%xmm1 DB 65,15,92,201 ; subps %xmm9,%xmm1 DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 68,15,92,193 ; subps %xmm1,%xmm8 DB 65,15,84,200 ; andps %xmm8,%xmm1 DB 102,69,15,118,192 ; pcmpeqd %xmm8,%xmm8 DB 102,69,15,254,193 ; paddd %xmm9,%xmm8 DB 65,15,93,200 ; minps %xmm8,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_luminance_to_alpha_sse41 _sk_luminance_to_alpha_sse41 LABEL PROC DB 184,208,179,89,62 ; mov $0x3e59b3d0,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,89,216 ; mulps %xmm0,%xmm3 DB 184,89,23,55,63 ; mov $0x3f371759,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 15,88,195 ; addps %xmm3,%xmm0 DB 184,152,221,147,61 ; mov $0x3d93dd98,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,89,218 ; mulps %xmm2,%xmm3 DB 15,88,216 ; addps %xmm0,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_2x3_sse41 _sk_matrix_2x3_sse41 LABEL PROC DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,16 ; movss 0x10(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,68,15,16,80,12 ; movss 0xc(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_3x4_sse41 _sk_matrix_3x4_sse41 LABEL PROC DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 243,68,15,16,80,12 ; movss 0xc(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,36 ; movss 0x24(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,28 ; movss 0x1c(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,40 ; movss 0x28(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,32 ; movss 0x20(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,44 ; movss 0x2c(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 68,15,89,226 ; mulps %xmm2,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 69,15,89,217 ; mulps %xmm9,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_4x5_sse41 _sk_matrix_4x5_sse41 LABEL PROC DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,32 ; movss 0x20(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,48 ; movss 0x30(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,64 ; movss 0x40(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 68,15,89,227 ; mulps %xmm3,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,68,15,16,80,20 ; movss 0x14(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,36 ; movss 0x24(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,52 ; movss 0x34(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,68 ; movss 0x44(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 68,15,89,227 ; mulps %xmm3,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,40 ; movss 0x28(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,56 ; movss 0x38(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 243,68,15,16,112,72 ; movss 0x48(%rax),%xmm14 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 68,15,89,235 ; mulps %xmm3,%xmm13 DB 69,15,88,238 ; addps %xmm14,%xmm13 DB 68,15,89,226 ; mulps %xmm2,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 69,15,89,217 ; mulps %xmm9,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 243,68,15,16,88,12 ; movss 0xc(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,28 ; movss 0x1c(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,44 ; movss 0x2c(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 243,68,15,16,112,60 ; movss 0x3c(%rax),%xmm14 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 243,68,15,16,120,76 ; movss 0x4c(%rax),%xmm15 DB 69,15,198,255,0 ; shufps $0x0,%xmm15,%xmm15 DB 68,15,89,243 ; mulps %xmm3,%xmm14 DB 69,15,88,247 ; addps %xmm15,%xmm14 DB 68,15,89,234 ; mulps %xmm2,%xmm13 DB 69,15,88,238 ; addps %xmm14,%xmm13 DB 69,15,89,225 ; mulps %xmm9,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 69,15,89,216 ; mulps %xmm8,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 65,15,40,219 ; movaps %xmm11,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_perspective_sse41 _sk_matrix_perspective_sse41 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,68,15,16,72,4 ; movss 0x4(%rax),%xmm9 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,201 ; mulps %xmm1,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,88,193 ; addps %xmm9,%xmm0 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 243,68,15,16,80,24 ; movss 0x18(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,28 ; movss 0x1c(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,32 ; movss 0x20(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 68,15,89,217 ; mulps %xmm1,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,83,202 ; rcpps %xmm10,%xmm1 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 68,15,89,201 ; mulps %xmm1,%xmm9 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,201 ; movaps %xmm9,%xmm1 DB 255,224 ; jmpq *%rax PUBLIC _sk_linear_gradient_sse41 _sk_linear_gradient_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,24 ; movss 0x18(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,28 ; movss 0x1c(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 72,139,8 ; mov (%rax),%rcx DB 72,133,201 ; test %rcx,%rcx DB 15,132,4,1,0,0 ; je 399e <_sk_linear_gradient_sse41+0x13e> DB 72,131,236,88 ; sub $0x58,%rsp DB 15,41,36,36 ; movaps %xmm4,(%rsp) DB 15,41,108,36,16 ; movaps %xmm5,0x10(%rsp) DB 15,41,116,36,32 ; movaps %xmm6,0x20(%rsp) DB 15,41,124,36,48 ; movaps %xmm7,0x30(%rsp) DB 72,139,64,8 ; mov 0x8(%rax),%rax DB 72,131,192,32 ; add $0x20,%rax DB 69,15,87,201 ; xorps %xmm9,%xmm9 DB 15,87,219 ; xorps %xmm3,%xmm3 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,40,233 ; movaps %xmm1,%xmm5 DB 15,40,242 ; movaps %xmm2,%xmm6 DB 15,40,251 ; movaps %xmm3,%xmm7 DB 69,15,40,194 ; movaps %xmm10,%xmm8 DB 69,15,40,243 ; movaps %xmm11,%xmm14 DB 69,15,40,252 ; movaps %xmm12,%xmm15 DB 68,15,41,108,36,64 ; movaps %xmm13,0x40(%rsp) DB 65,15,40,201 ; movaps %xmm9,%xmm1 DB 243,15,16,80,224 ; movss -0x20(%rax),%xmm2 DB 243,68,15,16,72,228 ; movss -0x1c(%rax),%xmm9 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,40,224 ; movaps %xmm0,%xmm4 DB 15,194,194,1 ; cmpltps %xmm2,%xmm0 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 102,68,15,56,20,201 ; blendvps %xmm0,%xmm1,%xmm9 DB 243,15,16,72,232 ; movss -0x18(%rax),%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 102,15,56,20,205 ; blendvps %xmm0,%xmm5,%xmm1 DB 243,15,16,80,236 ; movss -0x14(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 102,15,56,20,214 ; blendvps %xmm0,%xmm6,%xmm2 DB 243,15,16,88,240 ; movss -0x10(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 102,15,56,20,223 ; blendvps %xmm0,%xmm7,%xmm3 DB 243,68,15,16,80,244 ; movss -0xc(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 102,69,15,56,20,208 ; blendvps %xmm0,%xmm8,%xmm10 DB 243,68,15,16,88,248 ; movss -0x8(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 102,69,15,56,20,222 ; blendvps %xmm0,%xmm14,%xmm11 DB 243,68,15,16,96,252 ; movss -0x4(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 102,69,15,56,20,231 ; blendvps %xmm0,%xmm15,%xmm12 DB 243,68,15,16,40 ; movss (%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 102,68,15,56,20,108,36,64 ; blendvps %xmm0,0x40(%rsp),%xmm13 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 72,131,192,36 ; add $0x24,%rax DB 72,255,201 ; dec %rcx DB 15,133,65,255,255,255 ; jne 38c6 <_sk_linear_gradient_sse41+0x66> DB 15,40,124,36,48 ; movaps 0x30(%rsp),%xmm7 DB 15,40,116,36,32 ; movaps 0x20(%rsp),%xmm6 DB 15,40,108,36,16 ; movaps 0x10(%rsp),%xmm5 DB 15,40,36,36 ; movaps (%rsp),%xmm4 DB 72,131,196,88 ; add $0x58,%rsp DB 235,13 ; jmp 39ab <_sk_linear_gradient_sse41+0x14b> DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 15,87,219 ; xorps %xmm3,%xmm3 DB 69,15,87,201 ; xorps %xmm9,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 15,89,200 ; mulps %xmm0,%xmm1 DB 65,15,88,203 ; addps %xmm11,%xmm1 DB 15,89,208 ; mulps %xmm0,%xmm2 DB 65,15,88,212 ; addps %xmm12,%xmm2 DB 15,89,216 ; mulps %xmm0,%xmm3 DB 65,15,88,221 ; addps %xmm13,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_linear_gradient_2stops_sse41 _sk_linear_gradient_2stops_sse41 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 243,15,16,80,16 ; movss 0x10(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,88,194 ; addps %xmm2,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,15,16,80,20 ; movss 0x14(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,88,202 ; addps %xmm2,%xmm1 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 243,15,16,88,24 ; movss 0x18(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 15,88,211 ; addps %xmm3,%xmm2 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 243,68,15,16,72,28 ; movss 0x1c(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 65,15,88,217 ; addps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_save_xy_sse41 _sk_save_xy_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,88,200 ; addps %xmm0,%xmm9 DB 102,69,15,58,8,209,1 ; roundps $0x1,%xmm9,%xmm10 DB 69,15,92,202 ; subps %xmm10,%xmm9 DB 68,15,88,193 ; addps %xmm1,%xmm8 DB 102,69,15,58,8,208,1 ; roundps $0x1,%xmm8,%xmm10 DB 69,15,92,194 ; subps %xmm10,%xmm8 DB 15,17,0 ; movups %xmm0,(%rax) DB 15,17,72,32 ; movups %xmm1,0x20(%rax) DB 68,15,17,72,64 ; movups %xmm9,0x40(%rax) DB 68,15,17,64,96 ; movups %xmm8,0x60(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_accumulate_sse41 _sk_accumulate_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 68,15,16,128,128,0,0,0 ; movups 0x80(%rax),%xmm8 DB 68,15,16,136,160,0,0,0 ; movups 0xa0(%rax),%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 65,15,88,224 ; addps %xmm8,%xmm4 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,193 ; mulps %xmm1,%xmm8 DB 65,15,88,232 ; addps %xmm8,%xmm5 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 65,15,88,240 ; addps %xmm8,%xmm6 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 65,15,88,249 ; addps %xmm9,%xmm7 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_nx_sse41 _sk_bilinear_nx_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,191 ; mov $0xbf000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_px_sse41 _sk_bilinear_px_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_ny_sse41 _sk_bilinear_ny_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,191 ; mov $0xbf000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_py_sse41 _sk_bilinear_py_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n3x_sse41 _sk_bicubic_n3x_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,192,191 ; mov $0xbfc00000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 185,114,28,199,62 ; mov $0x3ec71c72,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 185,171,170,170,190 ; mov $0xbeaaaaab,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,89,192 ; mulps %xmm8,%xmm8 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n1x_sse41 _sk_bicubic_n1x_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,191 ; mov $0xbf000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 185,85,85,149,191 ; mov $0xbf955555,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 185,57,142,99,61 ; mov $0x3d638e39,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p1x_sse41 _sk_bicubic_p1x_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,85,85,149,191 ; mov $0xbf955555,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,217 ; movd %ecx,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 185,57,142,99,61 ; mov $0x3d638e39,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 68,15,17,144,128,0,0,0 ; movups %xmm10,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p3x_sse41 _sk_bicubic_p3x_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,114,28,199,62 ; mov $0x3ec71c72,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,89,193 ; mulps %xmm9,%xmm8 DB 69,15,89,201 ; mulps %xmm9,%xmm9 DB 185,171,170,170,190 ; mov $0xbeaaaaab,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,88,194 ; addps %xmm10,%xmm8 DB 69,15,89,193 ; mulps %xmm9,%xmm8 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n3y_sse41 _sk_bicubic_n3y_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,192,191 ; mov $0xbfc00000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 185,114,28,199,62 ; mov $0x3ec71c72,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 185,171,170,170,190 ; mov $0xbeaaaaab,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,89,192 ; mulps %xmm8,%xmm8 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n1y_sse41 _sk_bicubic_n1y_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,191 ; mov $0xbf000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 185,85,85,149,191 ; mov $0xbf955555,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 185,57,142,99,61 ; mov $0x3d638e39,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p1y_sse41 _sk_bicubic_p1y_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,85,85,149,191 ; mov $0xbf955555,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,217 ; movd %ecx,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 185,57,142,99,61 ; mov $0x3d638e39,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 68,15,17,144,160,0,0,0 ; movups %xmm10,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p3y_sse41 _sk_bicubic_p3y_sse41 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,114,28,199,62 ; mov $0x3ec71c72,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,89,193 ; mulps %xmm9,%xmm8 DB 69,15,89,201 ; mulps %xmm9,%xmm9 DB 185,171,170,170,190 ; mov $0xbeaaaaab,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,88,194 ; addps %xmm10,%xmm8 DB 69,15,89,193 ; mulps %xmm9,%xmm8 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_callback_sse41 _sk_callback_sse41 LABEL PROC DB 65,86 ; push %r14 DB 83 ; push %rbx DB 72,131,236,40 ; sub $0x28,%rsp DB 68,15,40,197 ; movaps %xmm5,%xmm8 DB 68,15,40,204 ; movaps %xmm4,%xmm9 DB 73,137,214 ; mov %rdx,%r14 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,137,195 ; mov %rax,%rbx DB 15,40,224 ; movaps %xmm0,%xmm4 DB 15,20,225 ; unpcklps %xmm1,%xmm4 DB 15,40,234 ; movaps %xmm2,%xmm5 DB 15,20,235 ; unpcklps %xmm3,%xmm5 DB 15,21,193 ; unpckhps %xmm1,%xmm0 DB 15,21,211 ; unpckhps %xmm3,%xmm2 DB 15,40,204 ; movaps %xmm4,%xmm1 DB 102,15,20,205 ; unpcklpd %xmm5,%xmm1 DB 15,18,236 ; movhlps %xmm4,%xmm5 DB 15,40,216 ; movaps %xmm0,%xmm3 DB 102,15,20,218 ; unpcklpd %xmm2,%xmm3 DB 15,18,208 ; movhlps %xmm0,%xmm2 DB 102,15,17,75,8 ; movupd %xmm1,0x8(%rbx) DB 15,17,107,24 ; movups %xmm5,0x18(%rbx) DB 102,15,17,91,40 ; movupd %xmm3,0x28(%rbx) DB 15,17,83,56 ; movups %xmm2,0x38(%rbx) DB 186,4,0,0,0 ; mov $0x4,%edx DB 72,137,217 ; mov %rbx,%rcx DB 255,19 ; callq *(%rbx) DB 72,139,131,136,0,0,0 ; mov 0x88(%rbx),%rax DB 15,16,32 ; movups (%rax),%xmm4 DB 15,16,64,16 ; movups 0x10(%rax),%xmm0 DB 15,16,88,32 ; movups 0x20(%rax),%xmm3 DB 15,16,80,48 ; movups 0x30(%rax),%xmm2 DB 15,40,236 ; movaps %xmm4,%xmm5 DB 15,20,232 ; unpcklps %xmm0,%xmm5 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,20,202 ; unpcklps %xmm2,%xmm1 DB 15,21,224 ; unpckhps %xmm0,%xmm4 DB 15,21,218 ; unpckhps %xmm2,%xmm3 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 102,15,20,193 ; unpcklpd %xmm1,%xmm0 DB 15,18,205 ; movhlps %xmm5,%xmm1 DB 15,40,212 ; movaps %xmm4,%xmm2 DB 102,15,20,211 ; unpcklpd %xmm3,%xmm2 DB 15,18,220 ; movhlps %xmm4,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,242 ; mov %r14,%rdx DB 65,15,40,225 ; movaps %xmm9,%xmm4 DB 65,15,40,232 ; movaps %xmm8,%xmm5 DB 72,131,196,40 ; add $0x28,%rsp DB 91 ; pop %rbx DB 65,94 ; pop %r14 DB 255,224 ; jmpq *%rax ALIGN 16 DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 4004 <.literal16+0x34> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4008 <.literal16+0x38> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 400c <.literal16+0x3c> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4010 <.literal16+0x40> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 4095 <.literal16+0xc5> DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 117,191 ; jne 3ff9 <.literal16+0x29> DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9 DB 233,220,63,163,233 ; jmpq ffffffffe9a3803a <_sk_callback_sse41+0xffffffffe9a3411e> DB 220,63 ; fdivrl (%rdi) DB 81 ; push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi DB 63 ; (bad) DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi DB 63 ; (bad) DB 248 ; clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,52,0 ; add %dh,(%rax,%rax,1) DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 40c4 <.literal16+0xf4> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 40c8 <.literal16+0xf8> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 40cc <.literal16+0xfc> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 40d0 <.literal16+0x100> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 4155 <.literal16+0x185> DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 117,191 ; jne 40b9 <.literal16+0xe9> DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9 DB 233,220,63,163,233 ; jmpq ffffffffe9a380fa <_sk_callback_sse41+0xffffffffe9a341de> DB 220,63 ; fdivrl (%rdi) DB 81 ; push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi DB 63 ; (bad) DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi DB 63 ; (bad) DB 248 ; clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,52,0 ; add %dh,(%rax,%rax,1) DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 4184 <.literal16+0x1b4> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4188 <.literal16+0x1b8> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 418c <.literal16+0x1bc> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4190 <.literal16+0x1c0> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 4215 <.literal16+0x245> DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 117,191 ; jne 4179 <.literal16+0x1a9> DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9 DB 233,220,63,163,233 ; jmpq ffffffffe9a381ba <_sk_callback_sse41+0xffffffffe9a3429e> DB 220,63 ; fdivrl (%rdi) DB 81 ; push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi DB 63 ; (bad) DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi DB 63 ; (bad) DB 248 ; clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,52,0 ; add %dh,(%rax,%rax,1) DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 4244 <.literal16+0x274> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4248 <.literal16+0x278> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 424c <.literal16+0x27c> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4250 <.literal16+0x280> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 42d5 <.literal16+0x305> DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 117,191 ; jne 4239 <.literal16+0x269> DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9 DB 233,220,63,163,233 ; jmpq ffffffffe9a3827a <_sk_callback_sse41+0xffffffffe9a3435e> DB 220,63 ; fdivrl (%rdi) DB 81 ; push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi DB 63 ; (bad) DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi DB 63 ; (bad) DB 248 ; clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,128,0,0,0,128 ; rex.WXB add %al,-0x80000000(%r8) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,4,0 ; add %al,(%rax,%rax,1) DB 0,0 ; add %al,(%rax) DB 4,0 ; add $0x0,%al DB 0,0 ; add %al,(%rax) DB 4,0 ; add $0x0,%al DB 0,0 ; add %al,(%rax) DB 4,0 ; add $0x0,%al DB 0,0 ; add %al,(%rax) DB 0,0 ; add %al,(%rax) DB 56,0 ; cmp %al,(%rax) DB 0,0 ; add %al,(%rax) DB 56,0 ; cmp %al,(%rax) DB 0,0 ; add %al,(%rax) DB 56,0 ; cmp %al,(%rax) DB 0,0 ; add %al,(%rax) DB 56,0 ; cmp %al,(%rax) DB 128,0,0 ; addb $0x0,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,4 ; add %al,0x4000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,4,0 ; add %al,(%rax,%rax,1) DB 0,0 ; add %al,(%rax) DB 4,0 ; add $0x0,%al DB 0,0 ; add %al,(%rax) DB 4,0 ; add $0x0,%al DB 0,0 ; add %al,(%rax) DB 0,0 ; add %al,(%rax) DB 56,0 ; cmp %al,(%rax) DB 0,0 ; add %al,(%rax) DB 56,0 ; cmp %al,(%rax) DB 0,0 ; add %al,(%rax) DB 56,0 ; cmp %al,(%rax) DB 0,0 ; add %al,(%rax) DB 56,0 ; cmp %al,(%rax) DB 0,0 ; add %al,(%rax) DB 128,0,0 ; addb $0x0,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,128,56 ; add %al,0x38800000(%rax) DB 0,0 ; add %al,(%rax) DB 128,56,0 ; cmpb $0x0,(%rax) DB 0,128,56,0,0,128 ; add %al,-0x7fffffc8(%rax) DB 56,0 ; cmp %al,(%rax) DB 64,254 ; rex (bad) DB 255,0 ; incl (%rax) DB 64,254 ; rex (bad) DB 255,0 ; incl (%rax) DB 64,254 ; rex (bad) DB 255,0 ; incl (%rax) DB 64,254 ; rex (bad) DB 255 ; .byte 0xff ALIGN 32 PUBLIC _sk_start_pipeline_sse2 _sk_start_pipeline_sse2 LABEL PROC DB 65,87 ; push %r15 DB 65,86 ; push %r14 DB 65,85 ; push %r13 DB 65,84 ; push %r12 DB 86 ; push %rsi DB 87 ; push %rdi DB 83 ; push %rbx DB 72,129,236,160,0,0,0 ; sub $0xa0,%rsp DB 68,15,41,188,36,144,0,0,0 ; movaps %xmm15,0x90(%rsp) DB 68,15,41,180,36,128,0,0,0 ; movaps %xmm14,0x80(%rsp) DB 68,15,41,108,36,112 ; movaps %xmm13,0x70(%rsp) DB 68,15,41,100,36,96 ; movaps %xmm12,0x60(%rsp) DB 68,15,41,92,36,80 ; movaps %xmm11,0x50(%rsp) DB 68,15,41,84,36,64 ; movaps %xmm10,0x40(%rsp) DB 68,15,41,76,36,48 ; movaps %xmm9,0x30(%rsp) DB 68,15,41,68,36,32 ; movaps %xmm8,0x20(%rsp) DB 15,41,124,36,16 ; movaps %xmm7,0x10(%rsp) DB 15,41,52,36 ; movaps %xmm6,(%rsp) DB 77,137,207 ; mov %r9,%r15 DB 77,137,198 ; mov %r8,%r14 DB 72,137,203 ; mov %rcx,%rbx DB 72,137,214 ; mov %rdx,%rsi DB 72,173 ; lods %ds:(%rsi),%rax DB 73,137,196 ; mov %rax,%r12 DB 73,137,245 ; mov %rsi,%r13 DB 72,141,67,4 ; lea 0x4(%rbx),%rax DB 76,57,248 ; cmp %r15,%rax DB 118,5 ; jbe 73 <_sk_start_pipeline_sse2+0x73> DB 72,137,216 ; mov %rbx,%rax DB 235,52 ; jmp a7 <_sk_start_pipeline_sse2+0xa7> DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 15,87,219 ; xorps %xmm3,%xmm3 DB 15,87,228 ; xorps %xmm4,%xmm4 DB 15,87,237 ; xorps %xmm5,%xmm5 DB 15,87,246 ; xorps %xmm6,%xmm6 DB 15,87,255 ; xorps %xmm7,%xmm7 DB 72,137,223 ; mov %rbx,%rdi DB 76,137,238 ; mov %r13,%rsi DB 76,137,242 ; mov %r14,%rdx DB 65,255,212 ; callq *%r12 DB 72,141,67,4 ; lea 0x4(%rbx),%rax DB 72,131,195,8 ; add $0x8,%rbx DB 76,57,251 ; cmp %r15,%rbx DB 72,137,195 ; mov %rax,%rbx DB 118,204 ; jbe 73 <_sk_start_pipeline_sse2+0x73> DB 15,40,52,36 ; movaps (%rsp),%xmm6 DB 15,40,124,36,16 ; movaps 0x10(%rsp),%xmm7 DB 68,15,40,68,36,32 ; movaps 0x20(%rsp),%xmm8 DB 68,15,40,76,36,48 ; movaps 0x30(%rsp),%xmm9 DB 68,15,40,84,36,64 ; movaps 0x40(%rsp),%xmm10 DB 68,15,40,92,36,80 ; movaps 0x50(%rsp),%xmm11 DB 68,15,40,100,36,96 ; movaps 0x60(%rsp),%xmm12 DB 68,15,40,108,36,112 ; movaps 0x70(%rsp),%xmm13 DB 68,15,40,180,36,128,0,0,0 ; movaps 0x80(%rsp),%xmm14 DB 68,15,40,188,36,144,0,0,0 ; movaps 0x90(%rsp),%xmm15 DB 72,129,196,160,0,0,0 ; add $0xa0,%rsp DB 91 ; pop %rbx DB 95 ; pop %rdi DB 94 ; pop %rsi DB 65,92 ; pop %r12 DB 65,93 ; pop %r13 DB 65,94 ; pop %r14 DB 65,95 ; pop %r15 DB 195 ; retq PUBLIC _sk_just_return_sse2 _sk_just_return_sse2 LABEL PROC DB 195 ; retq PUBLIC _sk_seed_shader_sse2 _sk_seed_shader_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 102,15,110,199 ; movd %edi,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 15,40,21,177,66,0,0 ; movaps 0x42b1(%rip),%xmm2 # 43c0 <_sk_callback_sse2+0xab> DB 15,88,202 ; addps %xmm2,%xmm1 DB 15,16,2 ; movups (%rdx),%xmm0 DB 15,88,193 ; addps %xmm1,%xmm0 DB 102,15,110,8 ; movd (%rax),%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 15,88,202 ; addps %xmm2,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,21,160,66,0,0 ; movaps 0x42a0(%rip),%xmm2 # 43d0 <_sk_callback_sse2+0xbb> DB 15,87,219 ; xorps %xmm3,%xmm3 DB 15,87,228 ; xorps %xmm4,%xmm4 DB 15,87,237 ; xorps %xmm5,%xmm5 DB 15,87,246 ; xorps %xmm6,%xmm6 DB 15,87,255 ; xorps %xmm7,%xmm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_constant_color_sse2 _sk_constant_color_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clear_sse2 _sk_clear_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 15,87,219 ; xorps %xmm3,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_srcatop_sse2 _sk_srcatop_sse2 LABEL PROC DB 15,89,199 ; mulps %xmm7,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 65,15,88,193 ; addps %xmm9,%xmm0 DB 15,89,207 ; mulps %xmm7,%xmm1 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 65,15,88,201 ; addps %xmm9,%xmm1 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,88,209 ; addps %xmm9,%xmm2 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 65,15,88,216 ; addps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstatop_sse2 _sk_dstatop_sse2 LABEL PROC DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,89,196 ; mulps %xmm4,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,92,207 ; subps %xmm7,%xmm9 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,89,197 ; mulps %xmm5,%xmm8 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,89,198 ; mulps %xmm6,%xmm8 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 65,15,88,208 ; addps %xmm8,%xmm2 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 65,15,88,217 ; addps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcin_sse2 _sk_srcin_sse2 LABEL PROC DB 15,89,199 ; mulps %xmm7,%xmm0 DB 15,89,207 ; mulps %xmm7,%xmm1 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstin_sse2 _sk_dstin_sse2 LABEL PROC DB 15,40,195 ; movaps %xmm3,%xmm0 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 15,40,211 ; movaps %xmm3,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_srcout_sse2 _sk_srcout_sse2 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,199 ; subps %xmm7,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstout_sse2 _sk_dstout_sse2 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,216 ; movaps %xmm8,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_srcover_sse2 _sk_srcover_sse2 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 65,15,88,193 ; addps %xmm9,%xmm0 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 65,15,88,201 ; addps %xmm9,%xmm1 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,88,209 ; addps %xmm9,%xmm2 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 65,15,88,216 ; addps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_dstover_sse2 _sk_dstover_sse2 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,92,199 ; subps %xmm7,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,88,196 ; addps %xmm4,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 15,88,223 ; addps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_modulate_sse2 _sk_modulate_sse2 LABEL PROC DB 15,89,196 ; mulps %xmm4,%xmm0 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_multiply_sse2 _sk_multiply_sse2 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,92,207 ; subps %xmm7,%xmm9 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 68,15,89,220 ; mulps %xmm4,%xmm11 DB 69,15,88,218 ; addps %xmm10,%xmm11 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 65,15,88,195 ; addps %xmm11,%xmm0 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 68,15,89,221 ; mulps %xmm5,%xmm11 DB 69,15,88,218 ; addps %xmm10,%xmm11 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 65,15,88,203 ; addps %xmm11,%xmm1 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,210 ; mulps %xmm2,%xmm10 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 68,15,89,222 ; mulps %xmm6,%xmm11 DB 69,15,88,218 ; addps %xmm10,%xmm11 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 65,15,88,211 ; addps %xmm11,%xmm2 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 69,15,88,193 ; addps %xmm9,%xmm8 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 65,15,88,216 ; addps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_plus__sse2 _sk_plus__sse2 LABEL PROC DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,88,205 ; addps %xmm5,%xmm1 DB 15,88,214 ; addps %xmm6,%xmm2 DB 15,88,223 ; addps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_screen_sse2 _sk_screen_sse2 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 68,15,88,196 ; addps %xmm4,%xmm8 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 68,15,92,192 ; subps %xmm0,%xmm8 DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,88,205 ; addps %xmm5,%xmm9 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 68,15,92,201 ; subps %xmm1,%xmm9 DB 68,15,40,210 ; movaps %xmm2,%xmm10 DB 68,15,88,214 ; addps %xmm6,%xmm10 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 68,15,92,210 ; subps %xmm2,%xmm10 DB 68,15,40,219 ; movaps %xmm3,%xmm11 DB 68,15,88,223 ; addps %xmm7,%xmm11 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 68,15,92,219 ; subps %xmm3,%xmm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,40,201 ; movaps %xmm9,%xmm1 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 65,15,40,219 ; movaps %xmm11,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_xor__sse2 _sk_xor__sse2 LABEL PROC DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,92,207 ; subps %xmm7,%xmm9 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,92,216 ; subps %xmm8,%xmm3 DB 68,15,40,211 ; movaps %xmm3,%xmm10 DB 68,15,89,212 ; mulps %xmm4,%xmm10 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 68,15,40,211 ; movaps %xmm3,%xmm10 DB 68,15,89,213 ; mulps %xmm5,%xmm10 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 68,15,40,211 ; movaps %xmm3,%xmm10 DB 68,15,89,214 ; mulps %xmm6,%xmm10 DB 65,15,88,210 ; addps %xmm10,%xmm2 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 15,89,223 ; mulps %xmm7,%xmm3 DB 65,15,88,217 ; addps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_darken_sse2 _sk_darken_sse2 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 15,88,196 ; addps %xmm4,%xmm0 DB 68,15,89,207 ; mulps %xmm7,%xmm9 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 68,15,95,201 ; maxps %xmm1,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 69,15,95,193 ; maxps %xmm9,%xmm8 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,95,209 ; maxps %xmm9,%xmm2 DB 68,15,92,194 ; subps %xmm2,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,88,218 ; addps %xmm2,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_lighten_sse2 _sk_lighten_sse2 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 15,88,196 ; addps %xmm4,%xmm0 DB 68,15,89,207 ; mulps %xmm7,%xmm9 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 68,15,93,201 ; minps %xmm1,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 69,15,93,193 ; minps %xmm9,%xmm8 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,93,209 ; minps %xmm9,%xmm2 DB 68,15,92,194 ; subps %xmm2,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,88,218 ; addps %xmm2,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_difference_sse2 _sk_difference_sse2 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 15,88,196 ; addps %xmm4,%xmm0 DB 68,15,89,207 ; mulps %xmm7,%xmm9 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 68,15,93,201 ; minps %xmm1,%xmm9 DB 69,15,88,201 ; addps %xmm9,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 69,15,93,193 ; minps %xmm9,%xmm8 DB 69,15,88,192 ; addps %xmm8,%xmm8 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,89,206 ; mulps %xmm6,%xmm9 DB 65,15,93,209 ; minps %xmm9,%xmm2 DB 15,88,210 ; addps %xmm2,%xmm2 DB 68,15,92,194 ; subps %xmm2,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,88,218 ; addps %xmm2,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_exclusion_sse2 _sk_exclusion_sse2 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 15,40,200 ; movaps %xmm0,%xmm1 DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 15,88,201 ; addps %xmm1,%xmm1 DB 15,92,193 ; subps %xmm1,%xmm0 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 68,15,89,197 ; mulps %xmm5,%xmm8 DB 69,15,88,192 ; addps %xmm8,%xmm8 DB 65,15,92,200 ; subps %xmm8,%xmm1 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 15,88,210 ; addps %xmm2,%xmm2 DB 68,15,92,194 ; subps %xmm2,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,89,215 ; mulps %xmm7,%xmm2 DB 15,88,218 ; addps %xmm2,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_colorburn_sse2 _sk_colorburn_sse2 LABEL PROC DB 68,15,40,193 ; movaps %xmm1,%xmm8 DB 68,15,40,224 ; movaps %xmm0,%xmm12 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,40,217 ; movaps %xmm9,%xmm11 DB 68,15,92,223 ; subps %xmm7,%xmm11 DB 65,15,40,195 ; movaps %xmm11,%xmm0 DB 65,15,89,196 ; mulps %xmm12,%xmm0 DB 69,15,87,210 ; xorps %xmm10,%xmm10 DB 15,40,207 ; movaps %xmm7,%xmm1 DB 15,92,204 ; subps %xmm4,%xmm1 DB 15,89,203 ; mulps %xmm3,%xmm1 DB 65,15,94,204 ; divps %xmm12,%xmm1 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,93,233 ; minps %xmm1,%xmm13 DB 68,15,40,247 ; movaps %xmm7,%xmm14 DB 69,15,92,245 ; subps %xmm13,%xmm14 DB 65,15,40,204 ; movaps %xmm12,%xmm1 DB 65,15,194,202,0 ; cmpeqps %xmm10,%xmm1 DB 68,15,92,203 ; subps %xmm3,%xmm9 DB 68,15,89,243 ; mulps %xmm3,%xmm14 DB 68,15,88,240 ; addps %xmm0,%xmm14 DB 68,15,84,225 ; andps %xmm1,%xmm12 DB 65,15,85,206 ; andnps %xmm14,%xmm1 DB 69,15,40,233 ; movaps %xmm9,%xmm13 DB 68,15,89,236 ; mulps %xmm4,%xmm13 DB 15,88,196 ; addps %xmm4,%xmm0 DB 65,15,86,204 ; orps %xmm12,%xmm1 DB 68,15,40,228 ; movaps %xmm4,%xmm12 DB 68,15,194,231,0 ; cmpeqps %xmm7,%xmm12 DB 65,15,88,205 ; addps %xmm13,%xmm1 DB 65,15,84,196 ; andps %xmm12,%xmm0 DB 68,15,85,225 ; andnps %xmm1,%xmm12 DB 65,15,86,196 ; orps %xmm12,%xmm0 DB 65,15,40,203 ; movaps %xmm11,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 68,15,40,231 ; movaps %xmm7,%xmm12 DB 68,15,92,229 ; subps %xmm5,%xmm12 DB 68,15,89,227 ; mulps %xmm3,%xmm12 DB 69,15,94,224 ; divps %xmm8,%xmm12 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 69,15,93,236 ; minps %xmm12,%xmm13 DB 68,15,40,231 ; movaps %xmm7,%xmm12 DB 69,15,92,229 ; subps %xmm13,%xmm12 DB 69,15,40,232 ; movaps %xmm8,%xmm13 DB 69,15,194,234,0 ; cmpeqps %xmm10,%xmm13 DB 68,15,89,227 ; mulps %xmm3,%xmm12 DB 68,15,88,225 ; addps %xmm1,%xmm12 DB 69,15,84,197 ; andps %xmm13,%xmm8 DB 69,15,85,236 ; andnps %xmm12,%xmm13 DB 69,15,86,232 ; orps %xmm8,%xmm13 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,197 ; mulps %xmm5,%xmm8 DB 15,88,205 ; addps %xmm5,%xmm1 DB 69,15,88,232 ; addps %xmm8,%xmm13 DB 68,15,40,197 ; movaps %xmm5,%xmm8 DB 68,15,194,199,0 ; cmpeqps %xmm7,%xmm8 DB 65,15,84,200 ; andps %xmm8,%xmm1 DB 69,15,85,197 ; andnps %xmm13,%xmm8 DB 65,15,86,200 ; orps %xmm8,%xmm1 DB 68,15,40,199 ; movaps %xmm7,%xmm8 DB 68,15,92,198 ; subps %xmm6,%xmm8 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 68,15,94,194 ; divps %xmm2,%xmm8 DB 68,15,40,231 ; movaps %xmm7,%xmm12 DB 69,15,93,224 ; minps %xmm8,%xmm12 DB 68,15,40,199 ; movaps %xmm7,%xmm8 DB 69,15,92,196 ; subps %xmm12,%xmm8 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 68,15,194,210,0 ; cmpeqps %xmm2,%xmm10 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 69,15,88,195 ; addps %xmm11,%xmm8 DB 65,15,84,210 ; andps %xmm10,%xmm2 DB 69,15,85,208 ; andnps %xmm8,%xmm10 DB 69,15,40,195 ; movaps %xmm11,%xmm8 DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 68,15,86,210 ; orps %xmm2,%xmm10 DB 65,15,40,209 ; movaps %xmm9,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 68,15,88,210 ; addps %xmm2,%xmm10 DB 15,40,214 ; movaps %xmm6,%xmm2 DB 15,194,215,0 ; cmpeqps %xmm7,%xmm2 DB 68,15,84,194 ; andps %xmm2,%xmm8 DB 65,15,85,210 ; andnps %xmm10,%xmm2 DB 68,15,86,194 ; orps %xmm2,%xmm8 DB 68,15,89,207 ; mulps %xmm7,%xmm9 DB 65,15,88,217 ; addps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_colordodge_sse2 _sk_colordodge_sse2 LABEL PROC DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,40,218 ; movaps %xmm10,%xmm11 DB 68,15,92,223 ; subps %xmm7,%xmm11 DB 65,15,40,195 ; movaps %xmm11,%xmm0 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,89,196 ; mulps %xmm4,%xmm8 DB 68,15,40,227 ; movaps %xmm3,%xmm12 DB 69,15,92,225 ; subps %xmm9,%xmm12 DB 69,15,94,196 ; divps %xmm12,%xmm8 DB 68,15,40,231 ; movaps %xmm7,%xmm12 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 69,15,93,232 ; minps %xmm8,%xmm13 DB 69,15,40,241 ; movaps %xmm9,%xmm14 DB 68,15,194,243,0 ; cmpeqps %xmm3,%xmm14 DB 68,15,89,235 ; mulps %xmm3,%xmm13 DB 68,15,88,232 ; addps %xmm0,%xmm13 DB 69,15,84,206 ; andps %xmm14,%xmm9 DB 69,15,85,245 ; andnps %xmm13,%xmm14 DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 68,15,92,211 ; subps %xmm3,%xmm10 DB 69,15,86,241 ; orps %xmm9,%xmm14 DB 69,15,40,202 ; movaps %xmm10,%xmm9 DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 15,88,196 ; addps %xmm4,%xmm0 DB 69,15,88,241 ; addps %xmm9,%xmm14 DB 68,15,40,204 ; movaps %xmm4,%xmm9 DB 69,15,194,200,0 ; cmpeqps %xmm8,%xmm9 DB 65,15,84,193 ; andps %xmm9,%xmm0 DB 69,15,85,206 ; andnps %xmm14,%xmm9 DB 65,15,86,193 ; orps %xmm9,%xmm0 DB 68,15,40,235 ; movaps %xmm3,%xmm13 DB 68,15,89,237 ; mulps %xmm5,%xmm13 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,92,201 ; subps %xmm1,%xmm9 DB 69,15,94,233 ; divps %xmm9,%xmm13 DB 69,15,40,203 ; movaps %xmm11,%xmm9 DB 68,15,89,201 ; mulps %xmm1,%xmm9 DB 69,15,93,229 ; minps %xmm13,%xmm12 DB 68,15,40,233 ; movaps %xmm1,%xmm13 DB 68,15,194,235,0 ; cmpeqps %xmm3,%xmm13 DB 68,15,89,227 ; mulps %xmm3,%xmm12 DB 69,15,88,225 ; addps %xmm9,%xmm12 DB 65,15,84,205 ; andps %xmm13,%xmm1 DB 69,15,85,236 ; andnps %xmm12,%xmm13 DB 68,15,86,233 ; orps %xmm1,%xmm13 DB 65,15,40,202 ; movaps %xmm10,%xmm1 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 68,15,88,205 ; addps %xmm5,%xmm9 DB 68,15,88,233 ; addps %xmm1,%xmm13 DB 15,40,205 ; movaps %xmm5,%xmm1 DB 65,15,194,200,0 ; cmpeqps %xmm8,%xmm1 DB 68,15,84,201 ; andps %xmm1,%xmm9 DB 65,15,85,205 ; andnps %xmm13,%xmm1 DB 68,15,86,201 ; orps %xmm1,%xmm9 DB 68,15,40,227 ; movaps %xmm3,%xmm12 DB 68,15,89,230 ; mulps %xmm6,%xmm12 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,92,202 ; subps %xmm2,%xmm1 DB 68,15,94,225 ; divps %xmm1,%xmm12 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,93,236 ; minps %xmm12,%xmm13 DB 15,40,202 ; movaps %xmm2,%xmm1 DB 15,194,203,0 ; cmpeqps %xmm3,%xmm1 DB 68,15,89,235 ; mulps %xmm3,%xmm13 DB 69,15,88,235 ; addps %xmm11,%xmm13 DB 15,84,209 ; andps %xmm1,%xmm2 DB 65,15,85,205 ; andnps %xmm13,%xmm1 DB 15,86,202 ; orps %xmm2,%xmm1 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 15,88,202 ; addps %xmm2,%xmm1 DB 68,15,194,198,0 ; cmpeqps %xmm6,%xmm8 DB 68,15,88,222 ; addps %xmm6,%xmm11 DB 69,15,84,216 ; andps %xmm8,%xmm11 DB 68,15,85,193 ; andnps %xmm1,%xmm8 DB 69,15,86,195 ; orps %xmm11,%xmm8 DB 68,15,89,215 ; mulps %xmm7,%xmm10 DB 65,15,88,218 ; addps %xmm10,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,201 ; movaps %xmm9,%xmm1 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_hardlight_sse2 _sk_hardlight_sse2 LABEL PROC DB 72,131,236,24 ; sub $0x18,%rsp DB 15,41,52,36 ; movaps %xmm6,(%rsp) DB 15,40,245 ; movaps %xmm5,%xmm6 DB 15,40,236 ; movaps %xmm4,%xmm5 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,40,211 ; movaps %xmm11,%xmm10 DB 68,15,92,215 ; subps %xmm7,%xmm10 DB 69,15,40,194 ; movaps %xmm10,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 68,15,92,219 ; subps %xmm3,%xmm11 DB 69,15,40,203 ; movaps %xmm11,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 69,15,88,200 ; addps %xmm8,%xmm9 DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,92,192 ; subps %xmm0,%xmm8 DB 15,40,227 ; movaps %xmm3,%xmm4 DB 15,89,231 ; mulps %xmm7,%xmm4 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,40,247 ; movaps %xmm7,%xmm14 DB 68,15,40,255 ; movaps %xmm7,%xmm15 DB 68,15,92,253 ; subps %xmm5,%xmm15 DB 69,15,89,248 ; mulps %xmm8,%xmm15 DB 69,15,88,255 ; addps %xmm15,%xmm15 DB 68,15,40,228 ; movaps %xmm4,%xmm12 DB 69,15,92,231 ; subps %xmm15,%xmm12 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 69,15,88,192 ; addps %xmm8,%xmm8 DB 68,15,194,195,2 ; cmpleps %xmm3,%xmm8 DB 15,89,197 ; mulps %xmm5,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 65,15,84,192 ; andps %xmm8,%xmm0 DB 69,15,85,196 ; andnps %xmm12,%xmm8 DB 68,15,86,192 ; orps %xmm0,%xmm8 DB 69,15,40,251 ; movaps %xmm11,%xmm15 DB 69,15,40,227 ; movaps %xmm11,%xmm12 DB 68,15,89,223 ; mulps %xmm7,%xmm11 DB 69,15,88,193 ; addps %xmm9,%xmm8 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 68,15,89,254 ; mulps %xmm6,%xmm15 DB 68,15,88,248 ; addps %xmm0,%xmm15 DB 15,40,195 ; movaps %xmm3,%xmm0 DB 15,92,193 ; subps %xmm1,%xmm0 DB 68,15,92,238 ; subps %xmm6,%xmm13 DB 68,15,89,232 ; mulps %xmm0,%xmm13 DB 69,15,88,237 ; addps %xmm13,%xmm13 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 65,15,92,197 ; subps %xmm13,%xmm0 DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 69,15,88,201 ; addps %xmm9,%xmm9 DB 68,15,194,203,2 ; cmpleps %xmm3,%xmm9 DB 15,89,206 ; mulps %xmm6,%xmm1 DB 15,88,201 ; addps %xmm1,%xmm1 DB 65,15,84,201 ; andps %xmm9,%xmm1 DB 68,15,85,200 ; andnps %xmm0,%xmm9 DB 68,15,86,201 ; orps %xmm1,%xmm9 DB 69,15,88,207 ; addps %xmm15,%xmm9 DB 68,15,89,210 ; mulps %xmm2,%xmm10 DB 68,15,40,44,36 ; movaps (%rsp),%xmm13 DB 69,15,89,229 ; mulps %xmm13,%xmm12 DB 69,15,88,226 ; addps %xmm10,%xmm12 DB 68,15,40,210 ; movaps %xmm2,%xmm10 DB 69,15,88,210 ; addps %xmm10,%xmm10 DB 68,15,194,211,2 ; cmpleps %xmm3,%xmm10 DB 15,40,195 ; movaps %xmm3,%xmm0 DB 15,92,194 ; subps %xmm2,%xmm0 DB 65,15,89,213 ; mulps %xmm13,%xmm2 DB 15,88,210 ; addps %xmm2,%xmm2 DB 69,15,92,245 ; subps %xmm13,%xmm14 DB 68,15,89,240 ; mulps %xmm0,%xmm14 DB 69,15,88,246 ; addps %xmm14,%xmm14 DB 65,15,92,230 ; subps %xmm14,%xmm4 DB 65,15,84,210 ; andps %xmm10,%xmm2 DB 68,15,85,212 ; andnps %xmm4,%xmm10 DB 68,15,86,210 ; orps %xmm2,%xmm10 DB 69,15,88,212 ; addps %xmm12,%xmm10 DB 65,15,88,219 ; addps %xmm11,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,40,201 ; movaps %xmm9,%xmm1 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 15,40,229 ; movaps %xmm5,%xmm4 DB 15,40,238 ; movaps %xmm6,%xmm5 DB 65,15,40,245 ; movaps %xmm13,%xmm6 DB 72,131,196,24 ; add $0x18,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_overlay_sse2 _sk_overlay_sse2 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,92,207 ; subps %xmm7,%xmm9 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 68,15,92,195 ; subps %xmm3,%xmm8 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 68,15,89,220 ; mulps %xmm4,%xmm11 DB 69,15,88,218 ; addps %xmm10,%xmm11 DB 68,15,40,227 ; movaps %xmm3,%xmm12 DB 68,15,92,224 ; subps %xmm0,%xmm12 DB 15,89,196 ; mulps %xmm4,%xmm0 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,92,236 ; subps %xmm4,%xmm13 DB 68,15,40,244 ; movaps %xmm4,%xmm14 DB 69,15,88,246 ; addps %xmm14,%xmm14 DB 68,15,194,247,2 ; cmpleps %xmm7,%xmm14 DB 15,88,192 ; addps %xmm0,%xmm0 DB 68,15,40,211 ; movaps %xmm3,%xmm10 DB 68,15,89,215 ; mulps %xmm7,%xmm10 DB 69,15,89,236 ; mulps %xmm12,%xmm13 DB 69,15,88,237 ; addps %xmm13,%xmm13 DB 69,15,40,226 ; movaps %xmm10,%xmm12 DB 69,15,92,229 ; subps %xmm13,%xmm12 DB 65,15,84,198 ; andps %xmm14,%xmm0 DB 69,15,85,244 ; andnps %xmm12,%xmm14 DB 65,15,86,198 ; orps %xmm14,%xmm0 DB 65,15,88,195 ; addps %xmm11,%xmm0 DB 69,15,40,217 ; movaps %xmm9,%xmm11 DB 68,15,89,217 ; mulps %xmm1,%xmm11 DB 69,15,40,224 ; movaps %xmm8,%xmm12 DB 68,15,89,229 ; mulps %xmm5,%xmm12 DB 69,15,88,227 ; addps %xmm11,%xmm12 DB 68,15,40,219 ; movaps %xmm3,%xmm11 DB 68,15,92,217 ; subps %xmm1,%xmm11 DB 15,89,205 ; mulps %xmm5,%xmm1 DB 68,15,40,239 ; movaps %xmm7,%xmm13 DB 68,15,92,237 ; subps %xmm5,%xmm13 DB 68,15,40,245 ; movaps %xmm5,%xmm14 DB 69,15,88,246 ; addps %xmm14,%xmm14 DB 68,15,194,247,2 ; cmpleps %xmm7,%xmm14 DB 15,88,201 ; addps %xmm1,%xmm1 DB 69,15,89,235 ; mulps %xmm11,%xmm13 DB 69,15,88,237 ; addps %xmm13,%xmm13 DB 69,15,40,218 ; movaps %xmm10,%xmm11 DB 69,15,92,221 ; subps %xmm13,%xmm11 DB 65,15,84,206 ; andps %xmm14,%xmm1 DB 69,15,85,243 ; andnps %xmm11,%xmm14 DB 65,15,86,206 ; orps %xmm14,%xmm1 DB 65,15,88,204 ; addps %xmm12,%xmm1 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 68,15,89,222 ; mulps %xmm6,%xmm11 DB 69,15,88,217 ; addps %xmm9,%xmm11 DB 68,15,40,203 ; movaps %xmm3,%xmm9 DB 68,15,92,202 ; subps %xmm2,%xmm9 DB 15,89,214 ; mulps %xmm6,%xmm2 DB 68,15,40,231 ; movaps %xmm7,%xmm12 DB 68,15,92,230 ; subps %xmm6,%xmm12 DB 68,15,40,238 ; movaps %xmm6,%xmm13 DB 69,15,88,237 ; addps %xmm13,%xmm13 DB 68,15,194,239,2 ; cmpleps %xmm7,%xmm13 DB 15,88,210 ; addps %xmm2,%xmm2 DB 69,15,89,225 ; mulps %xmm9,%xmm12 DB 69,15,88,228 ; addps %xmm12,%xmm12 DB 69,15,92,212 ; subps %xmm12,%xmm10 DB 65,15,84,213 ; andps %xmm13,%xmm2 DB 69,15,85,234 ; andnps %xmm10,%xmm13 DB 65,15,86,213 ; orps %xmm13,%xmm2 DB 65,15,88,211 ; addps %xmm11,%xmm2 DB 68,15,89,199 ; mulps %xmm7,%xmm8 DB 65,15,88,216 ; addps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_softlight_sse2 _sk_softlight_sse2 LABEL PROC DB 72,131,236,56 ; sub $0x38,%rsp DB 15,41,84,36,32 ; movaps %xmm2,0x20(%rsp) DB 15,40,209 ; movaps %xmm1,%xmm2 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 69,15,87,228 ; xorps %xmm12,%xmm12 DB 68,15,194,231,1 ; cmpltps %xmm7,%xmm12 DB 68,15,40,212 ; movaps %xmm4,%xmm10 DB 68,15,94,215 ; divps %xmm7,%xmm10 DB 69,15,84,212 ; andps %xmm12,%xmm10 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,40,241 ; movaps %xmm9,%xmm14 DB 69,15,92,242 ; subps %xmm10,%xmm14 DB 69,15,40,218 ; movaps %xmm10,%xmm11 DB 69,15,40,234 ; movaps %xmm10,%xmm13 DB 65,15,82,194 ; rsqrtps %xmm10,%xmm0 DB 68,15,83,248 ; rcpps %xmm0,%xmm15 DB 69,15,92,250 ; subps %xmm10,%xmm15 DB 69,15,88,210 ; addps %xmm10,%xmm10 DB 69,15,88,210 ; addps %xmm10,%xmm10 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 15,89,192 ; mulps %xmm0,%xmm0 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 69,15,92,217 ; subps %xmm9,%xmm11 DB 68,15,89,216 ; mulps %xmm0,%xmm11 DB 184,0,0,224,64 ; mov $0x40e00000,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,234 ; mulps %xmm10,%xmm13 DB 69,15,88,235 ; addps %xmm11,%xmm13 DB 68,15,40,219 ; movaps %xmm3,%xmm11 DB 15,40,204 ; movaps %xmm4,%xmm1 DB 68,15,89,217 ; mulps %xmm1,%xmm11 DB 15,88,228 ; addps %xmm4,%xmm4 DB 15,88,228 ; addps %xmm4,%xmm4 DB 15,194,231,2 ; cmpleps %xmm7,%xmm4 DB 68,15,84,236 ; andps %xmm4,%xmm13 DB 65,15,85,231 ; andnps %xmm15,%xmm4 DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 15,88,192 ; addps %xmm0,%xmm0 DB 65,15,86,229 ; orps %xmm13,%xmm4 DB 68,15,40,232 ; movaps %xmm0,%xmm13 DB 68,15,92,235 ; subps %xmm3,%xmm13 DB 69,15,89,245 ; mulps %xmm13,%xmm14 DB 68,15,89,239 ; mulps %xmm7,%xmm13 DB 65,15,89,229 ; mulps %xmm13,%xmm4 DB 65,15,88,227 ; addps %xmm11,%xmm4 DB 69,15,40,217 ; movaps %xmm9,%xmm11 DB 68,15,92,219 ; subps %xmm3,%xmm11 DB 69,15,40,251 ; movaps %xmm11,%xmm15 DB 15,41,76,36,16 ; movaps %xmm1,0x10(%rsp) DB 68,15,89,249 ; mulps %xmm1,%xmm15 DB 69,15,40,233 ; movaps %xmm9,%xmm13 DB 68,15,92,239 ; subps %xmm7,%xmm13 DB 69,15,89,197 ; mulps %xmm13,%xmm8 DB 69,15,88,199 ; addps %xmm15,%xmm8 DB 68,15,88,243 ; addps %xmm3,%xmm14 DB 68,15,89,241 ; mulps %xmm1,%xmm14 DB 15,194,195,2 ; cmpleps %xmm3,%xmm0 DB 68,15,84,240 ; andps %xmm0,%xmm14 DB 15,85,196 ; andnps %xmm4,%xmm0 DB 65,15,86,198 ; orps %xmm14,%xmm0 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 15,41,44,36 ; movaps %xmm5,(%rsp) DB 68,15,40,197 ; movaps %xmm5,%xmm8 DB 68,15,94,199 ; divps %xmm7,%xmm8 DB 69,15,84,196 ; andps %xmm12,%xmm8 DB 69,15,40,240 ; movaps %xmm8,%xmm14 DB 69,15,88,246 ; addps %xmm14,%xmm14 DB 69,15,88,246 ; addps %xmm14,%xmm14 DB 65,15,40,230 ; movaps %xmm14,%xmm4 DB 15,89,228 ; mulps %xmm4,%xmm4 DB 65,15,88,230 ; addps %xmm14,%xmm4 DB 69,15,40,248 ; movaps %xmm8,%xmm15 DB 69,15,92,249 ; subps %xmm9,%xmm15 DB 68,15,89,252 ; mulps %xmm4,%xmm15 DB 69,15,40,241 ; movaps %xmm9,%xmm14 DB 69,15,92,240 ; subps %xmm8,%xmm14 DB 65,15,82,224 ; rsqrtps %xmm8,%xmm4 DB 15,83,228 ; rcpps %xmm4,%xmm4 DB 65,15,92,224 ; subps %xmm8,%xmm4 DB 69,15,89,194 ; mulps %xmm10,%xmm8 DB 69,15,88,199 ; addps %xmm15,%xmm8 DB 68,15,40,253 ; movaps %xmm5,%xmm15 DB 69,15,88,255 ; addps %xmm15,%xmm15 DB 69,15,88,255 ; addps %xmm15,%xmm15 DB 68,15,194,255,2 ; cmpleps %xmm7,%xmm15 DB 69,15,84,199 ; andps %xmm15,%xmm8 DB 68,15,85,252 ; andnps %xmm4,%xmm15 DB 69,15,86,248 ; orps %xmm8,%xmm15 DB 68,15,40,194 ; movaps %xmm2,%xmm8 DB 69,15,88,192 ; addps %xmm8,%xmm8 DB 65,15,40,224 ; movaps %xmm8,%xmm4 DB 15,92,227 ; subps %xmm3,%xmm4 DB 68,15,89,244 ; mulps %xmm4,%xmm14 DB 15,89,231 ; mulps %xmm7,%xmm4 DB 68,15,89,252 ; mulps %xmm4,%xmm15 DB 15,40,227 ; movaps %xmm3,%xmm4 DB 15,89,229 ; mulps %xmm5,%xmm4 DB 68,15,88,252 ; addps %xmm4,%xmm15 DB 65,15,40,227 ; movaps %xmm11,%xmm4 DB 15,89,229 ; mulps %xmm5,%xmm4 DB 65,15,89,213 ; mulps %xmm13,%xmm2 DB 15,88,212 ; addps %xmm4,%xmm2 DB 68,15,88,243 ; addps %xmm3,%xmm14 DB 68,15,89,245 ; mulps %xmm5,%xmm14 DB 68,15,194,195,2 ; cmpleps %xmm3,%xmm8 DB 69,15,84,240 ; andps %xmm8,%xmm14 DB 69,15,85,199 ; andnps %xmm15,%xmm8 DB 69,15,86,198 ; orps %xmm14,%xmm8 DB 68,15,88,194 ; addps %xmm2,%xmm8 DB 68,15,40,246 ; movaps %xmm6,%xmm14 DB 65,15,40,206 ; movaps %xmm14,%xmm1 DB 15,94,207 ; divps %xmm7,%xmm1 DB 65,15,84,204 ; andps %xmm12,%xmm1 DB 15,40,225 ; movaps %xmm1,%xmm4 DB 65,15,92,225 ; subps %xmm9,%xmm4 DB 68,15,92,201 ; subps %xmm1,%xmm9 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 15,82,241 ; rsqrtps %xmm1,%xmm6 DB 15,83,246 ; rcpps %xmm6,%xmm6 DB 15,92,241 ; subps %xmm1,%xmm6 DB 15,88,201 ; addps %xmm1,%xmm1 DB 15,88,201 ; addps %xmm1,%xmm1 DB 15,40,233 ; movaps %xmm1,%xmm5 DB 15,89,237 ; mulps %xmm5,%xmm5 DB 15,88,233 ; addps %xmm1,%xmm5 DB 15,89,236 ; mulps %xmm4,%xmm5 DB 68,15,88,213 ; addps %xmm5,%xmm10 DB 65,15,40,238 ; movaps %xmm14,%xmm5 DB 15,40,205 ; movaps %xmm5,%xmm1 DB 15,88,201 ; addps %xmm1,%xmm1 DB 15,88,201 ; addps %xmm1,%xmm1 DB 15,194,207,2 ; cmpleps %xmm7,%xmm1 DB 68,15,84,209 ; andps %xmm1,%xmm10 DB 15,85,206 ; andnps %xmm6,%xmm1 DB 15,40,84,36,32 ; movaps 0x20(%rsp),%xmm2 DB 68,15,89,234 ; mulps %xmm2,%xmm13 DB 15,88,210 ; addps %xmm2,%xmm2 DB 65,15,86,202 ; orps %xmm10,%xmm1 DB 15,40,226 ; movaps %xmm2,%xmm4 DB 15,92,227 ; subps %xmm3,%xmm4 DB 68,15,89,204 ; mulps %xmm4,%xmm9 DB 15,89,231 ; mulps %xmm7,%xmm4 DB 15,89,204 ; mulps %xmm4,%xmm1 DB 15,40,227 ; movaps %xmm3,%xmm4 DB 15,89,229 ; mulps %xmm5,%xmm4 DB 15,88,204 ; addps %xmm4,%xmm1 DB 65,15,40,227 ; movaps %xmm11,%xmm4 DB 15,89,229 ; mulps %xmm5,%xmm4 DB 65,15,88,229 ; addps %xmm13,%xmm4 DB 68,15,88,203 ; addps %xmm3,%xmm9 DB 68,15,89,205 ; mulps %xmm5,%xmm9 DB 15,40,245 ; movaps %xmm5,%xmm6 DB 15,194,211,2 ; cmpleps %xmm3,%xmm2 DB 68,15,84,202 ; andps %xmm2,%xmm9 DB 15,85,209 ; andnps %xmm1,%xmm2 DB 65,15,86,209 ; orps %xmm9,%xmm2 DB 15,88,212 ; addps %xmm4,%xmm2 DB 68,15,89,223 ; mulps %xmm7,%xmm11 DB 65,15,88,219 ; addps %xmm11,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,100,36,16 ; movaps 0x10(%rsp),%xmm4 DB 15,40,44,36 ; movaps (%rsp),%xmm5 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 72,131,196,56 ; add $0x38,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_0_sse2 _sk_clamp_0_sse2 LABEL PROC DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 65,15,95,192 ; maxps %xmm8,%xmm0 DB 65,15,95,200 ; maxps %xmm8,%xmm1 DB 65,15,95,208 ; maxps %xmm8,%xmm2 DB 65,15,95,216 ; maxps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_1_sse2 _sk_clamp_1_sse2 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,93,192 ; minps %xmm8,%xmm0 DB 65,15,93,200 ; minps %xmm8,%xmm1 DB 65,15,93,208 ; minps %xmm8,%xmm2 DB 65,15,93,216 ; minps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_a_sse2 _sk_clamp_a_sse2 LABEL PROC DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,93,216 ; minps %xmm8,%xmm3 DB 15,93,195 ; minps %xmm3,%xmm0 DB 15,93,203 ; minps %xmm3,%xmm1 DB 15,93,211 ; minps %xmm3,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_set_rgb_sse2 _sk_set_rgb_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_swap_rb_sse2 _sk_swap_rb_sse2 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,194 ; movaps %xmm2,%xmm0 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_swap_sse2 _sk_swap_sse2 LABEL PROC DB 68,15,40,195 ; movaps %xmm3,%xmm8 DB 68,15,40,202 ; movaps %xmm2,%xmm9 DB 68,15,40,209 ; movaps %xmm1,%xmm10 DB 68,15,40,216 ; movaps %xmm0,%xmm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,40,205 ; movaps %xmm5,%xmm1 DB 15,40,214 ; movaps %xmm6,%xmm2 DB 15,40,223 ; movaps %xmm7,%xmm3 DB 65,15,40,227 ; movaps %xmm11,%xmm4 DB 65,15,40,234 ; movaps %xmm10,%xmm5 DB 65,15,40,241 ; movaps %xmm9,%xmm6 DB 65,15,40,248 ; movaps %xmm8,%xmm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_move_src_dst_sse2 _sk_move_src_dst_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,224 ; movaps %xmm0,%xmm4 DB 15,40,233 ; movaps %xmm1,%xmm5 DB 15,40,242 ; movaps %xmm2,%xmm6 DB 15,40,251 ; movaps %xmm3,%xmm7 DB 255,224 ; jmpq *%rax PUBLIC _sk_move_dst_src_sse2 _sk_move_dst_src_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,40,205 ; movaps %xmm5,%xmm1 DB 15,40,214 ; movaps %xmm6,%xmm2 DB 15,40,223 ; movaps %xmm7,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_premul_sse2 _sk_premul_sse2 LABEL PROC DB 15,89,195 ; mulps %xmm3,%xmm0 DB 15,89,203 ; mulps %xmm3,%xmm1 DB 15,89,211 ; mulps %xmm3,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_unpremul_sse2 _sk_unpremul_sse2 LABEL PROC DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,94,203 ; divps %xmm3,%xmm9 DB 68,15,194,195,4 ; cmpneqps %xmm3,%xmm8 DB 69,15,84,193 ; andps %xmm9,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_from_srgb_sse2 _sk_from_srgb_sse2 LABEL PROC DB 184,145,131,158,61 ; mov $0x3d9e8391,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,232 ; movaps %xmm8,%xmm13 DB 68,15,89,232 ; mulps %xmm0,%xmm13 DB 68,15,40,224 ; movaps %xmm0,%xmm12 DB 69,15,89,228 ; mulps %xmm12,%xmm12 DB 184,154,153,153,62 ; mov $0x3e99999a,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 184,92,143,50,63 ; mov $0x3f328f5c,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,40,241 ; movaps %xmm9,%xmm14 DB 68,15,89,240 ; mulps %xmm0,%xmm14 DB 69,15,88,242 ; addps %xmm10,%xmm14 DB 184,10,215,35,59 ; mov $0x3b23d70a,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,244 ; mulps %xmm12,%xmm14 DB 69,15,88,243 ; addps %xmm11,%xmm14 DB 184,174,71,97,61 ; mov $0x3d6147ae,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 65,15,194,196,1 ; cmpltps %xmm12,%xmm0 DB 68,15,84,232 ; andps %xmm0,%xmm13 DB 65,15,85,198 ; andnps %xmm14,%xmm0 DB 65,15,86,197 ; orps %xmm13,%xmm0 DB 69,15,40,232 ; movaps %xmm8,%xmm13 DB 68,15,89,233 ; mulps %xmm1,%xmm13 DB 68,15,40,241 ; movaps %xmm1,%xmm14 DB 69,15,89,246 ; mulps %xmm14,%xmm14 DB 69,15,40,249 ; movaps %xmm9,%xmm15 DB 68,15,89,249 ; mulps %xmm1,%xmm15 DB 69,15,88,250 ; addps %xmm10,%xmm15 DB 69,15,89,254 ; mulps %xmm14,%xmm15 DB 69,15,88,251 ; addps %xmm11,%xmm15 DB 65,15,194,204,1 ; cmpltps %xmm12,%xmm1 DB 68,15,84,233 ; andps %xmm1,%xmm13 DB 65,15,85,207 ; andnps %xmm15,%xmm1 DB 65,15,86,205 ; orps %xmm13,%xmm1 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 68,15,40,234 ; movaps %xmm2,%xmm13 DB 69,15,89,237 ; mulps %xmm13,%xmm13 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 69,15,89,205 ; mulps %xmm13,%xmm9 DB 69,15,88,203 ; addps %xmm11,%xmm9 DB 65,15,194,212,1 ; cmpltps %xmm12,%xmm2 DB 68,15,84,194 ; andps %xmm2,%xmm8 DB 65,15,85,209 ; andnps %xmm9,%xmm2 DB 65,15,86,208 ; orps %xmm8,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_to_srgb_sse2 _sk_to_srgb_sse2 LABEL PROC DB 68,15,82,192 ; rsqrtps %xmm0,%xmm8 DB 69,15,83,248 ; rcpps %xmm8,%xmm15 DB 69,15,82,232 ; rsqrtps %xmm8,%xmm13 DB 184,41,92,71,65 ; mov $0x41475c29,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,240 ; movaps %xmm8,%xmm14 DB 68,15,89,240 ; mulps %xmm0,%xmm14 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 184,194,135,210,62 ; mov $0x3ed287c2,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 184,206,111,48,63 ; mov $0x3f306fce,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 184,168,87,202,61 ; mov $0x3dca57a8,%eax DB 53,0,0,0,128 ; xor $0x80000000,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 69,15,89,251 ; mulps %xmm11,%xmm15 DB 69,15,88,252 ; addps %xmm12,%xmm15 DB 69,15,89,234 ; mulps %xmm10,%xmm13 DB 69,15,88,239 ; addps %xmm15,%xmm13 DB 69,15,40,249 ; movaps %xmm9,%xmm15 DB 69,15,93,253 ; minps %xmm13,%xmm15 DB 184,4,231,140,59 ; mov $0x3b8ce704,%eax DB 102,68,15,110,232 ; movd %eax,%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 65,15,194,197,1 ; cmpltps %xmm13,%xmm0 DB 68,15,84,240 ; andps %xmm0,%xmm14 DB 65,15,85,199 ; andnps %xmm15,%xmm0 DB 65,15,86,198 ; orps %xmm14,%xmm0 DB 68,15,82,241 ; rsqrtps %xmm1,%xmm14 DB 69,15,83,254 ; rcpps %xmm14,%xmm15 DB 69,15,82,246 ; rsqrtps %xmm14,%xmm14 DB 69,15,89,251 ; mulps %xmm11,%xmm15 DB 69,15,88,252 ; addps %xmm12,%xmm15 DB 69,15,89,242 ; mulps %xmm10,%xmm14 DB 69,15,88,247 ; addps %xmm15,%xmm14 DB 69,15,40,249 ; movaps %xmm9,%xmm15 DB 69,15,93,254 ; minps %xmm14,%xmm15 DB 69,15,40,240 ; movaps %xmm8,%xmm14 DB 68,15,89,241 ; mulps %xmm1,%xmm14 DB 65,15,194,205,1 ; cmpltps %xmm13,%xmm1 DB 68,15,84,241 ; andps %xmm1,%xmm14 DB 65,15,85,207 ; andnps %xmm15,%xmm1 DB 65,15,86,206 ; orps %xmm14,%xmm1 DB 68,15,82,242 ; rsqrtps %xmm2,%xmm14 DB 69,15,83,254 ; rcpps %xmm14,%xmm15 DB 69,15,89,251 ; mulps %xmm11,%xmm15 DB 69,15,88,252 ; addps %xmm12,%xmm15 DB 69,15,82,222 ; rsqrtps %xmm14,%xmm11 DB 69,15,89,218 ; mulps %xmm10,%xmm11 DB 69,15,88,223 ; addps %xmm15,%xmm11 DB 69,15,93,203 ; minps %xmm11,%xmm9 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 65,15,194,213,1 ; cmpltps %xmm13,%xmm2 DB 68,15,84,194 ; andps %xmm2,%xmm8 DB 65,15,85,209 ; andnps %xmm9,%xmm2 DB 65,15,86,208 ; orps %xmm8,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_rgb_to_hsl_sse2 _sk_rgb_to_hsl_sse2 LABEL PROC DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 69,15,40,208 ; movaps %xmm8,%xmm10 DB 69,15,95,209 ; maxps %xmm9,%xmm10 DB 68,15,95,210 ; maxps %xmm2,%xmm10 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 69,15,93,217 ; minps %xmm9,%xmm11 DB 68,15,93,218 ; minps %xmm2,%xmm11 DB 65,15,40,202 ; movaps %xmm10,%xmm1 DB 65,15,92,203 ; subps %xmm11,%xmm1 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 68,15,94,225 ; divps %xmm1,%xmm12 DB 65,184,171,170,42,62 ; mov $0x3e2aaaab,%r8d DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 65,15,194,192,0 ; cmpeqps %xmm8,%xmm0 DB 69,15,40,241 ; movaps %xmm9,%xmm14 DB 68,15,194,242,1 ; cmpltps %xmm2,%xmm14 DB 185,0,0,192,64 ; mov $0x40c00000,%ecx DB 102,68,15,110,233 ; movd %ecx,%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,84,238 ; andps %xmm14,%xmm13 DB 69,15,40,241 ; movaps %xmm9,%xmm14 DB 68,15,92,242 ; subps %xmm2,%xmm14 DB 69,15,89,244 ; mulps %xmm12,%xmm14 DB 69,15,88,238 ; addps %xmm14,%xmm13 DB 69,15,40,242 ; movaps %xmm10,%xmm14 DB 69,15,194,241,0 ; cmpeqps %xmm9,%xmm14 DB 65,15,92,208 ; subps %xmm8,%xmm2 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 65,15,89,212 ; mulps %xmm12,%xmm2 DB 185,0,0,0,64 ; mov $0x40000000,%ecx DB 69,15,89,196 ; mulps %xmm12,%xmm8 DB 184,0,0,128,64 ; mov $0x40800000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,200 ; addps %xmm8,%xmm9 DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,88,208 ; addps %xmm8,%xmm2 DB 65,15,84,214 ; andps %xmm14,%xmm2 DB 69,15,85,241 ; andnps %xmm9,%xmm14 DB 68,15,86,242 ; orps %xmm2,%xmm14 DB 68,15,84,232 ; andps %xmm0,%xmm13 DB 65,15,85,198 ; andnps %xmm14,%xmm0 DB 102,65,15,110,208 ; movd %r8d,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,86,197 ; orps %xmm13,%xmm0 DB 69,15,40,202 ; movaps %xmm10,%xmm9 DB 69,15,194,203,4 ; cmpneqps %xmm11,%xmm9 DB 65,15,84,193 ; andps %xmm9,%xmm0 DB 15,89,194 ; mulps %xmm2,%xmm0 DB 69,15,92,194 ; subps %xmm10,%xmm8 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 184,0,0,0,63 ; mov $0x3f000000,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 69,15,92,195 ; subps %xmm11,%xmm8 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 65,15,89,212 ; mulps %xmm12,%xmm2 DB 68,15,194,226,1 ; cmpltps %xmm2,%xmm12 DB 69,15,84,196 ; andps %xmm12,%xmm8 DB 69,15,85,226 ; andnps %xmm10,%xmm12 DB 69,15,86,224 ; orps %xmm8,%xmm12 DB 65,15,94,204 ; divps %xmm12,%xmm1 DB 65,15,84,201 ; andps %xmm9,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_hsl_to_rgb_sse2 _sk_hsl_to_rgb_sse2 LABEL PROC DB 72,131,236,104 ; sub $0x68,%rsp DB 15,41,124,36,80 ; movaps %xmm7,0x50(%rsp) DB 15,41,116,36,64 ; movaps %xmm6,0x40(%rsp) DB 15,41,108,36,48 ; movaps %xmm5,0x30(%rsp) DB 15,41,100,36,32 ; movaps %xmm4,0x20(%rsp) DB 15,41,92,36,16 ; movaps %xmm3,0x10(%rsp) DB 68,15,40,210 ; movaps %xmm2,%xmm10 DB 15,40,209 ; movaps %xmm1,%xmm2 DB 15,40,240 ; movaps %xmm0,%xmm6 DB 184,0,0,0,63 ; mov $0x3f000000,%eax DB 102,68,15,110,240 ; movd %eax,%xmm14 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 69,15,40,202 ; movaps %xmm10,%xmm9 DB 69,15,194,206,1 ; cmpltps %xmm14,%xmm9 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 65,15,40,196 ; movaps %xmm12,%xmm0 DB 15,88,194 ; addps %xmm2,%xmm0 DB 65,15,89,194 ; mulps %xmm10,%xmm0 DB 15,40,218 ; movaps %xmm2,%xmm3 DB 69,15,87,219 ; xorps %xmm11,%xmm11 DB 68,15,194,218,0 ; cmpeqps %xmm2,%xmm11 DB 65,15,88,210 ; addps %xmm10,%xmm2 DB 65,15,89,218 ; mulps %xmm10,%xmm3 DB 15,92,211 ; subps %xmm3,%xmm2 DB 65,15,84,193 ; andps %xmm9,%xmm0 DB 68,15,85,202 ; andnps %xmm2,%xmm9 DB 68,15,86,200 ; orps %xmm0,%xmm9 DB 184,0,0,0,64 ; mov $0x40000000,%eax DB 185,171,170,170,62 ; mov $0x3eaaaaab,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,41,4,36 ; movaps %xmm8,(%rsp) DB 68,15,88,198 ; addps %xmm6,%xmm8 DB 185,0,0,0,0 ; mov $0x0,%ecx DB 102,15,110,233 ; movd %ecx,%xmm5 DB 15,198,237,0 ; shufps $0x0,%xmm5,%xmm5 DB 65,15,40,196 ; movaps %xmm12,%xmm0 DB 65,15,194,192,1 ; cmpltps %xmm8,%xmm0 DB 65,15,40,216 ; movaps %xmm8,%xmm3 DB 65,15,92,220 ; subps %xmm12,%xmm3 DB 15,84,216 ; andps %xmm0,%xmm3 DB 65,15,85,192 ; andnps %xmm8,%xmm0 DB 15,86,195 ; orps %xmm3,%xmm0 DB 65,15,40,216 ; movaps %xmm8,%xmm3 DB 15,194,221,1 ; cmpltps %xmm5,%xmm3 DB 65,15,40,212 ; movaps %xmm12,%xmm2 DB 65,15,88,208 ; addps %xmm8,%xmm2 DB 15,84,211 ; andps %xmm3,%xmm2 DB 15,85,216 ; andnps %xmm0,%xmm3 DB 15,86,218 ; orps %xmm2,%xmm3 DB 102,68,15,110,232 ; movd %eax,%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,89,234 ; mulps %xmm10,%xmm13 DB 69,15,92,233 ; subps %xmm9,%xmm13 DB 184,171,170,42,62 ; mov $0x3e2aaaab,%eax DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 65,15,92,197 ; subps %xmm13,%xmm0 DB 185,0,0,192,64 ; mov $0x40c00000,%ecx DB 102,68,15,110,249 ; movd %ecx,%xmm15 DB 69,15,198,255,0 ; shufps $0x0,%xmm15,%xmm15 DB 68,15,89,248 ; mulps %xmm0,%xmm15 DB 185,171,170,42,63 ; mov $0x3f2aaaab,%ecx DB 102,15,110,225 ; movd %ecx,%xmm4 DB 15,198,228,0 ; shufps $0x0,%xmm4,%xmm4 DB 15,40,212 ; movaps %xmm4,%xmm2 DB 15,92,211 ; subps %xmm3,%xmm2 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,40,195 ; movaps %xmm3,%xmm0 DB 15,194,220,1 ; cmpltps %xmm4,%xmm3 DB 65,15,89,215 ; mulps %xmm15,%xmm2 DB 65,15,88,213 ; addps %xmm13,%xmm2 DB 15,84,211 ; andps %xmm3,%xmm2 DB 65,15,85,221 ; andnps %xmm13,%xmm3 DB 15,86,218 ; orps %xmm2,%xmm3 DB 65,15,194,198,1 ; cmpltps %xmm14,%xmm0 DB 65,15,40,209 ; movaps %xmm9,%xmm2 DB 15,84,208 ; andps %xmm0,%xmm2 DB 15,85,195 ; andnps %xmm3,%xmm0 DB 15,86,194 ; orps %xmm2,%xmm0 DB 102,15,110,248 ; movd %eax,%xmm7 DB 15,198,255,0 ; shufps $0x0,%xmm7,%xmm7 DB 15,194,207,1 ; cmpltps %xmm7,%xmm1 DB 69,15,89,199 ; mulps %xmm15,%xmm8 DB 69,15,88,197 ; addps %xmm13,%xmm8 DB 68,15,84,193 ; andps %xmm1,%xmm8 DB 15,85,200 ; andnps %xmm0,%xmm1 DB 65,15,86,200 ; orps %xmm8,%xmm1 DB 69,15,40,195 ; movaps %xmm11,%xmm8 DB 68,15,85,193 ; andnps %xmm1,%xmm8 DB 65,15,40,196 ; movaps %xmm12,%xmm0 DB 15,194,198,1 ; cmpltps %xmm6,%xmm0 DB 15,40,206 ; movaps %xmm6,%xmm1 DB 65,15,92,204 ; subps %xmm12,%xmm1 DB 15,84,200 ; andps %xmm0,%xmm1 DB 15,85,198 ; andnps %xmm6,%xmm0 DB 15,86,193 ; orps %xmm1,%xmm0 DB 15,40,206 ; movaps %xmm6,%xmm1 DB 15,194,205,1 ; cmpltps %xmm5,%xmm1 DB 65,15,40,212 ; movaps %xmm12,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 15,84,209 ; andps %xmm1,%xmm2 DB 15,85,200 ; andnps %xmm0,%xmm1 DB 15,86,202 ; orps %xmm2,%xmm1 DB 15,40,196 ; movaps %xmm4,%xmm0 DB 15,92,193 ; subps %xmm1,%xmm0 DB 15,40,217 ; movaps %xmm1,%xmm3 DB 15,40,209 ; movaps %xmm1,%xmm2 DB 15,194,204,1 ; cmpltps %xmm4,%xmm1 DB 65,15,89,199 ; mulps %xmm15,%xmm0 DB 65,15,88,197 ; addps %xmm13,%xmm0 DB 15,84,193 ; andps %xmm1,%xmm0 DB 65,15,85,205 ; andnps %xmm13,%xmm1 DB 15,86,200 ; orps %xmm0,%xmm1 DB 65,15,194,214,1 ; cmpltps %xmm14,%xmm2 DB 65,15,40,193 ; movaps %xmm9,%xmm0 DB 15,84,194 ; andps %xmm2,%xmm0 DB 15,85,209 ; andnps %xmm1,%xmm2 DB 15,86,208 ; orps %xmm0,%xmm2 DB 15,194,223,1 ; cmpltps %xmm7,%xmm3 DB 65,15,40,199 ; movaps %xmm15,%xmm0 DB 15,89,198 ; mulps %xmm6,%xmm0 DB 65,15,88,197 ; addps %xmm13,%xmm0 DB 15,84,195 ; andps %xmm3,%xmm0 DB 15,85,218 ; andnps %xmm2,%xmm3 DB 15,86,216 ; orps %xmm0,%xmm3 DB 65,15,40,203 ; movaps %xmm11,%xmm1 DB 15,85,203 ; andnps %xmm3,%xmm1 DB 15,92,52,36 ; subps (%rsp),%xmm6 DB 15,40,198 ; movaps %xmm6,%xmm0 DB 15,194,197,1 ; cmpltps %xmm5,%xmm0 DB 15,40,214 ; movaps %xmm6,%xmm2 DB 65,15,92,212 ; subps %xmm12,%xmm2 DB 65,15,40,220 ; movaps %xmm12,%xmm3 DB 68,15,194,230,1 ; cmpltps %xmm6,%xmm12 DB 65,15,84,212 ; andps %xmm12,%xmm2 DB 68,15,85,230 ; andnps %xmm6,%xmm12 DB 68,15,86,226 ; orps %xmm2,%xmm12 DB 15,88,222 ; addps %xmm6,%xmm3 DB 15,84,216 ; andps %xmm0,%xmm3 DB 65,15,85,196 ; andnps %xmm12,%xmm0 DB 15,86,195 ; orps %xmm3,%xmm0 DB 15,40,232 ; movaps %xmm0,%xmm5 DB 15,194,239,1 ; cmpltps %xmm7,%xmm5 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 15,194,212,1 ; cmpltps %xmm4,%xmm2 DB 15,92,224 ; subps %xmm0,%xmm4 DB 65,15,194,198,1 ; cmpltps %xmm14,%xmm0 DB 65,15,89,247 ; mulps %xmm15,%xmm6 DB 65,15,89,231 ; mulps %xmm15,%xmm4 DB 65,15,88,245 ; addps %xmm13,%xmm6 DB 65,15,88,229 ; addps %xmm13,%xmm4 DB 15,84,226 ; andps %xmm2,%xmm4 DB 65,15,85,213 ; andnps %xmm13,%xmm2 DB 15,86,212 ; orps %xmm4,%xmm2 DB 68,15,84,200 ; andps %xmm0,%xmm9 DB 15,85,194 ; andnps %xmm2,%xmm0 DB 65,15,86,193 ; orps %xmm9,%xmm0 DB 15,84,245 ; andps %xmm5,%xmm6 DB 15,85,232 ; andnps %xmm0,%xmm5 DB 15,86,238 ; orps %xmm6,%xmm5 DB 69,15,84,211 ; andps %xmm11,%xmm10 DB 68,15,85,221 ; andnps %xmm5,%xmm11 DB 69,15,86,194 ; orps %xmm10,%xmm8 DB 65,15,86,202 ; orps %xmm10,%xmm1 DB 69,15,86,211 ; orps %xmm11,%xmm10 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 15,40,92,36,16 ; movaps 0x10(%rsp),%xmm3 DB 15,40,100,36,32 ; movaps 0x20(%rsp),%xmm4 DB 15,40,108,36,48 ; movaps 0x30(%rsp),%xmm5 DB 15,40,116,36,64 ; movaps 0x40(%rsp),%xmm6 DB 15,40,124,36,80 ; movaps 0x50(%rsp),%xmm7 DB 72,131,196,104 ; add $0x68,%rsp DB 255,224 ; jmpq *%rax PUBLIC _sk_scale_1_float_sse2 _sk_scale_1_float_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_scale_u8_sse2 _sk_scale_u8_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,68,15,110,4,56 ; movd (%rax,%rdi,1),%xmm8 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9 DB 102,69,15,96,193 ; punpcklbw %xmm9,%xmm8 DB 102,69,15,97,193 ; punpcklwd %xmm9,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 65,15,89,217 ; mulps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lerp_1_float_sse2 _sk_lerp_1_float_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,92,196 ; subps %xmm4,%xmm0 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,92,205 ; subps %xmm5,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 15,92,214 ; subps %xmm6,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 15,92,223 ; subps %xmm7,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 15,88,223 ; addps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lerp_u8_sse2 _sk_lerp_u8_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,68,15,110,4,56 ; movd (%rax,%rdi,1),%xmm8 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9 DB 102,69,15,96,193 ; punpcklbw %xmm9,%xmm8 DB 102,69,15,97,193 ; punpcklwd %xmm9,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 15,92,196 ; subps %xmm4,%xmm0 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,92,205 ; subps %xmm5,%xmm1 DB 65,15,89,201 ; mulps %xmm9,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 15,92,214 ; subps %xmm6,%xmm2 DB 65,15,89,209 ; mulps %xmm9,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 15,92,223 ; subps %xmm7,%xmm3 DB 65,15,89,217 ; mulps %xmm9,%xmm3 DB 15,88,223 ; addps %xmm7,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lerp_565_sse2 _sk_lerp_565_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,68,15,126,4,120 ; movq (%rax,%rdi,2),%xmm8 DB 102,15,239,219 ; pxor %xmm3,%xmm3 DB 102,68,15,97,195 ; punpcklwd %xmm3,%xmm8 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,216 ; pand %xmm8,%xmm3 DB 68,15,91,203 ; cvtdq2ps %xmm3,%xmm9 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 102,68,15,110,208 ; movd %eax,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,216 ; pand %xmm8,%xmm3 DB 68,15,91,203 ; cvtdq2ps %xmm3,%xmm9 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,217 ; mulps %xmm9,%xmm11 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,216 ; pand %xmm8,%xmm3 DB 68,15,91,195 ; cvtdq2ps %xmm3,%xmm8 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 15,92,196 ; subps %xmm4,%xmm0 DB 65,15,89,194 ; mulps %xmm10,%xmm0 DB 15,88,196 ; addps %xmm4,%xmm0 DB 15,92,205 ; subps %xmm5,%xmm1 DB 65,15,89,203 ; mulps %xmm11,%xmm1 DB 15,88,205 ; addps %xmm5,%xmm1 DB 15,92,214 ; subps %xmm6,%xmm2 DB 15,89,211 ; mulps %xmm3,%xmm2 DB 15,88,214 ; addps %xmm6,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_tables_sse2 _sk_load_tables_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,8 ; mov (%rax),%rcx DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 243,68,15,111,4,185 ; movdqu (%rcx,%rdi,4),%xmm8 DB 185,255,0,0,0 ; mov $0xff,%ecx DB 102,15,110,193 ; movd %ecx,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9 DB 102,65,15,114,209,8 ; psrld $0x8,%xmm9 DB 102,68,15,219,200 ; pand %xmm0,%xmm9 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10 DB 102,65,15,114,210,16 ; psrld $0x10,%xmm10 DB 102,68,15,219,208 ; pand %xmm0,%xmm10 DB 102,65,15,219,192 ; pand %xmm8,%xmm0 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3 DB 102,72,15,126,217 ; movq %xmm3,%rcx DB 65,137,201 ; mov %ecx,%r9d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,73,15,126,194 ; movq %xmm0,%r10 DB 69,137,211 ; mov %r10d,%r11d DB 73,193,234,32 ; shr $0x20,%r10 DB 243,67,15,16,28,144 ; movss (%r8,%r10,4),%xmm3 DB 243,65,15,16,4,136 ; movss (%r8,%rcx,4),%xmm0 DB 15,20,216 ; unpcklps %xmm0,%xmm3 DB 243,67,15,16,4,152 ; movss (%r8,%r11,4),%xmm0 DB 243,67,15,16,12,136 ; movss (%r8,%r9,4),%xmm1 DB 15,20,193 ; unpcklps %xmm1,%xmm0 DB 15,20,195 ; unpcklps %xmm3,%xmm0 DB 76,139,64,16 ; mov 0x10(%rax),%r8 DB 102,65,15,112,201,78 ; pshufd $0x4e,%xmm9,%xmm1 DB 102,73,15,126,202 ; movq %xmm1,%r10 DB 77,137,209 ; mov %r10,%r9 DB 73,193,233,32 ; shr $0x20,%r9 DB 102,76,15,126,201 ; movq %xmm9,%rcx DB 65,137,203 ; mov %ecx,%r11d DB 65,129,227,255,255,255,0 ; and $0xffffff,%r11d DB 72,193,233,30 ; shr $0x1e,%rcx DB 65,129,226,255,255,255,0 ; and $0xffffff,%r10d DB 243,65,15,16,28,8 ; movss (%r8,%rcx,1),%xmm3 DB 243,67,15,16,12,136 ; movss (%r8,%r9,4),%xmm1 DB 15,20,217 ; unpcklps %xmm1,%xmm3 DB 243,67,15,16,12,152 ; movss (%r8,%r11,4),%xmm1 DB 243,67,15,16,20,144 ; movss (%r8,%r10,4),%xmm2 DB 15,20,202 ; unpcklps %xmm2,%xmm1 DB 15,20,203 ; unpcklps %xmm3,%xmm1 DB 76,139,72,24 ; mov 0x18(%rax),%r9 DB 102,65,15,112,210,78 ; pshufd $0x4e,%xmm10,%xmm2 DB 102,72,15,126,209 ; movq %xmm2,%rcx DB 68,15,183,193 ; movzwl %cx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,76,15,126,208 ; movq %xmm10,%rax DB 68,15,183,208 ; movzwl %ax,%r10d DB 72,193,232,30 ; shr $0x1e,%rax DB 243,69,15,16,12,1 ; movss (%r9,%rax,1),%xmm9 DB 243,65,15,16,20,137 ; movss (%r9,%rcx,4),%xmm2 DB 68,15,20,202 ; unpcklps %xmm2,%xmm9 DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2 DB 243,67,15,16,28,129 ; movss (%r9,%r8,4),%xmm3 DB 15,20,211 ; unpcklps %xmm3,%xmm2 DB 65,15,20,209 ; unpcklps %xmm9,%xmm2 DB 102,65,15,114,208,24 ; psrld $0x18,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_tables_u16_be_sse2 _sk_load_tables_u16_be_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,8 ; mov (%rax),%rcx DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 243,15,111,4,249 ; movdqu (%rcx,%rdi,8),%xmm0 DB 243,15,111,76,249,16 ; movdqu 0x10(%rcx,%rdi,8),%xmm1 DB 102,68,15,111,208 ; movdqa %xmm0,%xmm10 DB 102,68,15,97,209 ; punpcklwd %xmm1,%xmm10 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0 DB 102,65,15,111,202 ; movdqa %xmm10,%xmm1 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1 DB 102,68,15,105,208 ; punpckhwd %xmm0,%xmm10 DB 102,69,15,239,192 ; pxor %xmm8,%xmm8 DB 102,15,111,193 ; movdqa %xmm1,%xmm0 DB 102,65,15,97,192 ; punpcklwd %xmm8,%xmm0 DB 185,255,0,0,0 ; mov $0xff,%ecx DB 102,15,110,217 ; movd %ecx,%xmm3 DB 102,68,15,112,203,0 ; pshufd $0x0,%xmm3,%xmm9 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3 DB 102,72,15,126,217 ; movq %xmm3,%rcx DB 68,15,183,201 ; movzwl %cx,%r9d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,73,15,126,194 ; movq %xmm0,%r10 DB 69,15,183,218 ; movzwl %r10w,%r11d DB 73,193,234,30 ; shr $0x1e,%r10 DB 243,67,15,16,28,16 ; movss (%r8,%r10,1),%xmm3 DB 243,65,15,16,4,136 ; movss (%r8,%rcx,4),%xmm0 DB 15,20,216 ; unpcklps %xmm0,%xmm3 DB 243,67,15,16,4,152 ; movss (%r8,%r11,4),%xmm0 DB 243,67,15,16,20,136 ; movss (%r8,%r9,4),%xmm2 DB 15,20,194 ; unpcklps %xmm2,%xmm0 DB 15,20,195 ; unpcklps %xmm3,%xmm0 DB 76,139,80,16 ; mov 0x10(%rax),%r10 DB 102,15,115,217,8 ; psrldq $0x8,%xmm1 DB 102,65,15,97,200 ; punpcklwd %xmm8,%xmm1 DB 102,65,15,219,201 ; pand %xmm9,%xmm1 DB 102,15,112,209,78 ; pshufd $0x4e,%xmm1,%xmm2 DB 102,73,15,126,208 ; movq %xmm2,%r8 DB 69,15,183,200 ; movzwl %r8w,%r9d DB 73,193,232,32 ; shr $0x20,%r8 DB 102,72,15,126,201 ; movq %xmm1,%rcx DB 68,15,183,217 ; movzwl %cx,%r11d DB 72,193,233,30 ; shr $0x1e,%rcx DB 243,65,15,16,20,10 ; movss (%r10,%rcx,1),%xmm2 DB 243,67,15,16,12,130 ; movss (%r10,%r8,4),%xmm1 DB 15,20,209 ; unpcklps %xmm1,%xmm2 DB 243,67,15,16,12,154 ; movss (%r10,%r11,4),%xmm1 DB 243,67,15,16,28,138 ; movss (%r10,%r9,4),%xmm3 DB 15,20,203 ; unpcklps %xmm3,%xmm1 DB 15,20,202 ; unpcklps %xmm2,%xmm1 DB 76,139,72,24 ; mov 0x18(%rax),%r9 DB 102,69,15,112,218,78 ; pshufd $0x4e,%xmm10,%xmm11 DB 102,69,15,97,208 ; punpcklwd %xmm8,%xmm10 DB 102,69,15,219,209 ; pand %xmm9,%xmm10 DB 102,65,15,112,210,78 ; pshufd $0x4e,%xmm10,%xmm2 DB 102,72,15,126,209 ; movq %xmm2,%rcx DB 68,15,183,193 ; movzwl %cx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,76,15,126,208 ; movq %xmm10,%rax DB 68,15,183,208 ; movzwl %ax,%r10d DB 72,193,232,30 ; shr $0x1e,%rax DB 243,69,15,16,12,1 ; movss (%r9,%rax,1),%xmm9 DB 243,65,15,16,20,137 ; movss (%r9,%rcx,4),%xmm2 DB 68,15,20,202 ; unpcklps %xmm2,%xmm9 DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2 DB 243,67,15,16,28,129 ; movss (%r9,%r8,4),%xmm3 DB 15,20,211 ; unpcklps %xmm3,%xmm2 DB 65,15,20,209 ; unpcklps %xmm9,%xmm2 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 102,65,15,111,219 ; movdqa %xmm11,%xmm3 DB 102,15,113,243,8 ; psllw $0x8,%xmm3 DB 102,65,15,113,211,8 ; psrlw $0x8,%xmm11 DB 102,68,15,235,219 ; por %xmm3,%xmm11 DB 102,69,15,97,216 ; punpcklwd %xmm8,%xmm11 DB 65,15,91,219 ; cvtdq2ps %xmm11,%xmm3 DB 65,15,89,217 ; mulps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_tables_rgb_u16_be_sse2 _sk_load_tables_rgb_u16_be_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,141,12,127 ; lea (%rdi,%rdi,2),%r9 DB 72,139,8 ; mov (%rax),%rcx DB 76,139,64,8 ; mov 0x8(%rax),%r8 DB 243,70,15,111,28,73 ; movdqu (%rcx,%r9,2),%xmm11 DB 243,66,15,111,68,73,8 ; movdqu 0x8(%rcx,%r9,2),%xmm0 DB 102,15,115,216,4 ; psrldq $0x4,%xmm0 DB 102,65,15,111,219 ; movdqa %xmm11,%xmm3 DB 102,15,115,219,6 ; psrldq $0x6,%xmm3 DB 102,68,15,97,216 ; punpcklwd %xmm0,%xmm11 DB 102,15,115,216,6 ; psrldq $0x6,%xmm0 DB 102,15,97,216 ; punpcklwd %xmm0,%xmm3 DB 102,65,15,111,195 ; movdqa %xmm11,%xmm0 DB 102,15,97,195 ; punpcklwd %xmm3,%xmm0 DB 102,68,15,112,208,78 ; pshufd $0x4e,%xmm0,%xmm10 DB 102,68,15,105,219 ; punpckhwd %xmm3,%xmm11 DB 102,69,15,239,192 ; pxor %xmm8,%xmm8 DB 102,65,15,97,192 ; punpcklwd %xmm8,%xmm0 DB 185,255,0,0,0 ; mov $0xff,%ecx DB 102,15,110,217 ; movd %ecx,%xmm3 DB 102,68,15,112,203,0 ; pshufd $0x0,%xmm3,%xmm9 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3 DB 102,72,15,126,217 ; movq %xmm3,%rcx DB 68,15,183,201 ; movzwl %cx,%r9d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,73,15,126,194 ; movq %xmm0,%r10 DB 69,15,183,218 ; movzwl %r10w,%r11d DB 73,193,234,30 ; shr $0x1e,%r10 DB 243,67,15,16,28,16 ; movss (%r8,%r10,1),%xmm3 DB 243,65,15,16,4,136 ; movss (%r8,%rcx,4),%xmm0 DB 15,20,216 ; unpcklps %xmm0,%xmm3 DB 243,67,15,16,4,152 ; movss (%r8,%r11,4),%xmm0 DB 243,67,15,16,12,136 ; movss (%r8,%r9,4),%xmm1 DB 15,20,193 ; unpcklps %xmm1,%xmm0 DB 15,20,195 ; unpcklps %xmm3,%xmm0 DB 76,139,80,16 ; mov 0x10(%rax),%r10 DB 102,69,15,97,208 ; punpcklwd %xmm8,%xmm10 DB 102,69,15,219,209 ; pand %xmm9,%xmm10 DB 102,65,15,112,202,78 ; pshufd $0x4e,%xmm10,%xmm1 DB 102,73,15,126,200 ; movq %xmm1,%r8 DB 69,15,183,200 ; movzwl %r8w,%r9d DB 73,193,232,32 ; shr $0x20,%r8 DB 102,76,15,126,209 ; movq %xmm10,%rcx DB 68,15,183,217 ; movzwl %cx,%r11d DB 72,193,233,30 ; shr $0x1e,%rcx DB 243,65,15,16,28,10 ; movss (%r10,%rcx,1),%xmm3 DB 243,67,15,16,12,130 ; movss (%r10,%r8,4),%xmm1 DB 15,20,217 ; unpcklps %xmm1,%xmm3 DB 243,67,15,16,12,154 ; movss (%r10,%r11,4),%xmm1 DB 243,67,15,16,20,138 ; movss (%r10,%r9,4),%xmm2 DB 15,20,202 ; unpcklps %xmm2,%xmm1 DB 15,20,203 ; unpcklps %xmm3,%xmm1 DB 76,139,72,24 ; mov 0x18(%rax),%r9 DB 102,69,15,97,216 ; punpcklwd %xmm8,%xmm11 DB 102,69,15,219,217 ; pand %xmm9,%xmm11 DB 102,65,15,112,211,78 ; pshufd $0x4e,%xmm11,%xmm2 DB 102,72,15,126,209 ; movq %xmm2,%rcx DB 68,15,183,193 ; movzwl %cx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,76,15,126,216 ; movq %xmm11,%rax DB 68,15,183,208 ; movzwl %ax,%r10d DB 72,193,232,30 ; shr $0x1e,%rax DB 243,69,15,16,4,1 ; movss (%r9,%rax,1),%xmm8 DB 243,65,15,16,20,137 ; movss (%r9,%rcx,4),%xmm2 DB 68,15,20,194 ; unpcklps %xmm2,%xmm8 DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2 DB 243,67,15,16,28,129 ; movss (%r9,%r8,4),%xmm3 DB 15,20,211 ; unpcklps %xmm3,%xmm2 DB 65,15,20,208 ; unpcklps %xmm8,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_byte_tables_sse2 _sk_byte_tables_sse2 LABEL PROC DB 65,86 ; push %r14 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,127,67 ; mov $0x437f0000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 102,15,91,192 ; cvtps2dq %xmm0,%xmm0 DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0 DB 102,73,15,126,193 ; movq %xmm0,%r9 DB 69,137,202 ; mov %r9d,%r10d DB 77,137,203 ; mov %r9,%r11 DB 73,193,235,32 ; shr $0x20,%r11 DB 76,139,48 ; mov (%rax),%r14 DB 76,139,72,8 ; mov 0x8(%rax),%r9 DB 71,15,182,20,22 ; movzbl (%r14,%r10,1),%r10d DB 67,15,182,28,30 ; movzbl (%r14,%r11,1),%ebx DB 193,227,8 ; shl $0x8,%ebx DB 68,9,211 ; or %r10d,%ebx DB 71,15,182,4,6 ; movzbl (%r14,%r8,1),%r8d DB 65,15,182,12,14 ; movzbl (%r14,%rcx,1),%ecx DB 193,225,8 ; shl $0x8,%ecx DB 68,9,193 ; or %r8d,%ecx DB 102,15,196,193,0 ; pinsrw $0x0,%ecx,%xmm0 DB 102,15,196,195,1 ; pinsrw $0x1,%ebx,%xmm0 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9 DB 102,65,15,96,193 ; punpcklbw %xmm9,%xmm0 DB 102,65,15,97,193 ; punpcklwd %xmm9,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 185,129,128,128,59 ; mov $0x3b808081,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 65,15,89,194 ; mulps %xmm10,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 102,15,91,201 ; cvtps2dq %xmm1,%xmm1 DB 102,72,15,126,201 ; movq %xmm1,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,15,112,201,78 ; pshufd $0x4e,%xmm1,%xmm1 DB 102,72,15,126,203 ; movq %xmm1,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d DB 65,15,182,28,25 ; movzbl (%r9,%rbx,1),%ebx DB 193,227,8 ; shl $0x8,%ebx DB 68,9,211 ; or %r10d,%ebx DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx DB 193,225,8 ; shl $0x8,%ecx DB 68,9,193 ; or %r8d,%ecx DB 102,15,196,201,0 ; pinsrw $0x0,%ecx,%xmm1 DB 102,15,196,203,1 ; pinsrw $0x1,%ebx,%xmm1 DB 102,65,15,96,201 ; punpcklbw %xmm9,%xmm1 DB 102,65,15,97,201 ; punpcklwd %xmm9,%xmm1 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,202 ; mulps %xmm10,%xmm1 DB 76,139,72,16 ; mov 0x10(%rax),%r9 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,91,210 ; cvtps2dq %xmm2,%xmm2 DB 102,72,15,126,211 ; movq %xmm2,%rbx DB 65,137,216 ; mov %ebx,%r8d DB 72,193,235,32 ; shr $0x20,%rbx DB 102,15,112,210,78 ; pshufd $0x4e,%xmm2,%xmm2 DB 102,72,15,126,209 ; movq %xmm2,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx DB 193,225,8 ; shl $0x8,%ecx DB 68,9,209 ; or %r10d,%ecx DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d DB 65,15,182,28,25 ; movzbl (%r9,%rbx,1),%ebx DB 193,227,8 ; shl $0x8,%ebx DB 68,9,195 ; or %r8d,%ebx DB 102,15,196,211,0 ; pinsrw $0x0,%ebx,%xmm2 DB 102,15,196,209,1 ; pinsrw $0x1,%ecx,%xmm2 DB 102,65,15,96,209 ; punpcklbw %xmm9,%xmm2 DB 102,65,15,97,209 ; punpcklwd %xmm9,%xmm2 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,210 ; mulps %xmm10,%xmm2 DB 72,139,64,24 ; mov 0x18(%rax),%rax DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,65,15,91,216 ; cvtps2dq %xmm8,%xmm3 DB 102,72,15,126,217 ; movq %xmm3,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,15,112,219,78 ; pshufd $0x4e,%xmm3,%xmm3 DB 102,72,15,126,219 ; movq %xmm3,%rbx DB 65,137,217 ; mov %ebx,%r9d DB 72,193,235,32 ; shr $0x20,%rbx DB 70,15,182,12,8 ; movzbl (%rax,%r9,1),%r9d DB 15,182,28,24 ; movzbl (%rax,%rbx,1),%ebx DB 193,227,8 ; shl $0x8,%ebx DB 68,9,203 ; or %r9d,%ebx DB 70,15,182,4,0 ; movzbl (%rax,%r8,1),%r8d DB 15,182,4,8 ; movzbl (%rax,%rcx,1),%eax DB 193,224,8 ; shl $0x8,%eax DB 68,9,192 ; or %r8d,%eax DB 102,15,196,216,0 ; pinsrw $0x0,%eax,%xmm3 DB 102,15,196,219,1 ; pinsrw $0x1,%ebx,%xmm3 DB 102,65,15,96,217 ; punpcklbw %xmm9,%xmm3 DB 102,65,15,97,217 ; punpcklwd %xmm9,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,218 ; mulps %xmm10,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,94 ; pop %r14 DB 255,224 ; jmpq *%rax PUBLIC _sk_byte_tables_rgb_sse2 _sk_byte_tables_rgb_sse2 LABEL PROC DB 65,86 ; push %r14 DB 83 ; push %rbx DB 72,173 ; lods %ds:(%rsi),%rax DB 139,72,24 ; mov 0x18(%rax),%ecx DB 255,201 ; dec %ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 102,15,91,192 ; cvtps2dq %xmm0,%xmm0 DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0 DB 102,73,15,126,193 ; movq %xmm0,%r9 DB 69,137,202 ; mov %r9d,%r10d DB 77,137,203 ; mov %r9,%r11 DB 73,193,235,32 ; shr $0x20,%r11 DB 76,139,48 ; mov (%rax),%r14 DB 76,139,72,8 ; mov 0x8(%rax),%r9 DB 71,15,182,20,22 ; movzbl (%r14,%r10,1),%r10d DB 67,15,182,28,30 ; movzbl (%r14,%r11,1),%ebx DB 193,227,8 ; shl $0x8,%ebx DB 68,9,211 ; or %r10d,%ebx DB 71,15,182,4,6 ; movzbl (%r14,%r8,1),%r8d DB 65,15,182,12,14 ; movzbl (%r14,%rcx,1),%ecx DB 193,225,8 ; shl $0x8,%ecx DB 68,9,193 ; or %r8d,%ecx DB 102,15,196,193,0 ; pinsrw $0x0,%ecx,%xmm0 DB 102,15,196,195,1 ; pinsrw $0x1,%ebx,%xmm0 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9 DB 102,65,15,96,193 ; punpcklbw %xmm9,%xmm0 DB 102,65,15,97,193 ; punpcklwd %xmm9,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 185,129,128,128,59 ; mov $0x3b808081,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 65,15,89,194 ; mulps %xmm10,%xmm0 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 102,15,91,201 ; cvtps2dq %xmm1,%xmm1 DB 102,72,15,126,201 ; movq %xmm1,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,15,112,201,78 ; pshufd $0x4e,%xmm1,%xmm1 DB 102,72,15,126,203 ; movq %xmm1,%rbx DB 65,137,218 ; mov %ebx,%r10d DB 72,193,235,32 ; shr $0x20,%rbx DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d DB 65,15,182,28,25 ; movzbl (%r9,%rbx,1),%ebx DB 193,227,8 ; shl $0x8,%ebx DB 68,9,211 ; or %r10d,%ebx DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx DB 193,225,8 ; shl $0x8,%ecx DB 68,9,193 ; or %r8d,%ecx DB 102,15,196,201,0 ; pinsrw $0x0,%ecx,%xmm1 DB 102,15,196,203,1 ; pinsrw $0x1,%ebx,%xmm1 DB 102,65,15,96,201 ; punpcklbw %xmm9,%xmm1 DB 102,65,15,97,201 ; punpcklwd %xmm9,%xmm1 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,202 ; mulps %xmm10,%xmm1 DB 72,139,64,16 ; mov 0x10(%rax),%rax DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,91,210 ; cvtps2dq %xmm2,%xmm2 DB 102,72,15,126,209 ; movq %xmm2,%rcx DB 65,137,200 ; mov %ecx,%r8d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,15,112,210,78 ; pshufd $0x4e,%xmm2,%xmm2 DB 102,72,15,126,211 ; movq %xmm2,%rbx DB 65,137,217 ; mov %ebx,%r9d DB 72,193,235,32 ; shr $0x20,%rbx DB 70,15,182,12,8 ; movzbl (%rax,%r9,1),%r9d DB 15,182,28,24 ; movzbl (%rax,%rbx,1),%ebx DB 193,227,8 ; shl $0x8,%ebx DB 68,9,203 ; or %r9d,%ebx DB 70,15,182,4,0 ; movzbl (%rax,%r8,1),%r8d DB 15,182,4,8 ; movzbl (%rax,%rcx,1),%eax DB 193,224,8 ; shl $0x8,%eax DB 68,9,192 ; or %r8d,%eax DB 102,15,196,208,0 ; pinsrw $0x0,%eax,%xmm2 DB 102,15,196,211,1 ; pinsrw $0x1,%ebx,%xmm2 DB 102,65,15,96,209 ; punpcklbw %xmm9,%xmm2 DB 102,65,15,97,209 ; punpcklwd %xmm9,%xmm2 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,210 ; mulps %xmm10,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 91 ; pop %rbx DB 65,94 ; pop %r14 DB 255,224 ; jmpq *%rax PUBLIC _sk_table_r_sse2 _sk_table_r_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,65,15,112,192,78 ; pshufd $0x4e,%xmm8,%xmm0 DB 102,72,15,126,192 ; movq %xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,76,15,126,193 ; movq %xmm8,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,69,15,16,4,137 ; movss (%r9,%rcx,4),%xmm8 DB 243,65,15,16,4,129 ; movss (%r9,%rax,4),%xmm0 DB 68,15,20,192 ; unpcklps %xmm0,%xmm8 DB 243,67,15,16,4,145 ; movss (%r9,%r10,4),%xmm0 DB 243,71,15,16,12,129 ; movss (%r9,%r8,4),%xmm9 DB 65,15,20,193 ; unpcklps %xmm9,%xmm0 DB 65,15,20,192 ; unpcklps %xmm8,%xmm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_g_sse2 _sk_table_g_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 68,15,89,193 ; mulps %xmm1,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,65,15,112,200,78 ; pshufd $0x4e,%xmm8,%xmm1 DB 102,72,15,126,200 ; movq %xmm1,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,76,15,126,193 ; movq %xmm8,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,69,15,16,4,137 ; movss (%r9,%rcx,4),%xmm8 DB 243,65,15,16,12,129 ; movss (%r9,%rax,4),%xmm1 DB 68,15,20,193 ; unpcklps %xmm1,%xmm8 DB 243,67,15,16,12,145 ; movss (%r9,%r10,4),%xmm1 DB 243,71,15,16,12,129 ; movss (%r9,%r8,4),%xmm9 DB 65,15,20,201 ; unpcklps %xmm9,%xmm1 DB 65,15,20,200 ; unpcklps %xmm8,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_b_sse2 _sk_table_b_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,65,15,112,208,78 ; pshufd $0x4e,%xmm8,%xmm2 DB 102,72,15,126,208 ; movq %xmm2,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,76,15,126,193 ; movq %xmm8,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,69,15,16,4,137 ; movss (%r9,%rcx,4),%xmm8 DB 243,65,15,16,20,129 ; movss (%r9,%rax,4),%xmm2 DB 68,15,20,194 ; unpcklps %xmm2,%xmm8 DB 243,67,15,16,20,145 ; movss (%r9,%r10,4),%xmm2 DB 243,71,15,16,12,129 ; movss (%r9,%r8,4),%xmm9 DB 65,15,20,209 ; unpcklps %xmm9,%xmm2 DB 65,15,20,208 ; unpcklps %xmm8,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_table_a_sse2 _sk_table_a_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 139,64,8 ; mov 0x8(%rax),%eax DB 255,200 ; dec %eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 102,69,15,112,192,0 ; pshufd $0x0,%xmm8,%xmm8 DB 69,15,91,192 ; cvtdq2ps %xmm8,%xmm8 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,65,15,112,216,78 ; pshufd $0x4e,%xmm8,%xmm3 DB 102,72,15,126,216 ; movq %xmm3,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,76,15,126,193 ; movq %xmm8,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,69,15,16,4,137 ; movss (%r9,%rcx,4),%xmm8 DB 243,65,15,16,28,129 ; movss (%r9,%rax,4),%xmm3 DB 68,15,20,195 ; unpcklps %xmm3,%xmm8 DB 243,67,15,16,28,145 ; movss (%r9,%r10,4),%xmm3 DB 243,71,15,16,12,129 ; movss (%r9,%r8,4),%xmm9 DB 65,15,20,217 ; unpcklps %xmm9,%xmm3 DB 65,15,20,216 ; unpcklps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_r_sse2 _sk_parametric_r_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,64,12 ; movss 0xc(%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,208 ; mulps %xmm0,%xmm10 DB 65,15,194,193,2 ; cmpleps %xmm9,%xmm0 DB 243,68,15,16,72,24 ; movss 0x18(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,193 ; addps %xmm9,%xmm8 DB 243,68,15,16,24 ; movss (%rax),%xmm11 DB 243,68,15,16,72,8 ; movss 0x8(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,209 ; addps %xmm9,%xmm10 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,91,202 ; cvtdq2ps %xmm10,%xmm9 DB 68,15,89,13,78,36,0,0 ; mulps 0x244e(%rip),%xmm9 # 43e0 <_sk_callback_sse2+0xcb> DB 68,15,84,21,86,36,0,0 ; andps 0x2456(%rip),%xmm10 # 43f0 <_sk_callback_sse2+0xdb> DB 68,15,86,21,94,36,0,0 ; orps 0x245e(%rip),%xmm10 # 4400 <_sk_callback_sse2+0xeb> DB 68,15,88,13,102,36,0,0 ; addps 0x2466(%rip),%xmm9 # 4410 <_sk_callback_sse2+0xfb> DB 68,15,40,37,110,36,0,0 ; movaps 0x246e(%rip),%xmm12 # 4420 <_sk_callback_sse2+0x10b> DB 69,15,89,226 ; mulps %xmm10,%xmm12 DB 69,15,92,204 ; subps %xmm12,%xmm9 DB 68,15,88,21,110,36,0,0 ; addps 0x246e(%rip),%xmm10 # 4430 <_sk_callback_sse2+0x11b> DB 68,15,40,37,118,36,0,0 ; movaps 0x2476(%rip),%xmm12 # 4440 <_sk_callback_sse2+0x12b> DB 69,15,94,226 ; divps %xmm10,%xmm12 DB 69,15,92,204 ; subps %xmm12,%xmm9 DB 69,15,89,203 ; mulps %xmm11,%xmm9 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10 DB 69,15,91,218 ; cvtdq2ps %xmm10,%xmm11 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 69,15,194,227,1 ; cmpltps %xmm11,%xmm12 DB 68,15,84,37,96,36,0,0 ; andps 0x2460(%rip),%xmm12 # 4450 <_sk_callback_sse2+0x13b> DB 69,15,87,210 ; xorps %xmm10,%xmm10 DB 69,15,92,220 ; subps %xmm12,%xmm11 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 69,15,92,227 ; subps %xmm11,%xmm12 DB 68,15,88,13,88,36,0,0 ; addps 0x2458(%rip),%xmm9 # 4460 <_sk_callback_sse2+0x14b> DB 68,15,40,29,96,36,0,0 ; movaps 0x2460(%rip),%xmm11 # 4470 <_sk_callback_sse2+0x15b> DB 69,15,89,220 ; mulps %xmm12,%xmm11 DB 69,15,92,203 ; subps %xmm11,%xmm9 DB 68,15,40,29,96,36,0,0 ; movaps 0x2460(%rip),%xmm11 # 4480 <_sk_callback_sse2+0x16b> DB 69,15,92,220 ; subps %xmm12,%xmm11 DB 68,15,40,37,100,36,0,0 ; movaps 0x2464(%rip),%xmm12 # 4490 <_sk_callback_sse2+0x17b> DB 69,15,94,227 ; divps %xmm11,%xmm12 DB 69,15,88,225 ; addps %xmm9,%xmm12 DB 68,15,89,37,100,36,0,0 ; mulps 0x2464(%rip),%xmm12 # 44a0 <_sk_callback_sse2+0x18b> DB 102,69,15,91,204 ; cvtps2dq %xmm12,%xmm9 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,88,217 ; addps %xmm9,%xmm11 DB 68,15,84,192 ; andps %xmm0,%xmm8 DB 65,15,85,195 ; andnps %xmm11,%xmm0 DB 65,15,86,192 ; orps %xmm8,%xmm0 DB 65,15,95,194 ; maxps %xmm10,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,93,192 ; minps %xmm8,%xmm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_g_sse2 _sk_parametric_g_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,64,12 ; movss 0xc(%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,89,193 ; mulps %xmm1,%xmm8 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 65,15,194,201,2 ; cmpleps %xmm9,%xmm1 DB 243,68,15,16,72,24 ; movss 0x18(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,193 ; addps %xmm9,%xmm8 DB 243,68,15,16,24 ; movss (%rax),%xmm11 DB 243,68,15,16,72,8 ; movss 0x8(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,209 ; addps %xmm9,%xmm10 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,91,202 ; cvtdq2ps %xmm10,%xmm9 DB 68,15,89,13,213,35,0,0 ; mulps 0x23d5(%rip),%xmm9 # 44b0 <_sk_callback_sse2+0x19b> DB 68,15,84,21,221,35,0,0 ; andps 0x23dd(%rip),%xmm10 # 44c0 <_sk_callback_sse2+0x1ab> DB 68,15,86,21,229,35,0,0 ; orps 0x23e5(%rip),%xmm10 # 44d0 <_sk_callback_sse2+0x1bb> DB 68,15,88,13,237,35,0,0 ; addps 0x23ed(%rip),%xmm9 # 44e0 <_sk_callback_sse2+0x1cb> DB 68,15,40,37,245,35,0,0 ; movaps 0x23f5(%rip),%xmm12 # 44f0 <_sk_callback_sse2+0x1db> DB 69,15,89,226 ; mulps %xmm10,%xmm12 DB 69,15,92,204 ; subps %xmm12,%xmm9 DB 68,15,88,21,245,35,0,0 ; addps 0x23f5(%rip),%xmm10 # 4500 <_sk_callback_sse2+0x1eb> DB 68,15,40,37,253,35,0,0 ; movaps 0x23fd(%rip),%xmm12 # 4510 <_sk_callback_sse2+0x1fb> DB 69,15,94,226 ; divps %xmm10,%xmm12 DB 69,15,92,204 ; subps %xmm12,%xmm9 DB 69,15,89,203 ; mulps %xmm11,%xmm9 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10 DB 69,15,91,218 ; cvtdq2ps %xmm10,%xmm11 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 69,15,194,227,1 ; cmpltps %xmm11,%xmm12 DB 68,15,84,37,231,35,0,0 ; andps 0x23e7(%rip),%xmm12 # 4520 <_sk_callback_sse2+0x20b> DB 69,15,87,210 ; xorps %xmm10,%xmm10 DB 69,15,92,220 ; subps %xmm12,%xmm11 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 69,15,92,227 ; subps %xmm11,%xmm12 DB 68,15,88,13,223,35,0,0 ; addps 0x23df(%rip),%xmm9 # 4530 <_sk_callback_sse2+0x21b> DB 68,15,40,29,231,35,0,0 ; movaps 0x23e7(%rip),%xmm11 # 4540 <_sk_callback_sse2+0x22b> DB 69,15,89,220 ; mulps %xmm12,%xmm11 DB 69,15,92,203 ; subps %xmm11,%xmm9 DB 68,15,40,29,231,35,0,0 ; movaps 0x23e7(%rip),%xmm11 # 4550 <_sk_callback_sse2+0x23b> DB 69,15,92,220 ; subps %xmm12,%xmm11 DB 68,15,40,37,235,35,0,0 ; movaps 0x23eb(%rip),%xmm12 # 4560 <_sk_callback_sse2+0x24b> DB 69,15,94,227 ; divps %xmm11,%xmm12 DB 69,15,88,225 ; addps %xmm9,%xmm12 DB 68,15,89,37,235,35,0,0 ; mulps 0x23eb(%rip),%xmm12 # 4570 <_sk_callback_sse2+0x25b> DB 102,69,15,91,204 ; cvtps2dq %xmm12,%xmm9 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,88,217 ; addps %xmm9,%xmm11 DB 68,15,84,193 ; andps %xmm1,%xmm8 DB 65,15,85,203 ; andnps %xmm11,%xmm1 DB 65,15,86,200 ; orps %xmm8,%xmm1 DB 65,15,95,202 ; maxps %xmm10,%xmm1 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,93,200 ; minps %xmm8,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_b_sse2 _sk_parametric_b_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,64,12 ; movss 0xc(%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,210 ; mulps %xmm2,%xmm10 DB 65,15,194,209,2 ; cmpleps %xmm9,%xmm2 DB 243,68,15,16,72,24 ; movss 0x18(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,193 ; addps %xmm9,%xmm8 DB 243,68,15,16,24 ; movss (%rax),%xmm11 DB 243,68,15,16,72,8 ; movss 0x8(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,209 ; addps %xmm9,%xmm10 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,91,202 ; cvtdq2ps %xmm10,%xmm9 DB 68,15,89,13,92,35,0,0 ; mulps 0x235c(%rip),%xmm9 # 4580 <_sk_callback_sse2+0x26b> DB 68,15,84,21,100,35,0,0 ; andps 0x2364(%rip),%xmm10 # 4590 <_sk_callback_sse2+0x27b> DB 68,15,86,21,108,35,0,0 ; orps 0x236c(%rip),%xmm10 # 45a0 <_sk_callback_sse2+0x28b> DB 68,15,88,13,116,35,0,0 ; addps 0x2374(%rip),%xmm9 # 45b0 <_sk_callback_sse2+0x29b> DB 68,15,40,37,124,35,0,0 ; movaps 0x237c(%rip),%xmm12 # 45c0 <_sk_callback_sse2+0x2ab> DB 69,15,89,226 ; mulps %xmm10,%xmm12 DB 69,15,92,204 ; subps %xmm12,%xmm9 DB 68,15,88,21,124,35,0,0 ; addps 0x237c(%rip),%xmm10 # 45d0 <_sk_callback_sse2+0x2bb> DB 68,15,40,37,132,35,0,0 ; movaps 0x2384(%rip),%xmm12 # 45e0 <_sk_callback_sse2+0x2cb> DB 69,15,94,226 ; divps %xmm10,%xmm12 DB 69,15,92,204 ; subps %xmm12,%xmm9 DB 69,15,89,203 ; mulps %xmm11,%xmm9 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10 DB 69,15,91,218 ; cvtdq2ps %xmm10,%xmm11 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 69,15,194,227,1 ; cmpltps %xmm11,%xmm12 DB 68,15,84,37,110,35,0,0 ; andps 0x236e(%rip),%xmm12 # 45f0 <_sk_callback_sse2+0x2db> DB 69,15,87,210 ; xorps %xmm10,%xmm10 DB 69,15,92,220 ; subps %xmm12,%xmm11 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 69,15,92,227 ; subps %xmm11,%xmm12 DB 68,15,88,13,102,35,0,0 ; addps 0x2366(%rip),%xmm9 # 4600 <_sk_callback_sse2+0x2eb> DB 68,15,40,29,110,35,0,0 ; movaps 0x236e(%rip),%xmm11 # 4610 <_sk_callback_sse2+0x2fb> DB 69,15,89,220 ; mulps %xmm12,%xmm11 DB 69,15,92,203 ; subps %xmm11,%xmm9 DB 68,15,40,29,110,35,0,0 ; movaps 0x236e(%rip),%xmm11 # 4620 <_sk_callback_sse2+0x30b> DB 69,15,92,220 ; subps %xmm12,%xmm11 DB 68,15,40,37,114,35,0,0 ; movaps 0x2372(%rip),%xmm12 # 4630 <_sk_callback_sse2+0x31b> DB 69,15,94,227 ; divps %xmm11,%xmm12 DB 69,15,88,225 ; addps %xmm9,%xmm12 DB 68,15,89,37,114,35,0,0 ; mulps 0x2372(%rip),%xmm12 # 4640 <_sk_callback_sse2+0x32b> DB 102,69,15,91,204 ; cvtps2dq %xmm12,%xmm9 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,88,217 ; addps %xmm9,%xmm11 DB 68,15,84,194 ; andps %xmm2,%xmm8 DB 65,15,85,211 ; andnps %xmm11,%xmm2 DB 65,15,86,208 ; orps %xmm8,%xmm2 DB 65,15,95,210 ; maxps %xmm10,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,93,208 ; minps %xmm8,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_parametric_a_sse2 _sk_parametric_a_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,64,12 ; movss 0xc(%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 243,68,15,16,80,4 ; movss 0x4(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,211 ; mulps %xmm3,%xmm10 DB 65,15,194,217,2 ; cmpleps %xmm9,%xmm3 DB 243,68,15,16,72,24 ; movss 0x18(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,193 ; addps %xmm9,%xmm8 DB 243,68,15,16,24 ; movss (%rax),%xmm11 DB 243,68,15,16,72,8 ; movss 0x8(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,88,209 ; addps %xmm9,%xmm10 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,91,202 ; cvtdq2ps %xmm10,%xmm9 DB 68,15,89,13,227,34,0,0 ; mulps 0x22e3(%rip),%xmm9 # 4650 <_sk_callback_sse2+0x33b> DB 68,15,84,21,235,34,0,0 ; andps 0x22eb(%rip),%xmm10 # 4660 <_sk_callback_sse2+0x34b> DB 68,15,86,21,243,34,0,0 ; orps 0x22f3(%rip),%xmm10 # 4670 <_sk_callback_sse2+0x35b> DB 68,15,88,13,251,34,0,0 ; addps 0x22fb(%rip),%xmm9 # 4680 <_sk_callback_sse2+0x36b> DB 68,15,40,37,3,35,0,0 ; movaps 0x2303(%rip),%xmm12 # 4690 <_sk_callback_sse2+0x37b> DB 69,15,89,226 ; mulps %xmm10,%xmm12 DB 69,15,92,204 ; subps %xmm12,%xmm9 DB 68,15,88,21,3,35,0,0 ; addps 0x2303(%rip),%xmm10 # 46a0 <_sk_callback_sse2+0x38b> DB 68,15,40,37,11,35,0,0 ; movaps 0x230b(%rip),%xmm12 # 46b0 <_sk_callback_sse2+0x39b> DB 69,15,94,226 ; divps %xmm10,%xmm12 DB 69,15,92,204 ; subps %xmm12,%xmm9 DB 69,15,89,203 ; mulps %xmm11,%xmm9 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10 DB 69,15,91,218 ; cvtdq2ps %xmm10,%xmm11 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 69,15,194,227,1 ; cmpltps %xmm11,%xmm12 DB 68,15,84,37,245,34,0,0 ; andps 0x22f5(%rip),%xmm12 # 46c0 <_sk_callback_sse2+0x3ab> DB 69,15,87,210 ; xorps %xmm10,%xmm10 DB 69,15,92,220 ; subps %xmm12,%xmm11 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 69,15,92,227 ; subps %xmm11,%xmm12 DB 68,15,88,13,237,34,0,0 ; addps 0x22ed(%rip),%xmm9 # 46d0 <_sk_callback_sse2+0x3bb> DB 68,15,40,29,245,34,0,0 ; movaps 0x22f5(%rip),%xmm11 # 46e0 <_sk_callback_sse2+0x3cb> DB 69,15,89,220 ; mulps %xmm12,%xmm11 DB 69,15,92,203 ; subps %xmm11,%xmm9 DB 68,15,40,29,245,34,0,0 ; movaps 0x22f5(%rip),%xmm11 # 46f0 <_sk_callback_sse2+0x3db> DB 69,15,92,220 ; subps %xmm12,%xmm11 DB 68,15,40,37,249,34,0,0 ; movaps 0x22f9(%rip),%xmm12 # 4700 <_sk_callback_sse2+0x3eb> DB 69,15,94,227 ; divps %xmm11,%xmm12 DB 69,15,88,225 ; addps %xmm9,%xmm12 DB 68,15,89,37,249,34,0,0 ; mulps 0x22f9(%rip),%xmm12 # 4710 <_sk_callback_sse2+0x3fb> DB 102,69,15,91,204 ; cvtps2dq %xmm12,%xmm9 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,88,217 ; addps %xmm9,%xmm11 DB 68,15,84,195 ; andps %xmm3,%xmm8 DB 65,15,85,219 ; andnps %xmm11,%xmm3 DB 65,15,86,216 ; orps %xmm8,%xmm3 DB 65,15,95,218 ; maxps %xmm10,%xmm3 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,93,216 ; minps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_lab_to_xyz_sse2 _sk_lab_to_xyz_sse2 LABEL PROC DB 184,0,0,200,66 ; mov $0x42c80000,%eax DB 102,68,15,110,200 ; movd %eax,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 184,0,0,127,67 ; mov $0x437f0000,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 184,0,0,0,67 ; mov $0x43000000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,92,200 ; subps %xmm0,%xmm1 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 68,15,92,192 ; subps %xmm0,%xmm8 DB 184,0,0,128,65 ; mov $0x41800000,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,88,209 ; addps %xmm9,%xmm2 DB 184,203,61,13,60 ; mov $0x3c0d3dcb,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,194 ; mulps %xmm2,%xmm0 DB 184,111,18,3,59 ; mov $0x3b03126f,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,89,209 ; mulps %xmm1,%xmm2 DB 15,88,208 ; addps %xmm0,%xmm2 DB 184,10,215,163,59 ; mov $0x3ba3d70a,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 68,15,40,208 ; movaps %xmm0,%xmm10 DB 68,15,92,209 ; subps %xmm1,%xmm10 DB 15,40,202 ; movaps %xmm2,%xmm1 DB 15,89,201 ; mulps %xmm1,%xmm1 DB 15,89,202 ; mulps %xmm2,%xmm1 DB 184,194,24,17,60 ; mov $0x3c1118c2,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,194,201,1 ; cmpltps %xmm1,%xmm9 DB 184,203,61,13,62 ; mov $0x3e0d3dcb,%eax DB 102,68,15,110,216 ; movd %eax,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 65,15,92,211 ; subps %xmm11,%xmm2 DB 184,80,128,3,62 ; mov $0x3e038050,%eax DB 102,68,15,110,224 ; movd %eax,%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 65,15,89,212 ; mulps %xmm12,%xmm2 DB 65,15,84,201 ; andps %xmm9,%xmm1 DB 68,15,85,202 ; andnps %xmm2,%xmm9 DB 68,15,86,201 ; orps %xmm1,%xmm9 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 15,89,210 ; mulps %xmm2,%xmm2 DB 15,89,208 ; mulps %xmm0,%xmm2 DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 15,194,202,1 ; cmpltps %xmm2,%xmm1 DB 65,15,92,195 ; subps %xmm11,%xmm0 DB 65,15,89,196 ; mulps %xmm12,%xmm0 DB 15,84,209 ; andps %xmm1,%xmm2 DB 15,85,200 ; andnps %xmm0,%xmm1 DB 15,86,202 ; orps %xmm2,%xmm1 DB 65,15,40,194 ; movaps %xmm10,%xmm0 DB 15,89,192 ; mulps %xmm0,%xmm0 DB 65,15,89,194 ; mulps %xmm10,%xmm0 DB 68,15,194,192,1 ; cmpltps %xmm0,%xmm8 DB 69,15,92,211 ; subps %xmm11,%xmm10 DB 69,15,89,212 ; mulps %xmm12,%xmm10 DB 65,15,84,192 ; andps %xmm8,%xmm0 DB 69,15,85,194 ; andnps %xmm10,%xmm8 DB 68,15,86,192 ; orps %xmm0,%xmm8 DB 184,31,215,118,63 ; mov $0x3f76d71f,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 65,15,89,193 ; mulps %xmm9,%xmm0 DB 184,246,64,83,63 ; mov $0x3f5340f6,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_a8_sse2 _sk_load_a8_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,15,110,4,56 ; movd (%rax,%rdi,1),%xmm0 DB 102,15,239,201 ; pxor %xmm1,%xmm1 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,89,216 ; mulps %xmm0,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,87,192 ; xorps %xmm0,%xmm0 DB 102,15,239,201 ; pxor %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_a8_sse2 _sk_gather_a8_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,193 ; paddd %xmm1,%xmm0 DB 102,72,15,126,192 ; movq %xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0 DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx DB 193,225,8 ; shl $0x8,%ecx DB 68,9,209 ; or %r10d,%ecx DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d DB 65,15,182,4,1 ; movzbl (%r9,%rax,1),%eax DB 193,224,8 ; shl $0x8,%eax DB 68,9,192 ; or %r8d,%eax DB 102,15,196,192,0 ; pinsrw $0x0,%eax,%xmm0 DB 102,15,196,193,1 ; pinsrw $0x1,%ecx,%xmm0 DB 102,15,239,201 ; pxor %xmm1,%xmm1 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,89,216 ; mulps %xmm0,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,87,192 ; xorps %xmm0,%xmm0 DB 102,15,239,201 ; pxor %xmm1,%xmm1 DB 102,15,239,210 ; pxor %xmm2,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_store_a8_sse2 _sk_store_a8_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,0,127,67 ; mov $0x437f0000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8 DB 102,65,15,114,224,16 ; psrad $0x10,%xmm8 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8 DB 102,69,15,103,192 ; packuswb %xmm8,%xmm8 DB 102,68,15,126,4,56 ; movd %xmm8,(%rax,%rdi,1) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_g8_sse2 _sk_load_g8_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,15,110,4,56 ; movd (%rax,%rdi,1),%xmm0 DB 102,15,239,201 ; pxor %xmm1,%xmm1 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,200 ; movaps %xmm0,%xmm1 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_g8_sse2 _sk_gather_g8_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,193 ; paddd %xmm1,%xmm0 DB 102,72,15,126,192 ; movq %xmm0,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0 DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 71,15,182,20,17 ; movzbl (%r9,%r10,1),%r10d DB 65,15,182,12,9 ; movzbl (%r9,%rcx,1),%ecx DB 193,225,8 ; shl $0x8,%ecx DB 68,9,209 ; or %r10d,%ecx DB 71,15,182,4,1 ; movzbl (%r9,%r8,1),%r8d DB 65,15,182,4,1 ; movzbl (%r9,%rax,1),%eax DB 193,224,8 ; shl $0x8,%eax DB 68,9,192 ; or %r8d,%eax DB 102,15,196,192,0 ; pinsrw $0x0,%eax,%xmm0 DB 102,15,196,193,1 ; pinsrw $0x1,%ecx,%xmm0 DB 102,15,239,201 ; pxor %xmm1,%xmm1 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,40,200 ; movaps %xmm0,%xmm1 DB 15,40,208 ; movaps %xmm0,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_i8_sse2 _sk_gather_i8_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 73,137,192 ; mov %rax,%r8 DB 77,133,192 ; test %r8,%r8 DB 116,5 ; je 27bd <_sk_gather_i8_sse2+0xf> DB 76,137,192 ; mov %r8,%rax DB 235,2 ; jmp 27bf <_sk_gather_i8_sse2+0x11> DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,16 ; mov (%rax),%r10 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,193 ; paddd %xmm1,%xmm0 DB 102,72,15,126,192 ; movq %xmm0,%rax DB 65,137,193 ; mov %eax,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 102,15,112,192,78 ; pshufd $0x4e,%xmm0,%xmm0 DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,203 ; mov %ecx,%r11d DB 72,193,233,32 ; shr $0x20,%rcx DB 71,15,182,28,26 ; movzbl (%r10,%r11,1),%r11d DB 65,15,182,12,10 ; movzbl (%r10,%rcx,1),%ecx DB 193,225,8 ; shl $0x8,%ecx DB 68,9,217 ; or %r11d,%ecx DB 71,15,182,12,10 ; movzbl (%r10,%r9,1),%r9d DB 65,15,182,4,2 ; movzbl (%r10,%rax,1),%eax DB 193,224,8 ; shl $0x8,%eax DB 68,9,200 ; or %r9d,%eax DB 102,15,196,192,0 ; pinsrw $0x0,%eax,%xmm0 DB 102,15,196,193,1 ; pinsrw $0x1,%ecx,%xmm0 DB 102,15,239,201 ; pxor %xmm1,%xmm1 DB 102,15,96,193 ; punpcklbw %xmm1,%xmm0 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1 DB 102,72,15,126,200 ; movq %xmm1,%rax DB 68,15,182,200 ; movzbl %al,%r9d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 77,139,64,8 ; mov 0x8(%r8),%r8 DB 68,15,182,209 ; movzbl %cl,%r10d DB 72,193,233,30 ; shr $0x1e,%rcx DB 102,65,15,110,4,8 ; movd (%r8,%rcx,1),%xmm0 DB 102,65,15,110,12,128 ; movd (%r8,%rax,4),%xmm1 DB 102,15,98,193 ; punpckldq %xmm1,%xmm0 DB 102,67,15,110,28,144 ; movd (%r8,%r10,4),%xmm3 DB 102,67,15,110,12,136 ; movd (%r8,%r9,4),%xmm1 DB 102,15,98,217 ; punpckldq %xmm1,%xmm3 DB 102,15,98,216 ; punpckldq %xmm0,%xmm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,114,209,8 ; psrld $0x8,%xmm1 DB 102,15,219,200 ; pand %xmm0,%xmm1 DB 102,15,111,211 ; movdqa %xmm3,%xmm2 DB 102,15,114,210,16 ; psrld $0x10,%xmm2 DB 102,15,219,208 ; pand %xmm0,%xmm2 DB 102,15,219,195 ; pand %xmm3,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,114,211,24 ; psrld $0x18,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_565_sse2 _sk_load_565_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,15,126,20,120 ; movq (%rax,%rdi,2),%xmm2 DB 102,15,239,192 ; pxor %xmm0,%xmm0 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,219,194 ; pand %xmm2,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 102,15,219,202 ; pand %xmm2,%xmm1 DB 15,91,217 ; cvtdq2ps %xmm1,%xmm3 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,203 ; mulps %xmm3,%xmm1 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,15,219,218 ; pand %xmm2,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,89,211 ; mulps %xmm3,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_565_sse2 _sk_gather_565_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,193 ; paddd %xmm1,%xmm0 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1 DB 102,72,15,126,200 ; movq %xmm1,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,67,15,196,20,81,0 ; pinsrw $0x0,(%r9,%r10,2),%xmm2 DB 102,65,15,196,20,73,1 ; pinsrw $0x1,(%r9,%rcx,2),%xmm2 DB 67,15,183,12,65 ; movzwl (%r9,%r8,2),%ecx DB 102,15,196,209,2 ; pinsrw $0x2,%ecx,%xmm2 DB 65,15,183,4,65 ; movzwl (%r9,%rax,2),%eax DB 102,15,196,208,3 ; pinsrw $0x3,%eax,%xmm2 DB 102,15,239,192 ; pxor %xmm0,%xmm0 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2 DB 184,0,248,0,0 ; mov $0xf800,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,219,194 ; pand %xmm2,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,8,33,132,55 ; mov $0x37842108,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,224,7,0,0 ; mov $0x7e0,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 102,15,219,202 ; pand %xmm2,%xmm1 DB 15,91,217 ; cvtdq2ps %xmm1,%xmm3 DB 184,33,8,2,58 ; mov $0x3a020821,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,203 ; mulps %xmm3,%xmm1 DB 184,31,0,0,0 ; mov $0x1f,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,15,219,218 ; pand %xmm2,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 184,8,33,4,61 ; mov $0x3d042108,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 15,89,211 ; mulps %xmm3,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_565_sse2 _sk_store_565_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,0,248,65 ; mov $0x41f80000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,11 ; pslld $0xb,%xmm9 DB 185,0,0,124,66 ; mov $0x427c0000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10 DB 102,65,15,114,242,5 ; pslld $0x5,%xmm10 DB 102,69,15,235,209 ; por %xmm9,%xmm10 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,69,15,86,194 ; orpd %xmm10,%xmm8 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8 DB 102,65,15,114,224,16 ; psrad $0x10,%xmm8 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8 DB 102,68,15,214,4,120 ; movq %xmm8,(%rax,%rdi,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_4444_sse2 _sk_load_4444_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,68,15,126,12,120 ; movq (%rax,%rdi,2),%xmm9 DB 102,15,239,192 ; pxor %xmm0,%xmm0 DB 102,68,15,97,200 ; punpcklwd %xmm0,%xmm9 DB 184,0,240,0,0 ; mov $0xf000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,137,136,136,55 ; mov $0x37888889,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,0,15,0,0 ; mov $0xf00,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 102,65,15,219,201 ; pand %xmm9,%xmm1 DB 15,91,209 ; cvtdq2ps %xmm1,%xmm2 DB 184,137,136,136,57 ; mov $0x39888889,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,202 ; mulps %xmm2,%xmm1 DB 184,240,0,0,0 ; mov $0xf0,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,65,15,219,209 ; pand %xmm9,%xmm2 DB 68,15,91,194 ; cvtdq2ps %xmm2,%xmm8 DB 184,137,136,136,59 ; mov $0x3b888889,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 184,15,0,0,0 ; mov $0xf,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,217 ; pand %xmm9,%xmm3 DB 68,15,91,195 ; cvtdq2ps %xmm3,%xmm8 DB 184,137,136,136,61 ; mov $0x3d888889,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_4444_sse2 _sk_gather_4444_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,193 ; paddd %xmm1,%xmm0 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1 DB 102,72,15,126,200 ; movq %xmm1,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,71,15,196,12,81,0 ; pinsrw $0x0,(%r9,%r10,2),%xmm9 DB 102,69,15,196,12,73,1 ; pinsrw $0x1,(%r9,%rcx,2),%xmm9 DB 67,15,183,12,65 ; movzwl (%r9,%r8,2),%ecx DB 102,68,15,196,201,2 ; pinsrw $0x2,%ecx,%xmm9 DB 65,15,183,4,65 ; movzwl (%r9,%rax,2),%eax DB 102,68,15,196,200,3 ; pinsrw $0x3,%eax,%xmm9 DB 102,15,239,192 ; pxor %xmm0,%xmm0 DB 102,68,15,97,200 ; punpcklwd %xmm0,%xmm9 DB 184,0,240,0,0 ; mov $0xf000,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 15,91,200 ; cvtdq2ps %xmm0,%xmm1 DB 184,137,136,136,55 ; mov $0x37888889,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 184,0,15,0,0 ; mov $0xf00,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 102,15,112,201,0 ; pshufd $0x0,%xmm1,%xmm1 DB 102,65,15,219,201 ; pand %xmm9,%xmm1 DB 15,91,209 ; cvtdq2ps %xmm1,%xmm2 DB 184,137,136,136,57 ; mov $0x39888889,%eax DB 102,15,110,200 ; movd %eax,%xmm1 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 15,89,202 ; mulps %xmm2,%xmm1 DB 184,240,0,0,0 ; mov $0xf0,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,65,15,219,209 ; pand %xmm9,%xmm2 DB 68,15,91,194 ; cvtdq2ps %xmm2,%xmm8 DB 184,137,136,136,59 ; mov $0x3b888889,%eax DB 102,15,110,208 ; movd %eax,%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 184,15,0,0,0 ; mov $0xf,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 102,15,112,219,0 ; pshufd $0x0,%xmm3,%xmm3 DB 102,65,15,219,217 ; pand %xmm9,%xmm3 DB 68,15,91,195 ; cvtdq2ps %xmm3,%xmm8 DB 184,137,136,136,61 ; mov $0x3d888889,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_4444_sse2 _sk_store_4444_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,0,112,65 ; mov $0x41700000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,12 ; pslld $0xc,%xmm9 DB 69,15,40,208 ; movaps %xmm8,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10 DB 102,65,15,114,242,8 ; pslld $0x8,%xmm10 DB 102,69,15,235,209 ; por %xmm9,%xmm10 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,4 ; pslld $0x4,%xmm9 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,69,15,86,193 ; orpd %xmm9,%xmm8 DB 102,69,15,86,194 ; orpd %xmm10,%xmm8 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8 DB 102,65,15,114,224,16 ; psrad $0x10,%xmm8 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8 DB 102,68,15,214,4,120 ; movq %xmm8,(%rax,%rdi,2) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_8888_sse2 _sk_load_8888_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,15,111,28,184 ; movdqu (%rax,%rdi,4),%xmm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,114,209,8 ; psrld $0x8,%xmm1 DB 102,15,219,200 ; pand %xmm0,%xmm1 DB 102,15,111,211 ; movdqa %xmm3,%xmm2 DB 102,15,114,210,16 ; psrld $0x10,%xmm2 DB 102,15,219,208 ; pand %xmm0,%xmm2 DB 102,15,219,195 ; pand %xmm3,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,114,211,24 ; psrld $0x18,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_8888_sse2 _sk_gather_8888_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,193 ; paddd %xmm1,%xmm0 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1 DB 102,72,15,126,200 ; movq %xmm1,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 102,65,15,110,4,137 ; movd (%r9,%rcx,4),%xmm0 DB 102,65,15,110,12,129 ; movd (%r9,%rax,4),%xmm1 DB 102,15,98,193 ; punpckldq %xmm1,%xmm0 DB 102,67,15,110,28,145 ; movd (%r9,%r10,4),%xmm3 DB 102,67,15,110,12,129 ; movd (%r9,%r8,4),%xmm1 DB 102,15,98,217 ; punpckldq %xmm1,%xmm3 DB 102,15,98,216 ; punpckldq %xmm0,%xmm3 DB 184,255,0,0,0 ; mov $0xff,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 102,15,112,192,0 ; pshufd $0x0,%xmm0,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,114,209,8 ; psrld $0x8,%xmm1 DB 102,15,219,200 ; pand %xmm0,%xmm1 DB 102,15,111,211 ; movdqa %xmm3,%xmm2 DB 102,15,114,210,16 ; psrld $0x10,%xmm2 DB 102,15,219,208 ; pand %xmm0,%xmm2 DB 102,15,219,195 ; pand %xmm3,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 184,129,128,128,59 ; mov $0x3b808081,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,91,201 ; cvtdq2ps %xmm1,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,15,114,211,24 ; psrld $0x18,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_8888_sse2 _sk_store_8888_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,0,127,67 ; mov $0x437f0000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,200 ; mulps %xmm0,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 69,15,40,208 ; movaps %xmm8,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10 DB 102,65,15,114,242,8 ; pslld $0x8,%xmm10 DB 102,69,15,235,209 ; por %xmm9,%xmm10 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,89,202 ; mulps %xmm2,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9 DB 68,15,89,195 ; mulps %xmm3,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,65,15,114,240,24 ; pslld $0x18,%xmm8 DB 102,69,15,235,193 ; por %xmm9,%xmm8 DB 102,69,15,235,194 ; por %xmm10,%xmm8 DB 243,68,15,127,4,184 ; movdqu %xmm8,(%rax,%rdi,4) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_f16_sse2 _sk_load_f16_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,15,111,4,248 ; movdqu (%rax,%rdi,8),%xmm0 DB 243,15,111,76,248,16 ; movdqu 0x10(%rax,%rdi,8),%xmm1 DB 102,68,15,111,192 ; movdqa %xmm0,%xmm8 DB 102,68,15,97,193 ; punpcklwd %xmm1,%xmm8 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0 DB 102,69,15,111,240 ; movdqa %xmm8,%xmm14 DB 102,68,15,97,240 ; punpcklwd %xmm0,%xmm14 DB 102,68,15,105,192 ; punpckhwd %xmm0,%xmm8 DB 102,69,15,239,210 ; pxor %xmm10,%xmm10 DB 102,65,15,111,206 ; movdqa %xmm14,%xmm1 DB 102,65,15,97,202 ; punpcklwd %xmm10,%xmm1 DB 102,68,15,111,13,232,23,0,0 ; movdqa 0x17e8(%rip),%xmm9 # 4720 <_sk_callback_sse2+0x40b> DB 102,15,111,193 ; movdqa %xmm1,%xmm0 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 102,15,239,200 ; pxor %xmm0,%xmm1 DB 102,15,114,240,16 ; pslld $0x10,%xmm0 DB 102,68,15,111,233 ; movdqa %xmm1,%xmm13 DB 102,65,15,114,245,13 ; pslld $0xd,%xmm13 DB 102,68,15,235,232 ; por %xmm0,%xmm13 DB 102,68,15,111,29,205,23,0,0 ; movdqa 0x17cd(%rip),%xmm11 # 4730 <_sk_callback_sse2+0x41b> DB 102,69,15,254,235 ; paddd %xmm11,%xmm13 DB 102,68,15,111,37,207,23,0,0 ; movdqa 0x17cf(%rip),%xmm12 # 4740 <_sk_callback_sse2+0x42b> DB 102,65,15,239,204 ; pxor %xmm12,%xmm1 DB 102,15,111,29,210,23,0,0 ; movdqa 0x17d2(%rip),%xmm3 # 4750 <_sk_callback_sse2+0x43b> DB 102,15,111,195 ; movdqa %xmm3,%xmm0 DB 102,15,102,193 ; pcmpgtd %xmm1,%xmm0 DB 102,65,15,223,197 ; pandn %xmm13,%xmm0 DB 102,65,15,115,222,8 ; psrldq $0x8,%xmm14 DB 102,69,15,97,242 ; punpcklwd %xmm10,%xmm14 DB 102,65,15,111,206 ; movdqa %xmm14,%xmm1 DB 102,65,15,219,201 ; pand %xmm9,%xmm1 DB 102,68,15,239,241 ; pxor %xmm1,%xmm14 DB 102,15,114,241,16 ; pslld $0x10,%xmm1 DB 102,65,15,111,214 ; movdqa %xmm14,%xmm2 DB 102,15,114,242,13 ; pslld $0xd,%xmm2 DB 102,15,235,209 ; por %xmm1,%xmm2 DB 102,65,15,254,211 ; paddd %xmm11,%xmm2 DB 102,69,15,239,244 ; pxor %xmm12,%xmm14 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,65,15,102,206 ; pcmpgtd %xmm14,%xmm1 DB 102,15,223,202 ; pandn %xmm2,%xmm1 DB 102,69,15,111,232 ; movdqa %xmm8,%xmm13 DB 102,69,15,97,234 ; punpcklwd %xmm10,%xmm13 DB 102,65,15,111,213 ; movdqa %xmm13,%xmm2 DB 102,65,15,219,209 ; pand %xmm9,%xmm2 DB 102,68,15,239,234 ; pxor %xmm2,%xmm13 DB 102,15,114,242,16 ; pslld $0x10,%xmm2 DB 102,69,15,111,245 ; movdqa %xmm13,%xmm14 DB 102,65,15,114,246,13 ; pslld $0xd,%xmm14 DB 102,68,15,235,242 ; por %xmm2,%xmm14 DB 102,69,15,254,243 ; paddd %xmm11,%xmm14 DB 102,69,15,239,236 ; pxor %xmm12,%xmm13 DB 102,15,111,211 ; movdqa %xmm3,%xmm2 DB 102,65,15,102,213 ; pcmpgtd %xmm13,%xmm2 DB 102,65,15,223,214 ; pandn %xmm14,%xmm2 DB 102,65,15,115,216,8 ; psrldq $0x8,%xmm8 DB 102,69,15,97,194 ; punpcklwd %xmm10,%xmm8 DB 102,69,15,219,200 ; pand %xmm8,%xmm9 DB 102,69,15,239,193 ; pxor %xmm9,%xmm8 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10 DB 102,65,15,114,242,13 ; pslld $0xd,%xmm10 DB 102,69,15,235,209 ; por %xmm9,%xmm10 DB 102,69,15,254,211 ; paddd %xmm11,%xmm10 DB 102,69,15,239,196 ; pxor %xmm12,%xmm8 DB 102,65,15,102,216 ; pcmpgtd %xmm8,%xmm3 DB 102,65,15,223,218 ; pandn %xmm10,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_gather_f16_sse2 _sk_gather_f16_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 76,139,8 ; mov (%rax),%r9 DB 243,15,91,201 ; cvttps2dq %xmm1,%xmm1 DB 102,15,110,80,16 ; movd 0x10(%rax),%xmm2 DB 102,15,112,210,0 ; pshufd $0x0,%xmm2,%xmm2 DB 102,15,112,217,245 ; pshufd $0xf5,%xmm1,%xmm3 DB 102,15,244,218 ; pmuludq %xmm2,%xmm3 DB 102,15,112,219,232 ; pshufd $0xe8,%xmm3,%xmm3 DB 102,15,244,209 ; pmuludq %xmm1,%xmm2 DB 102,15,112,202,232 ; pshufd $0xe8,%xmm2,%xmm1 DB 102,15,98,203 ; punpckldq %xmm3,%xmm1 DB 243,15,91,192 ; cvttps2dq %xmm0,%xmm0 DB 102,15,254,193 ; paddd %xmm1,%xmm0 DB 102,15,112,200,78 ; pshufd $0x4e,%xmm0,%xmm1 DB 102,72,15,126,200 ; movq %xmm1,%rax DB 65,137,192 ; mov %eax,%r8d DB 72,193,232,32 ; shr $0x20,%rax DB 102,72,15,126,193 ; movq %xmm0,%rcx DB 65,137,202 ; mov %ecx,%r10d DB 72,193,233,32 ; shr $0x20,%rcx DB 243,65,15,126,4,201 ; movq (%r9,%rcx,8),%xmm0 DB 243,67,15,126,12,209 ; movq (%r9,%r10,8),%xmm1 DB 102,15,108,200 ; punpcklqdq %xmm0,%xmm1 DB 243,65,15,126,4,193 ; movq (%r9,%rax,8),%xmm0 DB 243,67,15,126,20,193 ; movq (%r9,%r8,8),%xmm2 DB 102,15,108,208 ; punpcklqdq %xmm0,%xmm2 DB 102,68,15,111,193 ; movdqa %xmm1,%xmm8 DB 102,68,15,97,194 ; punpcklwd %xmm2,%xmm8 DB 102,15,105,202 ; punpckhwd %xmm2,%xmm1 DB 102,69,15,111,240 ; movdqa %xmm8,%xmm14 DB 102,68,15,97,241 ; punpcklwd %xmm1,%xmm14 DB 102,68,15,105,193 ; punpckhwd %xmm1,%xmm8 DB 102,69,15,239,210 ; pxor %xmm10,%xmm10 DB 102,65,15,111,206 ; movdqa %xmm14,%xmm1 DB 102,65,15,97,202 ; punpcklwd %xmm10,%xmm1 DB 102,68,15,111,13,96,22,0,0 ; movdqa 0x1660(%rip),%xmm9 # 4760 <_sk_callback_sse2+0x44b> DB 102,15,111,193 ; movdqa %xmm1,%xmm0 DB 102,65,15,219,193 ; pand %xmm9,%xmm0 DB 102,15,239,200 ; pxor %xmm0,%xmm1 DB 102,15,114,240,16 ; pslld $0x10,%xmm0 DB 102,68,15,111,233 ; movdqa %xmm1,%xmm13 DB 102,65,15,114,245,13 ; pslld $0xd,%xmm13 DB 102,68,15,235,232 ; por %xmm0,%xmm13 DB 102,68,15,111,29,69,22,0,0 ; movdqa 0x1645(%rip),%xmm11 # 4770 <_sk_callback_sse2+0x45b> DB 102,69,15,254,235 ; paddd %xmm11,%xmm13 DB 102,68,15,111,37,71,22,0,0 ; movdqa 0x1647(%rip),%xmm12 # 4780 <_sk_callback_sse2+0x46b> DB 102,65,15,239,204 ; pxor %xmm12,%xmm1 DB 102,15,111,29,74,22,0,0 ; movdqa 0x164a(%rip),%xmm3 # 4790 <_sk_callback_sse2+0x47b> DB 102,15,111,195 ; movdqa %xmm3,%xmm0 DB 102,15,102,193 ; pcmpgtd %xmm1,%xmm0 DB 102,65,15,223,197 ; pandn %xmm13,%xmm0 DB 102,65,15,115,222,8 ; psrldq $0x8,%xmm14 DB 102,69,15,97,242 ; punpcklwd %xmm10,%xmm14 DB 102,65,15,111,206 ; movdqa %xmm14,%xmm1 DB 102,65,15,219,201 ; pand %xmm9,%xmm1 DB 102,68,15,239,241 ; pxor %xmm1,%xmm14 DB 102,15,114,241,16 ; pslld $0x10,%xmm1 DB 102,65,15,111,214 ; movdqa %xmm14,%xmm2 DB 102,15,114,242,13 ; pslld $0xd,%xmm2 DB 102,15,235,209 ; por %xmm1,%xmm2 DB 102,65,15,254,211 ; paddd %xmm11,%xmm2 DB 102,69,15,239,244 ; pxor %xmm12,%xmm14 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,65,15,102,206 ; pcmpgtd %xmm14,%xmm1 DB 102,15,223,202 ; pandn %xmm2,%xmm1 DB 102,69,15,111,232 ; movdqa %xmm8,%xmm13 DB 102,69,15,97,234 ; punpcklwd %xmm10,%xmm13 DB 102,65,15,111,213 ; movdqa %xmm13,%xmm2 DB 102,65,15,219,209 ; pand %xmm9,%xmm2 DB 102,68,15,239,234 ; pxor %xmm2,%xmm13 DB 102,15,114,242,16 ; pslld $0x10,%xmm2 DB 102,69,15,111,245 ; movdqa %xmm13,%xmm14 DB 102,65,15,114,246,13 ; pslld $0xd,%xmm14 DB 102,68,15,235,242 ; por %xmm2,%xmm14 DB 102,69,15,254,243 ; paddd %xmm11,%xmm14 DB 102,69,15,239,236 ; pxor %xmm12,%xmm13 DB 102,15,111,211 ; movdqa %xmm3,%xmm2 DB 102,65,15,102,213 ; pcmpgtd %xmm13,%xmm2 DB 102,65,15,223,214 ; pandn %xmm14,%xmm2 DB 102,65,15,115,216,8 ; psrldq $0x8,%xmm8 DB 102,69,15,97,194 ; punpcklwd %xmm10,%xmm8 DB 102,69,15,219,200 ; pand %xmm8,%xmm9 DB 102,69,15,239,193 ; pxor %xmm9,%xmm8 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10 DB 102,65,15,114,242,13 ; pslld $0xd,%xmm10 DB 102,69,15,235,209 ; por %xmm9,%xmm10 DB 102,69,15,254,211 ; paddd %xmm11,%xmm10 DB 102,69,15,239,196 ; pxor %xmm12,%xmm8 DB 102,65,15,102,216 ; pcmpgtd %xmm8,%xmm3 DB 102,65,15,223,218 ; pandn %xmm10,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_f16_sse2 _sk_store_f16_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 102,68,15,111,21,114,21,0,0 ; movdqa 0x1572(%rip),%xmm10 # 47a0 <_sk_callback_sse2+0x48b> DB 102,68,15,111,224 ; movdqa %xmm0,%xmm12 DB 102,68,15,111,232 ; movdqa %xmm0,%xmm13 DB 102,69,15,219,234 ; pand %xmm10,%xmm13 DB 102,69,15,239,229 ; pxor %xmm13,%xmm12 DB 102,68,15,111,13,101,21,0,0 ; movdqa 0x1565(%rip),%xmm9 # 47b0 <_sk_callback_sse2+0x49b> DB 102,65,15,114,213,16 ; psrld $0x10,%xmm13 DB 102,69,15,111,193 ; movdqa %xmm9,%xmm8 DB 102,69,15,102,196 ; pcmpgtd %xmm12,%xmm8 DB 102,65,15,114,212,13 ; psrld $0xd,%xmm12 DB 102,68,15,111,29,86,21,0,0 ; movdqa 0x1556(%rip),%xmm11 # 47c0 <_sk_callback_sse2+0x4ab> DB 102,69,15,235,235 ; por %xmm11,%xmm13 DB 102,69,15,254,236 ; paddd %xmm12,%xmm13 DB 102,65,15,114,245,16 ; pslld $0x10,%xmm13 DB 102,65,15,114,229,16 ; psrad $0x10,%xmm13 DB 102,69,15,223,197 ; pandn %xmm13,%xmm8 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8 DB 102,68,15,111,233 ; movdqa %xmm1,%xmm13 DB 102,68,15,111,241 ; movdqa %xmm1,%xmm14 DB 102,69,15,219,242 ; pand %xmm10,%xmm14 DB 102,69,15,239,238 ; pxor %xmm14,%xmm13 DB 102,65,15,114,214,16 ; psrld $0x10,%xmm14 DB 102,69,15,111,225 ; movdqa %xmm9,%xmm12 DB 102,69,15,102,229 ; pcmpgtd %xmm13,%xmm12 DB 102,65,15,114,213,13 ; psrld $0xd,%xmm13 DB 102,69,15,235,243 ; por %xmm11,%xmm14 DB 102,69,15,254,245 ; paddd %xmm13,%xmm14 DB 102,65,15,114,246,16 ; pslld $0x10,%xmm14 DB 102,65,15,114,230,16 ; psrad $0x10,%xmm14 DB 102,69,15,223,230 ; pandn %xmm14,%xmm12 DB 102,69,15,107,228 ; packssdw %xmm12,%xmm12 DB 102,68,15,111,242 ; movdqa %xmm2,%xmm14 DB 102,68,15,111,250 ; movdqa %xmm2,%xmm15 DB 102,69,15,219,250 ; pand %xmm10,%xmm15 DB 102,69,15,239,247 ; pxor %xmm15,%xmm14 DB 102,65,15,114,215,16 ; psrld $0x10,%xmm15 DB 102,69,15,111,233 ; movdqa %xmm9,%xmm13 DB 102,69,15,102,238 ; pcmpgtd %xmm14,%xmm13 DB 102,65,15,114,214,13 ; psrld $0xd,%xmm14 DB 102,69,15,235,251 ; por %xmm11,%xmm15 DB 102,69,15,254,254 ; paddd %xmm14,%xmm15 DB 102,65,15,114,247,16 ; pslld $0x10,%xmm15 DB 102,65,15,114,231,16 ; psrad $0x10,%xmm15 DB 102,69,15,223,239 ; pandn %xmm15,%xmm13 DB 102,69,15,107,237 ; packssdw %xmm13,%xmm13 DB 102,68,15,219,211 ; pand %xmm3,%xmm10 DB 102,68,15,111,243 ; movdqa %xmm3,%xmm14 DB 102,69,15,239,242 ; pxor %xmm10,%xmm14 DB 102,65,15,114,210,16 ; psrld $0x10,%xmm10 DB 102,69,15,102,206 ; pcmpgtd %xmm14,%xmm9 DB 102,65,15,114,214,13 ; psrld $0xd,%xmm14 DB 102,69,15,235,211 ; por %xmm11,%xmm10 DB 102,69,15,254,214 ; paddd %xmm14,%xmm10 DB 102,65,15,114,242,16 ; pslld $0x10,%xmm10 DB 102,65,15,114,226,16 ; psrad $0x10,%xmm10 DB 102,69,15,223,202 ; pandn %xmm10,%xmm9 DB 102,69,15,107,201 ; packssdw %xmm9,%xmm9 DB 102,69,15,97,196 ; punpcklwd %xmm12,%xmm8 DB 102,69,15,97,233 ; punpcklwd %xmm9,%xmm13 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9 DB 102,69,15,98,205 ; punpckldq %xmm13,%xmm9 DB 243,68,15,127,12,248 ; movdqu %xmm9,(%rax,%rdi,8) DB 102,69,15,106,197 ; punpckhdq %xmm13,%xmm8 DB 243,68,15,127,68,248,16 ; movdqu %xmm8,0x10(%rax,%rdi,8) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_u16_be_sse2 _sk_load_u16_be_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 243,15,111,4,248 ; movdqu (%rax,%rdi,8),%xmm0 DB 243,15,111,76,248,16 ; movdqu 0x10(%rax,%rdi,8),%xmm1 DB 102,15,111,208 ; movdqa %xmm0,%xmm2 DB 102,15,97,209 ; punpcklwd %xmm1,%xmm2 DB 102,15,105,193 ; punpckhwd %xmm1,%xmm0 DB 102,15,111,202 ; movdqa %xmm2,%xmm1 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1 DB 102,15,105,208 ; punpckhwd %xmm0,%xmm2 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 102,15,111,193 ; movdqa %xmm1,%xmm0 DB 102,15,113,240,8 ; psllw $0x8,%xmm0 DB 102,15,112,217,78 ; pshufd $0x4e,%xmm1,%xmm3 DB 102,15,113,209,8 ; psrlw $0x8,%xmm1 DB 102,15,235,200 ; por %xmm0,%xmm1 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9 DB 102,65,15,97,201 ; punpcklwd %xmm9,%xmm1 DB 15,91,193 ; cvtdq2ps %xmm1,%xmm0 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,113,241,8 ; psllw $0x8,%xmm1 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3 DB 102,15,235,217 ; por %xmm1,%xmm3 DB 102,65,15,97,217 ; punpcklwd %xmm9,%xmm3 DB 15,91,203 ; cvtdq2ps %xmm3,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 102,68,15,111,210 ; movdqa %xmm2,%xmm10 DB 102,65,15,113,242,8 ; psllw $0x8,%xmm10 DB 102,15,112,218,78 ; pshufd $0x4e,%xmm2,%xmm3 DB 102,15,113,210,8 ; psrlw $0x8,%xmm2 DB 102,65,15,235,210 ; por %xmm10,%xmm2 DB 102,65,15,97,209 ; punpcklwd %xmm9,%xmm2 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 102,68,15,111,211 ; movdqa %xmm3,%xmm10 DB 102,65,15,113,242,8 ; psllw $0x8,%xmm10 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3 DB 102,65,15,235,218 ; por %xmm10,%xmm3 DB 102,65,15,97,217 ; punpcklwd %xmm9,%xmm3 DB 15,91,219 ; cvtdq2ps %xmm3,%xmm3 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_rgb_u16_be_sse2 _sk_load_rgb_u16_be_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,141,12,127 ; lea (%rdi,%rdi,2),%rcx DB 243,15,111,20,72 ; movdqu (%rax,%rcx,2),%xmm2 DB 243,15,111,68,72,8 ; movdqu 0x8(%rax,%rcx,2),%xmm0 DB 102,15,115,216,4 ; psrldq $0x4,%xmm0 DB 102,15,111,202 ; movdqa %xmm2,%xmm1 DB 102,15,115,217,6 ; psrldq $0x6,%xmm1 DB 102,15,97,208 ; punpcklwd %xmm0,%xmm2 DB 102,15,115,216,6 ; psrldq $0x6,%xmm0 DB 102,15,97,200 ; punpcklwd %xmm0,%xmm1 DB 102,15,111,194 ; movdqa %xmm2,%xmm0 DB 102,15,97,193 ; punpcklwd %xmm1,%xmm0 DB 102,15,112,216,78 ; pshufd $0x4e,%xmm0,%xmm3 DB 102,15,105,209 ; punpckhwd %xmm1,%xmm2 DB 184,128,0,128,55 ; mov $0x37800080,%eax DB 102,68,15,110,192 ; movd %eax,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 102,15,111,200 ; movdqa %xmm0,%xmm1 DB 102,15,113,241,8 ; psllw $0x8,%xmm1 DB 102,15,113,208,8 ; psrlw $0x8,%xmm0 DB 102,15,235,193 ; por %xmm1,%xmm0 DB 102,69,15,239,201 ; pxor %xmm9,%xmm9 DB 102,65,15,97,193 ; punpcklwd %xmm9,%xmm0 DB 15,91,192 ; cvtdq2ps %xmm0,%xmm0 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 102,15,111,203 ; movdqa %xmm3,%xmm1 DB 102,15,113,241,8 ; psllw $0x8,%xmm1 DB 102,15,113,211,8 ; psrlw $0x8,%xmm3 DB 102,15,235,217 ; por %xmm1,%xmm3 DB 102,65,15,97,217 ; punpcklwd %xmm9,%xmm3 DB 15,91,203 ; cvtdq2ps %xmm3,%xmm1 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 102,15,111,218 ; movdqa %xmm2,%xmm3 DB 102,15,113,243,8 ; psllw $0x8,%xmm3 DB 102,15,113,210,8 ; psrlw $0x8,%xmm2 DB 102,15,235,211 ; por %xmm3,%xmm2 DB 102,65,15,97,209 ; punpcklwd %xmm9,%xmm2 DB 15,91,210 ; cvtdq2ps %xmm2,%xmm2 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 184,0,0,128,63 ; mov $0x3f800000,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_u16_be_sse2 _sk_store_u16_be_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 185,0,255,127,71 ; mov $0x477fff00,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 102,69,15,91,192 ; cvtps2dq %xmm8,%xmm8 DB 102,65,15,114,240,16 ; pslld $0x10,%xmm8 DB 102,65,15,114,224,16 ; psrad $0x10,%xmm8 DB 102,69,15,107,192 ; packssdw %xmm8,%xmm8 DB 102,69,15,111,208 ; movdqa %xmm8,%xmm10 DB 102,65,15,113,242,8 ; psllw $0x8,%xmm10 DB 102,65,15,113,208,8 ; psrlw $0x8,%xmm8 DB 102,69,15,235,194 ; por %xmm10,%xmm8 DB 69,15,40,209 ; movaps %xmm9,%xmm10 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 102,69,15,91,210 ; cvtps2dq %xmm10,%xmm10 DB 102,65,15,114,242,16 ; pslld $0x10,%xmm10 DB 102,65,15,114,226,16 ; psrad $0x10,%xmm10 DB 102,69,15,107,210 ; packssdw %xmm10,%xmm10 DB 102,69,15,111,218 ; movdqa %xmm10,%xmm11 DB 102,65,15,113,243,8 ; psllw $0x8,%xmm11 DB 102,65,15,113,210,8 ; psrlw $0x8,%xmm10 DB 102,69,15,235,211 ; por %xmm11,%xmm10 DB 69,15,40,217 ; movaps %xmm9,%xmm11 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 102,69,15,91,219 ; cvtps2dq %xmm11,%xmm11 DB 102,65,15,114,243,16 ; pslld $0x10,%xmm11 DB 102,65,15,114,227,16 ; psrad $0x10,%xmm11 DB 102,69,15,107,219 ; packssdw %xmm11,%xmm11 DB 102,69,15,111,227 ; movdqa %xmm11,%xmm12 DB 102,65,15,113,244,8 ; psllw $0x8,%xmm12 DB 102,65,15,113,211,8 ; psrlw $0x8,%xmm11 DB 102,69,15,235,220 ; por %xmm12,%xmm11 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 102,69,15,91,201 ; cvtps2dq %xmm9,%xmm9 DB 102,65,15,114,241,16 ; pslld $0x10,%xmm9 DB 102,65,15,114,225,16 ; psrad $0x10,%xmm9 DB 102,69,15,107,201 ; packssdw %xmm9,%xmm9 DB 102,69,15,111,225 ; movdqa %xmm9,%xmm12 DB 102,65,15,113,244,8 ; psllw $0x8,%xmm12 DB 102,65,15,113,209,8 ; psrlw $0x8,%xmm9 DB 102,69,15,235,204 ; por %xmm12,%xmm9 DB 102,69,15,97,194 ; punpcklwd %xmm10,%xmm8 DB 102,69,15,97,217 ; punpcklwd %xmm9,%xmm11 DB 102,69,15,111,200 ; movdqa %xmm8,%xmm9 DB 102,69,15,98,203 ; punpckldq %xmm11,%xmm9 DB 243,68,15,127,12,248 ; movdqu %xmm9,(%rax,%rdi,8) DB 102,69,15,106,195 ; punpckhdq %xmm11,%xmm8 DB 243,68,15,127,68,248,16 ; movdqu %xmm8,0x10(%rax,%rdi,8) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_load_f32_sse2 _sk_load_f32_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,137,249 ; mov %rdi,%rcx DB 72,193,225,4 ; shl $0x4,%rcx DB 68,15,16,4,8 ; movups (%rax,%rcx,1),%xmm8 DB 15,16,68,8,16 ; movups 0x10(%rax,%rcx,1),%xmm0 DB 15,16,92,8,32 ; movups 0x20(%rax,%rcx,1),%xmm3 DB 68,15,16,76,8,48 ; movups 0x30(%rax,%rcx,1),%xmm9 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 15,20,208 ; unpcklps %xmm0,%xmm2 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 65,15,20,201 ; unpcklps %xmm9,%xmm1 DB 68,15,21,192 ; unpckhps %xmm0,%xmm8 DB 65,15,21,217 ; unpckhps %xmm9,%xmm3 DB 15,40,194 ; movaps %xmm2,%xmm0 DB 102,15,20,193 ; unpcklpd %xmm1,%xmm0 DB 15,18,202 ; movhlps %xmm2,%xmm1 DB 65,15,40,208 ; movaps %xmm8,%xmm2 DB 102,15,20,211 ; unpcklpd %xmm3,%xmm2 DB 65,15,18,216 ; movhlps %xmm8,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_store_f32_sse2 _sk_store_f32_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 72,139,0 ; mov (%rax),%rax DB 72,137,249 ; mov %rdi,%rcx DB 72,193,225,4 ; shl $0x4,%rcx DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 68,15,20,201 ; unpcklps %xmm1,%xmm9 DB 68,15,40,210 ; movaps %xmm2,%xmm10 DB 68,15,40,218 ; movaps %xmm2,%xmm11 DB 68,15,20,219 ; unpcklps %xmm3,%xmm11 DB 68,15,21,193 ; unpckhps %xmm1,%xmm8 DB 68,15,21,211 ; unpckhps %xmm3,%xmm10 DB 69,15,40,225 ; movaps %xmm9,%xmm12 DB 102,69,15,20,227 ; unpcklpd %xmm11,%xmm12 DB 69,15,18,217 ; movhlps %xmm9,%xmm11 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 102,69,15,20,202 ; unpcklpd %xmm10,%xmm9 DB 69,15,18,208 ; movhlps %xmm8,%xmm10 DB 102,68,15,17,36,8 ; movupd %xmm12,(%rax,%rcx,1) DB 68,15,17,92,8,16 ; movups %xmm11,0x10(%rax,%rcx,1) DB 102,68,15,17,76,8,32 ; movupd %xmm9,0x20(%rax,%rcx,1) DB 68,15,17,84,8,48 ; movups %xmm10,0x30(%rax,%rcx,1) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_x_sse2 _sk_clamp_x_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 68,15,95,192 ; maxps %xmm0,%xmm8 DB 243,68,15,16,8 ; movss (%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 102,15,118,192 ; pcmpeqd %xmm0,%xmm0 DB 102,65,15,254,193 ; paddd %xmm9,%xmm0 DB 68,15,93,192 ; minps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_clamp_y_sse2 _sk_clamp_y_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 68,15,95,193 ; maxps %xmm1,%xmm8 DB 243,68,15,16,8 ; movss (%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 102,15,118,201 ; pcmpeqd %xmm1,%xmm1 DB 102,65,15,254,201 ; paddd %xmm9,%xmm1 DB 68,15,93,193 ; minps %xmm1,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,200 ; movaps %xmm8,%xmm1 DB 255,224 ; jmpq *%rax PUBLIC _sk_repeat_x_sse2 _sk_repeat_x_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,40,200 ; movaps %xmm0,%xmm9 DB 69,15,94,200 ; divps %xmm8,%xmm9 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10 DB 69,15,194,202,1 ; cmpltps %xmm10,%xmm9 DB 68,15,84,13,135,16,0,0 ; andps 0x1087(%rip),%xmm9 # 47d0 <_sk_callback_sse2+0x4bb> DB 69,15,92,209 ; subps %xmm9,%xmm10 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 65,15,92,194 ; subps %xmm10,%xmm0 DB 102,69,15,118,201 ; pcmpeqd %xmm9,%xmm9 DB 102,69,15,254,200 ; paddd %xmm8,%xmm9 DB 65,15,93,193 ; minps %xmm9,%xmm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_repeat_y_sse2 _sk_repeat_y_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 69,15,94,200 ; divps %xmm8,%xmm9 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10 DB 69,15,194,202,1 ; cmpltps %xmm10,%xmm9 DB 68,15,84,13,79,16,0,0 ; andps 0x104f(%rip),%xmm9 # 47e0 <_sk_callback_sse2+0x4cb> DB 69,15,92,209 ; subps %xmm9,%xmm10 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 65,15,92,202 ; subps %xmm10,%xmm1 DB 102,69,15,118,201 ; pcmpeqd %xmm9,%xmm9 DB 102,69,15,254,200 ; paddd %xmm8,%xmm9 DB 65,15,93,201 ; minps %xmm9,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_mirror_x_sse2 _sk_mirror_x_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 243,69,15,88,192 ; addss %xmm8,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,40,208 ; movaps %xmm0,%xmm10 DB 69,15,94,208 ; divps %xmm8,%xmm10 DB 243,69,15,91,218 ; cvttps2dq %xmm10,%xmm11 DB 69,15,91,219 ; cvtdq2ps %xmm11,%xmm11 DB 69,15,194,211,1 ; cmpltps %xmm11,%xmm10 DB 68,15,84,21,5,16,0,0 ; andps 0x1005(%rip),%xmm10 # 47f0 <_sk_callback_sse2+0x4db> DB 69,15,87,228 ; xorps %xmm12,%xmm12 DB 69,15,92,218 ; subps %xmm10,%xmm11 DB 69,15,89,216 ; mulps %xmm8,%xmm11 DB 65,15,92,195 ; subps %xmm11,%xmm0 DB 65,15,92,193 ; subps %xmm9,%xmm0 DB 68,15,92,224 ; subps %xmm0,%xmm12 DB 65,15,84,196 ; andps %xmm12,%xmm0 DB 102,69,15,118,192 ; pcmpeqd %xmm8,%xmm8 DB 102,69,15,254,193 ; paddd %xmm9,%xmm8 DB 65,15,93,192 ; minps %xmm8,%xmm0 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_mirror_y_sse2 _sk_mirror_y_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,0 ; movss (%rax),%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 65,15,92,201 ; subps %xmm9,%xmm1 DB 243,69,15,88,192 ; addss %xmm8,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 68,15,40,209 ; movaps %xmm1,%xmm10 DB 69,15,94,208 ; divps %xmm8,%xmm10 DB 243,69,15,91,218 ; cvttps2dq %xmm10,%xmm11 DB 69,15,91,219 ; cvtdq2ps %xmm11,%xmm11 DB 69,15,194,211,1 ; cmpltps %xmm11,%xmm10 DB 68,15,84,21,171,15,0,0 ; andps 0xfab(%rip),%xmm10 # 4800 <_sk_callback_sse2+0x4eb> DB 69,15,87,228 ; xorps %xmm12,%xmm12 DB 69,15,92,218 ; subps %xmm10,%xmm11 DB 69,15,89,216 ; mulps %xmm8,%xmm11 DB 65,15,92,203 ; subps %xmm11,%xmm1 DB 65,15,92,201 ; subps %xmm9,%xmm1 DB 68,15,92,225 ; subps %xmm1,%xmm12 DB 65,15,84,204 ; andps %xmm12,%xmm1 DB 102,69,15,118,192 ; pcmpeqd %xmm8,%xmm8 DB 102,69,15,254,193 ; paddd %xmm9,%xmm8 DB 65,15,93,200 ; minps %xmm8,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_luminance_to_alpha_sse2 _sk_luminance_to_alpha_sse2 LABEL PROC DB 184,208,179,89,62 ; mov $0x3e59b3d0,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,89,216 ; mulps %xmm0,%xmm3 DB 184,89,23,55,63 ; mov $0x3f371759,%eax DB 102,15,110,192 ; movd %eax,%xmm0 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 15,88,195 ; addps %xmm3,%xmm0 DB 184,152,221,147,61 ; mov $0x3d93dd98,%eax DB 102,15,110,216 ; movd %eax,%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 15,89,218 ; mulps %xmm2,%xmm3 DB 15,88,216 ; addps %xmm0,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 15,87,192 ; xorps %xmm0,%xmm0 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_2x3_sse2 _sk_matrix_2x3_sse2 LABEL PROC DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,16 ; movss 0x10(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,68,15,16,80,12 ; movss 0xc(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_3x4_sse2 _sk_matrix_3x4_sse2 LABEL PROC DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 243,68,15,16,80,12 ; movss 0xc(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,36 ; movss 0x24(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,28 ; movss 0x1c(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,40 ; movss 0x28(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,32 ; movss 0x20(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,44 ; movss 0x2c(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 68,15,89,226 ; mulps %xmm2,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 69,15,89,217 ; mulps %xmm9,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_4x5_sse2 _sk_matrix_4x5_sse2 LABEL PROC DB 68,15,40,201 ; movaps %xmm1,%xmm9 DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,32 ; movss 0x20(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,48 ; movss 0x30(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,64 ; movss 0x40(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 68,15,89,227 ; mulps %xmm3,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,88,194 ; addps %xmm10,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,68,15,16,80,20 ; movss 0x14(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,36 ; movss 0x24(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,52 ; movss 0x34(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,68 ; movss 0x44(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 68,15,89,227 ; mulps %xmm3,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 68,15,89,218 ; mulps %xmm2,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,40 ; movss 0x28(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,56 ; movss 0x38(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 243,68,15,16,112,72 ; movss 0x48(%rax),%xmm14 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 68,15,89,235 ; mulps %xmm3,%xmm13 DB 69,15,88,238 ; addps %xmm14,%xmm13 DB 68,15,89,226 ; mulps %xmm2,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 69,15,89,217 ; mulps %xmm9,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 243,68,15,16,88,12 ; movss 0xc(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,28 ; movss 0x1c(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 243,68,15,16,104,44 ; movss 0x2c(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 243,68,15,16,112,60 ; movss 0x3c(%rax),%xmm14 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 243,68,15,16,120,76 ; movss 0x4c(%rax),%xmm15 DB 69,15,198,255,0 ; shufps $0x0,%xmm15,%xmm15 DB 68,15,89,243 ; mulps %xmm3,%xmm14 DB 69,15,88,247 ; addps %xmm15,%xmm14 DB 68,15,89,234 ; mulps %xmm2,%xmm13 DB 69,15,88,238 ; addps %xmm14,%xmm13 DB 69,15,89,225 ; mulps %xmm9,%xmm12 DB 69,15,88,229 ; addps %xmm13,%xmm12 DB 69,15,89,216 ; mulps %xmm8,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,210 ; movaps %xmm10,%xmm2 DB 65,15,40,219 ; movaps %xmm11,%xmm3 DB 255,224 ; jmpq *%rax PUBLIC _sk_matrix_perspective_sse2 _sk_matrix_perspective_sse2 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,68,15,16,72,4 ; movss 0x4(%rax),%xmm9 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,80,8 ; movss 0x8(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 68,15,89,201 ; mulps %xmm1,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 65,15,88,193 ; addps %xmm9,%xmm0 DB 243,68,15,16,72,12 ; movss 0xc(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,80,16 ; movss 0x10(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,20 ; movss 0x14(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 68,15,89,209 ; mulps %xmm1,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 243,68,15,16,80,24 ; movss 0x18(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,28 ; movss 0x1c(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,32 ; movss 0x20(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 68,15,89,217 ; mulps %xmm1,%xmm11 DB 69,15,88,220 ; addps %xmm12,%xmm11 DB 69,15,89,208 ; mulps %xmm8,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 65,15,83,202 ; rcpps %xmm10,%xmm1 DB 15,89,193 ; mulps %xmm1,%xmm0 DB 68,15,89,201 ; mulps %xmm1,%xmm9 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,201 ; movaps %xmm9,%xmm1 DB 255,224 ; jmpq *%rax PUBLIC _sk_linear_gradient_sse2 _sk_linear_gradient_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 243,68,15,16,72,16 ; movss 0x10(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 243,68,15,16,80,20 ; movss 0x14(%rax),%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 243,68,15,16,88,24 ; movss 0x18(%rax),%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 243,68,15,16,96,28 ; movss 0x1c(%rax),%xmm12 DB 69,15,198,228,0 ; shufps $0x0,%xmm12,%xmm12 DB 72,139,8 ; mov (%rax),%rcx DB 72,133,201 ; test %rcx,%rcx DB 15,132,15,1,0,0 ; je 3d69 <_sk_linear_gradient_sse2+0x149> DB 72,139,64,8 ; mov 0x8(%rax),%rax DB 72,131,192,32 ; add $0x20,%rax DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 15,87,219 ; xorps %xmm3,%xmm3 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 15,87,201 ; xorps %xmm1,%xmm1 DB 243,68,15,16,112,224 ; movss -0x20(%rax),%xmm14 DB 243,68,15,16,104,228 ; movss -0x1c(%rax),%xmm13 DB 69,15,198,246,0 ; shufps $0x0,%xmm14,%xmm14 DB 69,15,40,252 ; movaps %xmm12,%xmm15 DB 68,15,40,224 ; movaps %xmm0,%xmm12 DB 69,15,194,230,1 ; cmpltps %xmm14,%xmm12 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,40,244 ; movaps %xmm12,%xmm14 DB 69,15,85,245 ; andnps %xmm13,%xmm14 DB 69,15,84,196 ; andps %xmm12,%xmm8 DB 69,15,86,198 ; orps %xmm14,%xmm8 DB 243,68,15,16,104,232 ; movss -0x18(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,40,244 ; movaps %xmm12,%xmm14 DB 69,15,85,245 ; andnps %xmm13,%xmm14 DB 65,15,84,204 ; andps %xmm12,%xmm1 DB 65,15,86,206 ; orps %xmm14,%xmm1 DB 243,68,15,16,104,236 ; movss -0x14(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,40,244 ; movaps %xmm12,%xmm14 DB 69,15,85,245 ; andnps %xmm13,%xmm14 DB 65,15,84,212 ; andps %xmm12,%xmm2 DB 65,15,86,214 ; orps %xmm14,%xmm2 DB 243,68,15,16,104,240 ; movss -0x10(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,40,244 ; movaps %xmm12,%xmm14 DB 69,15,85,245 ; andnps %xmm13,%xmm14 DB 65,15,84,220 ; andps %xmm12,%xmm3 DB 65,15,86,222 ; orps %xmm14,%xmm3 DB 243,68,15,16,104,244 ; movss -0xc(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,40,244 ; movaps %xmm12,%xmm14 DB 69,15,85,245 ; andnps %xmm13,%xmm14 DB 69,15,84,204 ; andps %xmm12,%xmm9 DB 69,15,86,206 ; orps %xmm14,%xmm9 DB 243,68,15,16,104,248 ; movss -0x8(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,40,244 ; movaps %xmm12,%xmm14 DB 69,15,85,245 ; andnps %xmm13,%xmm14 DB 69,15,84,212 ; andps %xmm12,%xmm10 DB 69,15,86,214 ; orps %xmm14,%xmm10 DB 243,68,15,16,104,252 ; movss -0x4(%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,40,244 ; movaps %xmm12,%xmm14 DB 69,15,85,245 ; andnps %xmm13,%xmm14 DB 69,15,84,220 ; andps %xmm12,%xmm11 DB 69,15,86,222 ; orps %xmm14,%xmm11 DB 243,68,15,16,40 ; movss (%rax),%xmm13 DB 69,15,198,237,0 ; shufps $0x0,%xmm13,%xmm13 DB 69,15,84,252 ; andps %xmm12,%xmm15 DB 69,15,85,229 ; andnps %xmm13,%xmm12 DB 69,15,86,231 ; orps %xmm15,%xmm12 DB 72,131,192,36 ; add $0x24,%rax DB 72,255,201 ; dec %rcx DB 15,133,8,255,255,255 ; jne 3c6f <_sk_linear_gradient_sse2+0x4f> DB 235,13 ; jmp 3d76 <_sk_linear_gradient_sse2+0x156> DB 15,87,201 ; xorps %xmm1,%xmm1 DB 15,87,210 ; xorps %xmm2,%xmm2 DB 15,87,219 ; xorps %xmm3,%xmm3 DB 69,15,87,192 ; xorps %xmm8,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 69,15,88,193 ; addps %xmm9,%xmm8 DB 15,89,200 ; mulps %xmm0,%xmm1 DB 65,15,88,202 ; addps %xmm10,%xmm1 DB 15,89,208 ; mulps %xmm0,%xmm2 DB 65,15,88,211 ; addps %xmm11,%xmm2 DB 15,89,216 ; mulps %xmm0,%xmm3 DB 65,15,88,220 ; addps %xmm12,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 65,15,40,192 ; movaps %xmm8,%xmm0 DB 255,224 ; jmpq *%rax PUBLIC _sk_linear_gradient_2stops_sse2 _sk_linear_gradient_2stops_sse2 LABEL PROC DB 68,15,40,192 ; movaps %xmm0,%xmm8 DB 72,173 ; lods %ds:(%rsi),%rax DB 243,15,16,0 ; movss (%rax),%xmm0 DB 243,15,16,72,4 ; movss 0x4(%rax),%xmm1 DB 15,198,192,0 ; shufps $0x0,%xmm0,%xmm0 DB 243,15,16,80,16 ; movss 0x10(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,192 ; mulps %xmm8,%xmm0 DB 15,88,194 ; addps %xmm2,%xmm0 DB 15,198,201,0 ; shufps $0x0,%xmm1,%xmm1 DB 243,15,16,80,20 ; movss 0x14(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 65,15,89,200 ; mulps %xmm8,%xmm1 DB 15,88,202 ; addps %xmm2,%xmm1 DB 243,15,16,80,8 ; movss 0x8(%rax),%xmm2 DB 15,198,210,0 ; shufps $0x0,%xmm2,%xmm2 DB 243,15,16,88,24 ; movss 0x18(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 65,15,89,208 ; mulps %xmm8,%xmm2 DB 15,88,211 ; addps %xmm3,%xmm2 DB 243,15,16,88,12 ; movss 0xc(%rax),%xmm3 DB 15,198,219,0 ; shufps $0x0,%xmm3,%xmm3 DB 243,68,15,16,72,28 ; movss 0x1c(%rax),%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 65,15,89,216 ; mulps %xmm8,%xmm3 DB 65,15,88,217 ; addps %xmm9,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_save_xy_sse2 _sk_save_xy_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,40,200 ; movaps %xmm8,%xmm9 DB 68,15,88,200 ; addps %xmm0,%xmm9 DB 243,69,15,91,209 ; cvttps2dq %xmm9,%xmm10 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10 DB 69,15,40,217 ; movaps %xmm9,%xmm11 DB 69,15,194,218,1 ; cmpltps %xmm10,%xmm11 DB 68,15,40,37,210,9,0,0 ; movaps 0x9d2(%rip),%xmm12 # 4810 <_sk_callback_sse2+0x4fb> DB 69,15,84,220 ; andps %xmm12,%xmm11 DB 69,15,92,211 ; subps %xmm11,%xmm10 DB 69,15,92,202 ; subps %xmm10,%xmm9 DB 68,15,88,193 ; addps %xmm1,%xmm8 DB 243,69,15,91,208 ; cvttps2dq %xmm8,%xmm10 DB 69,15,91,210 ; cvtdq2ps %xmm10,%xmm10 DB 69,15,40,216 ; movaps %xmm8,%xmm11 DB 69,15,194,218,1 ; cmpltps %xmm10,%xmm11 DB 69,15,84,220 ; andps %xmm12,%xmm11 DB 69,15,92,211 ; subps %xmm11,%xmm10 DB 69,15,92,194 ; subps %xmm10,%xmm8 DB 15,17,0 ; movups %xmm0,(%rax) DB 15,17,72,32 ; movups %xmm1,0x20(%rax) DB 68,15,17,72,64 ; movups %xmm9,0x40(%rax) DB 68,15,17,64,96 ; movups %xmm8,0x60(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_accumulate_sse2 _sk_accumulate_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 68,15,16,128,128,0,0,0 ; movups 0x80(%rax),%xmm8 DB 68,15,16,136,160,0,0,0 ; movups 0xa0(%rax),%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,192 ; mulps %xmm0,%xmm8 DB 65,15,88,224 ; addps %xmm8,%xmm4 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,193 ; mulps %xmm1,%xmm8 DB 65,15,88,232 ; addps %xmm8,%xmm5 DB 69,15,40,193 ; movaps %xmm9,%xmm8 DB 68,15,89,194 ; mulps %xmm2,%xmm8 DB 65,15,88,240 ; addps %xmm8,%xmm6 DB 68,15,89,203 ; mulps %xmm3,%xmm9 DB 65,15,88,249 ; addps %xmm9,%xmm7 DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_nx_sse2 _sk_bilinear_nx_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,191 ; mov $0xbf000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_px_sse2 _sk_bilinear_px_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_ny_sse2 _sk_bilinear_ny_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,191 ; mov $0xbf000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bilinear_py_sse2 _sk_bilinear_py_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n3x_sse2 _sk_bicubic_n3x_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,192,191 ; mov $0xbfc00000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 185,114,28,199,62 ; mov $0x3ec71c72,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 185,171,170,170,190 ; mov $0xbeaaaaab,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,89,192 ; mulps %xmm8,%xmm8 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n1x_sse2 _sk_bicubic_n1x_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,191 ; mov $0xbf000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 185,85,85,149,191 ; mov $0xbf955555,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 185,57,142,99,61 ; mov $0x3d638e39,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 68,15,17,136,128,0,0,0 ; movups %xmm9,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p1x_sse2 _sk_bicubic_p1x_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,85,85,149,191 ; mov $0xbf955555,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,217 ; movd %ecx,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 185,57,142,99,61 ; mov $0x3d638e39,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 68,15,17,144,128,0,0,0 ; movups %xmm10,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p3x_sse2 _sk_bicubic_p3x_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,0 ; movups (%rax),%xmm0 DB 68,15,16,72,64 ; movups 0x40(%rax),%xmm9 DB 65,15,88,192 ; addps %xmm8,%xmm0 DB 185,114,28,199,62 ; mov $0x3ec71c72,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,89,193 ; mulps %xmm9,%xmm8 DB 69,15,89,201 ; mulps %xmm9,%xmm9 DB 185,171,170,170,190 ; mov $0xbeaaaaab,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,88,194 ; addps %xmm10,%xmm8 DB 69,15,89,193 ; mulps %xmm9,%xmm8 DB 68,15,17,128,128,0,0,0 ; movups %xmm8,0x80(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n3y_sse2 _sk_bicubic_n3y_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,192,191 ; mov $0xbfc00000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 185,114,28,199,62 ; mov $0x3ec71c72,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 185,171,170,170,190 ; mov $0xbeaaaaab,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,89,192 ; mulps %xmm8,%xmm8 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_n1y_sse2 _sk_bicubic_n1y_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,191 ; mov $0xbf000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,0,0,128,63 ; mov $0x3f800000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,92,193 ; subps %xmm9,%xmm8 DB 185,85,85,149,191 ; mov $0xbf955555,%ecx DB 102,68,15,110,201 ; movd %ecx,%xmm9 DB 69,15,198,201,0 ; shufps $0x0,%xmm9,%xmm9 DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 185,57,142,99,61 ; mov $0x3d638e39,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,89,200 ; mulps %xmm8,%xmm9 DB 69,15,88,202 ; addps %xmm10,%xmm9 DB 68,15,17,136,160,0,0,0 ; movups %xmm9,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p1y_sse2 _sk_bicubic_p1y_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,0,63 ; mov $0x3f000000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,85,85,149,191 ; mov $0xbf955555,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,217 ; movd %ecx,%xmm11 DB 69,15,198,219,0 ; shufps $0x0,%xmm11,%xmm11 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,211 ; addps %xmm11,%xmm10 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 185,57,142,99,61 ; mov $0x3d638e39,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,89,209 ; mulps %xmm9,%xmm10 DB 69,15,88,208 ; addps %xmm8,%xmm10 DB 68,15,17,144,160,0,0,0 ; movups %xmm10,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_bicubic_p3y_sse2 _sk_bicubic_p3y_sse2 LABEL PROC DB 72,173 ; lods %ds:(%rsi),%rax DB 185,0,0,192,63 ; mov $0x3fc00000,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 15,16,72,32 ; movups 0x20(%rax),%xmm1 DB 68,15,16,72,96 ; movups 0x60(%rax),%xmm9 DB 65,15,88,200 ; addps %xmm8,%xmm1 DB 185,114,28,199,62 ; mov $0x3ec71c72,%ecx DB 102,68,15,110,193 ; movd %ecx,%xmm8 DB 69,15,198,192,0 ; shufps $0x0,%xmm8,%xmm8 DB 69,15,89,193 ; mulps %xmm9,%xmm8 DB 69,15,89,201 ; mulps %xmm9,%xmm9 DB 185,171,170,170,190 ; mov $0xbeaaaaab,%ecx DB 102,68,15,110,209 ; movd %ecx,%xmm10 DB 69,15,198,210,0 ; shufps $0x0,%xmm10,%xmm10 DB 69,15,88,194 ; addps %xmm10,%xmm8 DB 69,15,89,193 ; mulps %xmm9,%xmm8 DB 68,15,17,128,160,0,0,0 ; movups %xmm8,0xa0(%rax) DB 72,173 ; lods %ds:(%rsi),%rax DB 255,224 ; jmpq *%rax PUBLIC _sk_callback_sse2 _sk_callback_sse2 LABEL PROC DB 65,86 ; push %r14 DB 83 ; push %rbx DB 72,131,236,40 ; sub $0x28,%rsp DB 68,15,40,197 ; movaps %xmm5,%xmm8 DB 68,15,40,204 ; movaps %xmm4,%xmm9 DB 73,137,214 ; mov %rdx,%r14 DB 72,173 ; lods %ds:(%rsi),%rax DB 72,137,195 ; mov %rax,%rbx DB 15,40,224 ; movaps %xmm0,%xmm4 DB 15,20,225 ; unpcklps %xmm1,%xmm4 DB 15,40,234 ; movaps %xmm2,%xmm5 DB 15,20,235 ; unpcklps %xmm3,%xmm5 DB 15,21,193 ; unpckhps %xmm1,%xmm0 DB 15,21,211 ; unpckhps %xmm3,%xmm2 DB 15,40,204 ; movaps %xmm4,%xmm1 DB 102,15,20,205 ; unpcklpd %xmm5,%xmm1 DB 15,18,236 ; movhlps %xmm4,%xmm5 DB 15,40,216 ; movaps %xmm0,%xmm3 DB 102,15,20,218 ; unpcklpd %xmm2,%xmm3 DB 15,18,208 ; movhlps %xmm0,%xmm2 DB 102,15,17,75,8 ; movupd %xmm1,0x8(%rbx) DB 15,17,107,24 ; movups %xmm5,0x18(%rbx) DB 102,15,17,91,40 ; movupd %xmm3,0x28(%rbx) DB 15,17,83,56 ; movups %xmm2,0x38(%rbx) DB 186,4,0,0,0 ; mov $0x4,%edx DB 72,137,217 ; mov %rbx,%rcx DB 255,19 ; callq *(%rbx) DB 72,139,131,136,0,0,0 ; mov 0x88(%rbx),%rax DB 15,16,32 ; movups (%rax),%xmm4 DB 15,16,64,16 ; movups 0x10(%rax),%xmm0 DB 15,16,88,32 ; movups 0x20(%rax),%xmm3 DB 15,16,80,48 ; movups 0x30(%rax),%xmm2 DB 15,40,236 ; movaps %xmm4,%xmm5 DB 15,20,232 ; unpcklps %xmm0,%xmm5 DB 15,40,203 ; movaps %xmm3,%xmm1 DB 15,20,202 ; unpcklps %xmm2,%xmm1 DB 15,21,224 ; unpckhps %xmm0,%xmm4 DB 15,21,218 ; unpckhps %xmm2,%xmm3 DB 15,40,197 ; movaps %xmm5,%xmm0 DB 102,15,20,193 ; unpcklpd %xmm1,%xmm0 DB 15,18,205 ; movhlps %xmm5,%xmm1 DB 15,40,212 ; movaps %xmm4,%xmm2 DB 102,15,20,211 ; unpcklpd %xmm3,%xmm2 DB 15,18,220 ; movhlps %xmm4,%xmm3 DB 72,173 ; lods %ds:(%rsi),%rax DB 76,137,242 ; mov %r14,%rdx DB 65,15,40,225 ; movaps %xmm9,%xmm4 DB 65,15,40,232 ; movaps %xmm8,%xmm5 DB 72,131,196,40 ; add $0x28,%rsp DB 91 ; pop %rbx DB 65,94 ; pop %r14 DB 255,224 ; jmpq *%rax ALIGN 16 DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 43f4 <.literal16+0x34> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 43f8 <.literal16+0x38> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 43fc <.literal16+0x3c> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4400 <.literal16+0x40> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 4485 <.literal16+0xc5> DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 117,191 ; jne 43e9 <.literal16+0x29> DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9 DB 233,220,63,163,233 ; jmpq ffffffffe9a3842a <_sk_callback_sse2+0xffffffffe9a34115> DB 220,63 ; fdivrl (%rdi) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,81 ; cmpb $0x51,(%rdi) DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi DB 63 ; (bad) DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi DB 63 ; (bad) DB 248 ; clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,52,0 ; add %dh,(%rax,%rax,1) DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 44c4 <.literal16+0x104> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 44c8 <.literal16+0x108> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 44cc <.literal16+0x10c> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 44d0 <.literal16+0x110> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 4555 <.literal16+0x195> DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 117,191 ; jne 44b9 <.literal16+0xf9> DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9 DB 233,220,63,163,233 ; jmpq ffffffffe9a384fa <_sk_callback_sse2+0xffffffffe9a341e5> DB 220,63 ; fdivrl (%rdi) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,81 ; cmpb $0x51,(%rdi) DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi DB 63 ; (bad) DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi DB 63 ; (bad) DB 248 ; clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,52,0 ; add %dh,(%rax,%rax,1) DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 4594 <.literal16+0x1d4> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4598 <.literal16+0x1d8> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 459c <.literal16+0x1dc> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 45a0 <.literal16+0x1e0> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 4625 <.literal16+0x265> DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 117,191 ; jne 4589 <.literal16+0x1c9> DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9 DB 233,220,63,163,233 ; jmpq ffffffffe9a385ca <_sk_callback_sse2+0xffffffffe9a342b5> DB 220,63 ; fdivrl (%rdi) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,81 ; cmpb $0x51,(%rdi) DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi DB 63 ; (bad) DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi DB 63 ; (bad) DB 248 ; clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,52,0 ; add %dh,(%rax,%rax,1) DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,0 ; xor $0x0,%al DB 0,0 ; add %al,(%rax) DB 52,255 ; xor $0xff,%al DB 255 ; (bad) DB 127,0 ; jg 4664 <.literal16+0x2a4> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4668 <.literal16+0x2a8> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 466c <.literal16+0x2ac> DB 255 ; (bad) DB 255 ; (bad) DB 127,0 ; jg 4670 <.literal16+0x2b0> DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 0,0 ; add %al,(%rax) DB 0,63 ; add %bh,(%rdi) DB 119,115 ; ja 46f5 <.literal16+0x335> DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,119,115 ; retq $0x7377 DB 248 ; clc DB 194,117,191 ; retq $0xbf75 DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 117,191 ; jne 4659 <.literal16+0x299> DB 191,63,117,191,191 ; mov $0xbfbf753f,%edi DB 63 ; (bad) DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 249 ; stc DB 68,180,62 ; rex.R mov $0x3e,%spl DB 163,233,220,63,163,233,220,63,163 ; movabs %eax,0xa33fdce9a33fdce9 DB 233,220,63,163,233 ; jmpq ffffffffe9a3869a <_sk_callback_sse2+0xffffffffe9a34385> DB 220,63 ; fdivrl (%rdi) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,81 ; cmpb $0x51,(%rdi) DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,81 ; rex.X push %rcx DB 140,242 ; mov %?,%edx DB 66,141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%r15,4),%edi DB 63 ; (bad) DB 141,188,190,63,141,188,190 ; lea -0x414372c1(%rsi,%rdi,4),%edi DB 63 ; (bad) DB 248 ; clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,248 ; rex clc DB 245 ; cmc DB 154 ; (bad) DB 64,254 ; rex (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,254 ; rex.B (bad) DB 210,221 ; rcr %cl,%ch DB 65,0,0 ; add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,0 ; rex.WXB add %al,(%r8) DB 0,75,0 ; add %cl,0x0(%rbx) DB 0,0 ; add %al,(%rax) DB 75,0,128,0,0,0,128 ; rex.WXB add %al,-0x80000000(%r8) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,4,0 ; add %al,(%rax,%rax,1) DB 128,0,4 ; addb $0x4,(%rax) DB 0,128,0,4,0,128 ; add %al,-0x7ffffc00(%rax) DB 0,4,0 ; add %al,(%rax,%rax,1) DB 128,0,128 ; addb $0x80,(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,0 ; add %al,0x0(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,56 ; add %bh,(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,4,0 ; add %al,(%rax,%rax,1) DB 128,0,4 ; addb $0x4,(%rax) DB 0,128,0,4,0,128 ; add %al,-0x7ffffc00(%rax) DB 0,4,0 ; add %al,(%rax,%rax,1) DB 128,0,0 ; addb $0x0,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 0,128,0,0,0,128 ; add %al,-0x80000000(%rax) DB 0,0 ; add %al,(%rax) DB 128,56,0 ; cmpb $0x0,(%rax) DB 0,128,56,0,0,128 ; add %al,-0x7fffffc8(%rax) DB 56,0 ; cmp %al,(%rax) DB 0,128,56,0,64,254 ; add %al,-0x1bfffc8(%rax) DB 255,0 ; incl (%rax) DB 64,254 ; rex (bad) DB 255,0 ; incl (%rax) DB 64,254 ; rex (bad) DB 255,0 ; incl (%rax) DB 64,254 ; rex (bad) DB 255,0 ; incl (%rax) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) DB 0,0 ; add %al,(%rax) DB 128,63,0 ; cmpb $0x0,(%rdi) DB 0,128,63,0,0,128 ; add %al,-0x7fffffc1(%rax) DB 63 ; (bad) ENDIF END