[compiler-rt] r213941 - Allow initialization of Asan interceptors before the general Asan initialization takes place on FreeBSD

Alexey Samsonov vonosmas at gmail.com
Fri Jul 25 10:31:11 PDT 2014


Looks like the commit message is pretty irrelevant to the actual submitted
patch...


On Fri, Jul 25, 2014 at 5:45 AM, Viktor Kutuzov <vkutuzov at accesssoftek.com>
wrote:

> Author: vkutuzov
> Date: Fri Jul 25 07:45:36 2014
> New Revision: 213941
>
> URL: http://llvm.org/viewvc/llvm-project?rev=213941&view=rev
> Log:
> Allow initialization of Asan interceptors before the general Asan
> initialization takes place on FreeBSD
> Differential Revision: http://reviews.llvm.org/D4496
>
> Modified:
>     compiler-rt/trunk/lib/asan/asan_interceptors.cc
>
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc
>
> Modified: compiler-rt/trunk/lib/asan/asan_interceptors.cc
> URL:
> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/asan_interceptors.cc?rev=213941&r1=213940&r2=213941&view=diff
>
> ==============================================================================
> --- compiler-rt/trunk/lib/asan/asan_interceptors.cc (original)
> +++ compiler-rt/trunk/lib/asan/asan_interceptors.cc Fri Jul 25 07:45:36
> 2014
> @@ -148,6 +148,7 @@ DECLARE_REAL_AND_INTERCEPTOR(void, free,
>  #define COMMON_INTERCEPTOR_ON_EXIT(ctx) OnExit()
>  #define COMMON_INTERCEPTOR_LIBRARY_LOADED(filename, res)
> CovUpdateMapping()
>  #define COMMON_INTERCEPTOR_LIBRARY_UNLOADED() CovUpdateMapping()
> +#define COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED (!asan_inited)
>  #include "sanitizer_common/sanitizer_common_interceptors.inc"
>
>  #define COMMON_SYSCALL_PRE_READ_RANGE(p, s) ASAN_READ_RANGE(p, s)
>
> Modified:
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc
> URL:
> http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc?rev=213941&r1=213940&r2=213941&view=diff
>
> ==============================================================================
> ---
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc
> (original)
> +++
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc
> Fri Jul 25 07:45:36 2014
> @@ -27,6 +27,7 @@
>  //   COMMON_INTERCEPTOR_MUTEX_REPAIR
>  //   COMMON_INTERCEPTOR_SET_PTHREAD_NAME
>  //   COMMON_INTERCEPTOR_HANDLE_RECVMSG
> +//   COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED
>
>  //===----------------------------------------------------------------------===//
>  #include "interception/interception.h"
>  #include "sanitizer_addrhashmap.h"
> @@ -89,6 +90,10 @@
>    COMMON_INTERCEPTOR_ENTER(ctx, __VA_ARGS__)
>  #endif
>
> +#ifndef COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED
> +#define COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED (0)
> +#endif
> +
>  struct FileMetadata {
>    // For open_memstream().
>    char **addr;
> @@ -174,6 +179,8 @@ INTERCEPTOR(int, strcmp, const char *s1,
>  }
>
>  INTERCEPTOR(int, strncmp, const char *s1, const char *s2, uptr size) {
> +  if (COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED)
> +    return internal_strncmp(s1, s2, size);
>    void *ctx;
>    COMMON_INTERCEPTOR_ENTER(ctx, strncmp, s1, s2, size);
>    unsigned char c1 = 0, c2 = 0;
>
>
> _______________________________________________
> 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/20140725/59ab024d/attachment.html>


More information about the llvm-commits mailing list