[asan] Old Linux kernels (< 3.0) don't define ARM_VFPREGS_SIZE that leads to

build errors on ARM. Define it internally to avoid such errors.

Patch by Max Ostapenko.

Differential Revision: http://reviews.llvm.org/D14921

llvm-svn: 254292
This commit is contained in:
Yury Gribov 2015-11-30 09:19:22 +00:00
parent 56f3b0e410
commit fc4ba13622
1 changed files with 8 additions and 0 deletions

View File

@ -123,6 +123,10 @@
# include <asm/ptrace.h>
# ifdef __arm__
typedef struct user_fpregs elf_fpregset_t;
# define ARM_VFPREGS_SIZE_ASAN (32 * 8 /*fpregs*/ + 4 /*fpscr*/)
# if !defined(ARM_VFPREGS_SIZE)
# define ARM_VFPREGS_SIZE ARM_VFPREGS_SIZE_ASAN
# endif
# endif
# endif
# include <semaphore.h>
@ -1264,4 +1268,8 @@ CHECK_SIZE_AND_OFFSET(cookie_io_functions_t, close);
CHECK_TYPE_SIZE(sem_t);
#endif
#if SANITIZER_LINUX && defined(__arm__)
COMPILER_CHECK(ARM_VFPREGS_SIZE == ARM_VFPREGS_SIZE_ASAN);
#endif
#endif // SANITIZER_LINUX || SANITIZER_FREEBSD || SANITIZER_MAC