summaryrefslogtreecommitdiff
path: root/lib/sanitizer_common/sanitizer_platform_limits_posix.h
diff options
context:
space:
mode:
authorMaxim Ostapenko <m.ostapenko@partner.samsung.com>2017-01-10 12:41:18 +0000
committerMaxim Ostapenko <m.ostapenko@partner.samsung.com>2017-01-10 12:41:18 +0000
commit9235f229da3a6a3f0a8e12461704ee437d7a0b90 (patch)
tree0bd3ffe997f4af90b8c59d87af68e78a6cc6be87 /lib/sanitizer_common/sanitizer_platform_limits_posix.h
parent131c40c702f16aa044550f6f8d77e2a16ac7c4cf (diff)
[sanitizer] Fix sigaction definition on 32-bit sparc
Patch by James Clarke. Differential Revision: https://reviews.llvm.org/D28309 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@291561 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/sanitizer_common/sanitizer_platform_limits_posix.h')
-rw-r--r--lib/sanitizer_common/sanitizer_platform_limits_posix.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/sanitizer_common/sanitizer_platform_limits_posix.h b/lib/sanitizer_common/sanitizer_platform_limits_posix.h
index 477a0ecbe..c2d9f2cd3 100644
--- a/lib/sanitizer_common/sanitizer_platform_limits_posix.h
+++ b/lib/sanitizer_common/sanitizer_platform_limits_posix.h
@@ -635,9 +635,12 @@ namespace __sanitizer {
#ifndef __mips__
#if defined(__sparc__)
#if __GLIBC_PREREQ (2, 20)
- // On sparc glibc 2.19 and earlier sa_flags was unsigned long, and
- // __glibc_reserved0 didn't exist.
+ // On sparc glibc 2.19 and earlier sa_flags was unsigned long.
+#if defined(__arch64__)
+ // To maintain ABI compatibility on sparc64 when switching to an int,
+ // __glibc_reserved0 was added.
int __glibc_reserved0;
+#endif
int sa_flags;
#else
unsigned long sa_flags;