1 /*
2 * Copyright (c) 2016, Alliance for Open Media. All rights reserved
3 *
4 * This source code is subject to the terms of the BSD 2 Clause License and
5 * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6 * was not distributed with this source code in the LICENSE file, you can
7 * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8 * Media Patent License 1.0 was not distributed with this source code in the
9 * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
10 */
11
12 #include <tuple>
13
14 #include "third_party/googletest/src/googletest/include/gtest/gtest.h"
15 #include "test/hiprec_convolve_test_util.h"
16
17 using libaom_test::ACMRandom;
18 #if CONFIG_AV1_HIGHBITDEPTH
19 using libaom_test::AV1HighbdHiprecConvolve::AV1HighbdHiprecConvolveTest;
20 #endif
21 using libaom_test::AV1HiprecConvolve::AV1HiprecConvolveTest;
22 using std::make_tuple;
23 using std::tuple;
24
25 namespace {
26
TEST_P(AV1HiprecConvolveTest,CheckOutput)27 TEST_P(AV1HiprecConvolveTest, CheckOutput) { RunCheckOutput(GET_PARAM(3)); }
TEST_P(AV1HiprecConvolveTest,DISABLED_SpeedTest)28 TEST_P(AV1HiprecConvolveTest, DISABLED_SpeedTest) {
29 RunSpeedTest(GET_PARAM(3));
30 }
31 #if HAVE_SSE2
32 INSTANTIATE_TEST_SUITE_P(SSE2, AV1HiprecConvolveTest,
33 libaom_test::AV1HiprecConvolve::BuildParams(
34 av1_wiener_convolve_add_src_sse2));
35 #endif
36 #if HAVE_AVX2
37 INSTANTIATE_TEST_SUITE_P(AVX2, AV1HiprecConvolveTest,
38 libaom_test::AV1HiprecConvolve::BuildParams(
39 av1_wiener_convolve_add_src_avx2));
40 #endif
41 #if HAVE_NEON
42 INSTANTIATE_TEST_SUITE_P(NEON, AV1HiprecConvolveTest,
43 libaom_test::AV1HiprecConvolve::BuildParams(
44 av1_wiener_convolve_add_src_neon));
45 #endif
46
47 #if CONFIG_AV1_HIGHBITDEPTH
48 #if HAVE_SSSE3 || HAVE_AVX2
TEST_P(AV1HighbdHiprecConvolveTest,CheckOutput)49 TEST_P(AV1HighbdHiprecConvolveTest, CheckOutput) {
50 RunCheckOutput(GET_PARAM(4));
51 }
TEST_P(AV1HighbdHiprecConvolveTest,DISABLED_SpeedTest)52 TEST_P(AV1HighbdHiprecConvolveTest, DISABLED_SpeedTest) {
53 RunSpeedTest(GET_PARAM(4));
54 }
55 #if HAVE_SSSE3
56 INSTANTIATE_TEST_SUITE_P(SSSE3, AV1HighbdHiprecConvolveTest,
57 libaom_test::AV1HighbdHiprecConvolve::BuildParams(
58 av1_highbd_wiener_convolve_add_src_ssse3));
59 #endif
60 #if HAVE_AVX2
61 INSTANTIATE_TEST_SUITE_P(AVX2, AV1HighbdHiprecConvolveTest,
62 libaom_test::AV1HighbdHiprecConvolve::BuildParams(
63 av1_highbd_wiener_convolve_add_src_avx2));
64 #endif
65 #endif
66 #endif // CONFIG_AV1_HIGHBITDEPTH
67
68 } // namespace
69