summaryrefslogtreecommitdiff
path: root/tests/checkasm/checkasm.c
Commit message (Collapse)AuthorAge
...
* | avcodec/dca: add new decoder based on libdcadecfoo862016-01-31
| |
* | avcodec/dca: remove old decoderfoo862016-01-31
| | | | | | | | | | Remove all files and functions which are not going to be reused, and disable all functions and FATE tests temporarily which will be.
* | checkasm: add videodsp emulated_edge_mc test.Ronald S. Bultje2016-01-21
| |
* | Merge commit '26ec75aec3576daea691dee53a78ec67c0dc4040'Hendrik Leppkes2016-01-19
|\| | | | | | | | | | | | | * commit '26ec75aec3576daea691dee53a78ec67c0dc4040': checkasm: Check register clobbering on arm Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * checkasm: Check register clobbering on armMartin Storsjö2016-01-07
| | | | | | | | | | | | | | | | | | | | | | Use two separate functions, depending on whether VFP/NEON is available. This is set to require armv5te - it uses blx, which is only available since armv5t, but we don't have a separate configure item for that. (It also uses ldrd, which requires armv5te, but this could be avoided if necessary.) Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '489e6add4478b0f5717dbf644234c6f3a3baf02c'Hendrik Leppkes2016-01-02
|\| | | | | | | | | | | | | * commit '489e6add4478b0f5717dbf644234c6f3a3baf02c': checkasm: add fmtconvert tests Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * checkasm: add fmtconvert testsJanne Grunau2015-12-21
| |
* | Merge commit '568a4323fbde03665b2b23a98068d02b39121812'Hendrik Leppkes2016-01-02
|\| | | | | | | | | | | | | * commit '568a4323fbde03665b2b23a98068d02b39121812': checkasm: add synth_filter test Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * checkasm: add synth_filter testJanne Grunau2015-12-21
| |
* | Merge commit 'e71b747e9dc56cb84f8a06ec8214d5f3bd98bb6d'Hendrik Leppkes2016-01-02
|\| | | | | | | | | | | | | * commit 'e71b747e9dc56cb84f8a06ec8214d5f3bd98bb6d': checkasm: add tests for dcadsp Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * checkasm: add tests for dcadspJanne Grunau2015-12-21
| |
* | Merge commit '9d218d573f8088c606d873e80df572582e6773ef'Hendrik Leppkes2016-01-02
|\| | | | | | | | | | | | | * commit '9d218d573f8088c606d873e80df572582e6773ef': checkasm: add float comparison util functions Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * checkasm: add float comparison util functionsJanne Grunau2015-12-21
| |
* | Merge commit 'e2710e790c09e49e86baa58c6063af0097cc8cb0'Hendrik Leppkes2016-01-02
|\| | | | | | | | | | | | | * commit 'e2710e790c09e49e86baa58c6063af0097cc8cb0': arm: add a cpu flag for the VFPv2 vector mode Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * arm: add a cpu flag for the VFPv2 vector modeJanne Grunau2015-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The vector mode was deprecated in ARMv7-A/VFPv3 and various cpu implementations do not support it in hardware. Vector mode code will depending the OS either be emulated in software or result in an illegal instruction on cpus which does not support it. This was not really problem in practice since NEON implementations of the same functions are preferred. It will however become a problem for checkasm which tests every cpu flag separately. Since this is a cpu feature newer cpu do not support anymore the behaviour of this flag differs from the other flags. It can be only activated by runtime cpu feature selection.
| * checkasm: add HEVC MC testsAnton Khirnov2015-12-05
| |
| * checkasm: Fix the function name sorting algorithmHenrik Gramner2015-10-03
| | | | | | | | | | | | The previous implementation was behaving incorrectly in some corner cases. Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * checkasm: Use a self-balancing treeHenrik Gramner2015-09-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Tested functions are internally kept in a binary search tree for efficient lookups. The downside of the current implementation is that the tree quickly becomes unbalanced which causes an unneccessary amount of comparisons between nodes. Improve this by changing the tree into a self-balancing left-leaning red-black tree with a worst case lookup/insertion time complexity of O(log n). Significantly reduces the recursion depth and makes the tests run around 10% faster overall. The relative performance improvement compared to the existing non-balanced tree will also most likely increase as more tests are added. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Add pixblockdsp checkasm testsTimothy Gu2015-11-07
| |
* | lavu: add AESNI CPU flagRodger Combs2015-10-28
| |
* | checkasm: add alacdsp testsJames Almer2015-10-06
| | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com>
* | checkasm: Fix compilation with --disable-avcodecHenrik Gramner2015-10-04
| |
* | checkasm: Remove use of deprecated av_set_cpu_flags_mask()Henrik Gramner2015-10-03
| |
* | checkasm: Fix the function name sorting algorithmHenrik Gramner2015-09-28
| | | | | | | | The previous implementation was behaving incorrectly in some corner cases.
* | checkasm: Use a self-balancing treeHenrik Gramner2015-09-26
| | | | | | | | | | | | | | | | | | | | | | | | Tested functions are internally kept in a binary search tree for efficient lookups. The downside of the current implementation is that the tree quickly becomes unbalanced which causes an unneccessary amount of comparisons between nodes. Improve this by changing the tree into a self-balancing left-leaning red-black tree with a worst case lookup/insertion time complexity of O(log n). Significantly reduces the recursion depth and makes the tests run around 10% faster overall. The relative performance improvement compared to the existing non-balanced tree will also most likely increase as more tests are added.
* | checkasm: add jpeg2000dsp rct_int testsJames Almer2015-09-20
| | | | | | | | | | Reviewed-by: Henrik Gramner <henrik@gramner.com> Signed-off-by: James Almer <jamrial@gmail.com>
* | checkasm: add flacdsp decorrelate testsJames Almer2015-09-17
| | | | | | | | | | Reviewed-by: Henrik Gramner <henrik@gramner.com> Signed-off-by: James Almer <jamrial@gmail.com>
* | checkasm: add vp9 MC tests.Ronald S. Bultje2015-09-15
| |
* | Merge commit '3cdda78deb19b39dbbf8961ae0aec44dbb19bf6d'Hendrik Leppkes2015-09-08
|\| | | | | | | | | | | | | * commit '3cdda78deb19b39dbbf8961ae0aec44dbb19bf6d': checkasm: add unit tests for v210enc Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * checkasm: add unit tests for v210encHenrik Gramner2015-09-06
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
| * checkasm: Explicitly declare function prototypesHenrik Gramner2015-08-20
| | | | | | | | | | | | | | | | | | | | | | | | Now we no longer have to rely on function pointers intentionally declared without specified argument types. This makes it easier to support functions with floating point parameters or return values as well as functions returning 64-bit values on 32-bit architectures. It also avoids having to explicitly cast strides to ptrdiff_t for example. Signed-off-by: Anton Khirnov <anton@khirnov.net>
| * checkasm: Remove unnecessary includeHenrik Gramner2015-08-11
| | | | | | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | checkasm: Explicitly declare function prototypesHenrik Gramner2015-08-19
| | | | | | | | | | | | | | | | | | | | Now we no longer have to rely on function pointers intentionally declared without specified argument types. This makes it easier to support functions with floating point parameters or return values as well as functions returning 64-bit values on 32-bit architectures. It also avoids having to explicitly cast strides to ptrdiff_t for example.
* | checkasm: Remove unnecessary includeHenrik Gramner2015-08-05
| |
* | Merge commit 'bf0cef5c3a114df452e5476167634dd8f51eb448'Michael Niedermayer2015-07-30
|\| | | | | | | | | | | | | * commit 'bf0cef5c3a114df452e5476167634dd8f51eb448': checkasm: Include io.h for isatty, if available Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * checkasm: Include io.h for isatty, if availableMartin Storsjö2015-07-30
| | | | | | | | | | | | | | | | configure does check for isatty, and checkasm properly checks HAVE_ISATTY, but on some platforms (e.g. WinRT), io.h needs to be included for isatty to be available. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '65c14801527068fcaf729eeffc142ffd4682a21a'Michael Niedermayer2015-07-27
|\| | | | | | | | | | | | | * commit '65c14801527068fcaf729eeffc142ffd4682a21a': checkasm: Modify report format Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * checkasm: Modify report formatHenrik Gramner2015-07-27
| | | | | | | | | | | | | | | | Makes it a bit more clear where each test belongs. Suggested by Anton Khirnov. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* | Merge commit '82e6ac85ff9aa7631b8c01521b3d6b5ca0bc8014'Michael Niedermayer2015-07-18
|\| | | | | | | | | | | | | * commit '82e6ac85ff9aa7631b8c01521b3d6b5ca0bc8014': checkasm: test all architectures with optimisations Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * checkasm: test all architectures with optimisationsJanne Grunau2015-07-18
| |
* | Merge commit '6cc4d3e9a982e926494f4b919d9733fe29774acf'Michael Niedermayer2015-07-18
|\| | | | | | | | | | | | | * commit '6cc4d3e9a982e926494f4b919d9733fe29774acf': checkasm: exit with status 0 instead of 1 if there are no tests to perform Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * checkasm: exit with status 0 instead of 1 if there are no tests to performHenrik Gramner2015-07-18
| |
* | Merge commit 'd37f23263584774e1798e9ac909a398304a05091'Michael Niedermayer2015-07-17
|\| | | | | | | | | | | | | * commit 'd37f23263584774e1798e9ac909a398304a05091': checkasm: Add unit tests for bswapdsp Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * checkasm: Add unit tests for bswapdspHenrik Gramner2015-07-17
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '2cb34f82b92c15b811f5c03dc7f61a4baf6e02e3'Michael Niedermayer2015-07-15
|\| | | | | | | | | | | | | * commit '2cb34f82b92c15b811f5c03dc7f61a4baf6e02e3': checkasm: Add unit tests for h264qpel Merged-by: Michael Niedermayer <michael@niedermayer.cc>
| * checkasm: Add unit tests for h264qpelHenrik Gramner2015-07-15
| | | | | | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '8bc67ec2c0d2b5444d51a1bed1d50f0e10d92717'Michael Niedermayer2015-07-12
|/ | | | | | | * commit '8bc67ec2c0d2b5444d51a1bed1d50f0e10d92717': Checkasm: assembly testing and benchmarking tool Merged-by: Michael Niedermayer <michael@niedermayer.cc>
* Checkasm: assembly testing and benchmarking toolHenrik Gramner2015-07-12
It provides the following features: * verify correctness by comparing output to the C version. * detect failure to save and restore clobbered callee-saved registers. * detect 32-bit parameters being used as if they were 64-bit in x86-64 (the upper halves are not guaranteed to be zero - but in practice they very often are, which makes those bugs hard to spot otherwise). * easy benchmarking. Compile by running 'make checkasm'. Execute by running 'tests/checkasm/checkasm'. Optional arguments are '--bench' to run benchmarks for all functions, '--bench=<pattern>' to run benchmarks for all functions that starts with <pattern>, and '<integer>' to seed the PRNG for reproducible results. Contains unit tests for most h264pred functions to get started, more tests can be added afterwards using those as a reference. Loosely based on code from x264. Currently only supports x86 and x86-64, but additional architectures shouldn't be too much of an obstacle to add. Note that functions with floating point parameters or floating point return values are not supported. Some compiler-specific features or preprocessor hacks would likely be required to add support for that. Signed-off-by: Janne Grunau <janne-libav@jannau.net>