<div dir="ltr">Looks like the commit message is pretty irrelevant to the actual submitted patch...</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jul 25, 2014 at 5:45 AM, Viktor Kutuzov <span dir="ltr"><<a href="mailto:vkutuzov@accesssoftek.com" target="_blank">vkutuzov@accesssoftek.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Author: vkutuzov<br>
Date: Fri Jul 25 07:45:36 2014<br>
New Revision: 213941<br>
<br>
URL: <a href="http://llvm.org/viewvc/llvm-project?rev=213941&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=213941&view=rev</a><br>
Log:<br>
Allow initialization of Asan interceptors before the general Asan initialization takes place on FreeBSD<br>
Differential Revision: <a href="http://reviews.llvm.org/D4496" target="_blank">http://reviews.llvm.org/D4496</a><br>
<br>
Modified:<br>
compiler-rt/trunk/lib/asan/asan_interceptors.cc<br>
compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc<br>
<br>
Modified: compiler-rt/trunk/lib/asan/asan_interceptors.cc<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/asan_interceptors.cc?rev=213941&r1=213940&r2=213941&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/asan/asan_interceptors.cc?rev=213941&r1=213940&r2=213941&view=diff</a><br>
==============================================================================<br>
--- compiler-rt/trunk/lib/asan/asan_interceptors.cc (original)<br>
+++ compiler-rt/trunk/lib/asan/asan_interceptors.cc Fri Jul 25 07:45:36 2014<br>
@@ -148,6 +148,7 @@ DECLARE_REAL_AND_INTERCEPTOR(void, free,<br>
#define COMMON_INTERCEPTOR_ON_EXIT(ctx) OnExit()<br>
#define COMMON_INTERCEPTOR_LIBRARY_LOADED(filename, res) CovUpdateMapping()<br>
#define COMMON_INTERCEPTOR_LIBRARY_UNLOADED() CovUpdateMapping()<br>
+#define COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED (!asan_inited)<br>
#include "sanitizer_common/sanitizer_common_interceptors.inc"<br>
<br>
#define COMMON_SYSCALL_PRE_READ_RANGE(p, s) ASAN_READ_RANGE(p, s)<br>
<br>
Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc<br>
URL: <a href="http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc?rev=213941&r1=213940&r2=213941&view=diff" target="_blank">http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc?rev=213941&r1=213940&r2=213941&view=diff</a><br>
==============================================================================<br>
--- compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc (original)<br>
+++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_common_interceptors.inc Fri Jul 25 07:45:36 2014<br>
@@ -27,6 +27,7 @@<br>
// COMMON_INTERCEPTOR_MUTEX_REPAIR<br>
// COMMON_INTERCEPTOR_SET_PTHREAD_NAME<br>
// COMMON_INTERCEPTOR_HANDLE_RECVMSG<br>
+// COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED<br>
//===----------------------------------------------------------------------===//<br>
#include "interception/interception.h"<br>
#include "sanitizer_addrhashmap.h"<br>
@@ -89,6 +90,10 @@<br>
COMMON_INTERCEPTOR_ENTER(ctx, __VA_ARGS__)<br>
#endif<br>
<br>
+#ifndef COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED<br>
+#define COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED (0)<br>
+#endif<br>
+<br>
struct FileMetadata {<br>
// For open_memstream().<br>
char **addr;<br>
@@ -174,6 +179,8 @@ INTERCEPTOR(int, strcmp, const char *s1,<br>
}<br>
<br>
INTERCEPTOR(int, strncmp, const char *s1, const char *s2, uptr size) {<br>
+ if (COMMON_INTERCEPTOR_NOTHING_IS_INITIALIZED)<br>
+ return internal_strncmp(s1, s2, size);<br>
void *ctx;<br>
COMMON_INTERCEPTOR_ENTER(ctx, strncmp, s1, s2, size);<br>
unsigned char c1 = 0, c2 = 0;<br>
<br>
<br>
_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Alexey Samsonov<br><a href="mailto:vonosmas@gmail.com" target="_blank">vonosmas@gmail.com</a></div>
</div>