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

Unified Diff: webrtc/common_audio/signal_processing/signal_processing_unittest.cc

Issue 2014023002: Add clz functions (Count number of Leading Zero bits), 32-and 64-bit variants (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@bug601787-1
Patch Set: fix comments Created 4 years, 7 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
Index: webrtc/common_audio/signal_processing/signal_processing_unittest.cc
diff --git a/webrtc/common_audio/signal_processing/signal_processing_unittest.cc b/webrtc/common_audio/signal_processing/signal_processing_unittest.cc
index 0dc0d378786a26bd6fcedba33bf81945907f81bb..445c421ee34f149b003938c23fe34071f46d2aa7 100644
--- a/webrtc/common_audio/signal_processing/signal_processing_unittest.cc
+++ b/webrtc/common_audio/signal_processing/signal_processing_unittest.cc
@@ -142,6 +142,32 @@ TEST_F(SplTest, AddSubSatW32) {
}
}
+TEST_F(SplTest, CountLeadingZeros32) {
+ EXPECT_EQ(32, WebRtcSpl_CountLeadingZeros32(0));
+ EXPECT_EQ(32, WebRtcSpl_CountLeadingZeros32_NotBuiltin(0));
+ for (int i = 0; i < 32; ++i) {
+ const uint32_t single_one = uint32_t{1} << i;
+ const uint32_t all_ones = 2 * single_one - 1;
+ EXPECT_EQ(31 - i, WebRtcSpl_CountLeadingZeros32(single_one));
+ EXPECT_EQ(31 - i, WebRtcSpl_CountLeadingZeros32_NotBuiltin(single_one));
+ EXPECT_EQ(31 - i, WebRtcSpl_CountLeadingZeros32(all_ones));
+ EXPECT_EQ(31 - i, WebRtcSpl_CountLeadingZeros32_NotBuiltin(all_ones));
+ }
+}
+
+TEST_F(SplTest, CountLeadingZeros64) {
+ EXPECT_EQ(64, WebRtcSpl_CountLeadingZeros64(0));
+ EXPECT_EQ(64, WebRtcSpl_CountLeadingZeros64_NotBuiltin(0));
+ for (int i = 0; i < 64; ++i) {
+ const uint64_t single_one = uint64_t{1} << i;
+ const uint64_t all_ones = 2 * single_one - 1;
+ EXPECT_EQ(63 - i, WebRtcSpl_CountLeadingZeros64(single_one));
+ EXPECT_EQ(63 - i, WebRtcSpl_CountLeadingZeros64_NotBuiltin(single_one));
+ EXPECT_EQ(63 - i, WebRtcSpl_CountLeadingZeros64(all_ones));
+ EXPECT_EQ(63 - i, WebRtcSpl_CountLeadingZeros64_NotBuiltin(all_ones));
+ }
+}
+
TEST_F(SplTest, MathOperationsTest) {
int A = 1134567892;
int32_t num = 117;
« no previous file with comments | « webrtc/common_audio/signal_processing/include/spl_inl.h ('k') | webrtc/common_audio/signal_processing/spl_inl.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698