wiener_luma_8bpc_c: 326272.1
wiener_luma_8bpc_avx2: 19841.5
Decoding time of first 1000 frames of Chimera-8bit-1920x1080.ivf goes
from 27.471 to 23.558 seconds.
On ARM, the readtime implementations are instructions that might
not always be allowed at runtime (depending on whether the kernel
has allowed user mode code to access the cycle counter registers).
In order to allow building checkasm with the option for benchmarking,
while still running on devices where benchmarking isn't possible,
don't use readtime anywhere unless --bench has been specified.
Use GetTickCount for the seed on windows, and gettimeofday on unix.
Loop inside SIMD (instead of in the caller) so that we can handle
multiple 4px blocks per iteration, allowing for more efficient
SIMD. To make this easier, also transpose the masks for the hor
filter.
Input coefficients for transforms of sizes 16x32/32x16 and above were
larger than they should be, which in rare cases could cause tests to
incorrectly fail.
Disabled by default, enabble with `meson -Dbuild_libfuzzer=true -Db_lundef=false ...`.
Fuzz target improved by the paralell work by Thierry Foucu in !138.
Due to bugs in meson the approach with the intermediate static library
for tests does not work very well, see #44. Therefore this commits
removes that helper library and instead uses extract_all_objects for
the tests.
Due to the removal of the static helper library, it means we can no
longer force static linking for dav1d tool on windows which means that
when building a shared library the dav1d.exe will not be runnable in
the build directory again.
Fix#44
Some of the code originally written by, or based by code written by,
the following authors who have agreed to relicense it to 2-clause BSD:
Anton Mitrofanov
Diego Biurrun
Janne Grunau
Loren Merritt
Luca Barbato
Martin Storsjö
Michael Niedermayer