[sanitizer] fix the ppc32 build
Kostya Serebryany
kcc at google.com
Mon Jan 13 02:24:35 PST 2014
Thanks!
Committed as r199090.
--kcc
On Fri, Jan 10, 2014 at 2:02 PM, Jakub Jelinek <jakub at redhat.com> wrote:
> On Thu, Jan 09, 2014 at 03:11:16PM -0800, Chandler Carruth wrote:
> > I've mailed out a patch to the LLVM developer's policy which should
> clarify
> > this. The only thing that would help is for the authors of these three
> > patches (and the fourth patch I found later) to just email a copy of the
> > patch to llvm-commits, or if any of you have commit access to directly
> > commit the patch.
>
> Ok, I'm doing this now for the ppc32 sanitizer_common fix, originally
> posted
> in http://gcc.gnu.org/ml/gcc-patches/2013-12/msg00209.html with all the
> explanations there.
>
> --- lib/sanitizer_common/sanitizer_platform_limits_posix.h
> +++ lib/sanitizer_common/sanitizer_platform_limits_posix.h
> @@ -142,23 +142,32 @@ namespace __sanitizer {
> int gid;
> int cuid;
> int cgid;
> -#ifdef __powerpc64__
> +#ifdef __powerpc__
> unsigned mode;
> unsigned __seq;
> + u64 __unused1;
> + u64 __unused2;
> #else
> unsigned short mode;
> unsigned short __pad1;
> unsigned short __seq;
> unsigned short __pad2;
> +#if defined(__x86_64__) && !defined(_LP64)
> + u64 __unused1;
> + u64 __unused2;
> +#else
> + unsigned long __unused1;
> + unsigned long __unused2;
> +#endif
> #endif
> - uptr __unused1;
> - uptr __unused2;
> };
>
> struct __sanitizer_shmid_ds {
> __sanitizer_ipc_perm shm_perm;
> #ifndef __powerpc__
> uptr shm_segsz;
> + #elif !defined(__powerpc64__)
> + uptr __unused0;
> #endif
> uptr shm_atime;
> #ifndef _LP64
> @@ -290,17 +299,20 @@ namespace __sanitizer {
> typedef long __sanitizer_clock_t;
>
> #if SANITIZER_LINUX
> -#if defined(_LP64) || defined(__x86_64__)
> +#if defined(_LP64) || defined(__x86_64__) || defined(__powerpc__)
> typedef unsigned __sanitizer___kernel_uid_t;
> typedef unsigned __sanitizer___kernel_gid_t;
> - typedef long long __sanitizer___kernel_off_t;
> #else
> typedef unsigned short __sanitizer___kernel_uid_t;
> typedef unsigned short __sanitizer___kernel_gid_t;
> +#endif
> +#if defined(__x86_64__) && !defined(_LP64)
> + typedef long long __sanitizer___kernel_off_t;
> +#else
> typedef long __sanitizer___kernel_off_t;
> #endif
>
> -#if defined(__powerpc64__)
> +#if defined(__powerpc__)
> typedef unsigned int __sanitizer___kernel_old_uid_t;
> typedef unsigned int __sanitizer___kernel_old_gid_t;
> #else
>
>
> Jakub
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140113/51d14791/attachment.html>
More information about the llvm-commits
mailing list