[llvm-commits] [compiler-rt] r167296 - in /compiler-rt/trunk/lib: sanitizer_common/sanitizer_common.cc sanitizer_common/tests/CMakeLists.txt sanitizer_common/tests/sanitizer_printf_test.cc tsan/tests/unit/CMakeLists.txt tsan/tests/unit/tsan_printf_test.cc

Alexey Samsonov samsonov at google.com
Fri Nov 2 05:36:11 PDT 2012


Author: samsonov
Date: Fri Nov  2 07:36:11 2012
New Revision: 167296

URL: http://llvm.org/viewvc/llvm-project?rev=167296&view=rev
Log:
[Sanitizer] move unit test for Printf from tsan to sanitizer_common

Added:
    compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_printf_test.cc
      - copied, changed from r167287, compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc
Removed:
    compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc
Modified:
    compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc
    compiler-rt/trunk/lib/sanitizer_common/tests/CMakeLists.txt
    compiler-rt/trunk/lib/tsan/tests/unit/CMakeLists.txt

Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc?rev=167296&r1=167295&r2=167296&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_common.cc Fri Nov  2 07:36:11 2012
@@ -143,7 +143,6 @@
 using namespace __sanitizer;  // NOLINT
 
 extern "C" {
-
 void __sanitizer_set_report_path(const char *path) {
   if (!path) return;
   uptr len = internal_strlen(path);
@@ -164,5 +163,4 @@
     internal_close(report_fd);
   report_fd = fd;
 }
-
 }  // extern "C"

Modified: compiler-rt/trunk/lib/sanitizer_common/tests/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/tests/CMakeLists.txt?rev=167296&r1=167295&r2=167296&view=diff
==============================================================================
--- compiler-rt/trunk/lib/sanitizer_common/tests/CMakeLists.txt (original)
+++ compiler-rt/trunk/lib/sanitizer_common/tests/CMakeLists.txt Fri Nov  2 07:36:11 2012
@@ -4,6 +4,7 @@
   sanitizer_flags_test.cc
   sanitizer_libc_test.cc
   sanitizer_list_test.cc
+  sanitizer_printf_test.cc
   sanitizer_stackdepot_test.cc
   sanitizer_test_main.cc
   )

Copied: compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_printf_test.cc (from r167287, compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc)
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_printf_test.cc?p2=compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_printf_test.cc&p1=compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc&r1=167287&r2=167296&rev=167296&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc (original)
+++ compiler-rt/trunk/lib/sanitizer_common/tests/sanitizer_printf_test.cc Fri Nov  2 07:36:11 2012
@@ -1,4 +1,4 @@
-//===-- tsan_printf_test.cc -----------------------------------------------===//
+//===-- sanitizer_printf_test.cc ------------------------------------------===//
 //
 //                     The LLVM Compiler Infrastructure
 //
@@ -7,16 +7,17 @@
 //
 //===----------------------------------------------------------------------===//
 //
-// This file is a part of ThreadSanitizer (TSan), a race detector.
+// Tests for sanitizer_printf.cc
 //
 //===----------------------------------------------------------------------===//
-#include "tsan_rtl.h"
+#include "sanitizer_common/sanitizer_common.h"
+#include "sanitizer_common/sanitizer_libc.h"
 #include "gtest/gtest.h"
 
 #include <string.h>
 #include <limits.h>
 
-namespace __tsan {
+namespace __sanitizer {
 
 TEST(Printf, Basic) {
   char buf[1024];
@@ -27,15 +28,15 @@
       (unsigned)10, (unsigned long)11, // NOLINT
       (void*)0x123, "_string_");
   EXPECT_EQ(len, strlen(buf));
-  EXPECT_EQ(0, strcmp(buf, "a-1b-2c4294967292e5fahbq"
-                           "0x000000000123e_string_r"));
+  EXPECT_STREQ("a-1b-2c4294967292e5fahbq"
+               "0x000000000123e_string_r", buf);
 }
 
 TEST(Printf, OverflowStr) {
   char buf[] = "123456789";
   uptr len = internal_snprintf(buf, 4, "%s", "abcdef");  // NOLINT
   EXPECT_EQ(len, (uptr)6);
-  EXPECT_EQ(0, strcmp(buf, "abc"));
+  EXPECT_STREQ("abc", buf);
   EXPECT_EQ(buf[3], 0);
   EXPECT_EQ(buf[4], '5');
   EXPECT_EQ(buf[5], '6');
@@ -48,7 +49,7 @@
 TEST(Printf, OverflowInt) {
   char buf[] = "123456789";
   internal_snprintf(buf, 4, "%d", -123456789);  // NOLINT
-  EXPECT_EQ(0, strcmp(buf, "-12"));
+  EXPECT_STREQ("-12", buf);
   EXPECT_EQ(buf[3], 0);
   EXPECT_EQ(buf[4], '5');
   EXPECT_EQ(buf[5], '6');
@@ -61,7 +62,7 @@
 TEST(Printf, OverflowUint) {
   char buf[] = "123456789";
   internal_snprintf(buf, 4, "a%zx", (unsigned long)0x123456789);  // NOLINT
-  EXPECT_EQ(0, strcmp(buf, "a12"));
+  EXPECT_STREQ("a12", buf);
   EXPECT_EQ(buf[3], 0);
   EXPECT_EQ(buf[4], '5');
   EXPECT_EQ(buf[5], '6');
@@ -74,7 +75,7 @@
 TEST(Printf, OverflowPtr) {
   char buf[] = "123456789";
   internal_snprintf(buf, 4, "%p", (void*)0x123456789);  // NOLINT
-  EXPECT_EQ(0, strcmp(buf, "0x0"));
+  EXPECT_STREQ("0x0", buf);
   EXPECT_EQ(buf[3], 0);
   EXPECT_EQ(buf[4], '5');
   EXPECT_EQ(buf[5], '6');
@@ -91,7 +92,7 @@
   char buf2[1024];
   snprintf(buf2, sizeof(buf2), fmt, min, max);
   EXPECT_EQ(len, strlen(buf));
-  EXPECT_EQ(0, strcmp(buf, buf2));
+  EXPECT_STREQ(buf2, buf);
 }
 
 TEST(Printf, MinMax) {
@@ -103,4 +104,4 @@
   TestMinMax<unsigned long>("%zx-%zx", 0, ULONG_MAX);  // NOLINT
 }
 
-}  // namespace __tsan
+}  // namespace __sanitizer

Modified: compiler-rt/trunk/lib/tsan/tests/unit/CMakeLists.txt
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/tests/unit/CMakeLists.txt?rev=167296&r1=167295&r2=167296&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/tests/unit/CMakeLists.txt (original)
+++ compiler-rt/trunk/lib/tsan/tests/unit/CMakeLists.txt Fri Nov  2 07:36:11 2012
@@ -4,7 +4,6 @@
   tsan_mman_test.cc
   tsan_mutex_test.cc
   tsan_platform_test.cc
-  tsan_printf_test.cc
   tsan_shadow_test.cc
   tsan_stack_test.cc
   tsan_suppressions_test.cc

Removed: compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc?rev=167295&view=auto
==============================================================================
--- compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc (original)
+++ compiler-rt/trunk/lib/tsan/tests/unit/tsan_printf_test.cc (removed)
@@ -1,106 +0,0 @@
-//===-- tsan_printf_test.cc -----------------------------------------------===//
-//
-//                     The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-// This file is a part of ThreadSanitizer (TSan), a race detector.
-//
-//===----------------------------------------------------------------------===//
-#include "tsan_rtl.h"
-#include "gtest/gtest.h"
-
-#include <string.h>
-#include <limits.h>
-
-namespace __tsan {
-
-TEST(Printf, Basic) {
-  char buf[1024];
-  uptr len = internal_snprintf(buf, sizeof(buf),
-      "a%db%zdc%ue%zuf%xh%zxq%pe%sr",
-      (int)-1, (long)-2, // NOLINT
-      (unsigned)-4, (unsigned long)5, // NOLINT
-      (unsigned)10, (unsigned long)11, // NOLINT
-      (void*)0x123, "_string_");
-  EXPECT_EQ(len, strlen(buf));
-  EXPECT_EQ(0, strcmp(buf, "a-1b-2c4294967292e5fahbq"
-                           "0x000000000123e_string_r"));
-}
-
-TEST(Printf, OverflowStr) {
-  char buf[] = "123456789";
-  uptr len = internal_snprintf(buf, 4, "%s", "abcdef");  // NOLINT
-  EXPECT_EQ(len, (uptr)6);
-  EXPECT_EQ(0, strcmp(buf, "abc"));
-  EXPECT_EQ(buf[3], 0);
-  EXPECT_EQ(buf[4], '5');
-  EXPECT_EQ(buf[5], '6');
-  EXPECT_EQ(buf[6], '7');
-  EXPECT_EQ(buf[7], '8');
-  EXPECT_EQ(buf[8], '9');
-  EXPECT_EQ(buf[9], 0);
-}
-
-TEST(Printf, OverflowInt) {
-  char buf[] = "123456789";
-  internal_snprintf(buf, 4, "%d", -123456789);  // NOLINT
-  EXPECT_EQ(0, strcmp(buf, "-12"));
-  EXPECT_EQ(buf[3], 0);
-  EXPECT_EQ(buf[4], '5');
-  EXPECT_EQ(buf[5], '6');
-  EXPECT_EQ(buf[6], '7');
-  EXPECT_EQ(buf[7], '8');
-  EXPECT_EQ(buf[8], '9');
-  EXPECT_EQ(buf[9], 0);
-}
-
-TEST(Printf, OverflowUint) {
-  char buf[] = "123456789";
-  internal_snprintf(buf, 4, "a%zx", (unsigned long)0x123456789);  // NOLINT
-  EXPECT_EQ(0, strcmp(buf, "a12"));
-  EXPECT_EQ(buf[3], 0);
-  EXPECT_EQ(buf[4], '5');
-  EXPECT_EQ(buf[5], '6');
-  EXPECT_EQ(buf[6], '7');
-  EXPECT_EQ(buf[7], '8');
-  EXPECT_EQ(buf[8], '9');
-  EXPECT_EQ(buf[9], 0);
-}
-
-TEST(Printf, OverflowPtr) {
-  char buf[] = "123456789";
-  internal_snprintf(buf, 4, "%p", (void*)0x123456789);  // NOLINT
-  EXPECT_EQ(0, strcmp(buf, "0x0"));
-  EXPECT_EQ(buf[3], 0);
-  EXPECT_EQ(buf[4], '5');
-  EXPECT_EQ(buf[5], '6');
-  EXPECT_EQ(buf[6], '7');
-  EXPECT_EQ(buf[7], '8');
-  EXPECT_EQ(buf[8], '9');
-  EXPECT_EQ(buf[9], 0);
-}
-
-template<typename T>
-static void TestMinMax(const char *fmt, T min, T max) {
-  char buf[1024];
-  uptr len = internal_snprintf(buf, sizeof(buf), fmt, min, max);
-  char buf2[1024];
-  snprintf(buf2, sizeof(buf2), fmt, min, max);
-  EXPECT_EQ(len, strlen(buf));
-  EXPECT_EQ(0, strcmp(buf, buf2));
-}
-
-TEST(Printf, MinMax) {
-  TestMinMax<int>("%d-%d", INT_MIN, INT_MAX);  // NOLINT
-  TestMinMax<long>("%zd-%zd", LONG_MIN, LONG_MAX);  // NOLINT
-  TestMinMax<unsigned>("%u-%u", 0, UINT_MAX);  // NOLINT
-  TestMinMax<unsigned long>("%zu-%zu", 0, ULONG_MAX);  // NOLINT
-  TestMinMax<unsigned>("%x-%x", 0, UINT_MAX);  // NOLINT
-  TestMinMax<unsigned long>("%zx-%zx", 0, ULONG_MAX);  // NOLINT
-}
-
-}  // namespace __tsan





More information about the llvm-commits mailing list