summaryrefslogtreecommitdiff
path: root/libsanitizer
diff options
context:
space:
mode:
authorJames Clarke <jrtc27@jrtc27.com>2017-01-10 15:22:56 +0000
committerJakub Jelinek <jakub@gcc.gnu.org>2017-01-10 16:22:56 +0100
commit942136a43d3463087a19c1fce4804ba41e4d8c1d (patch)
tree4c1b888a94ddf6a0e09c2d8a3c6a181cfa4215b5 /libsanitizer
parentaae23693f8a8274100dafe63c3d2e6498b24461f (diff)
downloadgcc-942136a43d3463087a19c1fce4804ba41e4d8c1d.tar.gz
re PR sanitizer/78992 (Incorrect sigaction definition on 32-bit sparc)
PR sanitizer/78992 * sanitizer_common/sanitizer_platform_limits_posix.h (struct __sanitizer_sigaction): Cherry-pick upstream r291561. From-SVN: r244275
Diffstat (limited to 'libsanitizer')
-rw-r--r--libsanitizer/ChangeLog6
-rw-r--r--libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h7
2 files changed, 11 insertions, 2 deletions
diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index 3dc49d3ebb0..db9221c1384 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,3 +1,9 @@
+2017-01-10 James Clarke <jrtc27@jrtc27.com>
+
+ PR sanitizer/78992
+ * sanitizer_common/sanitizer_platform_limits_posix.h
+ (struct __sanitizer_sigaction): Cherry-pick upstream r291561.
+
2016-11-30 Maxim Ostapenko <m.ostapenko@samsung.com>
* LOCAL_PATCHES: Add revision.
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
index 066bf41ffef..c139322839a 100644
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
@@ -633,9 +633,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;