summaryrefslogtreecommitdiff
path: root/test/dct16x16_test.cc
AgeCommit message (Collapse)Author
2016-06-01Fix UBSAN/IOC errorsYaowu Xu
1. test/dct16x16_test.cc 2. test/dct32x32_test.cc 3. test/fdct8x8_test.cc BUG=webm:1225 Change-Id: I9c9315fbd65ddb3b44f688e01ba265fd22192198
2016-04-04vpx_fdct16x16_1_c/msa: fix accumulator overflowJames Zern
tran_low_t is only signed 16-bits in non-high-bitdepth mode Change-Id: Ie02b5caf2658e8e71f995c17dd5ce666a4d64918
2016-02-11tests: quiet some unused parameter warningsJames Zern
Change-Id: Iff8b0d77234f78bf407676891bccad92825bfcc6
2016-02-02dct16x16_test: quiet unused-function warningJames Zern
in non-x86 builds Change-Id: I1171e9c7e7ea5bcdea70bf5e3d28b07d6bb5578f
2015-09-01Remove unused functions from test filesJohann
Change-Id: Id479a83fe3cb7d989a490328b3ff526530777f81
2015-08-04Replace vp9_ prefix with vpx_ prefix in vpx_dsp function namesJingning Han
This commit clears the function naming convention in vpx_dsp. It replaces vp9_ prefix of global functions with vpx_ prefix. It also removes the vp9_ prefix from static functions. Change-Id: I6394359a63b71a51dda01342eec6a3cc08dfeedf
2015-07-29Cosmetics - Fix header file order in unit testsJingning Han
Change-Id: I9582a8d74990125b71e8fe620f7f3f2585a30798
2015-07-28Replace vp9_ prefix in 2D-DCT functions with vpx_Jingning Han
Clean up the forward 2D-DCT function names in vpx_dsp. Change-Id: I3117978596d198b690036e7eb05fe429caf3bc25
2015-07-24Move msa implementations of 2D-DCT to vpx_dspJingning Han
Refactor and clean up the msa transform related code layout. Change-Id: Ic5048bd3d62a6046589817da745370ea89448e44
2015-07-22Factor forward 2D-DCT transforms into vpx_dspJingning Han
This commit factors the 4x4, 8x8, and 16x16 2D-DCT forward transform operations into vpx_dsp folder. Change-Id: I084b117b79c0925edcbcabb93f62b9f4bf8dbe7d
2015-07-20Unify the high bit-depth forward hybrid transformsJingning Han
The SSE2 version high bit-depth forward hybrid transforms are essentially using the C functions via cross referencing to 1-D functions in vp9_dct.c. This commit unifies the two versions and removes the unnecessary dependency. Change-Id: Ib4d0702a138f8daf7d0bd97c141ee7088f293765
2015-06-16mips msa vp9 fdct 16x16 optimizationParag Salasakar
average improvement ~4x-6x Change-Id: Id3b2243e5b3c7844c90c4231a5e75fa69911362c
2015-06-01mips msa vp9 updated idct 8x8, 16x16 and 32x32 moduleParag Salasakar
Updated sources according to improved version of common MSA macros. Enabled idct MSA hooks and tests. Overall, this is just upgrading the code with styling changes. Change-Id: I1f488ab2c741f6c622b7a855388a202168082209
2015-05-30Merge "mips msa vp9 updated macros and disable all MSA functions"Parag Salasakar
2015-05-29mips msa vp9 updated macros and disable all MSA functionsParag Salasakar
Done little restructuring/styling changes to the sources like generic macro definitions, their use to reduce code lines, better code alignments etc. Disabled all MSA hooks and tests Change-Id: Ic6f2dce0b501f46b80c06c46c0fe2043d557b190
2015-05-22Re-worked header filesScott LaVarnway
Various header/test files had to be re-worked in order to build "Remove cm parameter from vp9_decode_block_tokens()". This patch reverts the "Remove cm" part and only contains the re-worked header files. Change-Id: I520958a88d1991fee988a3c784d0eac40e117a32
2015-05-13Relocate memory operations for common codeJohann
With the sad functions, and hopefully the variance functions soon, moving to the vpx_dsp location, place the defines used in the reference C code in a common location. Change-Id: I4c8ce7778eb38a0a3ee674d2f1c488eda01cfeca
2015-05-07replace DECLARE_ALIGNED_ARRAY w/DECLARE_ALIGNEDJames Zern
this macro was used inconsistently and only differs in behavior from DECLARE_ALIGNED when an alignment attribute is unavailable. this macro is used with calls to assembly, while generic c-code doesn't rely on it, so in a c-only build without an alignment attribute the code will function as expected. Change-Id: Ie9d06d4028c0de17c63b3a27e6c1b0491cc4ea79
2015-05-05mips msa vp9 idct 16x16 optimizationParag Salasakar
average improvement ~4x-6x Change-Id: I55e95b7f2ba403dff11813958dc7c73a900dd022
2015-04-30Merge "Disable ssse3 version idct16x16_256_add()"Yaowu Xu
2015-04-29Disable ssse3 version idct16x16_256_add()Yaowu Xu
The version is currently producing different result from c version for some input. Disable the use of it for now to allow time for investigation the source of mismatch. Change-Id: Id039455494ee531db4886a9f1fa4761174ef6df3
2015-04-28vpx_mem: remove vpx_memsetJames Zern
vestigial. replace instances with memset() which they already were being defined to. Change-Id: Ie030cfaaa3e890dd92cf1a995fcb1927ba175201
2014-12-02Added high bitdepth sse2 transform functionsPeter de Rivaz
Also removes some spurious changes in common/vp9_blockd.h which was introduced by a rebase issue between nextgen and master branches. Change-Id: If359f0e9a71bca9c2ba685a87a355873536bb282 (cherry picked from commit 005d80cd05269a299cd2f7ddbc3d4d8b791aebba) (cherry picked from commit 08d2f548007fd8d6fd41da8ef7fdb488b6485af3) (cherry picked from commit 4230c2306c194c058f56433a5275aa02a2e71d56)
2014-10-09Rename highbitdepth functions to use highbd prefixDeb Mukherjee
Uses highbd_ prefix convention consistently. Change-Id: I58f7f799a7ff8e32701bcd71c955bcf1cdd4581e
2014-10-06Add range check in inverse ADST 16x16Jingning Han
Bit-stream clarification related to Issue 868. Change-Id: I92a7bc5b7782c9ea5c3f6cceec761742183c9514
2014-10-03Incorporate WRAPLOW macro into non-highbitdepth txDeb Mukherjee
Incorporates the WRAPLOW macro into the non-highbitdepth transforms to aid hardware verification between a software C model and an intended hardware implementation though the use of the configure options: --enable-experimental --enable-emulate-hardware. Note that to avoid further discrepancies between the sse/sse2 implementations of the transforms and the C implementation, when the emulate hardware option is invoked, we also disable sse/sse2/etc. Also incudes some minor cleanups/renaming etc. Change-Id: Ib864d8493313927d429cce402982f1c8e45b3287
2014-09-11Adds high bitdepth transform functions and testsDeb Mukherjee
Adds various high bitdepth transform functions and tests. Much of the changes are related to using typedefs tran_low_t and tran_high_t for the final transform cofficients and intermediate stages of the transform computation respectively rather than fixed types int16_t/int. When vp9_highbitdepth configure flag is off, these map tp int16_t/int32_t, but when the flag is on, they map to int32_t/int64_t to make space for needed extra precision. Change-Id: I3c56de79e15b904d6f655b62ffae170729befdd8
2014-08-22dct16x16_test.cc: remove unused param warningsJames Zern
Change-Id: I744342b12ae7e5423b06b87ceec2d2ab4a3a3cbb
2014-07-28Fix bug 805levytamar82
Remove all the redundant dct functions (dct4x4, dct8x8) in avx2 except dct32x32 those functions were copied originally from dct_sse2 Change-Id: I742576fbf5175f3ac09f2076976a9247b259323e
2014-07-18dct16x16_test: drop '_t' from local typenamesJames Zern
_t is reserved by posix + switch to camelcase http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Type_Names Change-Id: I4e6f293790922684402bfa9c22ec1ac2b9981a0e
2014-07-10tests: add API_REGISTER_STATE_CHECKJames Zern
used to wrap API functions to ensure full environment consistency as opposed to the renamed ASM_REGISTER_STATE_CHECK which is used with assembly functions. currently checks the FPU tag word in x86/x86_64 gcc builds to ensure emms has been called. Change-Id: Ie241772dbf903d33d516a1add4c8c6783f2e1490
2014-06-09vp9_f(dct|ht): disable avx2 variantsJames Zern
tests failing under Win32/Win64 + dct16x16_test: add missing avx2 functions (partially disabled) exercises the forward transforms no idct/iht implementations, so the c-code is used Change-Id: I04f64a457fa0828a00f32b5c9fe4f55294f21f61
2014-06-03Rework unit test for 8x8 transformationJingning Han
This commit reworks the unit test for 8x8 forward/inverse transformation. It adds extreme input value test to detect overflow issues in the intermediate steps. It temporarily disables unit test for the SSSE3 version, which showed overflow failure in the new test conditions. Change-Id: I7caf10bba4b6db031add65d8c0eb99426b38aa42
2014-05-30Add overflow check unit test for 16x16 inverse DCT/ADST transformJingning Han
This commit applies quantization process with coarse quantization step size to the forward transform coefficients and tests all the inverse 16x16 DCT and ADST implementation versions with the dequantized coefficients as input, to verify that the outcomes match the prototype. Change-Id: I68034a6126b45192c87d8c642155290e89bff8fa
2014-05-23Re-enable unit test on neon implementation of 16x16 idctJingning Han
The previous change only tunes forward transform. It doesn't affect the neon implementation of the inverse transform. Hence turn the unit test on. Change-Id: I4f0f43783b98814d1eee53182209f9669d538140
2014-05-23Turn on unit test for inverse 16x16 2D-DCT ssse3Jingning Han
Change-Id: I02250d1364ca2e637585a8db020cba9fd4a95664
2014-05-19Adjust the forward 16x16 DCT computation stepsJingning Han
This commit adjusts the forward 16x16 DCT computation steps to simplify the register level operations. It fixes the corresponding sse2 version accordingly. Change-Id: I72a9c25b8ca9442fc5e113f47cd701ae55aa7f08
2014-05-12Only build neon assembly for armv7 targetsJohann
Allow selectively building just the intrinsics for armv8 Change-Id: I2f29b2e4508b8b8e5649c2906b3159ad1d4ec477
2014-02-25dct16x16_test: add NEON functionsJames Zern
note not all functions have NEON implementations: - fdct/fht/iht Change-Id: I6bb7ffe89b8cc23b642e19caf22f04f2d5e39087
2014-02-06Finally removing "short" from transform names.Dmitry Kovalev
Change-Id: I5259b68dc1bcceb153e3ffe638a79a59a3019e9d
2014-01-23test/: remove unnecessary extern "C"sJames Zern
Change-Id: I826655a708010149de231ca31a2e3ba4f1842c0c
2013-11-19Removing PARAMS macro for consistencyJoshua Litt
Change-Id: I23ed873a6c47b15491a2ffbcdd4f0fdeef1207a0
2013-10-24Making input pointer constant for all fdct/fht functions.Dmitry Kovalev
Change-Id: I78f7012f967a777ddd39bae6671eb501df6bbfe8
2013-10-23Renaming vp9_short_fdct16x16 to vp9_fdct16x16.Dmitry Kovalev
For consistency with idct function names. Change-Id: I5ca355ba99fdba04f09254be95cf79808b534f71
2013-10-18Using stride (# of elements) instead of pitch (bytes) in fdct16x16.Dmitry Kovalev
Just making fdct consistent with iht/idct/fht functions which all use stride (# of elements) as input argument. Change-Id: I2d95fdcbba96aaa0ed24a80870cb38f53487a97d
2013-10-11Making input pointer of any inverse transform constant.Dmitry Kovalev
Also renaming dest_stride to stride in some places. Change-Id: I75f602b623a5a7071d4922b747c45fa0b7d7a940
2013-10-11Consistent names for inverse hybrid transforms (1 of 2).Dmitry Kovalev
Renames: vp9_short_iht4x4_add -> vp9_iht4x4_16_add vp9_short_iht8x8_add -> vp9_iht8x8_64_add vp9_short_iht16x16_add_c -> vp9_iht16x16_256_add Change-Id: Ibca7a188fd062b196787ac5efc1ea545e7f166c0
2013-10-07Giving consistent names to IDCT 16x16 functions.Dmitry Kovalev
Renames: vp9_short_idct16x16_add -> vp9_idct16x16_256_add vp9_short_idct16x16_10_add -> vp9_idct16x16_10_add vp9_short_idct16x16_1_add -> vp9_idct16x16_1_add vp9_idct_add_16x16 -> vp9_idct16x16_add Change-Id: Ief8a3904de78deab0f4ede944c4d0339c228cfc3
2013-09-16Refactor 8x8 fwd transform unit testJingning Han
This commit reworked the unit test for 8x8 forward transform. It allows scalability to cover various implemented versions. Change-Id: I5594bd3e2307bb5bec764eaffd8860caa260e432
2013-09-09Enable accuracy/memory check for 16x16 transformsJingning Han
This commit completes the per coefficient accuracy check and memory overflow check for SSE2 and other implemented versions of 16x16 transform. Change-Id: If26a3e4f6ba82ccecc13f0b73cb8f7bb6ac14584