summaryrefslogtreecommitdiffstats
path: root/src/pulsecore/svolume_mmx.c
Commit message (Collapse)AuthorAgeFilesLines
* SSE/MMX/ARM: Fix high frequency noise with unusual number of channelsDavid Henningsson2010-10-131-6/+8
| | | | | | | | In the assembly optimized versions of SSE, a noise could occur when the number of channels were 3,5,6 or 7. For MMX and ARM, this could occur when the number of channels were 3. Signed-off-by: David Henningsson <david.henningsson@canonical.com>
* cpu: check for CMOV flag before using this intsruction in assemblyLennart Poettering2010-02-091-1/+1
| | | | http://pulseaudio.org/ticket/776
* svolume: fix MMX errorWim Taymans2009-10-301-1/+6
| | | | | We need to sign extend the lower part of the multiplication before adding it to the higher part. Makes -1 * 0xffff work again.
* simd: update test casesLennart Poettering2009-10-291-0/+4
|
* Fix build when using -fweb, accept both register and memory constraints.Diego Elio 'Flameeyes' Pettenò2009-10-071-2/+2
| | | | | This was reported as Gentoo bug #287391 by Torsten Kaiser, and the fix was suggested by Mike Frysinger.
* svolume: tweak constraints for 32 bitsWim Taymans2009-09-231-2/+2
| | | | | | Tweak the constraints a little so that register starved 32bit systems can select a stack variable for the channel paramter instead of reusing one of the registers we're using in the code.
* svolume_mmx: disable test accidentaly left onLennart Poettering2009-09-171-1/+1
|
* svolume_mmx: optimize some moreWim Taymans2009-09-161-13/+7
| | | | | | We can reorder the algortihm a bit like we do for sse so that we don't need the contants and masking instructions. Saves 2 instructions for the mmx code.
* simd: be more precise which SIMD optimizations we activateLennart Poettering2009-09-091-3/+6
|
* svolume: cleanupsWim Taymans2009-08-201-9/+9
| | | | | Use PA_MAX Use pa_rtclock_now() for benchmarks
* whitespace fixesWim Taymans2009-08-201-183/+183
|
* svolume: fix compilation in 32bitsWim Taymans2009-08-201-6/+6
|
* svolume: add CPU guards around codeWim Taymans2009-08-201-0/+6
| | | | Mark code that should only be compiled on x86 CPUs with proper defines.
* svolume: remove unneeded compareWim Taymans2009-08-201-1/+0
| | | | | We don't need the compare because the sub operation already set the right flags for us.
* volume: remove ref functionsWim Taymans2009-08-201-223/+0
|
* volume: improved commentsWim Taymans2009-08-201-6/+6
|
* volume: make the benchmark more meaningfullWim Taymans2009-08-201-20/+33
| | | | MMX is about 6x faster, SSE around 15x on my machine.
* svolume: add some commentsWim Taymans2009-08-201-0/+18
|
* main: hook up cpu detection codeWim Taymans2009-08-201-8/+10
| | | | | | Add CPU detection code to activate the various optimisations. Move some method definitions around. Use compatibility macros when we can.
* svolume: improve SSE and MMX codeWim Taymans2009-08-201-66/+134
|
* volume_mmx: fix mmx code a bitWim Taymans2009-08-201-20/+26
|
* volume: add first mmx optimized functionWim Taymans2009-08-201-0/+424
Add code for an mmx optimized version of s16ne volume scaling. Install the custom function.