#include "./vpx_config.h"
#include "./vpx_dsp_rtcd.h"
#include "test/acm_random.h"
+#include "test/bench.h"
#include "test/clear_system_state.h"
#include "test/register_state_check.h"
#include "test/util.h"
}
#endif // CONFIG_VP9_HIGHBITDEPTH
-class Trans32x32Test : public ::testing::TestWithParam<Trans32x32Param> {
+class Trans32x32Test : public AbstractBench,
+ public ::testing::TestWithParam<Trans32x32Param> {
public:
virtual ~Trans32x32Test() {}
virtual void SetUp() {
int mask_;
FwdTxfmFunc fwd_txfm_;
InvTxfmFunc inv_txfm_;
+
+ int16_t *bench_in_;
+ tran_low_t *bench_out_;
+ virtual void Run();
};
+void Trans32x32Test::Run() { fwd_txfm_(bench_in_, bench_out_, 32); }
+
TEST_P(Trans32x32Test, AccuracyCheck) {
ACMRandom rnd(ACMRandom::DeterministicSeed());
uint32_t max_error = 0;
}
}
+TEST_P(Trans32x32Test, DISABLED_Speed) {
+ ACMRandom rnd(ACMRandom::DeterministicSeed());
+
+ DECLARE_ALIGNED(16, int16_t, input_extreme_block[kNumCoeffs]);
+ DECLARE_ALIGNED(16, tran_low_t, output_block[kNumCoeffs]);
+
+ bench_in_ = input_extreme_block;
+ bench_out_ = output_block;
+
+ RunNTimes(INT16_MAX);
+ PrintMedian("32x32");
+}
+
TEST_P(Trans32x32Test, InverseAccuracy) {
ACMRandom rnd(ACMRandom::DeterministicSeed());
const int count_test_block = 1000;