Commit a927641e authored by Michael Niedermayer's avatar Michael Niedermayer

libswresample-simd: Add ff_pack_6ch_float_to_int32_a_avx and ff_pack_6ch_float_to_int32_a_sse4

Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent ca986a06
...@@ -444,6 +444,8 @@ PACK_6CH float, float, a, 2, 2, NOP_N, NOP_N ...@@ -444,6 +444,8 @@ PACK_6CH float, float, a, 2, 2, NOP_N, NOP_N
PACK_6CH float, int32, u, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT PACK_6CH float, int32, u, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT
PACK_6CH float, int32, a, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT PACK_6CH float, int32, a, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT
PACK_6CH int32, float, u, 2, 2, FLOAT_TO_INT32_N, FLOAT_TO_INT32_INIT
PACK_6CH int32, float, a, 2, 2, FLOAT_TO_INT32_N, FLOAT_TO_INT32_INIT
%if HAVE_AVX %if HAVE_AVX
INIT_XMM avx INIT_XMM avx
...@@ -452,6 +454,8 @@ PACK_6CH float, float, a, 2, 2, NOP_N, NOP_N ...@@ -452,6 +454,8 @@ PACK_6CH float, float, a, 2, 2, NOP_N, NOP_N
PACK_6CH float, int32, u, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT PACK_6CH float, int32, u, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT
PACK_6CH float, int32, a, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT PACK_6CH float, int32, a, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT
PACK_6CH int32, float, u, 2, 2, FLOAT_TO_INT32_N, FLOAT_TO_INT32_INIT
PACK_6CH int32, float, a, 2, 2, FLOAT_TO_INT32_N, FLOAT_TO_INT32_INIT
INIT_YMM avx INIT_YMM avx
CONV float, int32, u, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT CONV float, int32, u, 2, 2, INT32_TO_FLOAT_N, INT32_TO_FLOAT_INIT
......
...@@ -125,6 +125,8 @@ MULTI_CAPS_FUNC(AV_CPU_FLAG_SSE, sse) ...@@ -125,6 +125,8 @@ MULTI_CAPS_FUNC(AV_CPU_FLAG_SSE, sse)
ac->simd_f = ff_pack_6ch_float_to_float_a_sse4; ac->simd_f = ff_pack_6ch_float_to_float_a_sse4;
if( out_fmt == AV_SAMPLE_FMT_FLT && in_fmt == AV_SAMPLE_FMT_S32P) if( out_fmt == AV_SAMPLE_FMT_FLT && in_fmt == AV_SAMPLE_FMT_S32P)
ac->simd_f = ff_pack_6ch_int32_to_float_a_sse4; ac->simd_f = ff_pack_6ch_int32_to_float_a_sse4;
if( out_fmt == AV_SAMPLE_FMT_S32 && in_fmt == AV_SAMPLE_FMT_FLTP)
ac->simd_f = ff_pack_6ch_float_to_int32_a_sse4;
} }
} }
if(HAVE_AVX && mm_flags & AV_CPU_FLAG_AVX) { if(HAVE_AVX && mm_flags & AV_CPU_FLAG_AVX) {
...@@ -135,6 +137,8 @@ MULTI_CAPS_FUNC(AV_CPU_FLAG_SSE, sse) ...@@ -135,6 +137,8 @@ MULTI_CAPS_FUNC(AV_CPU_FLAG_SSE, sse)
ac->simd_f = ff_pack_6ch_float_to_float_a_avx; ac->simd_f = ff_pack_6ch_float_to_float_a_avx;
if( out_fmt == AV_SAMPLE_FMT_FLT && in_fmt == AV_SAMPLE_FMT_S32P) if( out_fmt == AV_SAMPLE_FMT_FLT && in_fmt == AV_SAMPLE_FMT_S32P)
ac->simd_f = ff_pack_6ch_int32_to_float_a_avx; ac->simd_f = ff_pack_6ch_int32_to_float_a_avx;
if( out_fmt == AV_SAMPLE_FMT_S32 && in_fmt == AV_SAMPLE_FMT_FLTP)
ac->simd_f = ff_pack_6ch_float_to_int32_a_avx;
} }
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment