[compiler-rt] r235944 - [asan] Fix ASan build on Android/AArch64.
Alexey Samsonov
vonosmas at gmail.com
Mon Apr 27 17:27:46 PDT 2015
On Mon, Apr 27, 2015 at 4:49 PM, Evgeniy Stepanov <eugeni.stepanov at gmail.com
> wrote:
> Author: eugenis
> Date: Mon Apr 27 18:49:39 2015
> New Revision: 235944
>
> URL: http://llvm.org/viewvc/llvm-project?rev=235944&view=rev
> Log:
> [asan] Fix ASan build on Android/AArch64.
>
> The build for aarch64 is not enabled in cmake/config-ix.cmake yet.
>
> Modified:
> compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt
>
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_platform_limits_posix.h
>
> Modified: compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt
> URL:
> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt?rev=235944&r1=235943&r2=235944&view=diff
>
> ==============================================================================
> --- compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt (original)
> +++ compiler-rt/trunk/lib/sanitizer_common/CMakeLists.txt Mon Apr 27
> 18:49:39 2015
> @@ -119,7 +119,7 @@ append_have_file_definition(tirpc/rpc/xd
> set(SANITIZER_CFLAGS ${SANITIZER_COMMON_CFLAGS})
> append_no_rtti_flag(SANITIZER_CFLAGS)
>
> -append_list_if(SANITIZER_LIMIT_FRAME_SIZE -Wframe-larger-than=512
> +append_list_if(SANITIZER_LIMIT_FRAME_SIZE -Wframe-larger-than=570
>
^^
Maybe, we can improve the problematic function?
> SANITIZER_CFLAGS)
> append_list_if(COMPILER_RT_HAS_WGLOBAL_CONSTRUCTORS_FLAG
> -Wglobal-constructors
> SANITIZER_CFLAGS)
>
> Modified:
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_platform_limits_posix.h
> URL:
> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_platform_limits_posix.h?rev=235944&r1=235943&r2=235944&view=diff
>
> ==============================================================================
> ---
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_platform_limits_posix.h
> (original)
> +++
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_platform_limits_posix.h
> Mon Apr 27 18:49:39 2015
> @@ -321,7 +321,7 @@ namespace __sanitizer {
> long pw_change;
> char *pw_class;
> #endif
> -#if !SANITIZER_ANDROID
> +#if !(SANITIZER_ANDROID && (SANITIZER_WORDSIZE == 32))
> char *pw_gecos;
> #endif
> char *pw_dir;
> @@ -383,7 +383,7 @@ namespace __sanitizer {
> };
> #endif
>
> -#if SANITIZER_ANDROID || SANITIZER_MAC || SANITIZER_FREEBSD
> +#if SANITIZER_MAC || SANITIZER_FREEBSD
> struct __sanitizer_msghdr {
> void *msg_name;
> unsigned msg_namelen;
> @@ -520,6 +520,27 @@ namespace __sanitizer {
> #endif
>
> // Linux system headers define the 'sa_handler' and 'sa_sigaction'
> macros.
> +#if SANITIZER_ANDROID && (SANITIZER_WORDSIZE == 64)
> + struct __sanitizer_sigaction {
> + unsigned sa_flags;
> + union {
> + void (*sigaction)(int sig, void *siginfo, void *uctx);
> + void (*handler)(int sig);
> + };
> + __sanitizer_sigset_t sa_mask;
> + void (*sa_restorer)();
> + };
> +#elif SANITIZER_ANDROID && (SANITIZER_WORDSIZE == 32)
> + struct __sanitizer_sigaction {
> + union {
> + void (*sigaction)(int sig, void *siginfo, void *uctx);
> + void (*handler)(int sig);
> + };
> + __sanitizer_sigset_t sa_mask;
> + uptr sa_flags;
> + void (*sa_restorer)();
> + };
> +#else // !SANITIZER_ANDROID
> struct __sanitizer_sigaction {
> #if defined(__mips__) && !SANITIZER_FREEBSD
> unsigned int sa_flags;
> @@ -544,6 +565,7 @@ namespace __sanitizer {
> int sa_resv[1];
> #endif
> };
> +#endif // !SANITIZER_ANDROID
>
> #if SANITIZER_FREEBSD
> typedef __sanitizer_sigset_t __sanitizer_kernel_sigset_t;
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
--
Alexey Samsonov
vonosmas at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150427/7c879a88/attachment.html>
More information about the llvm-commits
mailing list