From 079db27b09f2788501dea701ac7559ee8ab2b438 Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hongjiu.lu@intel.com>
Date: Fri, 6 Dec 2013 11:48:24 +0000
Subject: [PATCH] Use int64 on time and clock for x32

	* sanitizer_common/sanitizer_platform_limits_posix.h
	(__sanitizer_shmid_ds): Use u64 on time fields for x32.
	(__sanitizer_clock_t): Use long long for x32.

From-SVN: r205737
---
 libsanitizer/ChangeLog                           |  6 ++++++
 .../sanitizer_platform_limits_posix.h            | 16 ++++++++++++++++
 2 files changed, 22 insertions(+)

diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog
index 3e03d5876603..bb568b9d4a09 100644
--- a/libsanitizer/ChangeLog
+++ b/libsanitizer/ChangeLog
@@ -1,3 +1,9 @@
+2013-12-06  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* sanitizer_common/sanitizer_platform_limits_posix.h
+	(__sanitizer_shmid_ds): Use u64 on time fields for x32.
+	(__sanitizer_clock_t): Use long long for x32.
+
 2013-12-06  H.J. Lu  <hongjiu.lu@intel.com>
 
 	* sanitizer_common/sanitizer_platform_limits_linux.cc: Include
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
index f98ebea79f4d..be6e6cf1c3f6 100644
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h
@@ -167,6 +167,11 @@ namespace __sanitizer {
   #elif !defined(__powerpc64__)
     uptr __unused0;
   #endif
+  #if defined(__x86_64__) && !defined(_LP64)
+    u64 shm_atime;
+    u64 shm_dtime;
+    u64 shm_ctime;
+  #else
     uptr shm_atime;
   #ifndef _LP64
     uptr __unused1;
@@ -179,14 +184,21 @@ namespace __sanitizer {
   #ifndef _LP64
     uptr __unused3;
   #endif
+  #endif
   #ifdef __powerpc__
     uptr shm_segsz;
   #endif
     int shm_cpid;
     int shm_lpid;
+  #if defined(__x86_64__) && !defined(_LP64)
+    u64 shm_nattch;
+    u64 __unused4;
+    u64 __unused5;
+  #else
     uptr shm_nattch;
     uptr __unused4;
     uptr __unused5;
+  #endif
   };
   #endif  // SANITIZER_LINUX && !SANITIZER_ANDROID
 
@@ -294,7 +306,11 @@ namespace __sanitizer {
   };
 #endif
 
+#if defined(__x86_64__) && !defined(_LP64)
+  typedef long long __sanitizer_clock_t;
+#else
   typedef long __sanitizer_clock_t;
+#endif
 
 #if SANITIZER_LINUX
 #if defined(_LP64) || defined(__x86_64__) || defined(__powerpc__)
-- 
GitLab