[llvm-branch-commits] [compiler-rt-branch] r362024 - Merging r359606:

Tom Stellard via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Wed May 29 13:16:38 PDT 2019


Author: tstellar
Date: Wed May 29 13:16:38 2019
New Revision: 362024

URL: http://llvm.org/viewvc/llvm-project?rev=362024&view=rev
Log:
Merging r359606:

------------------------------------------------------------------------
r359606 | amyk | 2019-04-30 13:09:00 -0700 (Tue, 30 Apr 2019) | 12 lines

[compiler-rt][builtins][sanitizers] Update compiler-rt test cases for
compatibility with system's toolchain

This patch aims to:
- Guard ompiler-rt/test/builtins/Unit/compiler_rt_logb_test.c with macros, so
the test runs on GLIBC versions >= 2.23. This is because the test relies on
comparing its computed values to libm. Oolder versions might not compute to the
same value as the compiler-rt value.
- Update compiler-rt/test/sanitizer_common/TestCases/Posix/getpw_getgr.cc
so that std::string is not used, since false positives may be detected.

Differential Revision: https://reviews.llvm.org/D60644
------------------------------------------------------------------------

Modified:
    compiler-rt/branches/release_80/test/builtins/Unit/compiler_rt_logb_test.c

Modified: compiler-rt/branches/release_80/test/builtins/Unit/compiler_rt_logb_test.c
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/branches/release_80/test/builtins/Unit/compiler_rt_logb_test.c?rev=362024&r1=362023&r2=362024&view=diff
==============================================================================
--- compiler-rt/branches/release_80/test/builtins/Unit/compiler_rt_logb_test.c (original)
+++ compiler-rt/branches/release_80/test/builtins/Unit/compiler_rt_logb_test.c Wed May 29 13:16:38 2019
@@ -37,6 +37,10 @@ double cases[] = {
 };
 
 int main() {
+  // Do not the run the compiler-rt logb test case if using GLIBC version
+  // < 2.23. Older versions might not compute to the same value as the
+  // compiler-rt value.
+#if !defined(__GLIBC__) || (defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 23))
   const unsigned N = sizeof(cases) / sizeof(cases[0]);
   unsigned i;
   for (i = 0; i < N; ++i) {
@@ -58,6 +62,9 @@ int main() {
     if (test__compiler_rt_logb(fromRep(signBit ^ x))) return 1;
     x >>= 1;
   }
+#else
+  printf("skipped\n");
+#endif
 
   return 0;
 }




More information about the llvm-branch-commits mailing list