[compiler-rt] 13080ca - [compiler-rt][test] XFAIL two tests on 32-bit sparc

Rainer Orth via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 18 02:33:27 PDT 2020


Author: Rainer Orth
Date: 2020-08-18T11:32:51+02:00
New Revision: 13080ca1f0823b8df9651c1977040e5471c4a431

URL: https://github.com/llvm/llvm-project/commit/13080ca1f0823b8df9651c1977040e5471c4a431
DIFF: https://github.com/llvm/llvm-project/commit/13080ca1f0823b8df9651c1977040e5471c4a431.diff

LOG: [compiler-rt][test] XFAIL two tests on 32-bit sparc

Two tests `FAIL` on 32-bit sparc:

  Profile-sparc :: Posix/instrprof-gcov-parallel.test
  UBSan-Standalone-sparc :: TestCases/Float/cast-overflow.cpp

The failure mode is similar:

  Undefined                       first referenced
   symbol                             in file
  __atomic_store_4                    /var/tmp/instrprof-gcov-parallel-6afe8d.o
  __atomic_load_4                     /var/tmp/instrprof-gcov-parallel-6afe8d.o

  Undefined                       first referenced
   symbol                             in file
  __atomic_load_1                     /var/tmp/cast-overflow-72a808.o

This is a known bug: `clang` doesn't inline atomics on 32-bit sparc, unlike
`gcc`.

The patch therefore `XFAIL`s the tests.

Tested on `sparcv9-sun-solaris2.11` and `amd64-pc-solaris2.11`.

Differential Revision: https://reviews.llvm.org/D85346

Added: 
    

Modified: 
    compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test
    compiler-rt/test/ubsan/TestCases/Float/cast-overflow.cpp

Removed: 
    


################################################################################
diff  --git a/compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test b/compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test
index 0c7198e3c4e9..52b51e6269f5 100644
--- a/compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test
+++ b/compiler-rt/test/profile/Posix/instrprof-gcov-parallel.test
@@ -10,6 +10,9 @@ RUN: %run %t.driver %t.target
 RUN: llvm-cov gcov instrprof-gcov-parallel.target.gcda
 RUN: FileCheck --input-file instrprof-gcov-parallel.target.c.gcov %s
 
+# Bug 42535
+# XFAIL: sparc-target-arch
+
 # Test if the .gcda file is correctly created from one of child processes
 # and counters of all processes are recorded correctly.
 # 707 = CHILDREN * COUNT

diff  --git a/compiler-rt/test/ubsan/TestCases/Float/cast-overflow.cpp b/compiler-rt/test/ubsan/TestCases/Float/cast-overflow.cpp
index 479c39f28428..1c680259a247 100644
--- a/compiler-rt/test/ubsan/TestCases/Float/cast-overflow.cpp
+++ b/compiler-rt/test/ubsan/TestCases/Float/cast-overflow.cpp
@@ -11,6 +11,9 @@
 // FIXME: not %run %t 8 2>&1 | FileCheck %s --check-prefix=CHECK-8
 // RUN: not %run %t 9 2>&1 | FileCheck %s --check-prefix=CHECK-9
 
+// Bug 42535
+// XFAIL: sparc-target-arch
+
 // This test assumes float and double are IEEE-754 single- and double-precision.
 
 #if defined(__APPLE__)


        


More information about the llvm-commits mailing list