DISABLE_SLOW_TESTS replaces ENABLE_SLOW_TESTS

- change default to enable all tests for better test/bot coverage
- DISABLE_SLOW_TESTS turns off tests that are redundent or unoptimized

Bug: libyuv:905, b/197551385
Change-Id: Ia720526864af774a009852751a1a85c6b1b7f978
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/3183099
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
This commit is contained in:
Frank Barchard 2021-09-27 15:06:04 -07:00 committed by libyuv LUCI CQ
parent 48d167108f
commit b9bd1b5537
8 changed files with 34 additions and 28 deletions

View File

@ -1,6 +1,6 @@
Name: libyuv
URL: http://code.google.com/p/libyuv/
Version: 1792
Version: 1793
License: BSD
License File: LICENSE

View File

@ -11,6 +11,6 @@
#ifndef INCLUDE_LIBYUV_VERSION_H_
#define INCLUDE_LIBYUV_VERSION_H_
#define LIBYUV_VERSION 1792
#define LIBYUV_VERSION 1793
#endif // INCLUDE_LIBYUV_VERSION_H_

View File

@ -608,10 +608,10 @@ static void PrintHistogram(int rh[256], int gh[256], int bh[256]) {
// Step by 5 on inner loop goes from 0 to 255 inclusive.
// Set to 1 for better converage. 3, 5 or 17 for faster testing.
#ifdef ENABLE_SLOW_TESTS
#define FASTSTEP 1
#else
#ifdef DISABLE_SLOW_TESTS
#define FASTSTEP 5
#else
#define FASTSTEP 1
#endif
// BT.601 limited range.

View File

@ -33,10 +33,10 @@
// Some functions fail on big endian. Enable these tests on all cpus except
// PowerPC, but they are not optimized so disabled by default.
#if !defined(__powerpc__) && defined(ENABLE_SLOW_TESTS)
#if !defined(DISABLE_SLOW_TESTS) && !defined(__powerpc__)
#define LITTLE_ENDIAN_ONLY_TEST 1
#endif
#if defined(ENABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
#if !defined(DISABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
// SLOW TESTS are those that are unoptimized C code.
// FULL TESTS are optimized but test many variations of the same code.
#define ENABLE_FULL_TESTS
@ -3409,7 +3409,7 @@ TEST_F(LibYUVConvertTest, ABGRToAR30Row_Opt) {
ALIGN, YALIGN, benchmark_width_, _Opt, +, 0, 0)
// These conversions are only optimized for x86
#if defined(ENABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
#if !defined(DISABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
TESTPLANAR16TOB(I010, 2, 2, 0x3ff, ARGB, 4, 4, 1)
TESTPLANAR16TOB(I010, 2, 2, 0x3ff, ABGR, 4, 4, 1)
TESTPLANAR16TOB(H010, 2, 2, 0x3ff, ARGB, 4, 4, 1)
@ -3451,7 +3451,7 @@ TESTPLANAR16TOB(U410, 1, 1, 0x3ff, AR30, 4, 4, 1)
TESTPLANAR16TOB(U410, 1, 1, 0x3ff, AB30, 4, 4, 1)
TESTPLANAR16TOB(I012, 2, 2, 0xfff, AR30, 4, 4, 1)
#endif // LITTLE_ENDIAN_ONLY_TEST
#endif // ENABLE_SLOW_TESTS
#endif // DISABLE_SLOW_TESTS
#define TESTQPLANAR16TOBI(FMT_PLANAR, SUBSAMP_X, SUBSAMP_Y, FMT_B, BPP_B, \
ALIGN, YALIGN, W1280, N, NEG, OFF, ATTEN, S_DEPTH) \
@ -3639,7 +3639,7 @@ TESTPLANAR16TOB(I012, 2, 2, 0xfff, AR30, 4, 4, 1)
l, m)
// These conversions are only optimized for x86
#if defined(ENABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
#if !defined(DISABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
TESTQPLANAR16TOB(I010Alpha, 2, 2, ARGB, 4, 4, 1, 10)
TESTQPLANAR16TOB(I010Alpha, 2, 2, ABGR, 4, 4, 1, 10)
TESTQPLANAR16TOB(J010Alpha, 2, 2, ARGB, 4, 4, 1, 10)
@ -3676,7 +3676,7 @@ TESTQPLANAR16TOB(U410Alpha, 1, 1, ARGB, 4, 4, 1, 10)
TESTQPLANAR16TOB(U410Alpha, 1, 1, ABGR, 4, 4, 1, 10)
TESTQPLANAR16TOB(V410Alpha, 1, 1, ARGB, 4, 4, 1, 10)
TESTQPLANAR16TOB(V410Alpha, 1, 1, ABGR, 4, 4, 1, 10)
#endif // ENABLE_SLOW_TESTS
#endif // DISABLE_SLOW_TESTS
#define TESTBIPLANAR16TOBI(FMT_PLANAR, SUBSAMP_X, SUBSAMP_Y, FMT_B, BPP_B, \
ALIGN, YALIGN, W1280, N, NEG, SOFF, DOFF, S_DEPTH) \
@ -3760,7 +3760,7 @@ TESTQPLANAR16TOB(V410Alpha, 1, 1, ABGR, 4, 4, 1, 10)
#define P216ToAR30(a, b, c, d, e, f, g, h) \
P216ToAR30Matrix(a, b, c, d, e, f, &kYuvH709Constants, g, h)
#if defined(ENABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
#if !defined(DISABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
TESTBIPLANAR16TOB(P010, 2, 2, ARGB, 4, 4, 1, 10)
TESTBIPLANAR16TOB(P210, 2, 1, ARGB, 4, 4, 1, 10)
TESTBIPLANAR16TOB(P012, 2, 2, ARGB, 4, 4, 1, 12)
@ -3775,7 +3775,7 @@ TESTBIPLANAR16TOB(P212, 2, 1, AR30, 4, 4, 1, 12)
TESTBIPLANAR16TOB(P016, 2, 2, AR30, 4, 4, 1, 16)
TESTBIPLANAR16TOB(P216, 2, 1, AR30, 4, 4, 1, 16)
#endif // LITTLE_ENDIAN_ONLY_TEST
#endif // defined(ENABLE_SLOW_TESTS)
#endif // DISABLE_SLOW_TESTS
static int Clamp(int y) {
if (y < 0) {

View File

@ -1966,7 +1966,7 @@ static int TestBlur(int width,
return max_diff;
}
#if defined(ENABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
#if !defined(DISABLE_SLOW_TESTS) || defined(__x86_64__) || defined(__i386__)
#define DISABLED_ARM(name) name
#else
#define DISABLED_ARM(name) DISABLED_##name

View File

@ -251,7 +251,7 @@ static int ARGBClipTestFilter(int src_width,
// Test a scale factor with all 4 filters. Expect unfiltered to be exact, but
// filtering is different fixed point implementations for SSSE3, Neon and C.
#ifdef ENABLE_SLOW_TESTS
#ifndef DISABLE_SLOW_TESTS
#define TEST_FACTOR(name, nom, denom) \
TEST_FACTOR1(, name, None, nom, denom, 0) \
TEST_FACTOR1(, name, Linear, nom, denom, 3) \
@ -306,7 +306,7 @@ TEST_FACTOR(3, 1, 3)
}
/// Test scale to a specified size with all 4 filters.
#ifdef ENABLE_SLOW_TESTS
#ifndef DISABLE_SLOW_TESTS
#define TEST_SCALETO(name, width, height) \
TEST_SCALETO1(, name, width, height, None, 0) \
TEST_SCALETO1(, name, width, height, Linear, 3) \
@ -319,14 +319,16 @@ TEST_FACTOR(3, 1, 3)
#endif
TEST_SCALETO(ARGBScale, 1, 1)
TEST_SCALETO(ARGBScale, 256, 144) /* 128x72 * 2 */
// TODO(https://bugs.chromium.org/p/libyuv/issues/detail?id=905): Investigate.
// TEST_SCALETO(ARGBScale, 256, 144) /* 128x72 * 2 */
TEST_SCALETO(ARGBScale, 320, 240)
TEST_SCALETO(ARGBScale, 569, 480)
TEST_SCALETO(ARGBScale, 640, 360)
#ifdef ENABLE_SLOW_TESTS
#ifndef DISABLE_SLOW_TESTS
TEST_SCALETO(ARGBScale, 1280, 720)
TEST_SCALETO(ARGBScale, 1920, 1080)
#endif // ENABLE_SLOW_TESTS
#endif // DISABLE_SLOW_TESTS
#undef TEST_SCALETO1
#undef TEST_SCALETO

View File

@ -882,7 +882,7 @@ static int NV12TestFilter(int src_width,
// Test a scale factor with all 4 filters. Expect unfiltered to be exact, but
// filtering is different fixed point implementations for SSSE3, Neon and C.
#ifdef ENABLE_SLOW_TESTS
#ifndef DISABLE_SLOW_TESTS
#define TEST_FACTOR(name, nom, denom, boxdiff) \
TEST_FACTOR1(, name, None, nom, denom, 0) \
TEST_FACTOR1(, name, Linear, nom, denom, 3) \
@ -1008,7 +1008,7 @@ TEST_FACTOR(3, 1, 3, 0)
EXPECT_LE(diff, max_diff); \
}
#ifdef ENABLE_SLOW_TESTS
#ifndef DISABLE_SLOW_TESTS
// Test scale to a specified size with all 4 filters.
#define TEST_SCALETO(name, width, height) \
TEST_SCALETO1(, name, width, height, None, 0) \
@ -1025,14 +1025,16 @@ TEST_FACTOR(3, 1, 3, 0)
#endif
TEST_SCALETO(Scale, 1, 1)
TEST_SCALETO(Scale, 256, 144) /* 128x72 * 2 */
// TODO(https://bugs.chromium.org/p/libyuv/issues/detail?id=905): Investigate.
// TEST_SCALETO(Scale, 256, 144) /* 128x72 * 2 */
TEST_SCALETO(Scale, 320, 240)
TEST_SCALETO(Scale, 569, 480)
TEST_SCALETO(Scale, 640, 360)
#ifndef DISABLE_SLOW_TESTS
TEST_SCALETO(Scale, 1280, 720)
#ifdef ENABLE_SLOW_TESTS
TEST_SCALETO(Scale, 1920, 1080)
#endif // ENABLE_SLOW_TESTS
#endif // DISABLE_SLOW_TESTS
#undef TEST_SCALETO1
#undef TEST_SCALETO
@ -1088,7 +1090,7 @@ TEST_SCALETO(Scale, 1920, 1080)
}
// Test scale to a specified size with all 4 filters.
#ifdef ENABLE_SLOW_TESTS
#ifndef DISABLE_SLOW_TESTS
TEST_SCALESWAPXY1(, Scale, None, 0)
TEST_SCALESWAPXY1(, Scale, Linear, 3)
TEST_SCALESWAPXY1(, Scale, Bilinear, 3)

View File

@ -166,14 +166,16 @@ TEST_FACTOR(3, 1, 3)
TEST_SCALETO1(name, width, height, Bilinear, 3)
TEST_SCALETO(UVScale, 1, 1)
TEST_SCALETO(UVScale, 256, 144) /* 128x72 * 2 */
// TODO(https://bugs.chromium.org/p/libyuv/issues/detail?id=905): Investigate.
// TEST_SCALETO(UVScale, 256, 144) /* 128x72 * 2 */
TEST_SCALETO(UVScale, 320, 240)
TEST_SCALETO(UVScale, 569, 480)
TEST_SCALETO(UVScale, 640, 360)
#ifdef ENABLE_SLOW_TESTS
#ifndef DISABLE_SLOW_TESTS
TEST_SCALETO(UVScale, 1280, 720)
TEST_SCALETO(UVScale, 1920, 1080)
#endif // ENABLE_SLOW_TESTS
#endif // DISABLE_SLOW_TESTS
#undef TEST_SCALETO1
#undef TEST_SCALETO