mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-06 13:29:56 -05:00
simd: be more precise which SIMD optimizations we activate
This commit is contained in:
parent
1f0904b800
commit
71e066c873
5 changed files with 28 additions and 16 deletions
|
|
@ -150,8 +150,12 @@ static void init_remap_mmx (pa_remap_t *m) {
|
|||
|
||||
void pa_remap_func_init_mmx (pa_cpu_x86_flag_t flags) {
|
||||
#if defined (__i386__) || defined (__amd64__)
|
||||
|
||||
if (flags & PA_CPU_X86_MMX) {
|
||||
pa_log_info("Initialising MMX optimized remappers.");
|
||||
|
||||
pa_set_init_remap_func ((pa_init_remap_func_t) init_remap_mmx);
|
||||
}
|
||||
|
||||
#endif /* defined (__i386__) || defined (__amd64__) */
|
||||
}
|
||||
|
|
|
|||
|
|
@ -149,9 +149,11 @@ static void init_remap_sse2 (pa_remap_t *m) {
|
|||
|
||||
void pa_remap_func_init_sse (pa_cpu_x86_flag_t flags) {
|
||||
#if defined (__i386__) || defined (__amd64__)
|
||||
pa_log_info("Initialising SSE optimized remappers.");
|
||||
|
||||
if (flags & PA_CPU_X86_SSE2)
|
||||
if (flags & PA_CPU_X86_SSE2) {
|
||||
pa_log_info("Initialising SSE2 optimized remappers.");
|
||||
pa_set_init_remap_func ((pa_init_remap_func_t) init_remap_sse2);
|
||||
}
|
||||
|
||||
#endif /* defined (__i386__) || defined (__amd64__) */
|
||||
}
|
||||
|
|
|
|||
|
|
@ -218,16 +218,18 @@ static void run_test (void) {
|
|||
|
||||
void pa_convert_func_init_sse (pa_cpu_x86_flag_t flags) {
|
||||
#if defined (__i386__) || defined (__amd64__)
|
||||
pa_log_info("Initialising SSE optimized conversions.");
|
||||
|
||||
#ifdef RUN_TEST
|
||||
run_test ();
|
||||
#endif
|
||||
|
||||
if (flags & PA_CPU_X86_SSE2)
|
||||
if (flags & PA_CPU_X86_SSE2) {
|
||||
pa_log_info("Initialising SSE2 optimized conversions.");
|
||||
pa_set_convert_from_float32ne_function (PA_SAMPLE_S16LE, (pa_convert_func_t) pa_sconv_s16le_from_f32ne_sse2);
|
||||
else
|
||||
} else {
|
||||
pa_log_info("Initialising SSE optimized conversions.");
|
||||
pa_set_convert_from_float32ne_function (PA_SAMPLE_S16LE, (pa_convert_func_t) pa_sconv_s16le_from_f32ne_sse);
|
||||
}
|
||||
|
||||
#endif /* defined (__i386__) || defined (__amd64__) */
|
||||
}
|
||||
|
|
|
|||
|
|
@ -301,13 +301,16 @@ static void run_test (void) {
|
|||
|
||||
void pa_volume_func_init_mmx (pa_cpu_x86_flag_t flags) {
|
||||
#if defined (__i386__) || defined (__amd64__)
|
||||
pa_log_info("Initialising MMX optimized functions.");
|
||||
|
||||
#ifdef RUN_TEST
|
||||
run_test ();
|
||||
#endif
|
||||
|
||||
if (flags & PA_CPU_X86_MMX) {
|
||||
pa_log_info("Initialising MMX optimized functions.");
|
||||
|
||||
pa_set_volume_func (PA_SAMPLE_S16NE, (pa_do_volume_func_t) pa_volume_s16ne_mmx);
|
||||
pa_set_volume_func (PA_SAMPLE_S16RE, (pa_do_volume_func_t) pa_volume_s16re_mmx);
|
||||
}
|
||||
#endif /* defined (__i386__) || defined (__amd64__) */
|
||||
}
|
||||
|
|
|
|||
|
|
@ -302,13 +302,14 @@ static void run_test (void) {
|
|||
|
||||
void pa_volume_func_init_sse (pa_cpu_x86_flag_t flags) {
|
||||
#if defined (__i386__) || defined (__amd64__)
|
||||
pa_log_info("Initialising SSE optimized functions.");
|
||||
|
||||
#ifdef RUN_TEST
|
||||
run_test ();
|
||||
#endif
|
||||
|
||||
if (flags & PA_CPU_X86_SSE2) {
|
||||
pa_log_info("Initialising SSE2 optimized functions.");
|
||||
|
||||
pa_set_volume_func (PA_SAMPLE_S16NE, (pa_do_volume_func_t) pa_volume_s16ne_sse2);
|
||||
pa_set_volume_func (PA_SAMPLE_S16RE, (pa_do_volume_func_t) pa_volume_s16re_sse2);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue