Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(176)

Unified Diff: unit_test/convert_test.cc

Issue 1361813002: replace random with fastrand (Closed) Base URL: https://chromium.googlesource.com/libyuv/libyuv@master
Patch Set: remove win32 version of random Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « unit_test/compare_test.cc ('k') | unit_test/math_test.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: unit_test/convert_test.cc
diff --git a/unit_test/convert_test.cc b/unit_test/convert_test.cc
index 662c17224b31dccf210361170ef2a71ca9fc6299..e0dabcf6940ad9f90001abf36964d74dd04b1d92 100644
--- a/unit_test/convert_test.cc
+++ b/unit_test/convert_test.cc
@@ -56,16 +56,15 @@ TEST_F(libyuvTest, SRC_FMT_PLANAR##To##FMT_PLANAR##N) { \
align_buffer_64(dst_v_opt, \
SUBSAMPLE(kWidth, SUBSAMP_X) * \
SUBSAMPLE(kHeight, SUBSAMP_Y)); \
- srandom(time(NULL)); \
for (int i = 0; i < kHeight; ++i) \
for (int j = 0; j < kWidth; ++j) \
- src_y[i * kWidth + j + OFF] = (random() & 0xff); \
+ src_y[i * kWidth + j + OFF] = (fastrand() & 0xff); \
for (int i = 0; i < SUBSAMPLE(kHeight, SRC_SUBSAMP_Y); ++i) { \
for (int j = 0; j < SUBSAMPLE(kWidth, SRC_SUBSAMP_X); ++j) { \
src_u[(i * SUBSAMPLE(kWidth, SRC_SUBSAMP_X)) + j + OFF] = \
- (random() & 0xff); \
+ (fastrand() & 0xff); \
src_v[(i * SUBSAMPLE(kWidth, SRC_SUBSAMP_X)) + j + OFF] = \
- (random() & 0xff); \
+ (fastrand() & 0xff); \
} \
} \
memset(dst_y_c, 1, kWidth * kHeight); \
@@ -193,16 +192,15 @@ TEST_F(libyuvTest, SRC_FMT_PLANAR##To##FMT_PLANAR##N) { \
align_buffer_64(dst_y_opt, kWidth * kHeight); \
align_buffer_64(dst_uv_opt, SUBSAMPLE(kWidth * 2, SUBSAMP_X) * \
SUBSAMPLE(kHeight, SUBSAMP_Y)); \
- srandom(time(NULL)); \
for (int i = 0; i < kHeight; ++i) \
for (int j = 0; j < kWidth; ++j) \
- src_y[i * kWidth + j + OFF] = (random() & 0xff); \
+ src_y[i * kWidth + j + OFF] = (fastrand() & 0xff); \
for (int i = 0; i < SUBSAMPLE(kHeight, SRC_SUBSAMP_Y); ++i) { \
for (int j = 0; j < SUBSAMPLE(kWidth, SRC_SUBSAMP_X); ++j) { \
src_u[(i * SUBSAMPLE(kWidth, SRC_SUBSAMP_X)) + j + OFF] = \
- (random() & 0xff); \
+ (fastrand() & 0xff); \
src_v[(i * SUBSAMPLE(kWidth, SRC_SUBSAMP_X)) + j + OFF] = \
- (random() & 0xff); \
+ (fastrand() & 0xff); \
} \
} \
memset(dst_y_c, 1, kWidth * kHeight); \
@@ -306,14 +304,13 @@ TEST_F(libyuvTest, SRC_FMT_PLANAR##To##FMT_PLANAR##N) { \
align_buffer_64(dst_v_opt, \
SUBSAMPLE(kWidth, SUBSAMP_X) * \
SUBSAMPLE(kHeight, SUBSAMP_Y)); \
- srandom(time(NULL)); \
for (int i = 0; i < kHeight; ++i) \
for (int j = 0; j < kWidth; ++j) \
- src_y[i * kWidth + j + OFF] = (random() & 0xff); \
+ src_y[i * kWidth + j + OFF] = (fastrand() & 0xff); \
for (int i = 0; i < SUBSAMPLE(kHeight, SRC_SUBSAMP_Y); ++i) { \
for (int j = 0; j < 2 * SUBSAMPLE(kWidth, SRC_SUBSAMP_X); ++j) { \
src_uv[(i * 2 * SUBSAMPLE(kWidth, SRC_SUBSAMP_X)) + j + OFF] = \
- (random() & 0xff); \
+ (fastrand() & 0xff); \
} \
} \
memset(dst_y_c, 1, kWidth * kHeight); \
@@ -425,13 +422,12 @@ TEST_F(libyuvTest, FMT_PLANAR##To##FMT_B##N) { \
align_buffer_64(src_v, kSizeUV + OFF); \
align_buffer_64(dst_argb_c, kStrideB * kHeight + OFF); \
align_buffer_64(dst_argb_opt, kStrideB * kHeight + OFF); \
- srandom(time(NULL)); \
for (int i = 0; i < kWidth * kHeight; ++i) { \
- src_y[i + OFF] = (random() & 0xff); \
+ src_y[i + OFF] = (fastrand() & 0xff); \
} \
for (int i = 0; i < kSizeUV; ++i) { \
- src_u[i + OFF] = (random() & 0xff); \
- src_v[i + OFF] = (random() & 0xff); \
+ src_u[i + OFF] = (fastrand() & 0xff); \
+ src_v[i + OFF] = (fastrand() & 0xff); \
} \
memset(dst_argb_c + OFF, 1, kStrideB * kHeight); \
memset(dst_argb_opt + OFF, 101, kStrideB * kHeight); \
@@ -535,14 +531,13 @@ TEST_F(libyuvTest, FMT_PLANAR##To##FMT_B##N) { \
align_buffer_64(src_a, kWidth * kHeight + OFF); \
align_buffer_64(dst_argb_c, kStrideB * kHeight + OFF); \
align_buffer_64(dst_argb_opt, kStrideB * kHeight + OFF); \
- srandom(time(NULL)); \
for (int i = 0; i < kWidth * kHeight; ++i) { \
- src_y[i + OFF] = (random() & 0xff); \
- src_a[i + OFF] = (random() & 0xff); \
+ src_y[i + OFF] = (fastrand() & 0xff); \
+ src_a[i + OFF] = (fastrand() & 0xff); \
} \
for (int i = 0; i < kSizeUV; ++i) { \
- src_u[i + OFF] = (random() & 0xff); \
- src_v[i + OFF] = (random() & 0xff); \
+ src_u[i + OFF] = (fastrand() & 0xff); \
+ src_v[i + OFF] = (fastrand() & 0xff); \
} \
memset(dst_argb_c + OFF, 1, kStrideB * kHeight); \
memset(dst_argb_opt + OFF, 101, kStrideB * kHeight); \
@@ -606,14 +601,13 @@ TEST_F(libyuvTest, FMT_PLANAR##To##FMT_B##N) { \
SUBSAMPLE(kHeight, SUBSAMP_Y) * 2 + OFF); \
align_buffer_64(dst_argb_c, kStrideB * kHeight); \
align_buffer_64(dst_argb_opt, kStrideB * kHeight); \
- srandom(time(NULL)); \
for (int i = 0; i < kHeight; ++i) \
for (int j = 0; j < kWidth; ++j) \
- src_y[i * kWidth + j + OFF] = (random() & 0xff); \
+ src_y[i * kWidth + j + OFF] = (fastrand() & 0xff); \
for (int i = 0; i < SUBSAMPLE(kHeight, SUBSAMP_Y); ++i) { \
for (int j = 0; j < SUBSAMPLE(kWidth, SUBSAMP_X) * 2; ++j) { \
src_uv[i * SUBSAMPLE(kWidth, SUBSAMP_X) * 2 + j + OFF] = \
- (random() & 0xff); \
+ (fastrand() & 0xff); \
} \
} \
memset(dst_argb_c, 1, kStrideB * kHeight); \
@@ -708,10 +702,9 @@ TEST_F(libyuvTest, FMT_A##To##FMT_PLANAR##N) { \
SUBSAMPLE(kWidth, SUBSAMP_X) * SUBSAMPLE(kHeight, SUBSAMP_Y)); \
memset(dst_v_opt, 103, \
SUBSAMPLE(kWidth, SUBSAMP_X) * SUBSAMPLE(kHeight, SUBSAMP_Y)); \
- srandom(time(NULL)); \
for (int i = 0; i < kHeight; ++i) \
for (int j = 0; j < kStride; ++j) \
- src_argb[(i * kStride) + j + OFF] = (random() & 0xff); \
+ src_argb[(i * kStride) + j + OFF] = (fastrand() & 0xff); \
MaskCpuFlags(disable_cpu_flags_); \
FMT_A##To##FMT_PLANAR(src_argb + OFF, kStride, \
dst_y_c, kWidth, \
@@ -810,10 +803,9 @@ TEST_F(libyuvTest, FMT_A##To##FMT_PLANAR##N) { \
align_buffer_64(dst_uv_opt, \
SUBSAMPLE(kWidth, SUBSAMP_X) * 2 * \
SUBSAMPLE(kHeight, SUBSAMP_Y)); \
- srandom(time(NULL)); \
for (int i = 0; i < kHeight; ++i) \
for (int j = 0; j < kStride; ++j) \
- src_argb[(i * kStride) + j + OFF] = (random() & 0xff); \
+ src_argb[(i * kStride) + j + OFF] = (fastrand() & 0xff); \
memset(dst_y_c, 1, kWidth * kHeight); \
memset(dst_uv_c, 2, SUBSAMPLE(kWidth, SUBSAMP_X) * 2 * \
SUBSAMPLE(kHeight, SUBSAMP_Y)); \
@@ -892,9 +884,8 @@ TEST_F(libyuvTest, FMT_A##To##FMT_B##N) { \
align_buffer_64(src_argb, kStrideA * kHeightA + OFF); \
align_buffer_64(dst_argb_c, kStrideB * kHeightB); \
align_buffer_64(dst_argb_opt, kStrideB * kHeightB); \
- srandom(time(NULL)); \
for (int i = 0; i < kStrideA * kHeightA; ++i) { \
- src_argb[i + OFF] = (random() & 0xff); \
+ src_argb[i + OFF] = (fastrand() & 0xff); \
} \
memset(dst_argb_c, 1, kStrideB * kHeightB); \
memset(dst_argb_opt, 101, kStrideB * kHeightB); \
@@ -926,10 +917,9 @@ TEST_F(libyuvTest, FMT_A##To##FMT_B##N) { \
#define TESTATOBRANDOM(FMT_A, BPP_A, STRIDE_A, HEIGHT_A, \
FMT_B, BPP_B, STRIDE_B, HEIGHT_B, DIFF) \
TEST_F(libyuvTest, FMT_A##To##FMT_B##_Random) { \
- srandom(time(NULL)); \
for (int times = 0; times < benchmark_iterations_; ++times) { \
- const int kWidth = (random() & 63) + 1; \
- const int kHeight = (random() & 31) + 1; \
+ const int kWidth = (fastrand() & 63) + 1; \
+ const int kHeight = (fastrand() & 31) + 1; \
const int kHeightA = (kHeight + HEIGHT_A - 1) / HEIGHT_A * HEIGHT_A; \
const int kHeightB = (kHeight + HEIGHT_B - 1) / HEIGHT_B * HEIGHT_B; \
const int kStrideA = (kWidth * BPP_A + STRIDE_A - 1) / STRIDE_A * STRIDE_A;\
@@ -938,7 +928,7 @@ TEST_F(libyuvTest, FMT_A##To##FMT_B##_Random) { \
align_buffer_page_end(dst_argb_c, kStrideB * kHeightB); \
align_buffer_page_end(dst_argb_opt, kStrideB * kHeightB); \
for (int i = 0; i < kStrideA * kHeightA; ++i) { \
- src_argb[i] = (random() & 0xff); \
+ src_argb[i] = (fastrand() & 0xff); \
} \
memset(dst_argb_c, 123, kStrideB * kHeightB); \
memset(dst_argb_opt, 123, kStrideB * kHeightB); \
@@ -1026,9 +1016,8 @@ TEST_F(libyuvTest, FMT_A##To##FMT_B##Dither##N) { \
align_buffer_64(src_argb, kStrideA * kHeightA + OFF); \
align_buffer_64(dst_argb_c, kStrideB * kHeightB); \
align_buffer_64(dst_argb_opt, kStrideB * kHeightB); \
- srandom(time(NULL)); \
for (int i = 0; i < kStrideA * kHeightA; ++i) { \
- src_argb[i + OFF] = (random() & 0xff); \
+ src_argb[i + OFF] = (fastrand() & 0xff); \
} \
memset(dst_argb_c, 1, kStrideB * kHeightB); \
memset(dst_argb_opt, 101, kStrideB * kHeightB); \
@@ -1060,10 +1049,9 @@ TEST_F(libyuvTest, FMT_A##To##FMT_B##Dither##N) { \
#define TESTATOBDRANDOM(FMT_A, BPP_A, STRIDE_A, HEIGHT_A, \
FMT_B, BPP_B, STRIDE_B, HEIGHT_B, DIFF) \
TEST_F(libyuvTest, FMT_A##To##FMT_B##Dither_Random) { \
- srandom(time(NULL)); \
for (int times = 0; times < benchmark_iterations_; ++times) { \
- const int kWidth = (random() & 63) + 1; \
- const int kHeight = (random() & 31) + 1; \
+ const int kWidth = (fastrand() & 63) + 1; \
+ const int kHeight = (fastrand() & 31) + 1; \
const int kHeightA = (kHeight + HEIGHT_A - 1) / HEIGHT_A * HEIGHT_A; \
const int kHeightB = (kHeight + HEIGHT_B - 1) / HEIGHT_B * HEIGHT_B; \
const int kStrideA = (kWidth * BPP_A + STRIDE_A - 1) / STRIDE_A * STRIDE_A;\
@@ -1072,7 +1060,7 @@ TEST_F(libyuvTest, FMT_A##To##FMT_B##Dither_Random) { \
align_buffer_page_end(dst_argb_c, kStrideB * kHeightB); \
align_buffer_page_end(dst_argb_opt, kStrideB * kHeightB); \
for (int i = 0; i < kStrideA * kHeightA; ++i) { \
- src_argb[i] = (random() & 0xff); \
+ src_argb[i] = (fastrand() & 0xff); \
} \
memset(dst_argb_c, 123, kStrideB * kHeightB); \
memset(dst_argb_opt, 123, kStrideB * kHeightB); \
@@ -1129,9 +1117,8 @@ TEST_F(libyuvTest, FMT_ATOB##_Symetric##N) { \
align_buffer_64(src_argb, kStrideA * kHeightA + OFF); \
align_buffer_64(dst_argb_c, kStrideA * kHeightA); \
align_buffer_64(dst_argb_opt, kStrideA * kHeightA); \
- srandom(time(NULL)); \
for (int i = 0; i < kStrideA * kHeightA; ++i) { \
- src_argb[i + OFF] = (random() & 0xff); \
+ src_argb[i + OFF] = (fastrand() & 0xff); \
} \
memset(dst_argb_c, 1, kStrideA * kHeightA); \
memset(dst_argb_opt, 101, kStrideA * kHeightA); \
@@ -1282,10 +1269,9 @@ TEST_F(libyuvTest, InvalidateJpeg) {
}
TEST_F(libyuvTest, FuzzJpeg) {
- srandom(time(NULL));
// SOI but no EOI. Expect fail.
for (int times = 0; times < benchmark_iterations_; ++times) {
- const int kSize = random() % 5000 + 2;
+ const int kSize = fastrand() % 5000 + 2;
align_buffer_page_end(orig_pixels, kSize);
MemRandomize(orig_pixels, kSize);
@@ -1399,13 +1385,12 @@ TEST_F(libyuvTest, CropNV12) {
SUBSAMPLE(kDestWidth, SUBSAMP_X) *
SUBSAMPLE(kDestHeight, SUBSAMP_Y));
- srandom(time(NULL));
for (int i = 0; i < kHeight * kWidth; ++i) {
- src_y[i] = (random() & 0xff);
+ src_y[i] = (fastrand() & 0xff);
}
for (int i = 0; i < (SUBSAMPLE(kHeight, SUBSAMP_Y) *
SUBSAMPLE(kWidth, SUBSAMP_X)) * 2; ++i) {
- src_uv[i] = (random() & 0xff);
+ src_uv[i] = (fastrand() & 0xff);
}
memset(dst_y, 1, kDestWidth * kDestHeight);
memset(dst_u, 2, SUBSAMPLE(kDestWidth, SUBSAMP_X) *
@@ -1575,13 +1560,12 @@ TEST_F(libyuvTest, FMT_PLANAR##To##FMT_B##Dither##N) { \
align_buffer_64(src_v, kSizeUV + OFF); \
align_buffer_64(dst_argb_c, kStrideB * kHeight + OFF); \
align_buffer_64(dst_argb_opt, kStrideB * kHeight + OFF); \
- srandom(time(NULL)); \
for (int i = 0; i < kWidth * kHeight; ++i) { \
- src_y[i + OFF] = (random() & 0xff); \
+ src_y[i + OFF] = (fastrand() & 0xff); \
} \
for (int i = 0; i < kSizeUV; ++i) { \
- src_u[i + OFF] = (random() & 0xff); \
- src_v[i + OFF] = (random() & 0xff); \
+ src_u[i + OFF] = (fastrand() & 0xff); \
+ src_v[i + OFF] = (fastrand() & 0xff); \
} \
memset(dst_argb_c + OFF, 1, kStrideB * kHeight); \
memset(dst_argb_opt + OFF, 101, kStrideB * kHeight); \
@@ -1667,7 +1651,6 @@ TEST_F(libyuvTest, NAME) { \
SUBSAMPLE(kWidth, 2) * \
SUBSAMPLE(kHeight, 2)); \
\
- srandom(time(NULL)); \
MemRandomize(orig_uyvy, 4 * SUBSAMPLE(kWidth, 2) * kHeight); \
\
/* Convert UYVY to NV12 in 2 steps for reference */ \
« no previous file with comments | « unit_test/compare_test.cc ('k') | unit_test/math_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698