summaryrefslogtreecommitdiff
path: root/libavresample
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2015-05-26 14:29:08 -0300
committerLuca Barbato <lu_zero@gentoo.org>2015-05-31 12:07:11 +0200
commitd68c05380cebf563915412182643a8be04ef890b (patch)
tree58d06bf02c0cb86c22934611485d6cfbe25f3b02 /libavresample
parentcae39851201b7781f1262e1c23627b45e6e80bb4 (diff)
downloadffmpeg-d68c05380cebf563915412182643a8be04ef890b.tar.gz
x86: check for AV_CPU_FLAG_AVXSLOW where useful
Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Diffstat (limited to 'libavresample')
-rw-r--r--libavresample/x86/audio_convert_init.c4
-rw-r--r--libavresample/x86/audio_mix_init.c4
-rw-r--r--libavresample/x86/dither_init.c4
3 files changed, 8 insertions, 4 deletions
diff --git a/libavresample/x86/audio_convert_init.c b/libavresample/x86/audio_convert_init.c
index d85ca8405f..ae6c3191d1 100644
--- a/libavresample/x86/audio_convert_init.c
+++ b/libavresample/x86/audio_convert_init.c
@@ -226,11 +226,13 @@ av_cold void ff_audio_convert_init_x86(AudioConvert *ac)
ff_audio_convert_set_func(ac, AV_SAMPLE_FMT_FLT, AV_SAMPLE_FMT_FLTP,
6, 16, 4, "SSE4", ff_conv_fltp_to_flt_6ch_sse4);
}
- if (EXTERNAL_AVX(cpu_flags)) {
+ if (EXTERNAL_AVX_FAST(cpu_flags)) {
ff_audio_convert_set_func(ac, AV_SAMPLE_FMT_FLT, AV_SAMPLE_FMT_S32,
0, 32, 16, "AVX", ff_conv_s32_to_flt_avx);
ff_audio_convert_set_func(ac, AV_SAMPLE_FMT_S32, AV_SAMPLE_FMT_FLT,
0, 32, 32, "AVX", ff_conv_flt_to_s32_avx);
+ }
+ if (EXTERNAL_AVX(cpu_flags)) {
ff_audio_convert_set_func(ac, AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_S16P,
2, 16, 16, "AVX", ff_conv_s16p_to_s16_2ch_avx);
ff_audio_convert_set_func(ac, AV_SAMPLE_FMT_S16, AV_SAMPLE_FMT_S16P,
diff --git a/libavresample/x86/audio_mix_init.c b/libavresample/x86/audio_mix_init.c
index 7fc530ebc4..e14a54066d 100644
--- a/libavresample/x86/audio_mix_init.c
+++ b/libavresample/x86/audio_mix_init.c
@@ -195,11 +195,13 @@ av_cold void ff_audio_mix_init_x86(AudioMix *am)
ff_audio_mix_set_func(am, AV_SAMPLE_FMT_S16P, AV_MIX_COEFF_TYPE_FLT,
1, 2, 16, 8, "SSE4", ff_mix_1_to_2_s16p_flt_sse4);
}
- if (EXTERNAL_AVX(cpu_flags)) {
+ if (EXTERNAL_AVX_FAST(cpu_flags)) {
ff_audio_mix_set_func(am, AV_SAMPLE_FMT_FLTP, AV_MIX_COEFF_TYPE_FLT,
2, 1, 32, 16, "AVX", ff_mix_2_to_1_fltp_flt_avx);
ff_audio_mix_set_func(am, AV_SAMPLE_FMT_FLTP, AV_MIX_COEFF_TYPE_FLT,
1, 2, 32, 8, "AVX", ff_mix_1_to_2_fltp_flt_avx);
+ }
+ if (EXTERNAL_AVX(cpu_flags)) {
ff_audio_mix_set_func(am, AV_SAMPLE_FMT_S16P, AV_MIX_COEFF_TYPE_FLT,
1, 2, 16, 8, "AVX", ff_mix_1_to_2_s16p_flt_avx);
}
diff --git a/libavresample/x86/dither_init.c b/libavresample/x86/dither_init.c
index 8349d5efc8..2a351c5f0d 100644
--- a/libavresample/x86/dither_init.c
+++ b/libavresample/x86/dither_init.c
@@ -46,14 +46,14 @@ av_cold void ff_dither_init_x86(DitherDSPContext *ddsp,
if (EXTERNAL_SSE2(cpu_flags)) {
ddsp->dither_int_to_float = ff_dither_int_to_float_rectangular_sse2;
}
- if (EXTERNAL_AVX(cpu_flags)) {
+ if (EXTERNAL_AVX_FAST(cpu_flags)) {
ddsp->dither_int_to_float = ff_dither_int_to_float_rectangular_avx;
}
} else {
if (EXTERNAL_SSE2(cpu_flags)) {
ddsp->dither_int_to_float = ff_dither_int_to_float_triangular_sse2;
}
- if (EXTERNAL_AVX(cpu_flags)) {
+ if (EXTERNAL_AVX_FAST(cpu_flags)) {
ddsp->dither_int_to_float = ff_dither_int_to_float_triangular_avx;
}
}