x86/imdct36: don't build imdct36_float_sse on x86_64 targets
There's an SSE2 version as well, and x86_64 guarantees that instruction set is present. Signed-off-by: James Almer <jamrial@gmail.com> Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
a05635ee01
commit
fbf98375e4
@ -358,8 +358,10 @@ cglobal imdct36_float, 4,4,9, out, buf, in, win
|
||||
RET
|
||||
%endmacro
|
||||
|
||||
%if ARCH_X86_32
|
||||
INIT_XMM sse
|
||||
DEFINE_IMDCT
|
||||
%endif
|
||||
|
||||
INIT_XMM sse2
|
||||
DEFINE_IMDCT
|
||||
|
@ -30,7 +30,9 @@
|
||||
static void imdct36_blocks_ ## CPU(float *out, float *buf, float *in, int count, int switch_point, int block_type);\
|
||||
void ff_imdct36_float_ ## CPU(float *out, float *buf, float *in, float *win);
|
||||
|
||||
#if ARCH_X86_32
|
||||
DECL(sse)
|
||||
#endif
|
||||
DECL(sse2)
|
||||
DECL(sse3)
|
||||
DECL(ssse3)
|
||||
@ -223,7 +225,9 @@ static void imdct36_blocks_ ## CPU1(float *out, float *buf, float *in, \
|
||||
}
|
||||
|
||||
#if HAVE_SSE
|
||||
#if ARCH_X86_32
|
||||
DECL_IMDCT_BLOCKS(sse,sse)
|
||||
#endif
|
||||
DECL_IMDCT_BLOCKS(sse2,sse)
|
||||
DECL_IMDCT_BLOCKS(sse3,sse)
|
||||
DECL_IMDCT_BLOCKS(ssse3,sse)
|
||||
@ -258,9 +262,11 @@ av_cold void ff_mpadsp_init_x86(MPADSPContext *s)
|
||||
#endif /* HAVE_SSE2_INLINE */
|
||||
|
||||
#if HAVE_YASM
|
||||
#if ARCH_X86_32
|
||||
if (EXTERNAL_SSE(cpu_flags)) {
|
||||
s->imdct36_blocks_float = imdct36_blocks_sse;
|
||||
}
|
||||
#endif
|
||||
if (EXTERNAL_SSE2(cpu_flags)) {
|
||||
s->imdct36_blocks_float = imdct36_blocks_sse2;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user