summaryrefslogtreecommitdiff
path: root/src/libFLAC/fixed_intrin_sse2.c
Commit message (Collapse)AuthorAgeFilesLines
* Bulk update copyright dates to 2022Martijn van Beurden2022-07-261-1/+1
|
* Revert part of commit 5df56dbMartijn van Beurden2022-05-161-117/+59
| | | | | | | | | | Commit 5df56db introduced four completely rewritten functions with intrinsics, but it turns out two of them have integers that can overflow. Because those two functions were barely faster than what they replaced, fixing these overflows will probably make the functions slower than what they replaced, so this is reverted. Credit: Oss-Fuzz Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=47416
* Fix overflows in fixed_compute_best_predictorMartijn van Beurden2022-05-091-1/+6
| | | | | Credit: Oss-Fuzz Issue: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=47187
* Add API functions to limit minimum bitrateMartijn van Beurden2022-05-021-10/+10
| | | | | | | | | | | | | Quite a lot of decoders have trouble streaming or seeking in a file with frames that only consist of constant subframes because of the large difference between the largest and smallest subframe. To remedy this, this commit makes it possible to disable the use of constant subframes for the last subframe in case all others are constant with a new API function. This means the minimum bitrate for a FLAC file encoded with this function used is raised to 1bit/sample (i.e. 48kbit/s for 48kHz material). This commit also adds tests to the test suite
* Speed up intrinsic routines for fixed_compute_best_predictorMartijn van Beurden2022-04-281-120/+210
| | | | | | | New intrinsic routines are added to compute the best fixed predictor. According to my testing, the new routine is about 3 times as fast as the existing routine. This means an overall speedup for preset -2 of about 30% and for preset -0 of about 15% for CDDA
* Purge usage of `unsigned` typeErik de Castro Lopo2017-01-141-4/+4
| | | | | | | As pointed out by Ozkan Sezer, on some platforms `int32_t` is actually a typedef for `long` so `unsigned` cannot be used interchangably with `FLAC__uint32`. Fix is to switch from `unsigned` to explicit sized ISO C types defined in <stdint.h>.
* libFLAC: infer cpu type from compiler macrosTim Blechmann2016-05-121-0/+2
| | | | Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
* Retire FLAC__float and FLAC__double typesThomas Zander2016-02-091-13/+13
| | | | | | | | | | | | Usage of internal aliases for float and double do not provide substantial value. For integer-only libs, the macro FLAC__INTEGER_ONLY_LIBRARY is used in the appropriate places already. Also, adapt copyright messages to include 2016. Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com> Closes: https://github.com/xiph/flac/pull/10
* Remove traiing whitespace (mostly .c and .h files).Erik de Castro Lopo2014-12-051-3/+3
| | | | Patch-from: lvqcl <lvqcl.mail@gmail.com>
* libFLAC/fixed_intrin_sse2.c : Fix comments.Erik de Castro Lopo2014-10-071-2/+2
| | | | Patch-from: lvqcl <lvqcl.mail@gmail.com>
* fixed_intrin_sse[23].c : Add new, simpler SSE code.Erik de Castro Lopo2014-09-211-2/+12
| | | | | | | It's simpler but not faster so it is disabled by default. Maybe it will be faster on newer CPUs though.. Patch-from: lvqcl <lvqcl.mail@gmail.com>
* fixed_intrin_sse[23].c : Simplify XMM -> int64 conversion.Erik de Castro Lopo2014-09-181-21/+8
| | | | Patch-from: lvqcl <lvqcl.mail@gmail.com>
* Revert "Replace FLAC__CPU_X86_64 with FLaC__CPU_X86_64."Erik de Castro Lopo2014-06-151-2/+2
| | | | | | | This reverts commit 151739921b74fbf31420358a5fbeb094efa017ed. This patch only when part way to replace all FLAC_* with FLaC_* and its really not worth going all the way.
* Replace FLAC__CPU_X86_64 with FLaC__CPU_X86_64.Erik de Castro Lopo2014-06-011-2/+2
| | | | | | | Previous autorconf versions had problems with variable begining witj 'FLAC_' (autoconf uses 'AC_'). Reported-by: lvqcl <lvqcl.mail@gmail.com>
* Add files missing from commit 93f6109c9016.Erik de Castro Lopo2014-04-121-0/+256