22 Commits

Author SHA1 Message Date
Olli
5e76cf2f6d Disable skipping of unaligned SIMD memory offset by default
Change default setting so that SIMD does not skip of unaligned memory
offsets, as that likely is not a necessary compromise with concurrent
CPUs any more.
2021-01-28 21:26:38 +02: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
oparviainen
107f2c5d20 Replaced illegal-number-of-channel assertions with run-time exception 2018-08-12 20:00:56 +03:00
Olli
e765f8146f Removed Subversion $Id$, $Date$ etc autoupdate tags 2018-05-10 21:51:49 +03:00
oparviai
cd74dccaf1 Disable MMX integer optimizations in X64 compilation 2017-07-30 09:28:06 +00:00
oparviai
83e46b5644 Bugfix: limit __SOFTFP__ switch usage only to Android 2015-05-18 15:25:07 +00:00
oparviai
92973bc18e Developed more refined Android example application that also works in ARM & X86 platforms. 2015-05-15 00:07:10 +00:00
oparviai
e23bd6d093 Replaced custom 'BOOL' type with C++ 'bool' 2014-04-06 15:57:21 +00:00
oparviai
afdfb293f6 Apple compatibility fixes 2014-01-07 18:24:28 +00:00
oparviai
8c65661b91 Added support for multi-channel audio 2013-06-12 15:24:44 +00:00
oparviai
46a7dc3c39 Added files for Android example compilation 2012-12-28 14:53:56 +00:00
oparviai
c3f4ff9532 Fixed pointer aligning for mingw64 compilation 2012-11-08 18:53:01 +00:00
oparviai
1f6a68a6a3 CPUID routine bugfix: replaced inline assembly routine not working with all environment with __cpuid compiler intrinsic. 2012-04-01 17:01:42 +00:00
oparviai
ad164d96db Added a compile-time switch to disable throwing c++ exceptions 2011-09-02 18:56:11 +00:00
oparviai
9db805d439 Added configure flags to disable x86 optimizations 2011-07-17 11:17:57 +00:00
oparviai
684e772e46 Fixed indent alignment 2011-07-16 08:45:37 +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
dc4004e0c3 Added switch PREVENT_CLICK_AT_RATE_CROSSOVER to prevent click artifact at crossing the nominal pitch from either side 2009-05-17 11:30:57 +00:00
oparviai
327906e23b Changed x86 optimization flagging for non-win & non-linux x86 support 2009-01-11 11:36:36 +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