[compiler-rt] 8a1084a - [asan][test] XFAIL Posix/no_asan_gen_globals.c on Solaris

Rainer Orth via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 30 13:59:01 PDT 2020


Author: Rainer Orth
Date: 2020-09-30T22:58:07+02:00
New Revision: 8a1084a9486313e9f46e61ab69f80309c7050e1f

URL: https://github.com/llvm/llvm-project/commit/8a1084a9486313e9f46e61ab69f80309c7050e1f
DIFF: https://github.com/llvm/llvm-project/commit/8a1084a9486313e9f46e61ab69f80309c7050e1f.diff

LOG: [asan][test] XFAIL Posix/no_asan_gen_globals.c on Solaris

`Posix/no_asan_gen_globals.c` currently `FAIL`s on Solaris:

  $ nm no_asan_gen_globals.c.tmp.exe | grep ___asan_gen_
  0809696a r .L___asan_gen_.1
  0809a4cd r .L___asan_gen_.2
  080908e2 r .L___asan_gen_.4
  0809a4cd r .L___asan_gen_.5
  0809a529 r .L___asan_gen_.7
  0809a4cd r .L___asan_gen_.8

As detailed in Bug 47607, there are two factors here:

- `clang` plays games by emitting some local labels into the symbol
  table.  When instead one uses `-fno-integrated-as` to have `gas` create
  the object files, they don't land in the objects in the first place.
- Unlike GNU `ld`, the Solaris `ld` doesn't support support
  `-X`/`--discard-locals` but instead relies on the assembler to follow its
  specification and not emit local labels.

Therefore this patch `XFAIL`s the test on Solaris.

Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.

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

Added: 
    

Modified: 
    compiler-rt/test/asan/TestCases/Posix/no_asan_gen_globals.c

Removed: 
    


################################################################################
diff  --git a/compiler-rt/test/asan/TestCases/Posix/no_asan_gen_globals.c b/compiler-rt/test/asan/TestCases/Posix/no_asan_gen_globals.c
index 994f827974be..c9a6d99aca23 100644
--- a/compiler-rt/test/asan/TestCases/Posix/no_asan_gen_globals.c
+++ b/compiler-rt/test/asan/TestCases/Posix/no_asan_gen_globals.c
@@ -1,5 +1,7 @@
 // FIXME: https://code.google.com/p/address-sanitizer/issues/detail?id=316
 // XFAIL: android
+// Bug 47607
+// XFAIL: solaris
 // Make sure ___asan_gen_* strings do not end up in the symbol table.
 
 // RUN: %clang_asan %s -o %t.exe


        


More information about the llvm-commits mailing list