summaryrefslogtreecommitdiff
path: root/lib/interception/interception_linux.h
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2013-09-03 10:16:44 +0000
committerDmitry Vyukov <dvyukov@google.com>2013-09-03 10:16:44 +0000
commitab0ddd48647cc7081786567d328d23268cc41359 (patch)
tree2a839df7afa4aeaafcdfc725abf938b897640143 /lib/interception/interception_linux.h
parentec014cc3705b35d9df38419c94e72f553ebe2ea8 (diff)
tsan: fix linking when -ltsan is passed before -lpthread
libpthread is weird: /lib/x86_64-linux-gnu/libpthread.so.0:000000000000b9b0 T pthread_cond_init@@GLIBC_2.3.2 /lib/x86_64-linux-gnu/libpthread.so.0:000000000000c720 T pthread_cond_init@GLIBC_2.2.5 let's do it with @@ for now we can always introduce more macros parameters later git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189788 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/interception/interception_linux.h')
-rw-r--r--lib/interception/interception_linux.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/interception/interception_linux.h b/lib/interception/interception_linux.h
index 4c6f97a9d..5e0ec2acb 100644
--- a/lib/interception/interception_linux.h
+++ b/lib/interception/interception_linux.h
@@ -36,7 +36,7 @@ void *GetFuncAddrVer(const char *func_name, const char *ver);
#if !defined(__ANDROID__) // android does not have dlvsym
#define INTERCEPT_FUNCTION_VER(func, funcver, symver) \
- __asm__(".symver "#funcver","#func"@"#symver); \
+ __asm__(".symver "#funcver","#func"@@"#symver); \
::__interception::real_##funcver = (funcver##_f)(unsigned long) \
::__interception::GetFuncAddrVer(#func, #symver)
#endif // !defined(__ANDROID__)