Module Name:    src
Committed By:   christos
Date:           Wed Oct 15 18:44:50 UTC 2014

Modified Files:
        src/external/gpl3/gcc/dist/libsanitizer/asan:
            asan_intercepted_functions.h asan_internal.h asan_linux.cc
            asan_malloc_linux.cc asan_posix.cc
        src/external/gpl3/gcc/dist/libsanitizer/interception: interception.h
            interception_linux.cc interception_linux.h
            interception_type_test.cc
        src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common:
            sanitizer_common_interceptors.inc

Log Message:
make this compile, pretending a lot that we are linux.


To generate a diff of this commit:
cvs rdiff -u -r1.1.1.1 -r1.2 \
    src/external/gpl3/gcc/dist/libsanitizer/asan/asan_intercepted_functions.h \
    src/external/gpl3/gcc/dist/libsanitizer/asan/asan_internal.h \
    src/external/gpl3/gcc/dist/libsanitizer/asan/asan_linux.cc \
    src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc \
    src/external/gpl3/gcc/dist/libsanitizer/asan/asan_posix.cc
cvs rdiff -u -r1.1.1.1 -r1.2 \
    src/external/gpl3/gcc/dist/libsanitizer/interception/interception.h \
    src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.cc \
    src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.h \
    
src/external/gpl3/gcc/dist/libsanitizer/interception/interception_type_test.cc
cvs rdiff -u -r1.1.1.1 -r1.2 \
    
src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/gpl3/gcc/dist/libsanitizer/asan/asan_intercepted_functions.h
diff -u src/external/gpl3/gcc/dist/libsanitizer/asan/asan_intercepted_functions.h:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/asan/asan_intercepted_functions.h:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/asan/asan_intercepted_functions.h:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/asan/asan_intercepted_functions.h	Wed Oct 15 14:44:49 2014
@@ -41,7 +41,7 @@ using __sanitizer::uptr;
 # define ASAN_INTERCEPT_MLOCKX 0
 #endif
 
-#if defined(__linux__)
+#if defined(__linux__) || defined(__NetBSD__)
 # define ASAN_USE_ALIAS_ATTRIBUTE_FOR_INDEX 1
 #else
 # define ASAN_USE_ALIAS_ATTRIBUTE_FOR_INDEX 0
@@ -53,7 +53,7 @@ using __sanitizer::uptr;
 # define ASAN_INTERCEPT_STRNLEN 0
 #endif
 
-#if defined(__linux__) && !defined(ANDROID)
+#if (defined(__linux__) || defined(__NetBSD__)) && !defined(ANDROID) 
 # define ASAN_INTERCEPT_SWAPCONTEXT 1
 #else
 # define ASAN_INTERCEPT_SWAPCONTEXT 0
Index: src/external/gpl3/gcc/dist/libsanitizer/asan/asan_internal.h
diff -u src/external/gpl3/gcc/dist/libsanitizer/asan/asan_internal.h:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/asan/asan_internal.h:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/asan/asan_internal.h:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/asan/asan_internal.h	Wed Oct 15 14:44:49 2014
@@ -19,13 +19,13 @@
 #include "sanitizer_common/sanitizer_stacktrace.h"
 #include "sanitizer_common/sanitizer_libc.h"
 
-#if !defined(__linux__) && !defined(__APPLE__) && !defined(_WIN32)
+#if !defined(__linux__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(__NetBSD__)
 # error "This operating system is not supported by AddressSanitizer"
 #endif
 
 #define ASAN_DEFAULT_FAILURE_EXITCODE 1
 
-#if defined(__linux__)
+#if defined(__linux__) || defined(__NetBSD__)
 # define ASAN_LINUX   1
 #else
 # define ASAN_LINUX   0
Index: src/external/gpl3/gcc/dist/libsanitizer/asan/asan_linux.cc
diff -u src/external/gpl3/gcc/dist/libsanitizer/asan/asan_linux.cc:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/asan/asan_linux.cc:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/asan/asan_linux.cc:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/asan/asan_linux.cc	Wed Oct 15 14:44:49 2014
@@ -9,7 +9,7 @@
 //
 // Linux-specific details.
 //===----------------------------------------------------------------------===//
-#ifdef __linux__
+#if defined(__linux__) || defined(__NetBSD__)
 
 #include "asan_interceptors.h"
 #include "asan_internal.h"
@@ -25,6 +25,7 @@
 #include <sys/types.h>
 #include <fcntl.h>
 #include <pthread.h>
+#include <signal.h>
 #include <stdio.h>
 #include <unistd.h>
 #include <unwind.h>
@@ -47,6 +48,13 @@ void *AsanDoesNotSupportStaticLinkage() 
   return &_DYNAMIC;  // defined in link.h
 }
 
+#ifdef __NetBSD__
+#define gregs __gregs
+#define REG_RIP _REG_RIP
+#define REG_RBP _REG_RBP
+#define REG_RSP _REG_RSP
+#endif
+
 void GetPcSpBp(void *context, uptr *pc, uptr *sp, uptr *bp) {
 #if ASAN_ANDROID
   *pc = *sp = *bp = 0;
@@ -131,4 +139,4 @@ void ReadContextStack(void *context, upt
 
 }  // namespace __asan
 
-#endif  // __linux__
+#endif  // __linux__ || __NetBSD__
Index: src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc
diff -u src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/asan/asan_malloc_linux.cc	Wed Oct 15 14:44:49 2014
@@ -11,7 +11,7 @@
 // We simply define functions like malloc, free, realloc, etc.
 // They will replace the corresponding libc functions automagically.
 //===----------------------------------------------------------------------===//
-#ifdef __linux__
+#if defined(__linux__) || defined(__NetBSD__)
 
 #include "asan_allocator.h"
 #include "asan_interceptors.h"
@@ -144,4 +144,4 @@ INTERCEPTOR(void, malloc_stats, void) {
   __asan_print_accumulated_stats();
 }
 
-#endif  // __linux__
+#endif  // __linux__ || __NetBSD__
Index: src/external/gpl3/gcc/dist/libsanitizer/asan/asan_posix.cc
diff -u src/external/gpl3/gcc/dist/libsanitizer/asan/asan_posix.cc:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/asan/asan_posix.cc:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/asan/asan_posix.cc:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/asan/asan_posix.cc	Wed Oct 15 14:44:49 2014
@@ -9,7 +9,7 @@
 //
 // Posix-specific details.
 //===----------------------------------------------------------------------===//
-#if defined(__linux__) || defined(__APPLE__)
+#if defined(__linux__) || defined(__APPLE__) || defined(__NetBSD__)
 
 #include "asan_internal.h"
 #include "asan_interceptors.h"
@@ -115,4 +115,4 @@ void AsanTSDSet(void *tsd) {
 
 }  // namespace __asan
 
-#endif  // __linux__ || __APPLE_
+#endif  // __linux__ || __APPLE_ || __NetBSD__

Index: src/external/gpl3/gcc/dist/libsanitizer/interception/interception.h
diff -u src/external/gpl3/gcc/dist/libsanitizer/interception/interception.h:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/interception/interception.h:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/interception/interception.h:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/interception/interception.h	Wed Oct 15 14:44:50 2014
@@ -13,7 +13,7 @@
 #ifndef INTERCEPTION_H
 #define INTERCEPTION_H
 
-#if !defined(__linux__) && !defined(__APPLE__) && !defined(_WIN32)
+#if !defined(__linux__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(__NetBSD__)
 # error "Interception doesn't work on this operating system."
 #endif
 
@@ -29,7 +29,7 @@ typedef __sanitizer::s64  INTMAX_T;
 // _FILE_OFFSET_BITS. This definition of OFF_T matches the ABI of system calls
 // like pread and mmap, as opposed to pread64 and mmap64.
 // Mac and Linux/x86-64 are special.
-#if defined(__APPLE__) || (defined(__linux__) && defined(__x86_64__))
+#if defined(__APPLE__) || (defined(__linux__) && defined(__x86_64__)) || defined(__NetBSD__)
 typedef __sanitizer::u64 OFF_T;
 #else
 typedef __sanitizer::uptr OFF_T;
@@ -176,7 +176,7 @@ typedef unsigned long uptr;  // NOLINT
 
 #define INCLUDED_FROM_INTERCEPTION_LIB
 
-#if defined(__linux__)
+#if defined(__linux__) || defined(__NetBSD__)
 # include "interception_linux.h"
 # define INTERCEPT_FUNCTION(func) INTERCEPT_FUNCTION_LINUX(func)
 #elif defined(__APPLE__)
Index: src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.cc
diff -u src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.cc:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.cc:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.cc:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.cc	Wed Oct 15 14:44:50 2014
@@ -10,7 +10,7 @@
 // Linux-specific interception methods.
 //===----------------------------------------------------------------------===//
 
-#ifdef __linux__
+#if defined(__linux__) || defined(__NetBSD__)
 #include "interception.h"
 
 #include <stddef.h>  // for NULL
@@ -25,4 +25,4 @@ bool GetRealFunctionAddress(const char *
 }  // namespace __interception
 
 
-#endif  // __linux__
+#endif  // __linux__ || __NetBSD__
Index: src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.h
diff -u src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.h:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.h:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.h:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/interception/interception_linux.h	Wed Oct 15 14:44:50 2014
@@ -10,7 +10,7 @@
 // Linux-specific interception methods.
 //===----------------------------------------------------------------------===//
 
-#ifdef __linux__
+#if defined(__linux__) || defined(__NetBSD__)
 
 #if !defined(INCLUDED_FROM_INTERCEPTION_LIB)
 # error "interception_linux.h should be included from interception library only"
@@ -32,4 +32,4 @@ bool GetRealFunctionAddress(const char *
           (::__interception::uptr)&WRAP(func))
 
 #endif  // INTERCEPTION_LINUX_H
-#endif  // __linux__
+#endif  // __linux__ || __NetBSD__
Index: src/external/gpl3/gcc/dist/libsanitizer/interception/interception_type_test.cc
diff -u src/external/gpl3/gcc/dist/libsanitizer/interception/interception_type_test.cc:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/interception/interception_type_test.cc:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/interception/interception_type_test.cc:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/interception/interception_type_test.cc	Wed Oct 15 14:44:50 2014
@@ -10,7 +10,7 @@
 // Compile-time tests of the internal type definitions.
 //===----------------------------------------------------------------------===//
 
-#if defined(__linux__) || defined(__APPLE__)
+#if defined(__linux__) || defined(__APPLE__) || defined(__NetBSD__)
 
 #include "interception.h"
 #include <sys/types.h>
@@ -22,7 +22,7 @@ COMPILER_CHECK(sizeof(SSIZE_T) == sizeof
 COMPILER_CHECK(sizeof(PTRDIFF_T) == sizeof(ptrdiff_t));
 COMPILER_CHECK(sizeof(INTMAX_T) == sizeof(intmax_t));
 
-#ifndef __APPLE__
+#if !defined(__APPLE__) && !defined(__NetBSD__)
 COMPILER_CHECK(sizeof(OFF64_T) == sizeof(off64_t));
 #endif
 

Index: src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc
diff -u src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:1.1.1.1 src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:1.2
--- src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:1.1.1.1	Sat Mar  1 03:41:18 2014
+++ src/external/gpl3/gcc/dist/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc	Wed Oct 15 14:44:50 2014
@@ -296,6 +296,14 @@ SCANF_INTERCEPTOR_IMPL(fscanf, vfscanf, 
 INTERCEPTOR(int, sscanf, const char *str, const char *format, ...)
 SCANF_INTERCEPTOR_IMPL(sscanf, vsscanf, str, format)
 
+#define INIT_SCANF_NORMAL                                                      \
+  INTERCEPT_FUNCTION(scanf);                                                   \
+  INTERCEPT_FUNCTION(sscanf);                                                  \
+  INTERCEPT_FUNCTION(fscanf);                                                  \
+  INTERCEPT_FUNCTION(vscanf);                                                  \
+  INTERCEPT_FUNCTION(vsscanf);                                                 \
+  INTERCEPT_FUNCTION(vfscanf);                                                 \
+
 #if SANITIZER_INTERCEPT_ISOC99_SCANF
 INTERCEPTOR(int, __isoc99_scanf, const char *format, ...)
 SCANF_INTERCEPTOR_IMPL(__isoc99_scanf, __isoc99_vscanf, format)
@@ -305,21 +313,22 @@ SCANF_INTERCEPTOR_IMPL(__isoc99_fscanf, 
 
 INTERCEPTOR(int, __isoc99_sscanf, const char *str, const char *format, ...)
 SCANF_INTERCEPTOR_IMPL(__isoc99_sscanf, __isoc99_vsscanf, str, format)
-#endif
 
-#define INIT_SCANF                                                             \
-  INTERCEPT_FUNCTION(scanf);                                                   \
-  INTERCEPT_FUNCTION(sscanf);                                                  \
-  INTERCEPT_FUNCTION(fscanf);                                                  \
-  INTERCEPT_FUNCTION(vscanf);                                                  \
-  INTERCEPT_FUNCTION(vsscanf);                                                 \
-  INTERCEPT_FUNCTION(vfscanf);                                                 \
+
+#define INIT_SCANF_ISOC99						       \
   INTERCEPT_FUNCTION(__isoc99_scanf);                                          \
   INTERCEPT_FUNCTION(__isoc99_sscanf);                                         \
   INTERCEPT_FUNCTION(__isoc99_fscanf);                                         \
   INTERCEPT_FUNCTION(__isoc99_vscanf);                                         \
   INTERCEPT_FUNCTION(__isoc99_vsscanf);                                        \
   INTERCEPT_FUNCTION(__isoc99_vfscanf);
+#else
+#define INIT_SCANF_ISOC99
+#endif
+
+#define INIT_SCANF							       \
+  INIT_SCANF_NORMAL							       \
+  INIT_SCANF_ISOC99
 
 #else
 #define INIT_SCANF

Reply via email to