diff options
| author | Bill Schmidt <wschmidt@linux.vnet.ibm.com> | 2015-12-08 21:54:39 +0000 |
|---|---|---|
| committer | Bill Schmidt <wschmidt@linux.vnet.ibm.com> | 2015-12-08 21:54:39 +0000 |
| commit | 297916273244b8877631027b68a8911b737bb47b (patch) | |
| tree | fbd2661135ab10159e6cb9eb7291ae155aa176e8 /compiler-rt/lib/sanitizer_common/sanitizer_linux.h | |
| parent | 48eaa5415184c9e1821d2290ee584ba09b2015c2 (diff) | |
| download | bcm5719-llvm-297916273244b8877631027b68a8911b737bb47b.tar.gz bcm5719-llvm-297916273244b8877631027b68a8911b737bb47b.zip | |
[PPC64, TSAN] LLVM basic enablement of thread sanitizer for PPC64 (BE and LE)
This patch is by Simone Atzeni with portions by Adhemerval Zanella.
This contains the LLVM patches to enable the thread sanitizer for
PPC64, both big- and little-endian. Two different virtual memory
sizes are supported: Old kernels use a 44-bit address space, while
newer kernels require a 46-bit address space.
There are two companion patches that will be added shortly. There is
a Clang patch to actually turn on the use of the thread sanitizer for
PPC64. There is also a patch that I wrote to provide interceptor
support for setjmp/longjmp on PPC64.
Patch discussion at reviews.llvm.org/D12841.
llvm-svn: 255057
Diffstat (limited to 'compiler-rt/lib/sanitizer_common/sanitizer_linux.h')
| -rw-r--r-- | compiler-rt/lib/sanitizer_common/sanitizer_linux.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_linux.h b/compiler-rt/lib/sanitizer_common/sanitizer_linux.h index d996f8c3220..77bfbd15681 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_linux.h +++ b/compiler-rt/lib/sanitizer_common/sanitizer_linux.h @@ -44,7 +44,8 @@ uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5); // internal_sigaction instead. int internal_sigaction_norestorer(int signum, const void *act, void *oldact); void internal_sigdelset(__sanitizer_sigset_t *set, int signum); -#if defined(__x86_64__) || defined(__mips__) || defined(__aarch64__) +#if defined(__x86_64__) || defined(__mips__) || defined(__aarch64__) \ + || defined(__powerpc64__) uptr internal_clone(int (*fn)(void *), void *child_stack, int flags, void *arg, int *parent_tidptr, void *newtls, int *child_tidptr); #endif |

