17 Commits

Author SHA1 Message Date
Vestral b7d8e685dd Remove cpu runtime checks 2023-11-30 01:06:02 +01:00
Olli Parviainen bf3cec0244 Improvements to help compiler autovectorization
Refactored FIRfilter and TDStretch hot-spot routines to help compiler
perform more efficient autovectorization.

Benchmarked:
- 2x/3x improvement in gcc-generated x86 SIMD code execution
  times for SSE2/AVX instruction extensions accordingly, when
  hand-tuned SSE intrinsics were disabled. Hand-tuned SSE code
  still is slightly faster than gcc-produced AVX.
- 2.4x improvement for cumulative ARM NEON tunings when compared to
  previous SoundTouch release.

Signed-off-by: Olli Parviainen <oparviai'at'iki.fi>
2020-10-13 20:46:23 +03:00
Olli Parviainen 3d7bf376fd Tuning for ARM NEON
Tuning to enable ARM NEON SIMD performance improvements:
- NEON detection in configure file
- Remove manual loop unrolling, gcc autovectorization does better job
without manually unrolled loops.
- Avoid unaligned pointer accesses when using NEON
2020-06-21 20:38:00 +03:00
oparviainen c38f0506da Removed commented code, style cleanup 2018-08-12 20:51:24 +03:00
Olli e765f8146f Removed Subversion $Id$, $Date$ etc autoupdate tags 2018-05-10 21:51:49 +03:00
oparviai 089edd12f4 updated comments 2015-11-05 17:46:08 +00:00
oparviai d7d0a5c0f9 Implemented parallel computation using OpenMP pragmas 2015-02-21 21:24:29 +00:00
oparviai 126d1ac41d Eliminated alloca() call that caused compatibility woes 2014-10-08 15:26:57 +00:00
oparviai 8c65661b91 Added support for multi-channel audio 2013-06-12 15:24:44 +00:00
oparviai ad164d96db Added a compile-time switch to disable throwing c++ exceptions 2011-09-02 18:56:11 +00:00
oparviai d002b52f2a use more specifically named global #defines 2011-02-13 19:13:57 +00:00
oparviai c045c24e80 Retired 3DNow! optimizations as obsolete 2010-01-24 12:40:30 +00:00
oparviai 47659b0810 Fixed ambiguities in Solaris compilation 2009-02-25 17:13:51 +00:00
oparviai c17eb6821a Cleaned code with Lint 2009-02-21 16:00:14 +00:00
oparviai 9a273df119 Added :: before pow to resolve namespace ambiguity 2008-05-09 04:48:34 +00:00
oparviai e69813f645 Activated SVN keyword expansion 2008-02-10 16:26:55 +00:00
oparviai 2b64de964c Initial commit as per SoundTouch v1.3.1 2008-02-10 16:24:28 +00:00