forked from OSchip/llvm-project
[sanitizer] Support SANITIZER_INTERCEPTOR_HOOKS on Darwin
This basically already worked other than weak symbols needing definitions on darwin. llvm-svn: 293741
This commit is contained in:
parent
776e9c35b5
commit
05cfdb936a
|
@ -44,15 +44,9 @@
|
|||
#include <stdarg.h>
|
||||
|
||||
#if SANITIZER_INTERCEPTOR_HOOKS
|
||||
#define CALL_WEAK_INTERCEPTOR_HOOK(f, ...) \
|
||||
do { \
|
||||
if (f) \
|
||||
f(__VA_ARGS__); \
|
||||
} while (false);
|
||||
#define DECLARE_WEAK_INTERCEPTOR_HOOK(f, ...) \
|
||||
extern "C" { \
|
||||
SANITIZER_INTERFACE_ATTRIBUTE SANITIZER_WEAK_ATTRIBUTE void f(__VA_ARGS__); \
|
||||
} // extern "C"
|
||||
#define CALL_WEAK_INTERCEPTOR_HOOK(f, ...) f(__VA_ARGS__);
|
||||
#define DECLARE_WEAK_INTERCEPTOR_HOOK(f, ...) \
|
||||
SANITIZER_INTERFACE_WEAK_DEF(void, f, __VA_ARGS__) {}
|
||||
#else
|
||||
#define DECLARE_WEAK_INTERCEPTOR_HOOK(f, ...)
|
||||
#define CALL_WEAK_INTERCEPTOR_HOOK(f, ...)
|
||||
|
|
|
@ -302,7 +302,7 @@
|
|||
#define SANITIZER_INTERCEPT_CTERMID SI_LINUX || SI_MAC || SI_FREEBSD
|
||||
#define SANITIZER_INTERCEPT_CTERMID_R SI_MAC || SI_FREEBSD
|
||||
|
||||
#define SANITIZER_INTERCEPTOR_HOOKS SI_LINUX
|
||||
#define SANITIZER_INTERCEPTOR_HOOKS SI_LINUX || SI_MAC
|
||||
#define SANITIZER_INTERCEPT_RECV_RECVFROM SI_NOT_WINDOWS
|
||||
#define SANITIZER_INTERCEPT_SEND_SENDTO SI_NOT_WINDOWS
|
||||
#define SANITIZER_INTERCEPT_EVENTFD_READ_WRITE SI_LINUX
|
||||
|
|
Loading…
Reference in New Issue