Skip to content

Commit 738bc3e

Browse files
committed
x86/vf_transpose: make ff_transpose_8x8_16_sse2 work on x86_32
Reviewed-by: Paul B Mahol <[email protected]> Signed-off-by: James Almer <[email protected]>
1 parent 2a75006 commit 738bc3e

File tree

2 files changed

+6
-7
lines changed

2 files changed

+6
-7
lines changed

libavfilter/x86/vf_transpose.asm

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,7 @@ cglobal transpose_8x8_8, 4,5,8, src, src_linesize, dst, dst_linesize, linesize3
5656
movq [dstq + linesize3q], m7
5757
RET
5858

59-
%if ARCH_X86_64
60-
61-
INIT_XMM sse2
62-
cglobal transpose_8x8_16, 4,5,9, src, src_linesize, dst, dst_linesize, linesize3
59+
cglobal transpose_8x8_16, 4,5,9, ARCH_X86_32 * 32, src, src_linesize, dst, dst_linesize, linesize3
6360
lea linesize3q, [src_linesizeq * 3]
6461
movu m0, [srcq + src_linesizeq * 0]
6562
movu m1, [srcq + src_linesizeq * 1]
@@ -71,7 +68,11 @@ cglobal transpose_8x8_16, 4,5,9, src, src_linesize, dst, dst_linesize, linesize3
7168
movu m6, [srcq + src_linesizeq * 2]
7269
movu m7, [srcq + linesize3q]
7370

71+
%if ARCH_X86_64
7472
TRANSPOSE8x8W 0, 1, 2, 3, 4, 5, 6, 7, 8
73+
%else
74+
TRANSPOSE8x8W 0, 1, 2, 3, 4, 5, 6, 7, [rsp], [rsp + 16]
75+
%endif
7576

7677
lea linesize3q, [dst_linesizeq * 3]
7778
movu [dstq + dst_linesizeq * 0], m0
@@ -84,5 +85,3 @@ cglobal transpose_8x8_16, 4,5,9, src, src_linesize, dst, dst_linesize, linesize3
8485
movu [dstq + dst_linesizeq * 2], m6
8586
movu [dstq + linesize3q], m7
8687
RET
87-
88-
%endif

libavfilter/x86/vf_transpose_init.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ av_cold void ff_transpose_init_x86(TransVtable *v, int pixstep)
4343
v->transpose_8x8 = ff_transpose_8x8_8_sse2;
4444
}
4545

46-
if (ARCH_X86_64 && EXTERNAL_SSE2(cpu_flags) && pixstep == 2) {
46+
if (EXTERNAL_SSE2(cpu_flags) && pixstep == 2) {
4747
v->transpose_8x8 = ff_transpose_8x8_16_sse2;
4848
}
4949
}

0 commit comments

Comments
 (0)