summaryrefslogtreecommitdiff
path: root/test/dct32x32_test.cc
AgeCommit message (Collapse)Author
2018-12-07test/*: use std::*tupleJames Zern
since: 77fa51003 Replace deprecated scoped_ptr with unique_ptr c++11 has been required so <tuple> is safe to use Change-Id: I873cb953104b361a8503b5839a3372ce2b99e73c
2018-06-27Add Speed Tests to Trans32x32TestLuc Trudeau
Speed tests are disabled by default. Change-Id: I49f8da3d3e1e4d9c72b17fc47c098284e7d84236
2018-06-27VSX Version of fdct32x32_rdLuc Trudeau
Low bit depth version only. Passes the Trans32x32Test test suite. Trans32x32Test Speed Test (POWER9 Model 2.2) 32x32 C time = 212.7 ms (±0.1 ms), VSX time = 82.3 ms (±0.0 ms) [2.6x] Change-Id: If906ec9b56ce3818cae0cc462c7277284ab29859
2018-03-28test: use testing::*tuple instead of std::tr1James Zern
googletest imports tuple into testing to allow for compatibility across c++ versions where tuple may be in std::tr1 or std. fixes deprecation warnings under visual studio 2017 Change-Id: Id78b372d5478b12d8c8f63fd3f2166fec25aa8be
2017-09-30ppc: Add vpx_idct32x32_1024_add_vsxAlexandra Hájková
Change-Id: I55cd0a1569ccc47a53d0ecf751aac259d510e10d
2017-07-06fdct neon: 32x32_rdJohann
About 40% faster than the non-rd version. BUG=webm:1424 Change-Id: Ia99d14eb9532302eeaab8cd3e503395b0374b5a2
2017-06-28partial fdct testJohann
Test the _1 variant of the fdct, which simply sums the block and applies a modifying shift based on the block size. BUG=webm:1424 Change-Id: Ic80d6008abba0c596b575fa0484d5b5855321468
2017-06-22fdct32x32 neon implementationJohann
Almost 3x faster in constrained loop testing. Over 10x faster in HBD builds. BUG=webm:1424 Change-Id: I2b7f8453e1d4ada63cde729d8115d684c4a71ff9
2017-05-03Update highbd idct functions arguments to use uint16_t dstLinfeng Zhang
BUG=webm:1388 Change-Id: I3581d80d0389b99166e70987d38aba2db6c469d5
2017-05-03Clean CONVERT_TO_BYTEPTR/SHORTPTR in idctLinfeng Zhang
BUG=webm:1388 Change-Id: Ida62c941f2b836d6c9e27b427a7d5008ab6dc112
2016-08-05test: apply clang-tidy google-readability-braces-around-statementsclang-format
applied against a x86_64 configure with and without --enable-vp9-highbitdepth clang-tidy-3.7.1 \ -checks='-*,google-readability-braces-around-statements' \ -header-filter='.*' -fix + clang-format afterward Change-Id: Ia2993ec64cf1eb3505d3bfb39068d9e44cfbce8d
2016-07-27test: apply clang-formatclang-format
Change-Id: I0d9ab85855eb723f653a7bb09b3d0d31dd6cfd2f
2016-06-29tests: remove redundant round() definitionJames Zern
use vpx_ports/msvc.h for compatibility BUG=b/29583530 Change-Id: I9433d8586cd0b790e7f4d697304298feafe801f1
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-13dct32x32_test: s/HAVE_NEON_ASM/HAVE_NEON/James Zern
vpx_idct32x32_1024_add_neon is implemented with instrinsics Change-Id: I072b18248b97ee2634f06b2751ffa2ced85f8e5b
2016-04-06Merge changes I7a1c0cba,Ie02b5caf,I2cbd85d7,I644f35b0James Zern
* changes: vpx_fdct16x16_1_sse2: improve load pattern vpx_fdct16x16_1_c/msa: fix accumulator overflow vpx_fdctNxN_1_sse2: reduce store size dct32x32_test: add PartialTrans32x32Test, Random
2016-04-02dct32x32_test: create fn pointers w/'&' refJames Zern
this helps some toolchains (vs9) resolve the type of the parameter Change-Id: I116030361fc956e10de82b64c81d5917cddbcd5a
2016-04-01dct32x32_test: add PartialTrans32x32Test, RandomJames Zern
Change-Id: I644f35b0b0a540bf5b6ebb6dbc05b3c95736f42b
2016-03-30vpx_fdct32x32_1_c: fix accumulator overflowJames Zern
tran_low_t is only 16-bits in non-high-bitdepth mode Change-Id: Ifc06110c95e86e6d790c44250d52a538b2e9713b
2016-02-02dct32x32_test: remove unused functionJames Zern
idct32x32_8 Change-Id: I1678ab48639cc54be4c9294479de01beced9e1e9
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-28Factor 32x32 fwd DCT to vpx_dsp folderJingning Han
Move the 32x32 2D-DCT implementations from vp9/ to vpx_dsp/. Change-Id: Id3980696f8b69906ff7a59ff9fb2b9013d60047d
2015-06-17mips msa vp9 fdct 32x32 optimizationParag Salasakar
average improvement ~4x-6x Change-Id: Ibcac3ef8ed5e207cf8c121e696570e6b63d3c0f4
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-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-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-08Merge "mips msa vp9 idct 32x32 optimization"Parag Salasakar
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-07mips msa vp9 idct 32x32 optimizationParag Salasakar
average improvement ~4x-6x Change-Id: Idaba7e49fbd7f388caee0d73773ccf6e4807ef17
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-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-22tests/reference_32x32_dct_1d: remove unused stride paramJames Zern
Change-Id: Iba3c63cda2d825e72879b567589615aded522fbb
2014-07-18dct32x32_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: Ie1918d93c0a0d7a854e88b5a77b8c21b4cdc28b7
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-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-12Only build neon assembly for armv7 targetsJohann
Allow selectively building just the intrinsics for armv8 Change-Id: I2f29b2e4508b8b8e5649c2906b3159ad1d4ec477
2014-02-26dct32x32_test: add NEON functionsJames Zern
note not all functions have NEON implementations: - vp9_fdct32x32/vp9_fdct32x32_rd Change-Id: I3795d78bf215e41ab8801c2c37cf633f16931f9d
2014-01-23test/: remove unnecessary extern "C"sJames Zern
Change-Id: I826655a708010149de231ca31a2e3ba4f1842c0c
2013-11-27Merge "vp9_short_fdct32x32_rd vp9_short_fdct32x32 optimized for AVX2"Yaowu Xu
2013-11-21vp9_short_fdct32x32_rd vp9_short_fdct32x32 optimized for AVX2levytamar82
Change-Id: I6366e84490883b72362f762369d7e5bccb64f02f
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_fdct32x32 to vp9_fdct32x32.Dmitry Kovalev
For consistency with idct function names. Change-Id: Ie77b7178e0894c57cd5cb9243c949eb9224ece18
2013-10-17Using stride (# of elements) instead of pitch (bytes) in fdct32x32.Dmitry Kovalev
Just making fdct consistent with iht/idct/fht functions which all use stride (# of elements) as input argument. Change-Id: Id623c5113262655fa50f7c9d6cec9a91fcb20bb4
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-10Giving consistent names to IDCT 32x32 functions.Dmitry Kovalev
Renames: vp9_short_idct32x32_add -> vp9_idct32x32_1024_add vp9_short_idct32x32_1_add -> vp9_idct32x32_1_add vp9_idct_add_32x32 -> vp9_idct32x32_add Change-Id: Id85306f5814bac6c47463a6b5901a93082510666