[sanitizer] Fix aarch64 sanitizer build with recent glibc
authorKostya Serebryany <kcc@google.com>
Wed, 21 Jan 2015 02:08:42 +0000 (02:08 +0000)
committerKostya Serebryany <kcc@google.com>
Wed, 21 Jan 2015 02:08:42 +0000 (02:08 +0000)
commitd4a032f6c60a351a7b10d6e3921b2a4134ecfe19
tree1d7fbe1da27c79c19e43d556017e1eb0883752de
parentc6338ac943099db46e700a03fb7e7c90e2ffd4d8
[sanitizer] Fix aarch64 sanitizer build with recent glibc

glibc recently changed ABI on aarch64-linux:
https://sourceware.org/git/?p=glibc.git;a=commit;h=5c40c3bab2fddaca8cfe12d75944d1fef8adf1a4
Instead of having unsigned short mode; unsigned short __pad1; it now has
unsigned int mode; field in ipc_perm structure.

This patch allows to build against the recent glibc and disables the
ipc_perm.mode verification for older versions of glibc.

I think it shouldn't be a big deal even for older glibcs, I couldn't find
any place which would actually care about the exact mode field, rather than
the whole structure, appart from the CHECK_SIZE_AND_OFFSET macro.

Patch by Jakub Jelinek

llvm-svn: 226637
compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cc
compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h