.file "SimdSse2BgraToYuv.cpp"
.intel_syntax noprefix
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDB13:
.section .text._ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTB13:
.p2align 4,,15
.weak _ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m
.type _ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m, @function
_ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m:
push r15
push r14
push r13
push r12
mov r12, rsi
push rbp
push rbx
and r12, -32
sub rsp, 160
test rdx, rdx
mov QWORD PTR 120[rsp], rdx
mov QWORD PTR 144[rsp], r9
mov rbx, QWORD PTR 216[rsp]
mov rbp, QWORD PTR 232[rsp]
je .L1
lea rax, [rcx+rcx]
lea r15, [r9+r9]
lea r10, [r8+r9]
movdqa xmm9, XMMWORD PTR .LC2[rip]
xor r14d, r14d
mov QWORD PTR 112[rsp], rax
lea rax, -32[rsi]
movdqa xmm8, XMMWORD PTR .LC3[rip]
mov rdx, rax
lea r13, 0[0+rax*4]
mov QWORD PTR 128[rsp], rax
shr rdx
movdqa xmm10, XMMWORD PTR .LC4[rip]
mov QWORD PTR 136[rsp], rdx
.p2align 4,,10
.p2align 3
.L9:
test r12, r12
je .L6
movdqa xmm7, XMMWORD PTR .LC10[rip]
lea rax, [rdi+rcx]
mov rdx, rdi
xor r9d, r9d
movaps XMMWORD PTR 56[rsp], xmm7
movdqa xmm6, XMMWORD PTR .LC12[rip]
movdqa xmm7, XMMWORD PTR .LC11[rip]
movaps XMMWORD PTR 88[rsp], xmm6
movaps XMMWORD PTR 72[rsp], xmm7
.p2align 4,,10
.p2align 3
.L7:
sub rdx, -128
sub rax, -128
movdqa xmm4, XMMWORD PTR -80[rdx]
movdqa xmm5, XMMWORD PTR .LC0[rip]
pand xmm5, xmm4
psrldq xmm4, 1
pand xmm4, XMMWORD PTR .LC1[rip]
movdqa xmm0, XMMWORD PTR -96[rdx]
pshufd xmm6, xmm5, 8
movdqa xmm3, XMMWORD PTR .LC0[rip]
pand xmm3, xmm0
psrldq xmm0, 1
por xmm4, xmm9
pand xmm0, XMMWORD PTR .LC1[rip]
pshufd xmm7, xmm3, 8
pshufd xmm2, xmm3, 13
movdqa xmm1, xmm4
pshufd xmm4, xmm5, 13
por xmm0, xmm9
paddd xmm2, xmm7
movdqa xmm7, xmm2
pshufd xmm2, xmm1, 13
paddd xmm4, xmm6
pshufd xmm6, xmm1, 8
pmaddwd xmm1, xmm8
punpcklqdq xmm7, xmm4
pshufd xmm4, xmm0, 13
paddd xmm2, xmm6
movaps XMMWORD PTR -120[rsp], xmm7
pshufd xmm7, xmm0, 8
pmaddwd xmm0, xmm8
paddd xmm4, xmm7
movdqa xmm6, xmm4
movdqa xmm4, XMMWORD PTR .LC0[rip]
punpcklqdq xmm6, xmm2
movdqa xmm2, xmm5
pxor xmm5, xmm5
pmaddwd xmm2, xmm10
paddd xmm1, xmm2
movdqa xmm2, xmm3
psrad xmm1, 14
movdqa xmm3, XMMWORD PTR -112[rdx]
pmaddwd xmm2, xmm10
paddd xmm2, xmm0
psrad xmm2, 14
packssdw xmm2, xmm1
movdqa xmm0, XMMWORD PTR -128[rdx]
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm5
movdqa xmm5, XMMWORD PTR .LC0[rip]
pand xmm4, xmm0
psrldq xmm0, 1
pminsw xmm2, XMMWORD PTR .LC6[rip]
pand xmm5, xmm3
psrldq xmm3, 1
movaps XMMWORD PTR -104[rsp], xmm6
pand xmm0, XMMWORD PTR .LC1[rip]
movdqa xmm6, xmm5
pshufd xmm11, xmm4, 8
pand xmm3, XMMWORD PTR .LC1[rip]
pshufd xmm7, xmm6, 8
pshufd xmm5, xmm4, 13
pmaddwd xmm4, xmm10
pshufd xmm1, xmm6, 13
pmaddwd xmm6, xmm10
por xmm0, xmm9
por xmm3, xmm9
paddd xmm5, xmm11
paddd xmm1, xmm7
punpcklqdq xmm5, xmm1
pshufd xmm11, xmm0, 8
pshufd xmm7, xmm3, 8
movaps XMMWORD PTR -88[rsp], xmm5
pshufd xmm1, xmm0, 13
pmaddwd xmm0, xmm8
paddd xmm0, xmm4
pshufd xmm5, xmm3, 13
psrad xmm0, 14
pmaddwd xmm3, xmm8
paddd xmm3, xmm6
psrad xmm3, 14
packssdw xmm0, xmm3
pxor xmm3, xmm3
paddd xmm1, xmm11
movdqa xmm4, XMMWORD PTR .LC0[rip]
paddd xmm5, xmm7
punpcklqdq xmm1, xmm5
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm3
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, xmm2
movaps XMMWORD PTR -72[rsp], xmm1
movaps XMMWORD PTR [r8+r9*2], xmm0
movdqa xmm2, XMMWORD PTR .LC0[rip]
movdqa xmm0, XMMWORD PTR -32[rdx]
movdqa xmm1, XMMWORD PTR -16[rdx]
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm2, xmm1
psrldq xmm1, 1
pand xmm0, XMMWORD PTR .LC1[rip]
pand xmm1, XMMWORD PTR .LC1[rip]
pshufd xmm5, xmm4, 13
pshufd xmm7, xmm4, 8
por xmm0, xmm9
por xmm1, xmm9
pshufd xmm6, xmm2, 8
paddd xmm7, xmm5
movdqa xmm15, xmm7
pshufd xmm3, xmm2, 13
pmaddwd xmm2, xmm10
pshufd xmm7, xmm0, 8
pshufd xmm5, xmm1, 13
paddd xmm3, xmm6
pshufd xmm6, xmm1, 8
pmaddwd xmm1, xmm8
punpcklqdq xmm15, xmm3
paddd xmm1, xmm2
movdqa xmm2, xmm4
pshufd xmm3, xmm0, 13
psrad xmm1, 14
pmaddwd xmm0, xmm8
paddd xmm5, xmm6
pxor xmm4, xmm4
pmaddwd xmm2, xmm10
paddd xmm2, xmm0
psrad xmm2, 14
packssdw xmm2, xmm1
paddd xmm3, xmm7
punpcklqdq xmm3, xmm5
movdqa xmm1, XMMWORD PTR -64[rdx]
movaps XMMWORD PTR -56[rsp], xmm15
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm4
pminsw xmm2, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR -40[rsp], xmm3
movdqa xmm4, XMMWORD PTR .LC0[rip]
movdqa xmm3, XMMWORD PTR -48[rdx]
pand xmm4, xmm1
psrldq xmm1, 1
movdqa xmm5, XMMWORD PTR .LC0[rip]
pand xmm1, XMMWORD PTR .LC1[rip]
pand xmm5, xmm3
psrldq xmm3, 1
pand xmm3, XMMWORD PTR .LC1[rip]
pshufd xmm11, xmm4, 8
pshufd xmm6, xmm4, 13
pmaddwd xmm4, xmm10
por xmm1, xmm9
por xmm3, xmm9
pshufd xmm7, xmm5, 8
paddd xmm6, xmm11
movdqa xmm14, xmm6
pshufd xmm0, xmm5, 13
pmaddwd xmm5, xmm10
pshufd xmm15, xmm1, 8
pshufd xmm6, xmm3, 13
paddd xmm0, xmm7
pshufd xmm7, xmm3, 8
pmaddwd xmm3, xmm8
punpcklqdq xmm14, xmm0
paddd xmm3, xmm5
psrad xmm3, 14
pshufd xmm0, xmm1, 13
pmaddwd xmm1, xmm8
paddd xmm1, xmm4
pxor xmm4, xmm4
psrad xmm1, 14
paddd xmm6, xmm7
packssdw xmm1, xmm3
paddd xmm0, xmm15
punpcklqdq xmm0, xmm6
movaps XMMWORD PTR -24[rsp], xmm14
paddw xmm1, XMMWORD PTR .LC5[rip]
pmaxsw xmm1, xmm4
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm2
movaps XMMWORD PTR -8[rsp], xmm0
movaps XMMWORD PTR 16[r8+r9*2], xmm1
movdqa xmm2, XMMWORD PTR .LC0[rip]
movdqa xmm0, XMMWORD PTR -96[rax]
movdqa xmm1, XMMWORD PTR -80[rax]
pand xmm2, xmm0
psrldq xmm0, 1
movdqa xmm4, XMMWORD PTR .LC0[rip]
pand xmm0, XMMWORD PTR .LC1[rip]
pand xmm4, xmm1
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
por xmm0, xmm9
movdqa xmm3, xmm4
pshufd xmm7, xmm2, 8
pshufd xmm5, xmm2, 13
pmaddwd xmm2, xmm10
por xmm1, xmm9
pshufd xmm6, xmm3, 8
pmaddwd xmm3, xmm10
pshufd xmm4, xmm4, 13
paddd xmm5, xmm7
movdqa xmm12, xmm5
pshufd xmm7, xmm0, 8
pshufd xmm5, xmm0, 13
pmaddwd xmm0, xmm8
paddd xmm0, xmm2
paddd xmm4, xmm6
pshufd xmm6, xmm1, 8
psrad xmm0, 14
punpcklqdq xmm12, xmm4
movdqa xmm2, XMMWORD PTR -112[rax]
pshufd xmm4, xmm1, 13
paddd xmm5, xmm7
pmaddwd xmm1, xmm8
movdqa xmm13, xmm5
movdqa xmm5, xmm0
paddd xmm1, xmm3
psrad xmm1, 14
movdqa xmm0, XMMWORD PTR -128[rax]
paddd xmm4, xmm6
packssdw xmm5, xmm1
punpcklqdq xmm13, xmm4
movdqa xmm1, XMMWORD PTR .LC5[rip]
pxor xmm4, xmm4
paddw xmm1, xmm5
movaps XMMWORD PTR 8[rsp], xmm12
pmaxsw xmm1, xmm4
pminsw xmm1, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR 24[rsp], xmm13
movdqa xmm4, XMMWORD PTR .LC0[rip]
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm0, XMMWORD PTR .LC1[rip]
movdqa xmm3, xmm4
movdqa xmm4, XMMWORD PTR .LC0[rip]
pshufd xmm11, xmm3, 8
pand xmm4, xmm2
psrldq xmm2, 1
pand xmm2, XMMWORD PTR .LC1[rip]
por xmm0, xmm9
pshufd xmm7, xmm4, 8
pshufd xmm5, xmm3, 13
pmaddwd xmm3, xmm10
por xmm2, xmm9
pshufd xmm6, xmm4, 13
pmaddwd xmm4, xmm10
pshufd xmm12, xmm0, 8
paddd xmm5, xmm11
pshufd xmm11, xmm2, 8
paddd xmm6, xmm7
pshufd xmm7, xmm0, 13
pmaddwd xmm0, xmm8
punpcklqdq xmm5, xmm6
paddd xmm0, xmm3
psrad xmm0, 14
pshufd xmm6, xmm2, 13
pmaddwd xmm2, xmm8
paddd xmm2, xmm4
pxor xmm4, xmm4
psrad xmm2, 14
paddd xmm7, xmm12
packssdw xmm0, xmm2
paddd xmm6, xmm11
movdqa xmm11, xmm7
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm4
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, xmm1
punpcklqdq xmm11, xmm6
movdqa xmm4, XMMWORD PTR .LC0[rip]
movaps XMMWORD PTR [r10+r9*2], xmm0
movaps XMMWORD PTR 40[rsp], xmm11
movdqa xmm0, XMMWORD PTR -32[rax]
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm0, XMMWORD PTR .LC1[rip]
paddw xmm5, XMMWORD PTR -88[rsp]
paddw xmm5, XMMWORD PTR .LC7[rip]
movdqa xmm1, XMMWORD PTR -16[rax]
psrlw xmm5, 2
pshufd xmm6, xmm4, 13
movdqa xmm2, XMMWORD PTR .LC0[rip]
pshufd xmm7, xmm4, 8
pmaddwd xmm4, xmm10
pand xmm2, xmm1
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
paddd xmm7, xmm6
por xmm0, xmm9
pshufd xmm11, xmm2, 8
pshufd xmm3, xmm2, 13
pmaddwd xmm2, xmm10
por xmm1, xmm9
pshufd xmm12, xmm0, 8
paddd xmm3, xmm11
punpcklqdq xmm7, xmm3
pshufd xmm11, xmm1, 8
pshufd xmm3, xmm0, 13
pmaddwd xmm0, xmm8
paddd xmm0, xmm4
pshufd xmm6, xmm1, 13
psrad xmm0, 14
pmaddwd xmm1, xmm8
paddd xmm1, xmm2
movdqa xmm2, xmm0
psrad xmm1, 14
pxor xmm4, xmm4
paddd xmm3, xmm12
movdqa xmm12, XMMWORD PTR .LC0[rip]
packssdw xmm2, xmm1
paddd xmm6, xmm11
paddw xmm7, XMMWORD PTR -56[rsp]
movdqa xmm1, XMMWORD PTR -64[rax]
punpcklqdq xmm3, xmm6
paddw xmm7, XMMWORD PTR .LC7[rip]
psrlw xmm7, 2
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm4
movdqa xmm4, XMMWORD PTR .LC0[rip]
pminsw xmm2, XMMWORD PTR .LC6[rip]
pand xmm4, xmm1
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
movdqa xmm11, xmm4
movdqa xmm4, XMMWORD PTR -48[rax]
pshufd xmm14, xmm11, 8
pand xmm12, xmm4
psrldq xmm4, 1
pand xmm4, XMMWORD PTR .LC1[rip]
por xmm1, xmm9
pshufd xmm13, xmm12, 8
pshufd xmm6, xmm11, 13
pmaddwd xmm11, xmm10
por xmm4, xmm9
pshufd xmm0, xmm12, 13
pmaddwd xmm12, xmm10
pshufd xmm15, xmm1, 8
paddd xmm6, xmm14
pshufd xmm14, xmm4, 8
paddd xmm0, xmm13
pshufd xmm13, xmm4, 13
pmaddwd xmm4, xmm8
punpcklqdq xmm6, xmm0
paddd xmm4, xmm12
psrad xmm4, 14
pshufd xmm0, xmm1, 13
pmaddwd xmm1, xmm8
paddd xmm1, xmm11
psrad xmm1, 14
packssdw xmm1, xmm4
paddd xmm13, xmm14
pxor xmm4, xmm4
paddw xmm6, XMMWORD PTR -24[rsp]
paddw xmm6, XMMWORD PTR .LC7[rip]
paddd xmm0, xmm15
punpcklqdq xmm0, xmm13
movdqa xmm13, xmm7
paddw xmm1, XMMWORD PTR .LC5[rip]
psrlw xmm6, 2
movdqa xmm12, xmm6
pmaxsw xmm1, xmm4
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm2
movdqa xmm4, XMMWORD PTR -104[rsp]
paddw xmm0, XMMWORD PTR -8[rsp]
paddw xmm0, XMMWORD PTR .LC7[rip]
psrlw xmm0, 2
pxor xmm14, xmm14
movaps XMMWORD PTR 16[r10+r9*2], xmm1
paddw xmm4, XMMWORD PTR 24[rsp]
paddw xmm4, XMMWORD PTR .LC7[rip]
psrlw xmm4, 2
movdqa xmm2, XMMWORD PTR -120[rsp]
movdqa xmm1, XMMWORD PTR -72[rsp]
paddw xmm2, XMMWORD PTR 8[rsp]
paddw xmm2, XMMWORD PTR .LC7[rip]
psrlw xmm2, 2
paddw xmm1, XMMWORD PTR 40[rsp]
paddw xmm1, XMMWORD PTR .LC7[rip]
paddw xmm3, XMMWORD PTR -40[rsp]
paddw xmm3, XMMWORD PTR .LC7[rip]
psrlw xmm3, 2
movdqa xmm11, xmm3
pmaddwd xmm13, XMMWORD PTR .LC9[rip]
pmaddwd xmm12, XMMWORD PTR .LC9[rip]
movdqa xmm15, XMMWORD PTR 56[rsp]
pmaddwd xmm11, XMMWORD PTR .LC8[rip]
paddd xmm13, xmm11
movdqa xmm11, xmm0
psrad xmm13, 14
psrlw xmm1, 2
pmaddwd xmm11, XMMWORD PTR .LC8[rip]
paddd xmm12, xmm11
psrad xmm12, 14
packssdw xmm12, xmm13
movdqa xmm11, xmm4
movdqa xmm13, xmm2
pmaddwd xmm11, XMMWORD PTR .LC8[rip]
paddw xmm12, xmm15
pmaddwd xmm13, XMMWORD PTR .LC9[rip]
pmaxsw xmm12, xmm14
paddd xmm13, xmm11
movdqa xmm14, xmm5
movdqa xmm11, xmm1
psrad xmm13, 14
pminsw xmm12, XMMWORD PTR .LC6[rip]
pmaddwd xmm14, XMMWORD PTR .LC9[rip]
pmaddwd xmm11, XMMWORD PTR .LC8[rip]
paddd xmm11, xmm14
pxor xmm14, xmm14
psrad xmm11, 14
packssdw xmm11, xmm13
movdqa xmm13, XMMWORD PTR 88[rsp]
pmaddwd xmm7, xmm13
pmaddwd xmm2, xmm13
paddw xmm11, xmm15
pmaxsw xmm11, xmm14
movdqa xmm14, XMMWORD PTR 72[rsp]
pminsw xmm11, XMMWORD PTR .LC6[rip]
packuswb xmm11, xmm12
pmaddwd xmm3, xmm14
paddd xmm7, xmm3
movdqa xmm3, xmm6
pmaddwd xmm0, xmm14
psrad xmm7, 14
pmaddwd xmm4, xmm14
pmaddwd xmm3, xmm13
paddd xmm3, xmm0
movdqa xmm0, xmm5
psrad xmm3, 14
paddd xmm2, xmm4
packssdw xmm3, xmm7
psrad xmm2, 14
pxor xmm7, xmm7
pmaddwd xmm1, xmm14
pmaddwd xmm0, xmm13
paddd xmm0, xmm1
psrad xmm0, 14
packssdw xmm0, xmm2
paddw xmm3, xmm15
pmaxsw xmm3, xmm7
pminsw xmm3, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR [rbx+r9], xmm11
paddw xmm0, xmm15
pmaxsw xmm0, xmm7
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, xmm3
movaps XMMWORD PTR 0[rbp+r9], xmm0
add r9, 16
lea r11, [r9+r9]
cmp r12, r11
ja .L7
.L6:
cmp rsi, r12
je .L5
movdqa xmm3, XMMWORD PTR .LC0[rip]
mov rax, QWORD PTR 128[rsp]
movdqu xmm2, XMMWORD PTR 32[rdi+r13]
movdqa xmm11, xmm3
movdqa xmm7, xmm3
movdqu xmm1, XMMWORD PTR 48[rdi+r13]
pand xmm11, xmm2
psrldq xmm2, 1
pand xmm7, xmm1
psrldq xmm1, 1
movdqa xmm6, XMMWORD PTR .LC1[rip]
pshufd xmm4, xmm11, 13
pshufd xmm13, xmm11, 8
pshufd xmm12, xmm7, 8
movdqa xmm5, XMMWORD PTR .LC2[rip]
pand xmm2, xmm6
pshufd xmm0, xmm7, 13
paddd xmm13, xmm4
movdqa xmm4, xmm13
pand xmm1, xmm6
por xmm2, xmm5
paddd xmm0, xmm12
punpcklqdq xmm4, xmm0
por xmm1, xmm5
pshufd xmm13, xmm2, 8
movaps XMMWORD PTR -120[rsp], xmm4
pshufd xmm4, xmm2, 13
pshufd xmm12, xmm1, 8
pshufd xmm0, xmm1, 13
paddd xmm13, xmm4
movdqa xmm15, xmm13
movdqa xmm4, xmm1
movdqa xmm1, XMMWORD PTR .LC4[rip]
paddd xmm0, xmm12
punpcklqdq xmm15, xmm0
movdqa xmm0, XMMWORD PTR .LC3[rip]
pmaddwd xmm7, xmm1
pmaddwd xmm4, xmm0
paddd xmm7, xmm4
movdqa xmm4, xmm2
movdqa xmm2, xmm11
psrad xmm7, 14
movdqa xmm11, xmm3
pmaddwd xmm4, xmm0
movaps XMMWORD PTR -104[rsp], xmm15
pmaddwd xmm2, xmm1
paddd xmm2, xmm4
psrad xmm2, 14
packssdw xmm2, xmm7
pxor xmm7, xmm7
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm7
pminsw xmm2, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR -88[rsp], xmm2
movdqa xmm7, xmm3
movdqu xmm4, XMMWORD PTR 16[rdi+r13]
movdqu xmm2, XMMWORD PTR [rdi+r13]
pand xmm11, xmm4
psrldq xmm4, 1
pand xmm7, xmm2
psrldq xmm2, 1
pand xmm4, xmm6
pshufd xmm14, xmm11, 8
pshufd xmm15, xmm7, 8
pshufd xmm13, xmm7, 13
pmaddwd xmm7, xmm1
pshufd xmm12, xmm11, 13
pmaddwd xmm11, xmm1
pand xmm2, xmm6
paddd xmm13, xmm15
por xmm4, xmm5
paddd xmm12, xmm14
movdqa xmm14, xmm13
por xmm2, xmm5
punpcklqdq xmm14, xmm12
pshufd xmm12, xmm4, 13
pshufd xmm15, xmm2, 8
movaps XMMWORD PTR -72[rsp], xmm14
pshufd xmm13, xmm2, 13
pmaddwd xmm2, xmm0
paddd xmm2, xmm7
pshufd xmm14, xmm4, 8
psrad xmm2, 14
pmaddwd xmm4, xmm0
paddd xmm4, xmm11
psrad xmm4, 14
packssdw xmm2, xmm4
paddd xmm13, xmm15
movdqa xmm7, xmm3
paddd xmm12, xmm14
punpcklqdq xmm13, xmm12
pxor xmm12, xmm12
paddw xmm2, XMMWORD PTR .LC5[rip]
movaps XMMWORD PTR -56[rsp], xmm13
pmaxsw xmm2, xmm12
pminsw xmm2, XMMWORD PTR .LC6[rip]
packuswb xmm2, XMMWORD PTR -88[rsp]
movdqa xmm12, xmm3
movups XMMWORD PTR [r8+rax], xmm2
lea rax, 32[r13+rcx]
movdqu xmm11, XMMWORD PTR 112[rdi+r13]
movdqu xmm4, XMMWORD PTR 96[rdi+r13]
pand xmm7, xmm11
psrldq xmm11, 1
pand xmm12, xmm4
psrldq xmm4, 1
pand xmm11, xmm6
movdqa xmm13, xmm7
pand xmm4, xmm6
pshufd xmm15, xmm12, 8
pshufd xmm14, xmm13, 8
pshufd xmm7, xmm12, 13
pmaddwd xmm12, xmm1
pshufd xmm2, xmm13, 13
pmaddwd xmm13, xmm1
por xmm4, xmm5
por xmm11, xmm5
paddd xmm7, xmm15
paddd xmm2, xmm14
punpcklqdq xmm7, xmm2
pshufd xmm15, xmm4, 8
pshufd xmm14, xmm11, 8
movaps XMMWORD PTR -88[rsp], xmm7
pshufd xmm2, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm12
pshufd xmm7, xmm11, 13
psrad xmm4, 14
pmaddwd xmm11, xmm0
pxor xmm12, xmm12
paddd xmm11, xmm13
psrad xmm11, 14
paddd xmm2, xmm15
packssdw xmm4, xmm11
movdqa xmm11, xmm3
paddd xmm7, xmm14
punpcklqdq xmm2, xmm7
movdqa xmm7, xmm3
paddw xmm4, XMMWORD PTR .LC5[rip]
pmaxsw xmm4, xmm12
pminsw xmm4, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR -40[rsp], xmm2
movaps XMMWORD PTR -24[rsp], xmm4
movdqu xmm2, XMMWORD PTR 64[rdi+r13]
movdqu xmm4, XMMWORD PTR 80[rdi+r13]
pand xmm7, xmm2
psrldq xmm2, 1
pand xmm11, xmm4
psrldq xmm4, 1
pand xmm2, xmm6
pshufd xmm15, xmm7, 8
pshufd xmm13, xmm7, 13
pmaddwd xmm7, xmm1
pshufd xmm14, xmm11, 8
pand xmm4, xmm6
pshufd xmm12, xmm11, 13
paddd xmm13, xmm15
movdqa xmm15, xmm13
por xmm2, xmm5
pmaddwd xmm11, xmm1
por xmm4, xmm5
paddd xmm12, xmm14
punpcklqdq xmm15, xmm12
pshufd xmm13, xmm2, 13
pshufd xmm14, xmm4, 8
movaps XMMWORD PTR -8[rsp], xmm15
pshufd xmm12, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm11
pshufd xmm15, xmm2, 8
psrad xmm4, 14
pmaddwd xmm2, xmm0
pxor xmm11, xmm11
paddd xmm2, xmm7
psrad xmm2, 14
paddd xmm12, xmm14
packssdw xmm2, xmm4
movdqa xmm7, xmm3
paddd xmm13, xmm15
movdqa xmm14, xmm13
punpcklqdq xmm14, xmm12
movaps XMMWORD PTR 8[rsp], xmm14
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm11
pminsw xmm2, XMMWORD PTR .LC6[rip]
packuswb xmm2, XMMWORD PTR -24[rsp]
movdqa xmm11, xmm3
movups XMMWORD PTR -16[r8+rsi], xmm2
mov rdx, QWORD PTR 144[rsp]
movdqu xmm2, XMMWORD PTR [rdi+rax]
lea rax, 48[r13+rcx]
movdqu xmm4, XMMWORD PTR [rdi+rax]
lea rax, [rcx+r13]
pand xmm7, xmm2
psrldq xmm2, 1
pand xmm11, xmm4
psrldq xmm4, 1
pand xmm2, xmm6
pshufd xmm15, xmm7, 8
pshufd xmm14, xmm11, 8
pshufd xmm13, xmm7, 13
pmaddwd xmm7, xmm1
pshufd xmm12, xmm11, 13
pmaddwd xmm11, xmm1
pand xmm4, xmm6
por xmm2, xmm5
paddd xmm13, xmm15
paddd xmm12, xmm14
punpcklqdq xmm13, xmm12
por xmm4, xmm5
pshufd xmm15, xmm2, 8
movaps XMMWORD PTR -24[rsp], xmm13
pshufd xmm13, xmm2, 13
pmaddwd xmm2, xmm0
paddd xmm2, xmm7
pshufd xmm14, xmm4, 8
psrad xmm2, 14
movdqa xmm7, xmm3
pshufd xmm12, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm11
paddd xmm13, xmm15
movdqa xmm15, xmm13
psrad xmm4, 14
packssdw xmm2, xmm4
movdqa xmm11, xmm3
paddd xmm12, xmm14
punpcklqdq xmm15, xmm12
pxor xmm12, xmm12
paddw xmm2, XMMWORD PTR .LC5[rip]
movaps XMMWORD PTR 24[rsp], xmm15
pmaxsw xmm2, xmm12
pminsw xmm2, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR 40[rsp], xmm2
movdqu xmm2, XMMWORD PTR [rdi+rax]
lea rax, 16[r13+rcx]
movdqu xmm4, XMMWORD PTR [rdi+rax]
lea rax, -32[rsi+rdx]
pand xmm7, xmm2
psrldq xmm2, 1
pand xmm11, xmm4
psrldq xmm4, 1
pand xmm2, xmm6
pshufd xmm15, xmm7, 8
pshufd xmm14, xmm11, 8
pshufd xmm13, xmm7, 13
pmaddwd xmm7, xmm1
pshufd xmm12, xmm11, 13
pmaddwd xmm11, xmm1
pand xmm4, xmm6
paddd xmm13, xmm15
por xmm2, xmm5
paddd xmm12, xmm14
movdqa xmm14, xmm13
por xmm4, xmm5
punpcklqdq xmm14, xmm12
pshufd xmm15, xmm2, 8
pshufd xmm13, xmm2, 13
pmaddwd xmm2, xmm0
paddd xmm2, xmm7
movaps XMMWORD PTR 56[rsp], xmm14
psrad xmm2, 14
pshufd xmm14, xmm4, 8
pshufd xmm12, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm11
pxor xmm11, xmm11
psrad xmm4, 14
movdqa xmm7, xmm3
packssdw xmm2, xmm4
paddd xmm13, xmm15
paddd xmm12, xmm14
punpcklqdq xmm13, xmm12
movdqa xmm12, xmm3
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm11
pminsw xmm2, XMMWORD PTR .LC6[rip]
packuswb xmm2, XMMWORD PTR 40[rsp]
movaps XMMWORD PTR 72[rsp], xmm13
movups XMMWORD PTR [r8+rax], xmm2
lea rax, 96[r13+rcx]
movdqu xmm4, XMMWORD PTR [rdi+rax]
lea rax, 112[r13+rcx]
movdqu xmm11, XMMWORD PTR [rdi+rax]
lea rax, 64[r13+rcx]
pand xmm12, xmm4
psrldq xmm4, 1
pand xmm7, xmm11
psrldq xmm11, 1
pand xmm4, xmm6
pshufd xmm15, xmm12, 8
movdqa xmm13, xmm7
pand xmm11, xmm6
pshufd xmm7, xmm12, 13
pmaddwd xmm12, xmm1
pshufd xmm14, xmm13, 8
pshufd xmm2, xmm13, 13
pmaddwd xmm13, xmm1
por xmm4, xmm5
paddd xmm7, xmm15
por xmm11, xmm5
paddd xmm2, xmm14
punpcklqdq xmm7, xmm2
pshufd xmm15, xmm4, 8
pshufd xmm14, xmm11, 8
movaps XMMWORD PTR 40[rsp], xmm7
pshufd xmm2, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm12
pshufd xmm7, xmm11, 13
psrad xmm4, 14
pmaddwd xmm11, xmm0
paddd xmm11, xmm13
psrad xmm11, 14
pxor xmm12, xmm12
paddd xmm2, xmm15
paddd xmm7, xmm14
punpcklqdq xmm2, xmm7
movdqu xmm7, XMMWORD PTR [rdi+rax]
lea rax, 80[r13+rcx]
movaps XMMWORD PTR 88[rsp], xmm2
movdqa xmm2, xmm4
packssdw xmm2, xmm11
movdqu xmm4, XMMWORD PTR [rdi+rax]
movdqa xmm11, xmm3
lea rax, -16[rsi+rdx]
pand xmm11, xmm7
psrldq xmm7, 1
paddw xmm2, XMMWORD PTR .LC5[rip]
pand xmm3, xmm4
psrldq xmm4, 1
pmaxsw xmm2, xmm12
pand xmm4, xmm6
pminsw xmm2, XMMWORD PTR .LC6[rip]
pand xmm7, xmm6
pshufd xmm13, xmm11, 8
pshufd xmm12, xmm3, 8
por xmm7, xmm5
pshufd xmm6, xmm3, 13
pmaddwd xmm3, xmm1
pmaddwd xmm1, xmm11
por xmm5, xmm4
pshufd xmm4, xmm11, 13
paddd xmm6, xmm12
pshufd xmm12, xmm7, 13
pshufd xmm14, xmm5, 8
paddd xmm4, xmm13
pshufd xmm13, xmm7, 8
punpcklqdq xmm4, xmm6
pshufd xmm6, xmm5, 13
pmaddwd xmm5, xmm0
pmaddwd xmm0, xmm7
paddd xmm12, xmm13
paddd xmm5, xmm3
paddd xmm0, xmm1
psrad xmm5, 14
psrad xmm0, 14
packssdw xmm0, xmm5
paddd xmm6, xmm14
punpcklqdq xmm12, xmm6
pxor xmm6, xmm6
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm6
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, xmm2
movdqa xmm6, XMMWORD PTR -72[rsp]
movups XMMWORD PTR [r8+rax], xmm0
paddw xmm6, XMMWORD PTR 56[rsp]
paddw xmm4, XMMWORD PTR -8[rsp]
mov rax, QWORD PTR 136[rsp]
movdqa xmm5, XMMWORD PTR -56[rsp]
movdqa xmm1, XMMWORD PTR .LC7[rip]
paddw xmm5, XMMWORD PTR 72[rsp]
movdqa xmm13, xmm5
movdqa xmm5, XMMWORD PTR -40[rsp]
paddw xmm6, xmm1
movdqa xmm15, xmm6
paddw xmm13, xmm1
paddw xmm4, xmm1
movdqa xmm11, xmm13
paddw xmm5, XMMWORD PTR 88[rsp]
movdqa xmm6, XMMWORD PTR -120[rsp]
movdqa xmm2, xmm5
psrlw xmm4, 2
movdqa xmm14, xmm4
psrlw xmm15, 2
movdqa xmm7, XMMWORD PTR -88[rsp]
paddw xmm6, XMMWORD PTR -24[rsp]
paddw xmm2, xmm1
paddw xmm6, xmm1
psrlw xmm2, 2
movdqa xmm5, xmm2
movdqa xmm3, XMMWORD PTR -104[rsp]
paddw xmm7, XMMWORD PTR 40[rsp]
paddw xmm7, xmm1
psrlw xmm7, 2
movdqa xmm13, xmm7
psrlw xmm6, 2
movdqa xmm0, XMMWORD PTR 8[rsp]
paddw xmm3, XMMWORD PTR 24[rsp]
paddw xmm3, xmm1
psrlw xmm3, 2
psrlw xmm11, 2
paddw xmm0, xmm12
movdqa xmm12, XMMWORD PTR .LC9[rip]
paddw xmm0, xmm1
psrlw xmm0, 2
movdqa xmm1, XMMWORD PTR .LC8[rip]
pmaddwd xmm13, xmm12
pmaddwd xmm14, xmm12
pmaddwd xmm5, xmm1
paddd xmm13, xmm5
movdqa xmm5, xmm0
psrad xmm13, 14
pmaddwd xmm5, xmm1
paddd xmm5, xmm14
psrad xmm5, 14
packssdw xmm5, xmm13
pxor xmm13, xmm13
movdqa xmm14, XMMWORD PTR .LC10[rip]
movaps XMMWORD PTR 56[rsp], xmm14
paddw xmm5, xmm14
movdqa xmm14, xmm6
pmaxsw xmm5, xmm13
pminsw xmm5, XMMWORD PTR .LC6[rip]
movdqa xmm13, xmm3
pmaddwd xmm14, xmm12
pmaddwd xmm12, xmm15
pmaddwd xmm13, xmm1
pmaddwd xmm1, xmm11
paddd xmm13, xmm14
paddd xmm1, xmm12
psrad xmm13, 14
pxor xmm12, xmm12
psrad xmm1, 14
packssdw xmm1, xmm13
movdqa xmm14, XMMWORD PTR 56[rsp]
paddw xmm1, xmm14
pmaxsw xmm1, xmm12
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm5
movdqa xmm5, XMMWORD PTR .LC11[rip]
movups XMMWORD PTR [rbx+rax], xmm1
pmaddwd xmm2, xmm5
pmaddwd xmm0, xmm5
pmaddwd xmm3, xmm5
pmaddwd xmm11, xmm5
movdqa xmm1, XMMWORD PTR .LC12[rip]
pmaddwd xmm7, xmm1
pmaddwd xmm4, xmm1
paddd xmm2, xmm7
paddd xmm0, xmm4
psrad xmm2, 14
psrad xmm0, 14
pmaddwd xmm6, xmm1
packssdw xmm0, xmm2
paddd xmm3, xmm6
pmaddwd xmm15, xmm1
psrad xmm3, 14
paddd xmm11, xmm15
psrad xmm11, 14
packssdw xmm11, xmm3
paddw xmm0, xmm14
pmaxsw xmm0, xmm12
pminsw xmm0, XMMWORD PTR .LC6[rip]
paddw xmm11, xmm14
pmaxsw xmm11, xmm12
pminsw xmm11, XMMWORD PTR .LC6[rip]
packuswb xmm11, xmm0
movups XMMWORD PTR 0[rbp+rax], xmm11
.L5:
add r8, r15
add rbx, QWORD PTR 224[rsp]
add rbp, QWORD PTR 240[rsp]
add r14, 2
add r10, r15
add rdi, QWORD PTR 112[rsp]
cmp QWORD PTR 120[rsp], r14
ja .L9
.L1:
add rsp, 160
pop rbx
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
.size _ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m, .-_ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDE13:
.section .text._ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTE13:
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDB14:
.section .text._ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTB14:
.p2align 4,,15
.weak _ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m
.type _ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m, @function
_ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m:
push r15
push r14
mov rax, rsi
push r13
push r12
and rax, -32
push rbp
push rbx
sub rsp, 208
test rdx, rdx
mov QWORD PTR 144[rsp], rsi
mov QWORD PTR 168[rsp], rdx
mov QWORD PTR 120[rsp], rax
je .L12
lea rax, [r9+r9]
movdqa xmm9, XMMWORD PTR .LC2[rip]
mov r10, rcx
mov r11, r9
mov QWORD PTR 136[rsp], 0
mov QWORD PTR 152[rsp], rax
lea rax, [rcx+rcx]
movdqa xmm8, XMMWORD PTR .LC3[rip]
mov QWORD PTR 160[rsp], rax
mov rax, rsi
sub rax, 32
movdqa xmm10, XMMWORD PTR .LC4[rip]
mov rbx, rax
mov QWORD PTR 176[rsp], rax
lea rax, 0[0+rax*4]
shr rbx
mov QWORD PTR 184[rsp], rbx
mov QWORD PTR 192[rsp], rax
.p2align 4,,10
.p2align 3
.L20:
cmp QWORD PTR 120[rsp], 0
je .L17
movdqa xmm7, XMMWORD PTR .LC10[rip]
lea r9, 80[r10]
lea r15, 32[r10]
mov rsi, QWORD PTR 264[rsp]
mov rcx, QWORD PTR 280[rsp]
lea r14, 48[r10]
movaps XMMWORD PTR 56[rsp], xmm7
mov QWORD PTR 128[rsp], r9
lea r9, 16[r11]
lea r13, 16[r10]
lea r12, 96[r10]
lea rbp, 112[r10]
lea rbx, 64[r10]
xor eax, eax
xor edx, edx
movdqa xmm7, XMMWORD PTR .LC11[rip]
mov QWORD PTR 72[rsp], r9
movdqa xmm6, XMMWORD PTR .LC12[rip]
movaps XMMWORD PTR 88[rsp], xmm7
movaps XMMWORD PTR 104[rsp], xmm6
.p2align 4,,10
.p2align 3
.L18:
lea r9, [r15+rax]
add rsi, 16
add rcx, 16
movdqu xmm4, XMMWORD PTR 48[rdi+rax]
movdqa xmm5, XMMWORD PTR .LC0[rip]
pand xmm5, xmm4
psrldq xmm4, 1
pand xmm4, XMMWORD PTR .LC1[rip]
movdqu xmm0, XMMWORD PTR 32[rdi+rax]
pshufd xmm6, xmm5, 8
movdqa xmm3, XMMWORD PTR .LC0[rip]
pand xmm3, xmm0
psrldq xmm0, 1
por xmm4, xmm9
pand xmm0, XMMWORD PTR .LC1[rip]
pshufd xmm7, xmm3, 8
pshufd xmm2, xmm3, 13
movdqa xmm1, xmm4
pshufd xmm4, xmm5, 13
por xmm0, xmm9
paddd xmm2, xmm7
movdqa xmm7, xmm2
pshufd xmm2, xmm1, 13
paddd xmm4, xmm6
pshufd xmm6, xmm1, 8
pmaddwd xmm1, xmm8
punpcklqdq xmm7, xmm4
pshufd xmm4, xmm0, 13
paddd xmm2, xmm6
movaps XMMWORD PTR -120[rsp], xmm7
pshufd xmm7, xmm0, 8
pmaddwd xmm0, xmm8
paddd xmm4, xmm7
movdqa xmm6, xmm4
movdqa xmm4, XMMWORD PTR .LC0[rip]
punpcklqdq xmm6, xmm2
movdqa xmm2, xmm5
pxor xmm5, xmm5
pmaddwd xmm2, xmm10
paddd xmm1, xmm2
movdqa xmm2, xmm3
movaps XMMWORD PTR -104[rsp], xmm6
psrad xmm1, 14
pmaddwd xmm2, xmm10
paddd xmm2, xmm0
psrad xmm2, 14
packssdw xmm2, xmm1
movdqu xmm3, XMMWORD PTR 16[rdi+rax]
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm5
pminsw xmm2, XMMWORD PTR .LC6[rip]
movdqa xmm5, XMMWORD PTR .LC0[rip]
movdqu xmm0, XMMWORD PTR [rdi+rax]
pand xmm5, xmm3
psrldq xmm3, 1
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm3, XMMWORD PTR .LC1[rip]
movdqa xmm6, xmm5
pand xmm0, XMMWORD PTR .LC1[rip]
pshufd xmm11, xmm4, 8
pshufd xmm7, xmm6, 8
pshufd xmm5, xmm4, 13
pmaddwd xmm4, xmm10
pshufd xmm1, xmm6, 13
pmaddwd xmm6, xmm10
por xmm0, xmm9
por xmm3, xmm9
paddd xmm5, xmm11
paddd xmm1, xmm7
punpcklqdq xmm5, xmm1
pshufd xmm11, xmm0, 8
pshufd xmm7, xmm3, 8
movaps XMMWORD PTR -88[rsp], xmm5
pshufd xmm1, xmm0, 13
pmaddwd xmm0, xmm8
paddd xmm0, xmm4
pshufd xmm5, xmm3, 13
psrad xmm0, 14
pmaddwd xmm3, xmm8
paddd xmm3, xmm6
psrad xmm3, 14
packssdw xmm0, xmm3
pxor xmm3, xmm3
paddd xmm1, xmm11
movdqa xmm4, XMMWORD PTR .LC0[rip]
paddd xmm5, xmm7
punpcklqdq xmm1, xmm5
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm3
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, xmm2
movaps XMMWORD PTR -72[rsp], xmm1
movups XMMWORD PTR [r8+rdx], xmm0
movdqa xmm2, XMMWORD PTR .LC0[rip]
movdqu xmm0, XMMWORD PTR 96[rdi+rax]
movdqu xmm1, XMMWORD PTR 112[rdi+rax]
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm2, xmm1
psrldq xmm1, 1
pand xmm0, XMMWORD PTR .LC1[rip]
pand xmm1, XMMWORD PTR .LC1[rip]
pshufd xmm5, xmm4, 13
pshufd xmm7, xmm4, 8
por xmm0, xmm9
por xmm1, xmm9
pshufd xmm6, xmm2, 8
paddd xmm7, xmm5
movdqa xmm15, xmm7
pshufd xmm3, xmm2, 13
pmaddwd xmm2, xmm10
pshufd xmm7, xmm0, 8
pshufd xmm5, xmm1, 13
paddd xmm3, xmm6
pshufd xmm6, xmm1, 8
pmaddwd xmm1, xmm8
punpcklqdq xmm15, xmm3
paddd xmm1, xmm2
movdqa xmm2, xmm4
pshufd xmm3, xmm0, 13
psrad xmm1, 14
pmaddwd xmm0, xmm8
paddd xmm5, xmm6
pxor xmm4, xmm4
pmaddwd xmm2, xmm10
movaps XMMWORD PTR -56[rsp], xmm15
paddd xmm2, xmm0
psrad xmm2, 14
paddd xmm3, xmm7
punpcklqdq xmm3, xmm5
packssdw xmm2, xmm1
movaps XMMWORD PTR -40[rsp], xmm3
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm4
pminsw xmm2, XMMWORD PTR .LC6[rip]
movdqu xmm1, XMMWORD PTR 64[rdi+rax]
movdqa xmm4, XMMWORD PTR .LC0[rip]
movdqu xmm3, XMMWORD PTR 80[rdi+rax]
pand xmm4, xmm1
psrldq xmm1, 1
movdqa xmm5, XMMWORD PTR .LC0[rip]
pand xmm1, XMMWORD PTR .LC1[rip]
pand xmm5, xmm3
psrldq xmm3, 1
pand xmm3, XMMWORD PTR .LC1[rip]
pshufd xmm11, xmm4, 8
pshufd xmm6, xmm4, 13
pmaddwd xmm4, xmm10
por xmm1, xmm9
por xmm3, xmm9
pshufd xmm7, xmm5, 8
paddd xmm6, xmm11
movdqa xmm14, xmm6
pshufd xmm0, xmm5, 13
pmaddwd xmm5, xmm10
pshufd xmm15, xmm1, 8
pshufd xmm6, xmm3, 13
paddd xmm0, xmm7
pshufd xmm7, xmm3, 8
pmaddwd xmm3, xmm8
punpcklqdq xmm14, xmm0
paddd xmm3, xmm5
psrad xmm3, 14
pshufd xmm0, xmm1, 13
pmaddwd xmm1, xmm8
paddd xmm1, xmm4
pxor xmm4, xmm4
psrad xmm1, 14
paddd xmm6, xmm7
packssdw xmm1, xmm3
paddd xmm0, xmm15
punpcklqdq xmm0, xmm6
movaps XMMWORD PTR -24[rsp], xmm14
paddw xmm1, XMMWORD PTR .LC5[rip]
pmaxsw xmm1, xmm4
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm2
movaps XMMWORD PTR -8[rsp], xmm0
movups XMMWORD PTR 16[r8+rdx], xmm1
movdqa xmm2, XMMWORD PTR .LC0[rip]
movdqu xmm0, XMMWORD PTR [rdi+r9]
lea r9, [r14+rax]
pand xmm2, xmm0
psrldq xmm0, 1
movdqu xmm1, XMMWORD PTR [rdi+r9]
lea r9, [r10+rax]
pand xmm0, XMMWORD PTR .LC1[rip]
movdqa xmm4, XMMWORD PTR .LC0[rip]
pshufd xmm7, xmm2, 8
pand xmm4, xmm1
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
por xmm0, xmm9
movdqa xmm3, xmm4
pshufd xmm5, xmm2, 13
pmaddwd xmm2, xmm10
pshufd xmm4, xmm4, 13
por xmm1, xmm9
pshufd xmm6, xmm3, 8
paddd xmm5, xmm7
movdqa xmm12, xmm5
pshufd xmm7, xmm0, 8
pmaddwd xmm3, xmm10
pshufd xmm5, xmm0, 13
pmaddwd xmm0, xmm8
paddd xmm0, xmm2
paddd xmm4, xmm6
pshufd xmm6, xmm1, 8
psrad xmm0, 14
punpcklqdq xmm12, xmm4
pshufd xmm4, xmm1, 13
paddd xmm5, xmm7
movdqa xmm13, xmm5
movdqa xmm5, xmm0
pmaddwd xmm1, xmm8
paddd xmm1, xmm3
psrad xmm1, 14
movdqu xmm0, XMMWORD PTR [rdi+r9]
lea r9, 0[r13+rax]
paddd xmm4, xmm6
packssdw xmm5, xmm1
punpcklqdq xmm13, xmm4
movdqa xmm1, XMMWORD PTR .LC5[rip]
pxor xmm4, xmm4
paddw xmm1, xmm5
movdqu xmm2, XMMWORD PTR [rdi+r9]
lea r9, [r11+rdx]
pmaxsw xmm1, xmm4
movdqa xmm4, XMMWORD PTR .LC0[rip]
pminsw xmm1, XMMWORD PTR .LC6[rip]
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm0, XMMWORD PTR .LC1[rip]
movaps XMMWORD PTR 8[rsp], xmm12
movdqa xmm3, xmm4
movaps XMMWORD PTR 24[rsp], xmm13
pshufd xmm11, xmm3, 8
por xmm0, xmm9
pshufd xmm5, xmm3, 13
pmaddwd xmm3, xmm10
movdqa xmm4, XMMWORD PTR .LC0[rip]
pshufd xmm12, xmm0, 8
pand xmm4, xmm2
psrldq xmm2, 1
paddd xmm5, xmm11
pand xmm2, XMMWORD PTR .LC1[rip]
pshufd xmm7, xmm4, 8
pshufd xmm6, xmm4, 13
pmaddwd xmm4, xmm10
por xmm2, xmm9
paddd xmm6, xmm7
pshufd xmm7, xmm0, 13
pmaddwd xmm0, xmm8
punpcklqdq xmm5, xmm6
paddd xmm0, xmm3
psrad xmm0, 14
pshufd xmm11, xmm2, 8
pshufd xmm6, xmm2, 13
pmaddwd xmm2, xmm8
paddd xmm2, xmm4
pxor xmm4, xmm4
psrad xmm2, 14
paddd xmm7, xmm12
packssdw xmm0, xmm2
paddd xmm6, xmm11
movdqa xmm11, xmm7
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm4
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, xmm1
punpcklqdq xmm11, xmm6
movdqa xmm4, XMMWORD PTR .LC0[rip]
movups XMMWORD PTR [r8+r9], xmm0
lea r9, [r12+rax]
movaps XMMWORD PTR 40[rsp], xmm11
movdqu xmm0, XMMWORD PTR [rdi+r9]
lea r9, 0[rbp+rax]
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm0, XMMWORD PTR .LC1[rip]
paddw xmm5, XMMWORD PTR -88[rsp]
paddw xmm5, XMMWORD PTR .LC7[rip]
movdqu xmm1, XMMWORD PTR [rdi+r9]
lea r9, [rbx+rax]
psrlw xmm5, 2
pshufd xmm6, xmm4, 13
movdqa xmm2, XMMWORD PTR .LC0[rip]
pshufd xmm7, xmm4, 8
pmaddwd xmm4, xmm10
pand xmm2, xmm1
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
paddd xmm7, xmm6
por xmm0, xmm9
pshufd xmm11, xmm2, 8
pshufd xmm3, xmm2, 13
pmaddwd xmm2, xmm10
por xmm1, xmm9
pshufd xmm12, xmm0, 8
paddd xmm3, xmm11
punpcklqdq xmm7, xmm3
pshufd xmm11, xmm1, 8
pshufd xmm3, xmm0, 13
pmaddwd xmm0, xmm8
paddd xmm0, xmm4
pshufd xmm6, xmm1, 13
psrad xmm0, 14
pmaddwd xmm1, xmm8
paddd xmm1, xmm2
movdqa xmm2, xmm0
psrad xmm1, 14
pxor xmm4, xmm4
paddd xmm3, xmm12
movdqa xmm12, XMMWORD PTR .LC0[rip]
packssdw xmm2, xmm1
paddd xmm6, xmm11
paddw xmm7, XMMWORD PTR -56[rsp]
movdqu xmm1, XMMWORD PTR [rdi+r9]
punpcklqdq xmm3, xmm6
paddw xmm7, XMMWORD PTR .LC7[rip]
mov r9, QWORD PTR 128[rsp]
psrlw xmm7, 2
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm4
movdqa xmm4, XMMWORD PTR .LC0[rip]
pminsw xmm2, XMMWORD PTR .LC6[rip]
pand xmm4, xmm1
add r9, rax
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
sub rax, -128
movdqa xmm11, xmm4
movdqu xmm4, XMMWORD PTR [rdi+r9]
pshufd xmm14, xmm11, 8
mov r9, QWORD PTR 72[rsp]
pand xmm12, xmm4
psrldq xmm4, 1
pand xmm4, XMMWORD PTR .LC1[rip]
add r9, rdx
add rdx, 32
por xmm1, xmm9
pshufd xmm13, xmm12, 8
pshufd xmm6, xmm11, 13
pmaddwd xmm11, xmm10
por xmm4, xmm9
pshufd xmm0, xmm12, 13
pmaddwd xmm12, xmm10
pshufd xmm15, xmm1, 8
paddd xmm6, xmm14
pshufd xmm14, xmm4, 8
paddd xmm0, xmm13
pshufd xmm13, xmm4, 13
pmaddwd xmm4, xmm8
punpcklqdq xmm6, xmm0
paddd xmm4, xmm12
psrad xmm4, 14
pshufd xmm0, xmm1, 13
pmaddwd xmm1, xmm8
paddd xmm1, xmm11
psrad xmm1, 14
packssdw xmm1, xmm4
paddd xmm13, xmm14
pxor xmm4, xmm4
paddw xmm6, XMMWORD PTR -24[rsp]
paddw xmm6, XMMWORD PTR .LC7[rip]
paddd xmm0, xmm15
punpcklqdq xmm0, xmm13
movdqa xmm13, xmm7
paddw xmm1, XMMWORD PTR .LC5[rip]
psrlw xmm6, 2
movdqa xmm12, xmm6
pmaxsw xmm1, xmm4
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm2
movdqa xmm4, XMMWORD PTR -104[rsp]
pxor xmm14, xmm14
movups XMMWORD PTR [r8+r9], xmm1
paddw xmm4, XMMWORD PTR 24[rsp]
paddw xmm4, XMMWORD PTR .LC7[rip]
psrlw xmm4, 2
movdqa xmm2, XMMWORD PTR -120[rsp]
movdqa xmm1, XMMWORD PTR -72[rsp]
paddw xmm2, XMMWORD PTR 8[rsp]
paddw xmm2, XMMWORD PTR .LC7[rip]
psrlw xmm2, 2
paddw xmm1, XMMWORD PTR 40[rsp]
paddw xmm1, XMMWORD PTR .LC7[rip]
paddw xmm0, XMMWORD PTR -8[rsp]
paddw xmm3, XMMWORD PTR -40[rsp]
paddw xmm3, XMMWORD PTR .LC7[rip]
psrlw xmm3, 2
movdqa xmm11, xmm3
paddw xmm0, XMMWORD PTR .LC7[rip]
pmaddwd xmm13, XMMWORD PTR .LC9[rip]
psrlw xmm0, 2
pmaddwd xmm12, XMMWORD PTR .LC9[rip]
movdqa xmm15, XMMWORD PTR 56[rsp]
pmaddwd xmm11, XMMWORD PTR .LC8[rip]
paddd xmm13, xmm11
movdqa xmm11, xmm0
psrad xmm13, 14
psrlw xmm1, 2
pmaddwd xmm11, XMMWORD PTR .LC8[rip]
paddd xmm12, xmm11
psrad xmm12, 14
packssdw xmm12, xmm13
movdqa xmm11, xmm4
movdqa xmm13, xmm2
pmaddwd xmm11, XMMWORD PTR .LC8[rip]
paddw xmm12, xmm15
pmaddwd xmm13, XMMWORD PTR .LC9[rip]
pmaxsw xmm12, xmm14
paddd xmm13, xmm11
movdqa xmm14, xmm5
movdqa xmm11, xmm1
psrad xmm13, 14
pminsw xmm12, XMMWORD PTR .LC6[rip]
pmaddwd xmm14, XMMWORD PTR .LC9[rip]
pmaddwd xmm11, XMMWORD PTR .LC8[rip]
paddd xmm11, xmm14
pxor xmm14, xmm14
psrad xmm11, 14
packssdw xmm11, xmm13
paddw xmm11, xmm15
pmaxsw xmm11, xmm14
pminsw xmm11, XMMWORD PTR .LC6[rip]
packuswb xmm11, xmm12
movups XMMWORD PTR -16[rsi], xmm11
movdqa xmm14, XMMWORD PTR 88[rsp]
movdqa xmm13, XMMWORD PTR 104[rsp]
pmaddwd xmm3, xmm14
pmaddwd xmm0, xmm14
pmaddwd xmm4, xmm14
pmaddwd xmm1, xmm14
pmaddwd xmm7, xmm13
paddd xmm7, xmm3
movdqa xmm3, xmm6
psrad xmm7, 14
pmaddwd xmm2, xmm13
paddd xmm2, xmm4
pmaddwd xmm3, xmm13
paddd xmm3, xmm0
movdqa xmm0, xmm5
psrad xmm3, 14
psrad xmm2, 14
packssdw xmm3, xmm7
pmaddwd xmm0, xmm13
pxor xmm7, xmm7
paddd xmm0, xmm1
psrad xmm0, 14
packssdw xmm0, xmm2
paddw xmm3, xmm15
pmaxsw xmm3, xmm7
pminsw xmm3, XMMWORD PTR .LC6[rip]
paddw xmm0, xmm15
pmaxsw xmm0, xmm7
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, xmm3
movups XMMWORD PTR -16[rcx], xmm0
cmp rdx, QWORD PTR 120[rsp]
jb .L18
.L17:
mov rsi, QWORD PTR 120[rsp]
cmp QWORD PTR 144[rsp], rsi
je .L16
mov rbx, QWORD PTR 192[rsp]
mov rsi, QWORD PTR 176[rsp]
movdqa xmm3, XMMWORD PTR .LC0[rip]
movdqu xmm2, XMMWORD PTR 32[rdi+rbx]
lea rax, 32[rbx+r10]
movdqa xmm11, xmm3
movdqu xmm1, XMMWORD PTR 48[rdi+rbx]
movdqa xmm7, xmm3
pand xmm11, xmm2
psrldq xmm2, 1
pand xmm7, xmm1
movdqa xmm6, XMMWORD PTR .LC1[rip]
psrldq xmm1, 1
pshufd xmm4, xmm11, 13
pshufd xmm13, xmm11, 8
movdqa xmm5, XMMWORD PTR .LC2[rip]
pshufd xmm12, xmm7, 8
pand xmm2, xmm6
pshufd xmm0, xmm7, 13
paddd xmm13, xmm4
movdqa xmm4, xmm13
pand xmm1, xmm6
por xmm2, xmm5
paddd xmm0, xmm12
punpcklqdq xmm4, xmm0
por xmm1, xmm5
pshufd xmm13, xmm2, 8
movaps XMMWORD PTR -120[rsp], xmm4
pshufd xmm4, xmm2, 13
pshufd xmm12, xmm1, 8
pshufd xmm0, xmm1, 13
paddd xmm13, xmm4
movdqa xmm15, xmm13
movdqa xmm4, xmm1
movdqa xmm1, XMMWORD PTR .LC4[rip]
paddd xmm0, xmm12
punpcklqdq xmm15, xmm0
movdqa xmm0, XMMWORD PTR .LC3[rip]
pmaddwd xmm7, xmm1
pmaddwd xmm4, xmm0
paddd xmm7, xmm4
movdqa xmm4, xmm2
movdqa xmm2, xmm11
psrad xmm7, 14
movdqa xmm11, xmm3
pmaddwd xmm4, xmm0
movaps XMMWORD PTR -104[rsp], xmm15
pmaddwd xmm2, xmm1
paddd xmm2, xmm4
psrad xmm2, 14
packssdw xmm2, xmm7
pxor xmm7, xmm7
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm7
pminsw xmm2, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR -88[rsp], xmm2
movdqa xmm7, xmm3
movdqu xmm4, XMMWORD PTR 16[rdi+rbx]
movdqu xmm2, XMMWORD PTR [rdi+rbx]
pand xmm11, xmm4
psrldq xmm4, 1
pand xmm7, xmm2
psrldq xmm2, 1
pand xmm4, xmm6
pshufd xmm14, xmm11, 8
pshufd xmm15, xmm7, 8
pshufd xmm13, xmm7, 13
pmaddwd xmm7, xmm1
pshufd xmm12, xmm11, 13
pmaddwd xmm11, xmm1
pand xmm2, xmm6
paddd xmm13, xmm15
por xmm4, xmm5
paddd xmm12, xmm14
movdqa xmm14, xmm13
por xmm2, xmm5
punpcklqdq xmm14, xmm12
pshufd xmm12, xmm4, 13
pshufd xmm15, xmm2, 8
movaps XMMWORD PTR -72[rsp], xmm14
pshufd xmm13, xmm2, 13
pmaddwd xmm2, xmm0
paddd xmm2, xmm7
pshufd xmm14, xmm4, 8
psrad xmm2, 14
pmaddwd xmm4, xmm0
paddd xmm4, xmm11
psrad xmm4, 14
packssdw xmm2, xmm4
paddd xmm13, xmm15
movdqa xmm7, xmm3
paddd xmm12, xmm14
punpcklqdq xmm13, xmm12
pxor xmm12, xmm12
paddw xmm2, XMMWORD PTR .LC5[rip]
movaps XMMWORD PTR -56[rsp], xmm13
pmaxsw xmm2, xmm12
pminsw xmm2, XMMWORD PTR .LC6[rip]
packuswb xmm2, XMMWORD PTR -88[rsp]
movdqa xmm12, xmm3
movups XMMWORD PTR [r8+rsi], xmm2
movdqu xmm11, XMMWORD PTR 112[rdi+rbx]
movdqu xmm4, XMMWORD PTR 96[rdi+rbx]
pand xmm7, xmm11
psrldq xmm11, 1
pand xmm12, xmm4
psrldq xmm4, 1
pand xmm11, xmm6
movdqa xmm13, xmm7
pand xmm4, xmm6
pshufd xmm15, xmm12, 8
pshufd xmm14, xmm13, 8
pshufd xmm7, xmm12, 13
pmaddwd xmm12, xmm1
pshufd xmm2, xmm13, 13
pmaddwd xmm13, xmm1
por xmm4, xmm5
por xmm11, xmm5
paddd xmm7, xmm15
paddd xmm2, xmm14
punpcklqdq xmm7, xmm2
pshufd xmm15, xmm4, 8
pshufd xmm14, xmm11, 8
movaps XMMWORD PTR -88[rsp], xmm7
pshufd xmm2, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm12
pshufd xmm7, xmm11, 13
psrad xmm4, 14
pmaddwd xmm11, xmm0
pxor xmm12, xmm12
paddd xmm11, xmm13
psrad xmm11, 14
paddd xmm2, xmm15
packssdw xmm4, xmm11
movdqa xmm11, xmm3
paddd xmm7, xmm14
punpcklqdq xmm2, xmm7
movdqa xmm7, xmm3
paddw xmm4, XMMWORD PTR .LC5[rip]
pmaxsw xmm4, xmm12
pminsw xmm4, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR -40[rsp], xmm2
movaps XMMWORD PTR -24[rsp], xmm4
movdqu xmm2, XMMWORD PTR 64[rdi+rbx]
movdqu xmm4, XMMWORD PTR 80[rdi+rbx]
pand xmm7, xmm2
psrldq xmm2, 1
pand xmm11, xmm4
psrldq xmm4, 1
pand xmm2, xmm6
pshufd xmm15, xmm7, 8
pshufd xmm13, xmm7, 13
pmaddwd xmm7, xmm1
pshufd xmm14, xmm11, 8
pand xmm4, xmm6
pshufd xmm12, xmm11, 13
paddd xmm13, xmm15
movdqa xmm15, xmm13
por xmm2, xmm5
pmaddwd xmm11, xmm1
por xmm4, xmm5
paddd xmm12, xmm14
punpcklqdq xmm15, xmm12
pshufd xmm13, xmm2, 13
pshufd xmm14, xmm4, 8
movaps XMMWORD PTR -8[rsp], xmm15
pshufd xmm12, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm11
pshufd xmm15, xmm2, 8
psrad xmm4, 14
pmaddwd xmm2, xmm0
pxor xmm11, xmm11
paddd xmm2, xmm7
psrad xmm2, 14
paddd xmm12, xmm14
packssdw xmm2, xmm4
movdqa xmm7, xmm3
paddd xmm13, xmm15
movdqa xmm14, xmm13
punpcklqdq xmm14, xmm12
movaps XMMWORD PTR 8[rsp], xmm14
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm11
pminsw xmm2, XMMWORD PTR .LC6[rip]
packuswb xmm2, XMMWORD PTR -24[rsp]
movdqa xmm11, xmm3
mov rcx, QWORD PTR 144[rsp]
movups XMMWORD PTR -16[r8+rcx], xmm2
movdqu xmm2, XMMWORD PTR [rdi+rax]
lea rax, 48[rbx+r10]
movdqu xmm4, XMMWORD PTR [rdi+rax]
mov rax, rbx
pand xmm7, xmm2
psrldq xmm2, 1
add rax, r10
pand xmm11, xmm4
psrldq xmm4, 1
pand xmm2, xmm6
pshufd xmm15, xmm7, 8
pshufd xmm14, xmm11, 8
pshufd xmm13, xmm7, 13
pmaddwd xmm7, xmm1
pshufd xmm12, xmm11, 13
pmaddwd xmm11, xmm1
pand xmm4, xmm6
por xmm2, xmm5
paddd xmm13, xmm15
paddd xmm12, xmm14
punpcklqdq xmm13, xmm12
por xmm4, xmm5
pshufd xmm15, xmm2, 8
movaps XMMWORD PTR -24[rsp], xmm13
pshufd xmm13, xmm2, 13
pmaddwd xmm2, xmm0
paddd xmm2, xmm7
pshufd xmm14, xmm4, 8
psrad xmm2, 14
movdqa xmm7, xmm3
pshufd xmm12, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm11
paddd xmm13, xmm15
movdqa xmm15, xmm13
psrad xmm4, 14
packssdw xmm2, xmm4
movdqa xmm11, xmm3
paddd xmm12, xmm14
punpcklqdq xmm15, xmm12
pxor xmm12, xmm12
paddw xmm2, XMMWORD PTR .LC5[rip]
movaps XMMWORD PTR 24[rsp], xmm15
pmaxsw xmm2, xmm12
pminsw xmm2, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR 40[rsp], xmm2
movdqu xmm2, XMMWORD PTR [rdi+rax]
lea rax, 16[rbx+r10]
movdqu xmm4, XMMWORD PTR [rdi+rax]
lea rax, -32[rcx+r11]
pand xmm7, xmm2
psrldq xmm2, 1
pand xmm11, xmm4
psrldq xmm4, 1
pand xmm2, xmm6
pshufd xmm15, xmm7, 8
pshufd xmm14, xmm11, 8
pshufd xmm13, xmm7, 13
pmaddwd xmm7, xmm1
pshufd xmm12, xmm11, 13
pmaddwd xmm11, xmm1
pand xmm4, xmm6
paddd xmm13, xmm15
por xmm2, xmm5
paddd xmm12, xmm14
movdqa xmm14, xmm13
por xmm4, xmm5
punpcklqdq xmm14, xmm12
pshufd xmm15, xmm2, 8
pshufd xmm13, xmm2, 13
pmaddwd xmm2, xmm0
paddd xmm2, xmm7
movaps XMMWORD PTR 56[rsp], xmm14
psrad xmm2, 14
pshufd xmm14, xmm4, 8
pshufd xmm12, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm11
pxor xmm11, xmm11
psrad xmm4, 14
movdqa xmm7, xmm3
packssdw xmm2, xmm4
paddd xmm13, xmm15
paddd xmm12, xmm14
punpcklqdq xmm13, xmm12
movdqa xmm12, xmm3
paddw xmm2, XMMWORD PTR .LC5[rip]
pmaxsw xmm2, xmm11
pminsw xmm2, XMMWORD PTR .LC6[rip]
packuswb xmm2, XMMWORD PTR 40[rsp]
movaps XMMWORD PTR 72[rsp], xmm13
movups XMMWORD PTR [r8+rax], xmm2
lea rax, 96[rbx+r10]
movdqu xmm4, XMMWORD PTR [rdi+rax]
lea rax, 112[rbx+r10]
movdqu xmm11, XMMWORD PTR [rdi+rax]
lea rax, 64[rbx+r10]
pand xmm12, xmm4
psrldq xmm4, 1
pand xmm7, xmm11
psrldq xmm11, 1
pand xmm4, xmm6
pshufd xmm15, xmm12, 8
movdqa xmm13, xmm7
pand xmm11, xmm6
pshufd xmm7, xmm12, 13
pmaddwd xmm12, xmm1
pshufd xmm14, xmm13, 8
pshufd xmm2, xmm13, 13
pmaddwd xmm13, xmm1
por xmm4, xmm5
paddd xmm7, xmm15
por xmm11, xmm5
paddd xmm2, xmm14
punpcklqdq xmm7, xmm2
pshufd xmm15, xmm4, 8
pshufd xmm14, xmm11, 8
movaps XMMWORD PTR 40[rsp], xmm7
pshufd xmm2, xmm4, 13
pmaddwd xmm4, xmm0
paddd xmm4, xmm12
pshufd xmm7, xmm11, 13
psrad xmm4, 14
pmaddwd xmm11, xmm0
paddd xmm11, xmm13
psrad xmm11, 14
pxor xmm12, xmm12
paddd xmm2, xmm15
paddd xmm7, xmm14
punpcklqdq xmm2, xmm7
movdqu xmm7, XMMWORD PTR [rdi+rax]
lea rax, 80[rbx+r10]
movaps XMMWORD PTR 88[rsp], xmm2
movdqa xmm2, xmm4
packssdw xmm2, xmm11
movdqu xmm4, XMMWORD PTR [rdi+rax]
movdqa xmm11, xmm3
lea rax, -16[rcx+r11]
pand xmm11, xmm7
psrldq xmm7, 1
paddw xmm2, XMMWORD PTR .LC5[rip]
pand xmm3, xmm4
psrldq xmm4, 1
pmaxsw xmm2, xmm12
pand xmm4, xmm6
pminsw xmm2, XMMWORD PTR .LC6[rip]
pand xmm7, xmm6
pshufd xmm13, xmm11, 8
pshufd xmm12, xmm3, 8
por xmm7, xmm5
pshufd xmm6, xmm3, 13
pmaddwd xmm3, xmm1
pmaddwd xmm1, xmm11
por xmm5, xmm4
pshufd xmm4, xmm11, 13
paddd xmm6, xmm12
pshufd xmm12, xmm7, 13
pshufd xmm14, xmm5, 8
paddd xmm4, xmm13
pshufd xmm13, xmm7, 8
punpcklqdq xmm4, xmm6
pshufd xmm6, xmm5, 13
pmaddwd xmm5, xmm0
pmaddwd xmm0, xmm7
paddd xmm12, xmm13
paddd xmm5, xmm3
paddd xmm0, xmm1
psrad xmm5, 14
psrad xmm0, 14
packssdw xmm0, xmm5
paddd xmm6, xmm14
punpcklqdq xmm12, xmm6
pxor xmm6, xmm6
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm6
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, xmm2
movdqa xmm6, XMMWORD PTR -72[rsp]
movups XMMWORD PTR [r8+rax], xmm0
paddw xmm6, XMMWORD PTR 56[rsp]
paddw xmm4, XMMWORD PTR -8[rsp]
mov rbx, QWORD PTR 264[rsp]
mov rax, QWORD PTR 184[rsp]
movdqa xmm5, XMMWORD PTR -56[rsp]
movdqa xmm1, XMMWORD PTR .LC7[rip]
paddw xmm5, XMMWORD PTR 72[rsp]
movdqa xmm13, xmm5
movdqa xmm5, XMMWORD PTR -40[rsp]
paddw xmm6, xmm1
movdqa xmm15, xmm6
paddw xmm13, xmm1
paddw xmm4, xmm1
movdqa xmm11, xmm13
paddw xmm5, XMMWORD PTR 88[rsp]
movdqa xmm6, XMMWORD PTR -120[rsp]
movdqa xmm2, xmm5
psrlw xmm4, 2
movdqa xmm14, xmm4
psrlw xmm15, 2
movdqa xmm7, XMMWORD PTR -88[rsp]
paddw xmm6, XMMWORD PTR -24[rsp]
paddw xmm2, xmm1
paddw xmm6, xmm1
psrlw xmm2, 2
movdqa xmm5, xmm2
movdqa xmm3, XMMWORD PTR -104[rsp]
paddw xmm7, XMMWORD PTR 40[rsp]
paddw xmm7, xmm1
psrlw xmm7, 2
movdqa xmm13, xmm7
psrlw xmm6, 2
movdqa xmm0, XMMWORD PTR 8[rsp]
paddw xmm3, XMMWORD PTR 24[rsp]
paddw xmm3, xmm1
psrlw xmm3, 2
psrlw xmm11, 2
paddw xmm0, xmm12
movdqa xmm12, XMMWORD PTR .LC9[rip]
paddw xmm0, xmm1
psrlw xmm0, 2
movdqa xmm1, XMMWORD PTR .LC8[rip]
pmaddwd xmm13, xmm12
pmaddwd xmm14, xmm12
pmaddwd xmm5, xmm1
paddd xmm13, xmm5
movdqa xmm5, xmm0
psrad xmm13, 14
pmaddwd xmm5, xmm1
paddd xmm5, xmm14
psrad xmm5, 14
packssdw xmm5, xmm13
pxor xmm13, xmm13
movdqa xmm14, XMMWORD PTR .LC10[rip]
movaps XMMWORD PTR 56[rsp], xmm14
paddw xmm5, xmm14
movdqa xmm14, xmm6
pmaxsw xmm5, xmm13
pminsw xmm5, XMMWORD PTR .LC6[rip]
movdqa xmm13, xmm3
pmaddwd xmm14, xmm12
pmaddwd xmm12, xmm15
pmaddwd xmm13, xmm1
pmaddwd xmm1, xmm11
paddd xmm13, xmm14
paddd xmm1, xmm12
psrad xmm13, 14
pxor xmm12, xmm12
psrad xmm1, 14
packssdw xmm1, xmm13
movdqa xmm14, XMMWORD PTR 56[rsp]
paddw xmm1, xmm14
pmaxsw xmm1, xmm12
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm5
movdqa xmm5, XMMWORD PTR .LC11[rip]
movups XMMWORD PTR [rbx+rax], xmm1
pmaddwd xmm2, xmm5
pmaddwd xmm0, xmm5
pmaddwd xmm3, xmm5
pmaddwd xmm11, xmm5
mov rsi, QWORD PTR 280[rsp]
movdqa xmm1, XMMWORD PTR .LC12[rip]
pmaddwd xmm7, xmm1
pmaddwd xmm4, xmm1
paddd xmm2, xmm7
paddd xmm0, xmm4
psrad xmm2, 14
psrad xmm0, 14
pmaddwd xmm6, xmm1
packssdw xmm0, xmm2
paddd xmm3, xmm6
pmaddwd xmm15, xmm1
psrad xmm3, 14
paddd xmm11, xmm15
psrad xmm11, 14
packssdw xmm11, xmm3
paddw xmm0, xmm14
pmaxsw xmm0, xmm12
pminsw xmm0, XMMWORD PTR .LC6[rip]
paddw xmm11, xmm14
pmaxsw xmm11, xmm12
pminsw xmm11, XMMWORD PTR .LC6[rip]
packuswb xmm11, xmm0
movups XMMWORD PTR [rsi+rax], xmm11
.L16:
add QWORD PTR 136[rsp], 2
mov rax, QWORD PTR 272[rsp]
add r8, QWORD PTR 152[rsp]
add QWORD PTR 264[rsp], rax
add rdi, QWORD PTR 160[rsp]
mov rax, QWORD PTR 288[rsp]
add QWORD PTR 280[rsp], rax
mov rax, QWORD PTR 136[rsp]
cmp QWORD PTR 168[rsp], rax
ja .L20
.L12:
add rsp, 208
pop rbx
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
.size _ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m, .-_ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDE14:
.section .text._ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTE14:
.section .text.unlikely,"ax",@progbits
.LCOLDB15:
.text
.LHOTB15:
.p2align 4,,15
.globl _ZN4Simd4Sse213BgraToYuv420pEPKhmmmPhmS3_mS3_m
.type _ZN4Simd4Sse213BgraToYuv420pEPKhmmmPhmS3_mS3_m, @function
_ZN4Simd4Sse213BgraToYuv420pEPKhmmmPhmS3_mS3_m:
test r8b, 15
push rbx
mov rax, QWORD PTR 16[rsp]
mov r10, QWORD PTR 24[rsp]
mov r11, QWORD PTR 32[rsp]
mov rbx, QWORD PTR 40[rsp]
je .L26
.L23:
mov QWORD PTR 40[rsp], rbx
mov QWORD PTR 32[rsp], r11
mov QWORD PTR 24[rsp], r10
mov QWORD PTR 16[rsp], rax
pop rbx
jmp _ZN4Simd4Sse213BgraToYuv420pILb0EEEvPKhmmmPhmS4_mS4_m@PLT
.p2align 4,,10
.p2align 3
.L26:
test r9b, 15
jne .L23
test al, 15
jne .L23
test r10b, 15
jne .L23
test r11b, 15
jne .L23
test bl, 15
jne .L23
test dil, 15
jne .L23
test cl, 15
jne .L23
pop rbx
jmp _ZN4Simd4Sse213BgraToYuv420pILb1EEEvPKhmmmPhmS4_mS4_m@PLT
.size _ZN4Simd4Sse213BgraToYuv420pEPKhmmmPhmS3_mS3_m, .-_ZN4Simd4Sse213BgraToYuv420pEPKhmmmPhmS3_mS3_m
.section .text.unlikely
.LCOLDE15:
.text
.LHOTE15:
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDB17:
.section .text._ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTB17:
.p2align 4,,15
.weak _ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m
.type _ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m, @function
_ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m:
push r15
push r14
push r13
push r12
push rbp
mov rbp, rsi
push rbx
and rbp, -32
test rdx, rdx
mov r11, QWORD PTR 56[rsp]
mov rbx, QWORD PTR 72[rsp]
je .L27
lea rax, -32[rsi]
lea r13, 32[rdi]
xor r15d, r15d
movdqa xmm7, XMMWORD PTR .LC4[rip]
mov r14, rax
lea r12, [rdi+rax*4]
mov QWORD PTR -16[rsp], rax
movdqa xmm8, XMMWORD PTR .LC6[rip]
shr r14
movdqa xmm9, XMMWORD PTR .LC16[rip]
.p2align 4,,10
.p2align 3
.L34:
test rbp, rbp
je .L32
movdqa xmm6, XMMWORD PTR .LC11[rip]
mov rax, r13
xor edi, edi
movaps XMMWORD PTR -56[rsp], xmm6
movdqa xmm6, XMMWORD PTR .LC12[rip]
movdqa xmm5, XMMWORD PTR .LC10[rip]
movaps XMMWORD PTR -40[rsp], xmm6
movdqa xmm15, xmm5
.p2align 4,,10
.p2align 3
.L29:
sub rax, -128
movdqa xmm0, XMMWORD PTR -128[rax]
movdqa xmm1, XMMWORD PTR -112[rax]
movdqa xmm5, XMMWORD PTR .LC0[rip]
movdqa xmm2, XMMWORD PTR .LC0[rip]
pand xmm5, xmm0
psrldq xmm0, 1
pand xmm2, xmm1
psrldq xmm1, 1
pand xmm0, XMMWORD PTR .LC1[rip]
pand xmm1, XMMWORD PTR .LC1[rip]
pshufd xmm4, xmm5, 13
pshufd xmm6, xmm2, 8
pshufd xmm11, xmm5, 8
pshufd xmm3, xmm2, 13
pmaddwd xmm2, xmm7
por xmm1, XMMWORD PTR .LC2[rip]
paddd xmm11, xmm4
por xmm0, XMMWORD PTR .LC2[rip]
paddd xmm3, xmm6
movdqa xmm6, xmm11
punpcklqdq xmm6, xmm3
pshufd xmm3, xmm1, 13
pshufd xmm10, xmm0, 8
movaps XMMWORD PTR -120[rsp], xmm6
pshufd xmm4, xmm0, 13
pmaddwd xmm0, XMMWORD PTR .LC3[rip]
pshufd xmm6, xmm1, 8
paddd xmm4, xmm10
paddd xmm3, xmm6
punpcklqdq xmm4, xmm3
movdqa xmm3, xmm1
movdqa xmm1, xmm5
pxor xmm5, xmm5
pmaddwd xmm3, XMMWORD PTR .LC3[rip]
pmaddwd xmm1, xmm7
paddd xmm2, xmm3
paddd xmm1, xmm0
psrad xmm2, 14
psrad xmm1, 14
packssdw xmm1, xmm2
movdqa xmm0, XMMWORD PTR -160[rax]
movdqa xmm2, XMMWORD PTR -144[rax]
paddw xmm1, XMMWORD PTR .LC5[rip]
pmaxsw xmm1, xmm5
pminsw xmm1, xmm8
movdqa xmm3, XMMWORD PTR .LC0[rip]
movdqa xmm5, XMMWORD PTR .LC0[rip]
pand xmm3, xmm0
psrldq xmm0, 1
pand xmm5, xmm2
psrldq xmm2, 1
pand xmm0, XMMWORD PTR .LC1[rip]
movaps XMMWORD PTR -104[rsp], xmm4
pand xmm2, XMMWORD PTR .LC1[rip]
movdqa xmm4, xmm5
pshufd xmm11, xmm3, 8
por xmm0, XMMWORD PTR .LC2[rip]
por xmm2, XMMWORD PTR .LC2[rip]
pshufd xmm10, xmm4, 8
pshufd xmm5, xmm3, 13
pmaddwd xmm3, xmm7
pshufd xmm6, xmm4, 13
pmaddwd xmm4, xmm7
pshufd xmm12, xmm0, 8
paddd xmm5, xmm11
pshufd xmm11, xmm2, 8
paddd xmm6, xmm10
pshufd xmm10, xmm0, 13
pmaddwd xmm0, XMMWORD PTR .LC3[rip]
punpcklqdq xmm5, xmm6
paddd xmm0, xmm3
psrad xmm0, 14
pshufd xmm6, xmm2, 13
pmaddwd xmm2, XMMWORD PTR .LC3[rip]
paddd xmm2, xmm4
pxor xmm3, xmm3
psrad xmm2, 14
paddd xmm10, xmm12
packssdw xmm0, xmm2
movdqa xmm4, XMMWORD PTR .LC0[rip]
paddw xmm5, xmm9
paddd xmm6, xmm11
punpcklqdq xmm10, xmm6
psrlw xmm5, 1
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm3
pminsw xmm0, xmm8
packuswb xmm0, xmm1
movaps XMMWORD PTR -88[rsp], xmm10
movaps XMMWORD PTR [r8+rdi*2], xmm0
movdqa xmm0, XMMWORD PTR -64[rax]
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm0, XMMWORD PTR .LC1[rip]
movdqa xmm1, XMMWORD PTR -48[rax]
pshufd xmm6, xmm4, 13
movdqa xmm2, XMMWORD PTR .LC0[rip]
pshufd xmm10, xmm4, 8
pand xmm2, xmm1
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
paddd xmm10, xmm6
pshufd xmm11, xmm2, 8
pshufd xmm3, xmm2, 13
pmaddwd xmm2, xmm7
por xmm0, XMMWORD PTR .LC2[rip]
por xmm1, XMMWORD PTR .LC2[rip]
paddd xmm3, xmm11
punpcklqdq xmm10, xmm3
pshufd xmm12, xmm0, 8
pshufd xmm3, xmm0, 13
pmaddwd xmm0, XMMWORD PTR .LC3[rip]
pshufd xmm11, xmm1, 8
paddw xmm10, xmm9
psrlw xmm10, 1
pshufd xmm6, xmm1, 13
pmaddwd xmm1, XMMWORD PTR .LC3[rip]
paddd xmm1, xmm2
movdqa xmm2, xmm4
paddd xmm3, xmm12
movdqa xmm4, XMMWORD PTR -80[rax]
psrad xmm1, 14
paddd xmm6, xmm11
pmaddwd xmm2, xmm7
movdqa xmm11, XMMWORD PTR .LC0[rip]
paddd xmm2, xmm0
punpcklqdq xmm3, xmm6
psrad xmm2, 14
movdqa xmm0, XMMWORD PTR -96[rax]
packssdw xmm2, xmm1
pxor xmm1, xmm1
pand xmm11, xmm0
psrldq xmm0, 1
movdqa xmm12, XMMWORD PTR .LC0[rip]
pand xmm0, XMMWORD PTR .LC1[rip]
paddw xmm2, XMMWORD PTR .LC5[rip]
paddw xmm3, xmm9
pmaxsw xmm2, xmm1
pminsw xmm2, xmm8
psrlw xmm3, 1
pand xmm12, xmm4
psrldq xmm4, 1
pand xmm4, XMMWORD PTR .LC1[rip]
por xmm0, XMMWORD PTR .LC2[rip]
pshufd xmm14, xmm11, 8
pshufd xmm6, xmm11, 13
pmaddwd xmm11, xmm7
por xmm4, XMMWORD PTR .LC2[rip]
pshufd xmm13, xmm12, 8
paddd xmm6, xmm14
pshufd xmm1, xmm12, 13
pmaddwd xmm12, xmm7
pshufd xmm14, xmm0, 8
paddd xmm1, xmm13
pshufd xmm13, xmm4, 13
movaps XMMWORD PTR -72[rsp], xmm14
punpcklqdq xmm6, xmm1
pshufd xmm14, xmm4, 8
pmaddwd xmm4, XMMWORD PTR .LC3[rip]
paddd xmm4, xmm12
pshufd xmm1, xmm0, 13
psrad xmm4, 14
pmaddwd xmm0, XMMWORD PTR .LC3[rip]
paddd xmm0, xmm11
psrad xmm0, 14
packssdw xmm0, xmm4
paddd xmm13, xmm14
movdqa xmm11, XMMWORD PTR -120[rsp]
paddw xmm6, xmm9
paddd xmm1, XMMWORD PTR -72[rsp]
punpcklqdq xmm1, xmm13
psrlw xmm6, 1
pxor xmm13, xmm13
paddw xmm0, XMMWORD PTR .LC5[rip]
movdqa xmm4, XMMWORD PTR -104[rsp]
movdqa xmm12, xmm6
paddw xmm11, xmm9
psrlw xmm11, 1
paddw xmm1, xmm9
psrlw xmm1, 1
paddw xmm4, xmm9
pmaxsw xmm0, xmm13
pminsw xmm0, xmm8
packuswb xmm0, xmm2
movdqa xmm13, xmm10
movdqa xmm2, xmm3
psrlw xmm4, 1
movdqa xmm14, xmm5
movaps XMMWORD PTR 16[r8+rdi*2], xmm0
pmaddwd xmm2, XMMWORD PTR .LC8[rip]
movdqa xmm0, XMMWORD PTR -88[rsp]
pmaddwd xmm13, XMMWORD PTR .LC9[rip]
paddd xmm13, xmm2
movdqa xmm2, xmm1
psrad xmm13, 14
pmaddwd xmm12, XMMWORD PTR .LC9[rip]
paddw xmm0, xmm9
psrlw xmm0, 1
pmaddwd xmm14, XMMWORD PTR .LC9[rip]
pmaddwd xmm2, XMMWORD PTR .LC8[rip]
paddd xmm12, xmm2
pxor xmm2, xmm2
psrad xmm12, 14
packssdw xmm12, xmm13
movdqa xmm13, xmm11
pmaddwd xmm13, XMMWORD PTR .LC9[rip]
paddw xmm12, xmm15
pmaxsw xmm12, xmm2
movdqa xmm2, xmm4
pminsw xmm12, xmm8
pmaddwd xmm2, XMMWORD PTR .LC8[rip]
paddd xmm13, xmm2
movdqa xmm2, xmm0
psrad xmm13, 14
pmaddwd xmm2, XMMWORD PTR .LC8[rip]
paddd xmm2, xmm14
pxor xmm14, xmm14
psrad xmm2, 14
packssdw xmm2, xmm13
paddw xmm2, xmm15
pmaxsw xmm2, xmm14
pminsw xmm2, xmm8
packuswb xmm2, xmm12
movdqa xmm14, XMMWORD PTR -40[rsp]
movaps XMMWORD PTR [r11+rdi], xmm2
pmaddwd xmm6, xmm14
pmaddwd xmm10, xmm14
pmaddwd xmm11, xmm14
pmaddwd xmm5, xmm14
movdqa xmm2, XMMWORD PTR -56[rsp]
pmaddwd xmm3, xmm2
pmaddwd xmm1, xmm2
paddd xmm3, xmm10
paddd xmm1, xmm6
psrad xmm3, 14
pxor xmm6, xmm6
psrad xmm1, 14
pmaddwd xmm4, xmm2
packssdw xmm1, xmm3
paddd xmm4, xmm11
pmaddwd xmm0, xmm2
psrad xmm4, 14
paddd xmm0, xmm5
psrad xmm0, 14
packssdw xmm0, xmm4
paddw xmm1, xmm15
pmaxsw xmm1, xmm6
pminsw xmm1, xmm8
paddw xmm0, xmm15
pmaxsw xmm0, xmm6
pminsw xmm0, xmm8
packuswb xmm0, xmm1
movaps XMMWORD PTR [rbx+rdi], xmm0
add rdi, 16
lea r10, [rdi+rdi]
cmp rbp, r10
ja .L29
.L32:
cmp rsi, rbp
je .L31
movdqa xmm4, XMMWORD PTR .LC0[rip]
mov rax, QWORD PTR -16[rsp]
movdqu xmm0, XMMWORD PTR 32[r12]
movdqa xmm11, xmm4
movdqa xmm10, xmm4
movdqu xmm3, XMMWORD PTR 48[r12]
pand xmm11, xmm0
psrldq xmm0, 1
pand xmm10, xmm3
psrldq xmm3, 1
movdqa xmm6, XMMWORD PTR .LC1[rip]
pshufd xmm13, xmm11, 8
pshufd xmm2, xmm11, 13
pshufd xmm12, xmm10, 8
movdqa xmm5, XMMWORD PTR .LC2[rip]
pand xmm0, xmm6
pshufd xmm1, xmm10, 13
paddd xmm2, xmm13
pand xmm3, xmm6
por xmm0, xmm5
paddd xmm1, xmm12
punpcklqdq xmm2, xmm1
por xmm3, xmm5
pshufd xmm13, xmm0, 8
movaps XMMWORD PTR -120[rsp], xmm2
pshufd xmm2, xmm0, 13
pshufd xmm12, xmm3, 8
pshufd xmm1, xmm3, 13
paddd xmm2, xmm13
movdqa xmm15, xmm2
movdqa xmm2, XMMWORD PTR .LC4[rip]
paddd xmm1, xmm12
punpcklqdq xmm15, xmm1
pmaddwd xmm10, xmm2
movdqa xmm1, XMMWORD PTR .LC3[rip]
pmaddwd xmm3, xmm1
paddd xmm10, xmm3
movdqa xmm3, xmm0
movdqa xmm0, xmm11
psrad xmm10, 14
movdqa xmm11, xmm4
pmaddwd xmm3, xmm1
movaps XMMWORD PTR -104[rsp], xmm15
pmaddwd xmm0, xmm2
paddd xmm0, xmm3
pxor xmm3, xmm3
psrad xmm0, 14
packssdw xmm0, xmm10
movdqa xmm10, xmm4
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm3
pminsw xmm0, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR -88[rsp], xmm0
movdqu xmm0, XMMWORD PTR [r12]
movdqu xmm3, XMMWORD PTR 16[r12]
pand xmm10, xmm0
psrldq xmm0, 1
pand xmm11, xmm3
psrldq xmm3, 1
pand xmm0, xmm6
pshufd xmm15, xmm10, 8
pshufd xmm14, xmm11, 8
pand xmm3, xmm6
pshufd xmm13, xmm10, 13
pmaddwd xmm10, xmm2
pshufd xmm12, xmm11, 13
pmaddwd xmm11, xmm2
por xmm0, xmm5
por xmm3, xmm5
paddd xmm13, xmm15
paddd xmm12, xmm14
punpcklqdq xmm13, xmm12
pshufd xmm15, xmm0, 8
pshufd xmm14, xmm3, 8
movaps XMMWORD PTR -72[rsp], xmm13
pshufd xmm12, xmm3, 13
pmaddwd xmm3, xmm1
paddd xmm3, xmm11
pshufd xmm13, xmm0, 13
psrad xmm3, 14
pmaddwd xmm0, xmm1
paddd xmm0, xmm10
pxor xmm10, xmm10
psrad xmm0, 14
packssdw xmm0, xmm3
paddd xmm12, xmm14
movdqa xmm11, xmm4
paddd xmm13, xmm15
movdqa xmm14, xmm13
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm10
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, XMMWORD PTR -88[rsp]
punpcklqdq xmm14, xmm12
movdqa xmm12, xmm4
movaps XMMWORD PTR -56[rsp], xmm14
movups XMMWORD PTR [r8+rax], xmm0
movdqu xmm0, XMMWORD PTR 96[r12]
movdqu xmm3, XMMWORD PTR 112[r12]
pand xmm11, xmm0
psrldq xmm0, 1
pand xmm12, xmm3
psrldq xmm3, 1
pand xmm0, xmm6
pshufd xmm15, xmm11, 8
pshufd xmm14, xmm12, 8
pand xmm3, xmm6
pshufd xmm10, xmm11, 13
pmaddwd xmm11, xmm2
pshufd xmm13, xmm12, 13
pmaddwd xmm12, xmm2
por xmm0, xmm5
por xmm3, xmm5
paddd xmm10, xmm15
paddd xmm13, xmm14
punpcklqdq xmm10, xmm13
pshufd xmm15, xmm0, 8
pshufd xmm13, xmm0, 13
pmaddwd xmm0, xmm1
paddd xmm0, xmm11
movaps XMMWORD PTR -88[rsp], xmm10
psrad xmm0, 14
pshufd xmm14, xmm3, 8
pshufd xmm10, xmm3, 13
paddd xmm13, xmm15
movdqa xmm15, xmm13
pmaddwd xmm3, xmm1
paddd xmm3, xmm12
psrad xmm3, 14
movdqa xmm12, xmm4
paddd xmm10, xmm14
punpcklqdq xmm15, xmm10
movaps XMMWORD PTR -40[rsp], xmm15
movdqa xmm15, xmm0
pxor xmm0, xmm0
packssdw xmm15, xmm3
movdqa xmm3, XMMWORD PTR .LC5[rip]
movdqu xmm10, XMMWORD PTR 64[r12]
paddw xmm3, xmm15
pmaxsw xmm3, xmm0
pminsw xmm3, XMMWORD PTR .LC6[rip]
movdqu xmm0, XMMWORD PTR 80[r12]
pand xmm12, xmm10
psrldq xmm10, 1
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm10, xmm6
pand xmm0, xmm6
pshufd xmm13, xmm4, 8
por xmm10, xmm5
pshufd xmm6, xmm12, 13
por xmm5, xmm0
pshufd xmm11, xmm12, 8
pshufd xmm0, xmm4, 13
pmaddwd xmm4, xmm2
pmaddwd xmm2, xmm12
pshufd xmm14, xmm10, 8
paddd xmm11, xmm6
pshufd xmm6, xmm5, 13
paddd xmm0, xmm13
pshufd xmm13, xmm5, 8
pmaddwd xmm5, xmm1
pmaddwd xmm1, xmm10
paddd xmm5, xmm4
paddd xmm1, xmm2
psrad xmm5, 14
psrad xmm1, 14
packssdw xmm1, xmm5
pxor xmm5, xmm5
paddd xmm6, xmm13
punpcklqdq xmm11, xmm0
pshufd xmm0, xmm10, 13
paddw xmm1, XMMWORD PTR .LC5[rip]
pmaxsw xmm1, xmm5
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm3
movdqa xmm4, xmm11
paddd xmm0, xmm14
punpcklqdq xmm0, xmm6
movups XMMWORD PTR -16[r8+rsi], xmm1
movdqa xmm3, XMMWORD PTR .LC16[rip]
movdqa xmm6, XMMWORD PTR -120[rsp]
paddw xmm4, xmm3
paddw xmm0, xmm3
psrlw xmm4, 1
psrlw xmm0, 1
movdqa xmm14, xmm4
movdqa xmm5, XMMWORD PTR -72[rsp]
paddw xmm6, xmm3
psrlw xmm6, 1
movdqa xmm10, XMMWORD PTR -88[rsp]
paddw xmm5, xmm3
movdqa xmm15, xmm5
movdqa xmm13, XMMWORD PTR -56[rsp]
paddw xmm10, xmm3
psrlw xmm10, 1
movdqa xmm12, xmm10
psrlw xmm15, 1
movdqa xmm2, XMMWORD PTR -104[rsp]
paddw xmm13, xmm3
psrlw xmm13, 1
movdqa xmm1, XMMWORD PTR .LC8[rip]
paddw xmm2, xmm3
paddw xmm3, XMMWORD PTR -40[rsp]
psrlw xmm3, 1
movdqa xmm5, xmm3
psrlw xmm2, 1
movdqa xmm11, XMMWORD PTR .LC9[rip]
pmaddwd xmm5, xmm1
pmaddwd xmm12, xmm11
paddd xmm12, xmm5
movdqa xmm5, xmm0
pmaddwd xmm14, xmm11
psrad xmm12, 14
pmaddwd xmm5, xmm1
paddd xmm5, xmm14
psrad xmm5, 14
packssdw xmm5, xmm12
pxor xmm12, xmm12
movdqa xmm14, XMMWORD PTR .LC10[rip]
movaps XMMWORD PTR -120[rsp], xmm14
paddw xmm5, xmm14
movdqa xmm14, xmm6
pmaxsw xmm5, xmm12
pminsw xmm5, XMMWORD PTR .LC6[rip]
movdqa xmm12, xmm2
pmaddwd xmm14, xmm11
pmaddwd xmm11, xmm15
pmaddwd xmm12, xmm1
pmaddwd xmm1, xmm13
paddd xmm12, xmm14
paddd xmm1, xmm11
psrad xmm12, 14
pxor xmm11, xmm11
psrad xmm1, 14
packssdw xmm1, xmm12
movdqa xmm14, XMMWORD PTR -120[rsp]
paddw xmm1, xmm14
pmaxsw xmm1, xmm11
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm5
movdqa xmm5, XMMWORD PTR .LC11[rip]
movups XMMWORD PTR [r11+r14], xmm1
pmaddwd xmm3, xmm5
pmaddwd xmm0, xmm5
pmaddwd xmm2, xmm5
pmaddwd xmm13, xmm5
movdqa xmm1, XMMWORD PTR .LC12[rip]
pmaddwd xmm10, xmm1
pmaddwd xmm4, xmm1
paddd xmm3, xmm10
paddd xmm0, xmm4
psrad xmm3, 14
psrad xmm0, 14
pmaddwd xmm6, xmm1
packssdw xmm0, xmm3
paddd xmm2, xmm6
pmaddwd xmm15, xmm1
psrad xmm2, 14
paddd xmm13, xmm15
psrad xmm13, 14
packssdw xmm13, xmm2
paddw xmm0, xmm14
pmaxsw xmm0, xmm11
pminsw xmm0, XMMWORD PTR .LC6[rip]
paddw xmm13, xmm14
pmaxsw xmm13, xmm11
pminsw xmm13, XMMWORD PTR .LC6[rip]
packuswb xmm13, xmm0
movups XMMWORD PTR [rbx+r14], xmm13
.L31:
add r15, 1
add r8, r9
add r11, QWORD PTR 64[rsp]
add r12, rcx
add r13, rcx
add rbx, QWORD PTR 80[rsp]
cmp rdx, r15
jne .L34
.L27:
pop rbx
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
.size _ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m, .-_ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDE17:
.section .text._ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTE17:
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDB18:
.section .text._ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTB18:
.p2align 4,,15
.weak _ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_mEEEvPKhmmmPhmS4_mS4_m
.type _ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m, @function
_ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m:
push r15
mov r11, rsi
push r14
push r13
push r12
and r11, -32
push rbp
push rbx
test rdx, rdx
mov rbp, QWORD PTR 56[rsp]
mov r12, QWORD PTR 72[rsp]
mov QWORD PTR -24[rsp], r9
je .L37
lea rax, -32[rsi]
lea r13, 32[rdi]
xor r15d, r15d
movdqa xmm7, XMMWORD PTR .LC4[rip]
mov r14, rax
lea rbx, [rdi+rax*4]
mov QWORD PTR -16[rsp], rax
movdqa xmm8, XMMWORD PTR .LC6[rip]
shr r14
movdqa xmm9, XMMWORD PTR .LC16[rip]
.p2align 4,,10
.p2align 3
.L45:
test r11, r11
je .L42
movdqa xmm6, XMMWORD PTR .LC11[rip]
mov r10, rbp
mov r9, r12
mov rax, r13
xor edi, edi
movaps XMMWORD PTR -56[rsp], xmm6
movdqa xmm6, XMMWORD PTR .LC12[rip]
movdqa xmm5, XMMWORD PTR .LC10[rip]
movaps XMMWORD PTR -40[rsp], xmm6
movdqa xmm15, xmm5
.p2align 4,,10
.p2align 3
.L43:
sub rax, -128
add r10, 16
add r9, 16
movdqu xmm0, XMMWORD PTR -128[rax]
movdqu xmm1, XMMWORD PTR -112[rax]
movdqa xmm5, XMMWORD PTR .LC0[rip]
movdqa xmm2, XMMWORD PTR .LC0[rip]
pand xmm5, xmm0
psrldq xmm0, 1
pand xmm2, xmm1
psrldq xmm1, 1
pand xmm0, XMMWORD PTR .LC1[rip]
pand xmm1, XMMWORD PTR .LC1[rip]
pshufd xmm4, xmm5, 13
pshufd xmm6, xmm2, 8
pshufd xmm11, xmm5, 8
pshufd xmm3, xmm2, 13
pmaddwd xmm2, xmm7
por xmm1, XMMWORD PTR .LC2[rip]
paddd xmm11, xmm4
por xmm0, XMMWORD PTR .LC2[rip]
paddd xmm3, xmm6
movdqa xmm6, xmm11
punpcklqdq xmm6, xmm3
pshufd xmm3, xmm1, 13
pshufd xmm10, xmm0, 8
movaps XMMWORD PTR -120[rsp], xmm6
pshufd xmm4, xmm0, 13
pmaddwd xmm0, XMMWORD PTR .LC3[rip]
pshufd xmm6, xmm1, 8
paddd xmm4, xmm10
paddd xmm3, xmm6
punpcklqdq xmm4, xmm3
movdqa xmm3, xmm1
movdqa xmm1, xmm5
pxor xmm5, xmm5
movaps XMMWORD PTR -104[rsp], xmm4
pmaddwd xmm3, XMMWORD PTR .LC3[rip]
pmaddwd xmm1, xmm7
paddd xmm2, xmm3
paddd xmm1, xmm0
psrad xmm2, 14
psrad xmm1, 14
packssdw xmm1, xmm2
movdqu xmm0, XMMWORD PTR -160[rax]
paddw xmm1, XMMWORD PTR .LC5[rip]
pmaxsw xmm1, xmm5
pminsw xmm1, xmm8
movdqu xmm2, XMMWORD PTR -144[rax]
movdqa xmm3, XMMWORD PTR .LC0[rip]
movdqa xmm5, XMMWORD PTR .LC0[rip]
pand xmm3, xmm0
psrldq xmm0, 1
pand xmm5, xmm2
psrldq xmm2, 1
pand xmm0, XMMWORD PTR .LC1[rip]
pand xmm2, XMMWORD PTR .LC1[rip]
movdqa xmm4, xmm5
pshufd xmm11, xmm3, 8
por xmm0, XMMWORD PTR .LC2[rip]
por xmm2, XMMWORD PTR .LC2[rip]
pshufd xmm10, xmm4, 8
pshufd xmm5, xmm3, 13
pmaddwd xmm3, xmm7
pshufd xmm6, xmm4, 13
pmaddwd xmm4, xmm7
pshufd xmm12, xmm0, 8
paddd xmm5, xmm11
pshufd xmm11, xmm2, 8
paddd xmm6, xmm10
pshufd xmm10, xmm0, 13
pmaddwd xmm0, XMMWORD PTR .LC3[rip]
punpcklqdq xmm5, xmm6
paddd xmm0, xmm3
psrad xmm0, 14
pshufd xmm6, xmm2, 13
pmaddwd xmm2, XMMWORD PTR .LC3[rip]
paddd xmm2, xmm4
pxor xmm3, xmm3
psrad xmm2, 14
paddd xmm10, xmm12
packssdw xmm0, xmm2
movdqa xmm4, XMMWORD PTR .LC0[rip]
paddw xmm5, xmm9
paddd xmm6, xmm11
punpcklqdq xmm10, xmm6
psrlw xmm5, 1
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm3
pminsw xmm0, xmm8
packuswb xmm0, xmm1
movaps XMMWORD PTR -88[rsp], xmm10
movups XMMWORD PTR [r8+rdi], xmm0
movdqu xmm0, XMMWORD PTR -64[rax]
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm0, XMMWORD PTR .LC1[rip]
movdqu xmm1, XMMWORD PTR -48[rax]
pshufd xmm6, xmm4, 13
movdqa xmm2, XMMWORD PTR .LC0[rip]
pshufd xmm10, xmm4, 8
pand xmm2, xmm1
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
paddd xmm10, xmm6
pshufd xmm11, xmm2, 8
pshufd xmm3, xmm2, 13
pmaddwd xmm2, xmm7
por xmm0, XMMWORD PTR .LC2[rip]
por xmm1, XMMWORD PTR .LC2[rip]
paddd xmm3, xmm11
punpcklqdq xmm10, xmm3
pshufd xmm12, xmm0, 8
pshufd xmm3, xmm0, 13
pmaddwd xmm0, XMMWORD PTR .LC3[rip]
pshufd xmm11, xmm1, 8
paddw xmm10, xmm9
psrlw xmm10, 1
pshufd xmm6, xmm1, 13
pmaddwd xmm1, XMMWORD PTR .LC3[rip]
paddd xmm1, xmm2
movdqa xmm2, xmm4
paddd xmm3, xmm12
movdqu xmm4, XMMWORD PTR -80[rax]
psrad xmm1, 14
paddd xmm6, xmm11
pmaddwd xmm2, xmm7
movdqa xmm11, XMMWORD PTR .LC0[rip]
paddd xmm2, xmm0
punpcklqdq xmm3, xmm6
psrad xmm2, 14
movdqu xmm0, XMMWORD PTR -96[rax]
packssdw xmm2, xmm1
pxor xmm1, xmm1
pand xmm11, xmm0
psrldq xmm0, 1
movdqa xmm12, XMMWORD PTR .LC0[rip]
pand xmm0, XMMWORD PTR .LC1[rip]
paddw xmm2, XMMWORD PTR .LC5[rip]
paddw xmm3, xmm9
pmaxsw xmm2, xmm1
pminsw xmm2, xmm8
psrlw xmm3, 1
pand xmm12, xmm4
psrldq xmm4, 1
pand xmm4, XMMWORD PTR .LC1[rip]
por xmm0, XMMWORD PTR .LC2[rip]
pshufd xmm14, xmm11, 8
pshufd xmm6, xmm11, 13
pmaddwd xmm11, xmm7
por xmm4, XMMWORD PTR .LC2[rip]
pshufd xmm13, xmm12, 8
paddd xmm6, xmm14
pshufd xmm1, xmm12, 13
pmaddwd xmm12, xmm7
pshufd xmm14, xmm0, 8
paddd xmm1, xmm13
pshufd xmm13, xmm4, 13
movaps XMMWORD PTR -72[rsp], xmm14
punpcklqdq xmm6, xmm1
pshufd xmm14, xmm4, 8
pmaddwd xmm4, XMMWORD PTR .LC3[rip]
paddd xmm4, xmm12
pshufd xmm1, xmm0, 13
psrad xmm4, 14
pmaddwd xmm0, XMMWORD PTR .LC3[rip]
paddd xmm0, xmm11
psrad xmm0, 14
packssdw xmm0, xmm4
paddd xmm13, xmm14
paddw xmm6, xmm9
psrlw xmm6, 1
paddd xmm1, XMMWORD PTR -72[rsp]
punpcklqdq xmm1, xmm13
pxor xmm13, xmm13
paddw xmm0, XMMWORD PTR .LC5[rip]
movdqa xmm12, xmm6
movdqa xmm14, xmm5
paddw xmm1, xmm9
psrlw xmm1, 1
pmaxsw xmm0, xmm13
pminsw xmm0, xmm8
packuswb xmm0, xmm2
movdqa xmm13, xmm10
movdqa xmm2, xmm3
movups XMMWORD PTR 16[r8+rdi], xmm0
pmaddwd xmm2, XMMWORD PTR .LC8[rip]
add rdi, 32
movdqa xmm11, XMMWORD PTR -120[rsp]
movdqa xmm0, XMMWORD PTR -88[rsp]
paddw xmm11, xmm9
psrlw xmm11, 1
movdqa xmm4, XMMWORD PTR -104[rsp]
pmaddwd xmm13, XMMWORD PTR .LC9[rip]
paddd xmm13, xmm2
movdqa xmm2, xmm1
psrad xmm13, 14
pmaddwd xmm12, XMMWORD PTR .LC9[rip]
paddw xmm4, xmm9
psrlw xmm4, 1
paddw xmm0, xmm9
pmaddwd xmm2, XMMWORD PTR .LC8[rip]
paddd xmm12, xmm2
pxor xmm2, xmm2
psrad xmm12, 14
packssdw xmm12, xmm13
movdqa xmm13, xmm11
psrlw xmm0, 1
pmaddwd xmm14, XMMWORD PTR .LC9[rip]
pmaddwd xmm13, XMMWORD PTR .LC9[rip]
paddw xmm12, xmm15
pmaxsw xmm12, xmm2
movdqa xmm2, xmm4
pminsw xmm12, xmm8
pmaddwd xmm2, XMMWORD PTR .LC8[rip]
paddd xmm13, xmm2
movdqa xmm2, xmm0
psrad xmm13, 14
pmaddwd xmm2, XMMWORD PTR .LC8[rip]
paddd xmm2, xmm14
pxor xmm14, xmm14
psrad xmm2, 14
packssdw xmm2, xmm13
paddw xmm2, xmm15
pmaxsw xmm2, xmm14
pminsw xmm2, xmm8
packuswb xmm2, xmm12
movups XMMWORD PTR -16[r10], xmm2
movdqa xmm2, XMMWORD PTR -56[rsp]
movdqa xmm14, XMMWORD PTR -40[rsp]
pmaddwd xmm3, xmm2
pmaddwd xmm1, xmm2
pmaddwd xmm4, xmm2
pmaddwd xmm0, xmm2
pmaddwd xmm6, xmm14
pmaddwd xmm10, xmm14
paddd xmm1, xmm6
paddd xmm3, xmm10
pxor xmm6, xmm6
psrad xmm3, 14
psrad xmm1, 14
pmaddwd xmm11, xmm14
packssdw xmm1, xmm3
paddd xmm4, xmm11
pmaddwd xmm5, xmm14
psrad xmm4, 14
paddd xmm0, xmm5
psrad xmm0, 14
packssdw xmm0, xmm4
paddw xmm1, xmm15
pmaxsw xmm1, xmm6
pminsw xmm1, xmm8
paddw xmm0, xmm15
pmaxsw xmm0, xmm6
pminsw xmm0, xmm8
packuswb xmm0, xmm1
movups XMMWORD PTR -16[r9], xmm0
cmp rdi, r11
jb .L43
.L42:
cmp rsi, r11
je .L41
movdqa xmm4, XMMWORD PTR .LC0[rip]
mov rax, QWORD PTR -16[rsp]
movdqu xmm0, XMMWORD PTR 32[rbx]
movdqa xmm11, xmm4
movdqa xmm10, xmm4
movdqu xmm3, XMMWORD PTR 48[rbx]
pand xmm11, xmm0
psrldq xmm0, 1
pand xmm10, xmm3
psrldq xmm3, 1
movdqa xmm6, XMMWORD PTR .LC1[rip]
pshufd xmm13, xmm11, 8
pshufd xmm2, xmm11, 13
pshufd xmm12, xmm10, 8
movdqa xmm5, XMMWORD PTR .LC2[rip]
pand xmm0, xmm6
pshufd xmm1, xmm10, 13
paddd xmm2, xmm13
pand xmm3, xmm6
por xmm0, xmm5
paddd xmm1, xmm12
punpcklqdq xmm2, xmm1
por xmm3, xmm5
pshufd xmm13, xmm0, 8
movaps XMMWORD PTR -120[rsp], xmm2
pshufd xmm2, xmm0, 13
pshufd xmm12, xmm3, 8
pshufd xmm1, xmm3, 13
paddd xmm2, xmm13
movdqa xmm15, xmm2
movdqa xmm2, XMMWORD PTR .LC4[rip]
paddd xmm1, xmm12
punpcklqdq xmm15, xmm1
pmaddwd xmm10, xmm2
movdqa xmm1, XMMWORD PTR .LC3[rip]
pmaddwd xmm3, xmm1
paddd xmm10, xmm3
movdqa xmm3, xmm0
movdqa xmm0, xmm11
psrad xmm10, 14
movdqa xmm11, xmm4
pmaddwd xmm3, xmm1
movaps XMMWORD PTR -104[rsp], xmm15
pmaddwd xmm0, xmm2
paddd xmm0, xmm3
pxor xmm3, xmm3
psrad xmm0, 14
packssdw xmm0, xmm10
movdqa xmm10, xmm4
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm3
pminsw xmm0, XMMWORD PTR .LC6[rip]
movaps XMMWORD PTR -88[rsp], xmm0
movdqu xmm0, XMMWORD PTR [rbx]
movdqu xmm3, XMMWORD PTR 16[rbx]
pand xmm10, xmm0
psrldq xmm0, 1
pand xmm11, xmm3
psrldq xmm3, 1
pand xmm0, xmm6
pshufd xmm15, xmm10, 8
pshufd xmm14, xmm11, 8
pand xmm3, xmm6
pshufd xmm13, xmm10, 13
pmaddwd xmm10, xmm2
pshufd xmm12, xmm11, 13
pmaddwd xmm11, xmm2
por xmm0, xmm5
por xmm3, xmm5
paddd xmm13, xmm15
paddd xmm12, xmm14
punpcklqdq xmm13, xmm12
pshufd xmm15, xmm0, 8
pshufd xmm14, xmm3, 8
movaps XMMWORD PTR -72[rsp], xmm13
pshufd xmm12, xmm3, 13
pmaddwd xmm3, xmm1
paddd xmm3, xmm11
pshufd xmm13, xmm0, 13
psrad xmm3, 14
pmaddwd xmm0, xmm1
paddd xmm0, xmm10
pxor xmm10, xmm10
psrad xmm0, 14
packssdw xmm0, xmm3
paddd xmm12, xmm14
movdqa xmm11, xmm4
paddd xmm13, xmm15
movdqa xmm14, xmm13
paddw xmm0, XMMWORD PTR .LC5[rip]
pmaxsw xmm0, xmm10
pminsw xmm0, XMMWORD PTR .LC6[rip]
packuswb xmm0, XMMWORD PTR -88[rsp]
punpcklqdq xmm14, xmm12
movdqa xmm12, xmm4
movaps XMMWORD PTR -56[rsp], xmm14
movups XMMWORD PTR [r8+rax], xmm0
movdqu xmm0, XMMWORD PTR 96[rbx]
movdqu xmm3, XMMWORD PTR 112[rbx]
pand xmm11, xmm0
psrldq xmm0, 1
pand xmm12, xmm3
psrldq xmm3, 1
pand xmm0, xmm6
pshufd xmm15, xmm11, 8
pshufd xmm14, xmm12, 8
pand xmm3, xmm6
pshufd xmm10, xmm11, 13
pmaddwd xmm11, xmm2
pshufd xmm13, xmm12, 13
pmaddwd xmm12, xmm2
por xmm0, xmm5
por xmm3, xmm5
paddd xmm10, xmm15
paddd xmm13, xmm14
punpcklqdq xmm10, xmm13
pshufd xmm15, xmm0, 8
pshufd xmm13, xmm0, 13
pmaddwd xmm0, xmm1
paddd xmm0, xmm11
movaps XMMWORD PTR -88[rsp], xmm10
psrad xmm0, 14
pshufd xmm14, xmm3, 8
pshufd xmm10, xmm3, 13
paddd xmm13, xmm15
movdqa xmm15, xmm13
pmaddwd xmm3, xmm1
paddd xmm3, xmm12
psrad xmm3, 14
movdqa xmm12, xmm4
paddd xmm10, xmm14
punpcklqdq xmm15, xmm10
movaps XMMWORD PTR -40[rsp], xmm15
movdqa xmm15, xmm0
pxor xmm0, xmm0
packssdw xmm15, xmm3
movdqa xmm3, XMMWORD PTR .LC5[rip]
movdqu xmm10, XMMWORD PTR 64[rbx]
paddw xmm3, xmm15
pmaxsw xmm3, xmm0
pminsw xmm3, XMMWORD PTR .LC6[rip]
movdqu xmm0, XMMWORD PTR 80[rbx]
pand xmm12, xmm10
psrldq xmm10, 1
pand xmm4, xmm0
psrldq xmm0, 1
pand xmm10, xmm6
pand xmm0, xmm6
pshufd xmm13, xmm4, 8
por xmm10, xmm5
pshufd xmm6, xmm12, 13
por xmm5, xmm0
pshufd xmm11, xmm12, 8
pshufd xmm0, xmm4, 13
pmaddwd xmm4, xmm2
pmaddwd xmm2, xmm12
pshufd xmm14, xmm10, 8
paddd xmm11, xmm6
pshufd xmm6, xmm5, 13
paddd xmm0, xmm13
pshufd xmm13, xmm5, 8
pmaddwd xmm5, xmm1
pmaddwd xmm1, xmm10
paddd xmm5, xmm4
paddd xmm1, xmm2
psrad xmm5, 14
psrad xmm1, 14
packssdw xmm1, xmm5
pxor xmm5, xmm5
paddd xmm6, xmm13
punpcklqdq xmm11, xmm0
pshufd xmm0, xmm10, 13
paddw xmm1, XMMWORD PTR .LC5[rip]
pmaxsw xmm1, xmm5
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm3
movdqa xmm4, xmm11
paddd xmm0, xmm14
punpcklqdq xmm0, xmm6
movups XMMWORD PTR -16[r8+rsi], xmm1
movdqa xmm3, XMMWORD PTR .LC16[rip]
movdqa xmm6, XMMWORD PTR -120[rsp]
paddw xmm4, xmm3
paddw xmm0, xmm3
psrlw xmm4, 1
psrlw xmm0, 1
movdqa xmm14, xmm4
movdqa xmm5, XMMWORD PTR -72[rsp]
paddw xmm6, xmm3
psrlw xmm6, 1
movdqa xmm10, XMMWORD PTR -88[rsp]
paddw xmm5, xmm3
movdqa xmm15, xmm5
movdqa xmm13, XMMWORD PTR -56[rsp]
paddw xmm10, xmm3
psrlw xmm10, 1
movdqa xmm12, xmm10
psrlw xmm15, 1
movdqa xmm2, XMMWORD PTR -104[rsp]
paddw xmm13, xmm3
psrlw xmm13, 1
movdqa xmm1, XMMWORD PTR .LC8[rip]
paddw xmm2, xmm3
paddw xmm3, XMMWORD PTR -40[rsp]
psrlw xmm3, 1
movdqa xmm5, xmm3
psrlw xmm2, 1
movdqa xmm11, XMMWORD PTR .LC9[rip]
pmaddwd xmm5, xmm1
pmaddwd xmm12, xmm11
paddd xmm12, xmm5
movdqa xmm5, xmm0
pmaddwd xmm14, xmm11
psrad xmm12, 14
pmaddwd xmm5, xmm1
paddd xmm5, xmm14
psrad xmm5, 14
packssdw xmm5, xmm12
pxor xmm12, xmm12
movdqa xmm14, XMMWORD PTR .LC10[rip]
movaps XMMWORD PTR -120[rsp], xmm14
paddw xmm5, xmm14
movdqa xmm14, xmm6
pmaxsw xmm5, xmm12
pminsw xmm5, XMMWORD PTR .LC6[rip]
movdqa xmm12, xmm2
pmaddwd xmm14, xmm11
pmaddwd xmm11, xmm15
pmaddwd xmm12, xmm1
pmaddwd xmm1, xmm13
paddd xmm12, xmm14
paddd xmm1, xmm11
psrad xmm12, 14
pxor xmm11, xmm11
psrad xmm1, 14
packssdw xmm1, xmm12
movdqa xmm14, XMMWORD PTR -120[rsp]
paddw xmm1, xmm14
pmaxsw xmm1, xmm11
pminsw xmm1, XMMWORD PTR .LC6[rip]
packuswb xmm1, xmm5
movdqa xmm5, XMMWORD PTR .LC11[rip]
movups XMMWORD PTR 0[rbp+r14], xmm1
pmaddwd xmm3, xmm5
pmaddwd xmm0, xmm5
pmaddwd xmm2, xmm5
pmaddwd xmm13, xmm5
movdqa xmm1, XMMWORD PTR .LC12[rip]
pmaddwd xmm10, xmm1
pmaddwd xmm4, xmm1
paddd xmm3, xmm10
paddd xmm0, xmm4
psrad xmm3, 14
psrad xmm0, 14
pmaddwd xmm6, xmm1
packssdw xmm0, xmm3
paddd xmm2, xmm6
pmaddwd xmm15, xmm1
psrad xmm2, 14
paddd xmm13, xmm15
psrad xmm13, 14
packssdw xmm13, xmm2
paddw xmm0, xmm14
pmaxsw xmm0, xmm11
pminsw xmm0, XMMWORD PTR .LC6[rip]
paddw xmm13, xmm14
pmaxsw xmm13, xmm11
pminsw xmm13, XMMWORD PTR .LC6[rip]
packuswb xmm13, xmm0
movups XMMWORD PTR [r12+r14], xmm13
.L41:
add r15, 1
add r8, QWORD PTR -24[rsp]
add rbp, QWORD PTR 64[rsp]
add rbx, rcx
add r13, rcx
add r12, QWORD PTR 80[rsp]
cmp rdx, r15
jne .L45
.L37:
pop rbx
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
.size _ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m, .-_ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDE18:
.section .text._ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTE18:
.section .text.unlikely
.LCOLDB19:
.text
.LHOTB19:
.p2align 4,,15
.globl _ZN4Simd4Sse213BgraToYuv422pEPKhmmmPhmS3_mS3_m
.type _ZN4Simd4Sse213BgraToYuv422pEPKhmmmPhmS3_mS3_m, @function
_ZN4Simd4Sse213BgraToYuv422pEPKhmmmPhmS3_mS3_m:
test r8b, 15
push rbx
mov rax, QWORD PTR 16[rsp]
mov r10, QWORD PTR 24[rsp]
mov r11, QWORD PTR 32[rsp]
mov rbx, QWORD PTR 40[rsp]
je .L51
.L48:
mov QWORD PTR 40[rsp], rbx
mov QWORD PTR 32[rsp], r11
mov QWORD PTR 24[rsp], r10
mov QWORD PTR 16[rsp], rax
pop rbx
jmp _ZN4Simd4Sse213BgraToYuv422pILb0EEEvPKhmmmPhmS4_mS4_m@PLT
.p2align 4,,10
.p2align 3
.L51:
test r9b, 15
jne .L48
test al, 15
jne .L48
test r10b, 15
jne .L48
test r11b, 15
jne .L48
test bl, 15
jne .L48
test dil, 15
jne .L48
test cl, 15
jne .L48
pop rbx
jmp _ZN4Simd4Sse213BgraToYuv422pILb1EEEvPKhmmmPhmS4_mS4_m@PLT
.size _ZN4Simd4Sse213BgraToYuv422pEPKhmmmPhmS3_mS3_m, .-_ZN4Simd4Sse213BgraToYuv422pEPKhmmmPhmS3_mS3_m
.section .text.unlikely
.LCOLDE19:
.text
.LHOTE19:
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDB20:
.section .text._ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTB20:
.p2align 4,,15
.weak _ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m
.type _ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m, @function
_ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m:
push r15
push r14
push r13
push r12
push rbp
push rbx
mov rbx, rsi
and rbx, -16
test rdx, rdx
mov r10, QWORD PTR 56[rsp]
mov r11, QWORD PTR 72[rsp]
mov r13, QWORD PTR 80[rsp]
je .L52
lea r12, -16[rsi]
movdqa xmm15, XMMWORD PTR .LC6[rip]
xor r15d, r15d
lea r14, 0[0+r12*4]
lea rbp, [rdi+r14]
.p2align 4,,10
.p2align 3
.L60:
test rbx, rbx
je .L57
pxor xmm3, xmm3
mov rdi, rbp
xor eax, eax
movdqa xmm11, XMMWORD PTR .LC11[rip]
sub rdi, r14
movdqa xmm13, XMMWORD PTR .LC12[rip]
.p2align 4,,10
.p2align 3
.L58:
add rdi, 64
movdqa xmm9, XMMWORD PTR -16[rdi]
movdqa xmm2, XMMWORD PTR -32[rdi]
movdqa xmm7, xmm9
pand xmm9, XMMWORD PTR .LC0[rip]
movdqa xmm6, XMMWORD PTR -48[rdi]
movdqa xmm1, xmm2
psrldq xmm7, 1
pand xmm7, XMMWORD PTR .LC1[rip]
movdqa xmm5, XMMWORD PTR -64[rdi]
movdqa xmm4, xmm6
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
movdqa xmm0, xmm5
psrldq xmm4, 1
pand xmm4, XMMWORD PTR .LC1[rip]
movdqa xmm12, xmm9
psrldq xmm0, 1
por xmm7, XMMWORD PTR .LC2[rip]
pmaddwd xmm12, XMMWORD PTR .LC4[rip]
pand xmm0, XMMWORD PTR .LC1[rip]
por xmm1, XMMWORD PTR .LC2[rip]
movdqa xmm8, xmm7
pand xmm2, XMMWORD PTR .LC0[rip]
pmaddwd xmm8, XMMWORD PTR .LC3[rip]
paddd xmm12, xmm8
psrad xmm12, 14
por xmm4, XMMWORD PTR .LC2[rip]
movdqa xmm8, xmm1
pand xmm6, XMMWORD PTR .LC0[rip]
movdqa xmm10, xmm2
pmaddwd xmm8, XMMWORD PTR .LC3[rip]
por xmm0, XMMWORD PTR .LC2[rip]
pmaddwd xmm10, XMMWORD PTR .LC4[rip]
paddd xmm10, xmm8
movdqa xmm8, xmm4
pand xmm5, XMMWORD PTR .LC0[rip]
psrad xmm10, 14
pmaddwd xmm8, XMMWORD PTR .LC3[rip]
packssdw xmm10, xmm12
movdqa xmm12, xmm6
movdqa xmm14, xmm5
pmaddwd xmm12, XMMWORD PTR .LC4[rip]
paddd xmm12, xmm8
movdqa xmm8, xmm0
paddw xmm10, XMMWORD PTR .LC5[rip]
psrad xmm12, 14
pmaxsw xmm10, xmm3
pminsw xmm10, xmm15
pmaddwd xmm8, XMMWORD PTR .LC3[rip]
pmaddwd xmm14, XMMWORD PTR .LC4[rip]
paddd xmm8, xmm14
psrad xmm8, 14
packssdw xmm8, xmm12
movdqa xmm12, xmm9
movdqa xmm14, xmm5
pmaddwd xmm9, xmm13
paddw xmm8, XMMWORD PTR .LC5[rip]
pmaxsw xmm8, xmm3
pminsw xmm8, xmm15
packuswb xmm8, xmm10
pmaddwd xmm12, XMMWORD PTR .LC9[rip]
pmaddwd xmm14, XMMWORD PTR .LC9[rip]
movdqa xmm10, xmm2
pmaddwd xmm2, xmm13
movaps XMMWORD PTR [r8+rax], xmm8
pmaddwd xmm10, XMMWORD PTR .LC9[rip]
movdqa xmm8, xmm7
pmaddwd xmm7, xmm11
paddd xmm7, xmm9
psrad xmm7, 14
pmaddwd xmm8, XMMWORD PTR .LC8[rip]
paddd xmm12, xmm8
movdqa xmm8, xmm1
psrad xmm12, 14
pmaddwd xmm1, xmm11
paddd xmm2, xmm1
pmaddwd xmm8, XMMWORD PTR .LC8[rip]
paddd xmm10, xmm8
movdqa xmm8, xmm4
psrad xmm10, 14
packssdw xmm10, xmm12
movdqa xmm12, xmm6
pmaddwd xmm8, XMMWORD PTR .LC8[rip]
movdqa xmm1, xmm0
psrad xmm2, 14
pmaddwd xmm12, XMMWORD PTR .LC9[rip]
paddd xmm12, xmm8
movdqa xmm8, xmm0
movdqa xmm0, xmm5
psrad xmm12, 14
packssdw xmm2, xmm7
pmaddwd xmm8, XMMWORD PTR .LC8[rip]
pmaddwd xmm4, xmm11
paddd xmm8, xmm14
pmaddwd xmm6, xmm13
psrad xmm8, 14
paddd xmm4, xmm6
packssdw xmm8, xmm12
psrad xmm4, 14
pmaddwd xmm1, xmm11
pmaddwd xmm0, xmm13
paddd xmm0, xmm1
psrad xmm0, 14
packssdw xmm0, xmm4
paddw xmm10, XMMWORD PTR .LC10[rip]
paddw xmm2, XMMWORD PTR .LC10[rip]
pmaxsw xmm10, xmm3
paddw xmm8, XMMWORD PTR .LC10[rip]
pminsw xmm10, xmm15
pmaxsw xmm8, xmm3
pmaxsw xmm2, xmm3
pminsw xmm8, xmm15
pminsw xmm2, xmm15
packuswb xmm8, xmm10
paddw xmm0, XMMWORD PTR .LC10[rip]
pmaxsw xmm0, xmm3
pminsw xmm0, xmm15
packuswb xmm0, xmm2
movaps XMMWORD PTR [r10+rax], xmm8
movaps XMMWORD PTR [r11+rax], xmm0
add rax, 16
cmp rax, rbx
jb .L58
.L57:
cmp rsi, rbx
je .L56
movdqu xmm5, XMMWORD PTR 0[rbp]
movdqa xmm3, xmm5
movaps XMMWORD PTR -56[rsp], xmm5
psrldq xmm3, 1
movaps XMMWORD PTR -40[rsp], xmm3
movdqu xmm4, XMMWORD PTR 48[rbp]
movdqa xmm12, XMMWORD PTR .LC1[rip]
movdqa xmm2, xmm4
movdqu xmm7, XMMWORD PTR 32[rbp]
psrldq xmm2, 1
pand xmm2, xmm12
movdqu xmm6, XMMWORD PTR 16[rbp]
movdqa xmm0, xmm7
movdqa xmm14, xmm7
movdqa xmm11, XMMWORD PTR .LC2[rip]
movdqa xmm1, xmm6
psrldq xmm0, 1
pand xmm0, xmm12
movdqa xmm5, XMMWORD PTR .LC0[rip]
por xmm2, xmm11
psrldq xmm1, 1
pand xmm1, xmm12
pand xmm4, xmm5
movdqa xmm8, XMMWORD PTR .LC4[rip]
pand xmm12, XMMWORD PTR -40[rsp]
movdqa xmm13, xmm2
movdqa xmm2, XMMWORD PTR .LC3[rip]
movdqa xmm9, xmm4
por xmm0, xmm11
movdqa xmm3, xmm13
pand xmm14, xmm5
pmaddwd xmm9, xmm8
por xmm1, xmm11
pmaddwd xmm3, xmm2
pand xmm6, xmm5
pand xmm5, XMMWORD PTR -56[rsp]
movdqa xmm7, xmm14
movaps XMMWORD PTR -24[rsp], xmm4
movdqa xmm4, xmm9
pmaddwd xmm7, xmm8
por xmm12, xmm11
movdqa xmm10, xmm1
movaps XMMWORD PTR -72[rsp], xmm0
paddd xmm4, xmm3
psrad xmm4, 14
movdqa xmm3, xmm0
pmaddwd xmm10, xmm2
movdqa xmm0, xmm6
movdqa xmm11, xmm6
pmaddwd xmm3, xmm2
pmaddwd xmm2, xmm12
paddd xmm3, xmm7
pmaddwd xmm0, xmm8
psrad xmm3, 14
pmaddwd xmm8, xmm5
packssdw xmm3, xmm4
paddd xmm10, xmm0
paddd xmm2, xmm8
pxor xmm4, xmm4
psrad xmm10, 14
psrad xmm2, 14
packssdw xmm2, xmm10
movdqa xmm9, XMMWORD PTR .LC6[rip]
movdqa xmm10, xmm14
movdqa xmm7, XMMWORD PTR .LC5[rip]
paddw xmm3, xmm7
paddw xmm7, xmm2
pmaxsw xmm3, xmm4
pmaxsw xmm7, xmm4
pminsw xmm3, xmm9
pminsw xmm7, xmm9
packuswb xmm7, xmm3
movdqa xmm0, XMMWORD PTR -24[rsp]
movdqa xmm3, xmm13
movdqa xmm2, XMMWORD PTR .LC8[rip]
movdqa xmm8, xmm0
movups XMMWORD PTR [r8+r12], xmm7
pmaddwd xmm3, xmm2
movdqa xmm7, XMMWORD PTR .LC9[rip]
pmaddwd xmm8, xmm7
paddd xmm8, xmm3
movdqa xmm3, XMMWORD PTR -72[rsp]
pmaddwd xmm10, xmm7
pmaddwd xmm11, xmm7
psrad xmm8, 14
pmaddwd xmm3, xmm2
paddd xmm3, xmm10
movdqa xmm10, xmm1
pmaddwd xmm7, xmm5
psrad xmm3, 14
packssdw xmm3, xmm8
pmaddwd xmm10, xmm2
pmaddwd xmm2, xmm12
paddd xmm10, xmm11
paddd xmm2, xmm7
psrad xmm10, 14
psrad xmm2, 14
packssdw xmm2, xmm10
movdqa xmm8, XMMWORD PTR .LC10[rip]
paddw xmm3, xmm8
paddw xmm2, xmm8
pmaxsw xmm3, xmm4
pmaxsw xmm2, xmm4
pminsw xmm3, xmm9
pminsw xmm2, xmm9
packuswb xmm2, xmm3
movdqa xmm11, XMMWORD PTR .LC11[rip]
movdqa xmm3, xmm0
movups XMMWORD PTR [r10+r12], xmm2
pmaddwd xmm1, xmm11
pmaddwd xmm12, xmm11
movdqa xmm2, xmm13
pmaddwd xmm2, xmm11
movdqa xmm13, XMMWORD PTR .LC12[rip]
movdqa xmm0, XMMWORD PTR -72[rsp]
pmaddwd xmm3, xmm13
paddd xmm2, xmm3
movdqa xmm3, xmm14
psrad xmm2, 14
pmaddwd xmm6, xmm13
pmaddwd xmm0, xmm11
paddd xmm1, xmm6
pmaddwd xmm5, xmm13
pmaddwd xmm3, xmm13
psrad xmm1, 14
paddd xmm0, xmm3
paddd xmm12, xmm5
psrad xmm0, 14
psrad xmm12, 14
packssdw xmm0, xmm2
packssdw xmm12, xmm1
paddw xmm0, xmm8
pmaxsw xmm0, xmm4
pminsw xmm0, xmm9
paddw xmm8, xmm12
pmaxsw xmm4, xmm8
pminsw xmm9, xmm4
packuswb xmm9, xmm0
movups XMMWORD PTR [r11+r12], xmm9
.L56:
add r15, 1
add r8, r9
add r10, QWORD PTR 64[rsp]
add r11, r13
add rbp, rcx
cmp rdx, r15
jne .L60
.L52:
pop rbx
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
.size _ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m, .-_ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDE20:
.section .text._ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTE20:
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDB21:
.section .text._ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTB21:
.p2align 4,,15
.weak _ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m
.type _ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m, @function
_ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m:
push r15
push r14
push r13
push r12
push rbp
push rbx
mov rbx, rsi
and rbx, -16
test rdx, rdx
mov r10, QWORD PTR 56[rsp]
mov r11, QWORD PTR 72[rsp]
mov r13, QWORD PTR 80[rsp]
je .L62
lea r12, -16[rsi]
movdqa xmm15, XMMWORD PTR .LC6[rip]
xor r15d, r15d
lea r14, 0[0+r12*4]
lea rbp, [rdi+r14]
.p2align 4,,10
.p2align 3
.L70:
test rbx, rbx
je .L67
pxor xmm3, xmm3
mov rdi, rbp
xor eax, eax
movdqa xmm11, XMMWORD PTR .LC11[rip]
sub rdi, r14
movdqa xmm13, XMMWORD PTR .LC12[rip]
.p2align 4,,10
.p2align 3
.L68:
add rdi, 64
movdqu xmm9, XMMWORD PTR -16[rdi]
movdqu xmm2, XMMWORD PTR -32[rdi]
movdqa xmm7, xmm9
pand xmm9, XMMWORD PTR .LC0[rip]
movdqu xmm6, XMMWORD PTR -48[rdi]
movdqa xmm1, xmm2
psrldq xmm7, 1
pand xmm7, XMMWORD PTR .LC1[rip]
movdqu xmm5, XMMWORD PTR -64[rdi]
movdqa xmm4, xmm6
psrldq xmm1, 1
pand xmm1, XMMWORD PTR .LC1[rip]
movdqa xmm0, xmm5
psrldq xmm4, 1
pand xmm4, XMMWORD PTR .LC1[rip]
movdqa xmm12, xmm9
psrldq xmm0, 1
por xmm7, XMMWORD PTR .LC2[rip]
pmaddwd xmm12, XMMWORD PTR .LC4[rip]
pand xmm0, XMMWORD PTR .LC1[rip]
por xmm1, XMMWORD PTR .LC2[rip]
movdqa xmm8, xmm7
pand xmm2, XMMWORD PTR .LC0[rip]
pmaddwd xmm8, XMMWORD PTR .LC3[rip]
paddd xmm12, xmm8
psrad xmm12, 14
por xmm4, XMMWORD PTR .LC2[rip]
movdqa xmm8, xmm1
pand xmm6, XMMWORD PTR .LC0[rip]
movdqa xmm10, xmm2
pmaddwd xmm8, XMMWORD PTR .LC3[rip]
por xmm0, XMMWORD PTR .LC2[rip]
pmaddwd xmm10, XMMWORD PTR .LC4[rip]
paddd xmm10, xmm8
movdqa xmm8, xmm4
pand xmm5, XMMWORD PTR .LC0[rip]
psrad xmm10, 14
pmaddwd xmm8, XMMWORD PTR .LC3[rip]
packssdw xmm10, xmm12
movdqa xmm12, xmm6
movdqa xmm14, xmm5
pmaddwd xmm12, XMMWORD PTR .LC4[rip]
paddd xmm12, xmm8
movdqa xmm8, xmm0
paddw xmm10, XMMWORD PTR .LC5[rip]
psrad xmm12, 14
pmaxsw xmm10, xmm3
pminsw xmm10, xmm15
pmaddwd xmm8, XMMWORD PTR .LC3[rip]
pmaddwd xmm14, XMMWORD PTR .LC4[rip]
paddd xmm8, xmm14
psrad xmm8, 14
packssdw xmm8, xmm12
movdqa xmm12, xmm9
movdqa xmm14, xmm5
pmaddwd xmm9, xmm13
paddw xmm8, XMMWORD PTR .LC5[rip]
pmaxsw xmm8, xmm3
pminsw xmm8, xmm15
packuswb xmm8, xmm10
pmaddwd xmm12, XMMWORD PTR .LC9[rip]
pmaddwd xmm14, XMMWORD PTR .LC9[rip]
movdqa xmm10, xmm2
pmaddwd xmm2, xmm13
movups XMMWORD PTR [r8+rax], xmm8
pmaddwd xmm10, XMMWORD PTR .LC9[rip]
movdqa xmm8, xmm7
pmaddwd xmm7, xmm11
paddd xmm7, xmm9
psrad xmm7, 14
pmaddwd xmm8, XMMWORD PTR .LC8[rip]
paddd xmm12, xmm8
movdqa xmm8, xmm1
psrad xmm12, 14
pmaddwd xmm1, xmm11
paddd xmm2, xmm1
pmaddwd xmm8, XMMWORD PTR .LC8[rip]
paddd xmm10, xmm8
movdqa xmm8, xmm4
psrad xmm10, 14
packssdw xmm10, xmm12
movdqa xmm12, xmm6
pmaddwd xmm8, XMMWORD PTR .LC8[rip]
movdqa xmm1, xmm0
psrad xmm2, 14
pmaddwd xmm12, XMMWORD PTR .LC9[rip]
paddd xmm12, xmm8
movdqa xmm8, xmm0
movdqa xmm0, xmm5
psrad xmm12, 14
packssdw xmm2, xmm7
pmaddwd xmm8, XMMWORD PTR .LC8[rip]
pmaddwd xmm4, xmm11
paddd xmm8, xmm14
pmaddwd xmm6, xmm13
psrad xmm8, 14
paddd xmm4, xmm6
packssdw xmm8, xmm12
psrad xmm4, 14
pmaddwd xmm1, xmm11
pmaddwd xmm0, xmm13
paddd xmm0, xmm1
psrad xmm0, 14
packssdw xmm0, xmm4
paddw xmm10, XMMWORD PTR .LC10[rip]
paddw xmm2, XMMWORD PTR .LC10[rip]
pmaxsw xmm10, xmm3
paddw xmm8, XMMWORD PTR .LC10[rip]
pminsw xmm10, xmm15
pmaxsw xmm8, xmm3
pmaxsw xmm2, xmm3
pminsw xmm8, xmm15
pminsw xmm2, xmm15
packuswb xmm8, xmm10
paddw xmm0, XMMWORD PTR .LC10[rip]
pmaxsw xmm0, xmm3
pminsw xmm0, xmm15
packuswb xmm0, xmm2
movups XMMWORD PTR [r10+rax], xmm8
movups XMMWORD PTR [r11+rax], xmm0
add rax, 16
cmp rax, rbx
jb .L68
.L67:
cmp rsi, rbx
je .L66
movdqu xmm5, XMMWORD PTR 0[rbp]
movdqa xmm3, xmm5
movaps XMMWORD PTR -56[rsp], xmm5
psrldq xmm3, 1
movaps XMMWORD PTR -40[rsp], xmm3
movdqu xmm4, XMMWORD PTR 48[rbp]
movdqa xmm12, XMMWORD PTR .LC1[rip]
movdqa xmm2, xmm4
movdqu xmm7, XMMWORD PTR 32[rbp]
psrldq xmm2, 1
pand xmm2, xmm12
movdqu xmm6, XMMWORD PTR 16[rbp]
movdqa xmm0, xmm7
movdqa xmm14, xmm7
movdqa xmm11, XMMWORD PTR .LC2[rip]
movdqa xmm1, xmm6
psrldq xmm0, 1
pand xmm0, xmm12
movdqa xmm5, XMMWORD PTR .LC0[rip]
por xmm2, xmm11
psrldq xmm1, 1
pand xmm1, xmm12
pand xmm4, xmm5
movdqa xmm8, XMMWORD PTR .LC4[rip]
pand xmm12, XMMWORD PTR -40[rsp]
movdqa xmm13, xmm2
movdqa xmm2, XMMWORD PTR .LC3[rip]
movdqa xmm9, xmm4
por xmm0, xmm11
movdqa xmm3, xmm13
pand xmm14, xmm5
pmaddwd xmm9, xmm8
por xmm1, xmm11
pmaddwd xmm3, xmm2
pand xmm6, xmm5
pand xmm5, XMMWORD PTR -56[rsp]
movdqa xmm7, xmm14
movaps XMMWORD PTR -24[rsp], xmm4
movdqa xmm4, xmm9
pmaddwd xmm7, xmm8
por xmm12, xmm11
movdqa xmm10, xmm1
movaps XMMWORD PTR -72[rsp], xmm0
paddd xmm4, xmm3
psrad xmm4, 14
movdqa xmm3, xmm0
pmaddwd xmm10, xmm2
movdqa xmm0, xmm6
movdqa xmm11, xmm6
pmaddwd xmm3, xmm2
pmaddwd xmm2, xmm12
paddd xmm3, xmm7
pmaddwd xmm0, xmm8
psrad xmm3, 14
pmaddwd xmm8, xmm5
packssdw xmm3, xmm4
paddd xmm10, xmm0
paddd xmm2, xmm8
pxor xmm4, xmm4
psrad xmm10, 14
psrad xmm2, 14
packssdw xmm2, xmm10
movdqa xmm9, XMMWORD PTR .LC6[rip]
movdqa xmm10, xmm14
movdqa xmm7, XMMWORD PTR .LC5[rip]
paddw xmm3, xmm7
paddw xmm7, xmm2
pmaxsw xmm3, xmm4
pmaxsw xmm7, xmm4
pminsw xmm3, xmm9
pminsw xmm7, xmm9
packuswb xmm7, xmm3
movdqa xmm0, XMMWORD PTR -24[rsp]
movdqa xmm3, xmm13
movdqa xmm2, XMMWORD PTR .LC8[rip]
movdqa xmm8, xmm0
movups XMMWORD PTR [r8+r12], xmm7
pmaddwd xmm3, xmm2
movdqa xmm7, XMMWORD PTR .LC9[rip]
pmaddwd xmm8, xmm7
paddd xmm8, xmm3
movdqa xmm3, XMMWORD PTR -72[rsp]
pmaddwd xmm10, xmm7
pmaddwd xmm11, xmm7
psrad xmm8, 14
pmaddwd xmm3, xmm2
paddd xmm3, xmm10
movdqa xmm10, xmm1
pmaddwd xmm7, xmm5
psrad xmm3, 14
packssdw xmm3, xmm8
pmaddwd xmm10, xmm2
pmaddwd xmm2, xmm12
paddd xmm10, xmm11
paddd xmm2, xmm7
psrad xmm10, 14
psrad xmm2, 14
packssdw xmm2, xmm10
movdqa xmm8, XMMWORD PTR .LC10[rip]
paddw xmm3, xmm8
paddw xmm2, xmm8
pmaxsw xmm3, xmm4
pmaxsw xmm2, xmm4
pminsw xmm3, xmm9
pminsw xmm2, xmm9
packuswb xmm2, xmm3
movdqa xmm11, XMMWORD PTR .LC11[rip]
movdqa xmm3, xmm0
movups XMMWORD PTR [r10+r12], xmm2
pmaddwd xmm1, xmm11
pmaddwd xmm12, xmm11
movdqa xmm2, xmm13
pmaddwd xmm2, xmm11
movdqa xmm13, XMMWORD PTR .LC12[rip]
movdqa xmm0, XMMWORD PTR -72[rsp]
pmaddwd xmm3, xmm13
paddd xmm2, xmm3
movdqa xmm3, xmm14
psrad xmm2, 14
pmaddwd xmm6, xmm13
pmaddwd xmm0, xmm11
paddd xmm1, xmm6
pmaddwd xmm5, xmm13
pmaddwd xmm3, xmm13
psrad xmm1, 14
paddd xmm0, xmm3
paddd xmm12, xmm5
psrad xmm0, 14
psrad xmm12, 14
packssdw xmm0, xmm2
packssdw xmm12, xmm1
paddw xmm0, xmm8
pmaxsw xmm0, xmm4
pminsw xmm0, xmm9
paddw xmm8, xmm12
pmaxsw xmm4, xmm8
pminsw xmm9, xmm4
packuswb xmm9, xmm0
movups XMMWORD PTR [r11+r12], xmm9
.L66:
add r15, 1
add r8, r9
add r10, QWORD PTR 64[rsp]
add r11, r13
add rbp, rcx
cmp rdx, r15
jne .L70
.L62:
pop rbx
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
.size _ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m, .-_ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m
.section .text.unlikely._ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LCOLDE21:
.section .text._ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m,"axG",@progbits,_ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m,comdat
.LHOTE21:
.section .text.unlikely
.LCOLDB22:
.text
.LHOTB22:
.p2align 4,,15
.globl _ZN4Simd4Sse213BgraToYuv444pEPKhmmmPhmS3_mS3_m
.type _ZN4Simd4Sse213BgraToYuv444pEPKhmmmPhmS3_mS3_m, @function
_ZN4Simd4Sse213BgraToYuv444pEPKhmmmPhmS3_mS3_m:
test r8b, 15
push rbx
mov rax, QWORD PTR 16[rsp]
mov r10, QWORD PTR 24[rsp]
mov r11, QWORD PTR 32[rsp]
mov rbx, QWORD PTR 40[rsp]
je .L76
.L73:
mov QWORD PTR 40[rsp], rbx
mov QWORD PTR 32[rsp], r11
mov QWORD PTR 24[rsp], r10
mov QWORD PTR 16[rsp], rax
pop rbx
jmp _ZN4Simd4Sse213BgraToYuv444pILb0EEEvPKhmmmPhmS4_mS4_m@PLT
.p2align 4,,10
.p2align 3
.L76:
test r9b, 15
jne .L73
test al, 15
jne .L73
test r10b, 15
jne .L73
test r11b, 15
jne .L73
test bl, 15
jne .L73
test dil, 15
jne .L73
test cl, 15
jne .L73
pop rbx
jmp _ZN4Simd4Sse213BgraToYuv444pILb1EEEvPKhmmmPhmS4_mS4_m@PLT
.size _ZN4Simd4Sse213BgraToYuv444pEPKhmmmPhmS3_mS3_m, .-_ZN4Simd4Sse213BgraToYuv444pEPKhmmmPhmS3_mS3_m
.section .text.unlikely
.LCOLDE22:
.text
.LHOTE22:
.section .text.unlikely
.LCOLDB23:
.section .text.startup,"ax",@progbits
.LHOTB23:
.p2align 4,,15
.type _GLOBAL__sub_I_SimdSse2BgraToYuv.cpp, @function
_GLOBAL__sub_I_SimdSse2BgraToYuv.cpp:
lea rdi, _ZStL8__ioinit[rip]
sub rsp, 8
call _ZNSt8ios_base4InitC1Ev@PLT
mov rdi, QWORD PTR _ZNSt8ios_base4InitD1Ev@GOTPCREL[rip]
lea rdx, __dso_handle[rip]
lea rsi, _ZStL8__ioinit[rip]
add rsp, 8
jmp __cxa_atexit@PLT
.size _GLOBAL__sub_I_SimdSse2BgraToYuv.cpp, .-_GLOBAL__sub_I_SimdSse2BgraToYuv.cpp
.section .text.unlikely
.LCOLDE23:
.section .text.startup
.LHOTE23:
.section .init_array,"aw"
.align 8
.quad _GLOBAL__sub_I_SimdSse2BgraToYuv.cpp
.local _ZStL8__ioinit
.comm _ZStL8__ioinit,1,1
.section .rodata.cst16,"aM",@progbits,16
.align 16
.LC0:
.quad 71777214294589695
.quad 71777214294589695
.align 16
.LC1:
.quad 1095216660735
.quad 1095216660735
.align 16
.LC2:
.quad 281474976776192
.quad 281474976776192
.align 16
.LC3:
.value 8258
.value 8192
.value 8258
.value 8192
.value 8258
.value 8192
.value 8258
.value 8192
.align 16
.LC4:
.value 1606
.value 4211
.value 1606
.value 4211
.value 1606
.value 4211
.value 1606
.value 4211
.align 16
.LC5:
.value 16
.value 16
.value 16
.value 16
.value 16
.value 16
.value 16
.value 16
.align 16
.LC6:
.value 255
.value 255
.value 255
.value 255
.value 255
.value 255
.value 255
.value 255
.align 16
.LC7:
.value 2
.value 2
.value 2
.value 2
.value 2
.value 2
.value 2
.value 2
.align 16
.LC8:
.value -4768
.value 8192
.value -4768
.value 8192
.value -4768
.value 8192
.value -4768
.value 8192
.align 16
.LC9:
.value 7193
.value -2425
.value 7193
.value -2425
.value 7193
.value -2425
.value 7193
.value -2425
.align 16
.LC10:
.value 128
.value 128
.value 128
.value 128
.value 128
.value 128
.value 128
.value 128
.align 16
.LC11:
.value -6029
.value 8192
.value -6029
.value 8192
.value -6029
.value 8192
.value -6029
.value 8192
.align 16
.LC12:
.value -1163
.value 7193
.value -1163
.value 7193
.value -1163
.value 7193
.value -1163
.value 7193
.align 16
.LC16:
.value 1
.value 1
.value 1
.value 1
.value 1
.value 1
.value 1
.value 1
.hidden __dso_handle
.ident "GCC: (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0 20160609"
.section .note.GNU-stack,"",@progbits