diff options
author | Dmitry Vyukov <dvyukov@google.com> | 2013-09-02 18:06:28 +0000 |
---|---|---|
committer | Dmitry Vyukov <dvyukov@google.com> | 2013-09-02 18:06:28 +0000 |
commit | 3a6c7cea77e2ffd6df97f1679b29b58f63b063bb (patch) | |
tree | 1f333096a32354852ba63780b977f3f3f71d58a3 /compiler-rt/lib/interception/interception_linux.cc | |
parent | 63872ce19fe1637515ac1e0345f43d38ba6c5880 (diff) | |
download | bcm5719-llvm-3a6c7cea77e2ffd6df97f1679b29b58f63b063bb.tar.gz bcm5719-llvm-3a6c7cea77e2ffd6df97f1679b29b58f63b063bb.zip |
tsan: properly intercept pthread_cond functions
llvm-svn: 189767
Diffstat (limited to 'compiler-rt/lib/interception/interception_linux.cc')
-rw-r--r-- | compiler-rt/lib/interception/interception_linux.cc | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/compiler-rt/lib/interception/interception_linux.cc b/compiler-rt/lib/interception/interception_linux.cc index 009098fbd65..67caca32cd2 100644 --- a/compiler-rt/lib/interception/interception_linux.cc +++ b/compiler-rt/lib/interception/interception_linux.cc @@ -15,7 +15,6 @@ #ifdef __linux__ #include "interception.h" -#include <stddef.h> // for NULL #include <dlfcn.h> // for dlsym namespace __interception { @@ -24,6 +23,11 @@ bool GetRealFunctionAddress(const char *func_name, uptr *func_addr, *func_addr = (uptr)dlsym(RTLD_NEXT, func_name); return real == wrapper; } + +void *GetFuncAddrVer(const char *func_name, const char *ver) { + return dlvsym(RTLD_NEXT, func_name, ver); +} + } // namespace __interception |