[compiler-rt] r184747 - tsan: update dynamic export syms file
Dmitry Vyukov
dvyukov at google.com
Mon Jun 24 08:17:36 PDT 2013
Author: dvyukov
Date: Mon Jun 24 10:17:36 2013
New Revision: 184747
URL: http://llvm.org/viewvc/llvm-project?rev=184747&view=rev
Log:
tsan: update dynamic export syms file
now it includes proper functions (including interceptors)
and does not include local functions that lead to build failures
Added:
compiler-rt/trunk/lib/tsan/gen_dynamic_list.sh (with props)
Modified:
compiler-rt/trunk/lib/tsan/Makefile.old
compiler-rt/trunk/lib/tsan/rtl/tsan.syms
Modified: compiler-rt/trunk/lib/tsan/Makefile.old
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/Makefile.old?rev=184747&r1=184746&r2=184747&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/Makefile.old (original)
+++ compiler-rt/trunk/lib/tsan/Makefile.old Mon Jun 24 10:17:36 2013
@@ -64,6 +64,8 @@ run: all
presubmit:
../sanitizer_common/scripts/check_lint.sh
+ ./gen_dynamic_list.sh > rtl/tsan.syms.new
+ diff rtl/tsan.syms rtl/tsan.syms.new
# Debug build with clang.
$(MAKE) -f Makefile.old clean
$(MAKE) -f Makefile.old run DEBUG=1 -j 16 CC=$(CLANG) CXX=$(CLANG)++
Added: compiler-rt/trunk/lib/tsan/gen_dynamic_list.sh
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/gen_dynamic_list.sh?rev=184747&view=auto
==============================================================================
--- compiler-rt/trunk/lib/tsan/gen_dynamic_list.sh (added)
+++ compiler-rt/trunk/lib/tsan/gen_dynamic_list.sh Mon Jun 24 10:17:36 2013
@@ -0,0 +1,47 @@
+#!/bin/bash
+set -e
+
+function collect() {
+ while read line ; do
+ if [[ $line =~ ^(.*)((TSAN_INTERCEPT|INTERCEPT_FUNCTION)\()([a-z,A-Z,0-9,_]+)(.*)$ ]] ; then
+ results+=" ${BASH_REMATCH[4]}"
+ results+=" __interceptor_${BASH_REMATCH[4]}"
+ fi
+ done < "$1"
+}
+
+results+=" __tsan_init"
+results+=" __tsan_read*"
+results+=" __tsan_write*"
+results+=" __tsan_vptr*"
+results+=" __tsan_func*"
+results+=" __tsan_atomic*"
+results+=" __tsan_java*"
+results+=" __tsan_unaligned*"
+results+=" __tsan_release"
+results+=" __tsan_acquire"
+results+=" __sanitizer_unaligned*"
+results+=" __sanitizer_syscall*"
+results+=" _Znwm"
+results+=" _Znam"
+results+=" _ZnwmRKSt9nothrow_t"
+results+=" _ZnamRKSt9nothrow_t"
+results+=" _ZdlPv"
+results+=" _ZdlPvRKSt9nothrow_t"
+results+=" _ZdaPv"
+results+=" _ZdaPvRKSt9nothrow_t"
+results+=" Annotate*"
+results+=" WTFAnnotate*"
+results+=" RunningOnValgrind"
+
+collect rtl/tsan_interceptors.cc
+collect ../sanitizer_common/sanitizer_common_interceptors.inc
+
+results=`for i in $results; do echo $i; done | sort -f`
+echo "# AUTO GENERATED by compiler-rt/lib/tsan/gen_dynamic_list.sh; EDITING IS FUTILE."
+echo "{"
+for i in $results; do
+ echo " $i;"
+done
+echo "};"
+
Propchange: compiler-rt/trunk/lib/tsan/gen_dynamic_list.sh
------------------------------------------------------------------------------
svn:executable = *
Modified: compiler-rt/trunk/lib/tsan/rtl/tsan.syms
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/tsan/rtl/tsan.syms?rev=184747&r1=184746&r2=184747&view=diff
==============================================================================
--- compiler-rt/trunk/lib/tsan/rtl/tsan.syms (original)
+++ compiler-rt/trunk/lib/tsan/rtl/tsan.syms Mon Jun 24 10:17:36 2013
@@ -1,5 +1,394 @@
+# AUTO GENERATED by compiler-rt/lib/tsan/gen_dynamic_list.sh; EDITING IS FUTILE.
{
- __tsan_*;
- __sanitizer_syscall_pre_*;
- __sanitizer_syscall_post_*;
+ abort;
+ accept;
+ accept4;
+ Annotate*;
+ asctime_r;
+ bind;
+ calloc;
+ cfree;
+ clock_settime;
+ close;
+ connect;
+ creat;
+ creat64;
+ dup;
+ dup2;
+ dup3;
+ epoll_create;
+ epoll_create1;
+ epoll_ctl;
+ epoll_wait;
+ eventfd;
+ fclose;
+ fflush;
+ fopen;
+ fork;
+ fread;
+ free;
+ freopen;
+ frexp;
+ frexpl;
+ fstat;
+ fstat64;
+ func;
+ fwrite;
+ getaddrinfo;
+ getgrgid;
+ getgrgid_r;
+ gethostbyname2;
+ gethostbyname2_r;
+ getpeername;
+ getsockname;
+ getsockopt;
+ gettimeofday;
+ glob64;
+ inet_aton;
+ inet_pton;
+ inotify_init;
+ inotify_init1;
+ ioctl;
+ kill;
+ listen;
+ longjmp;
+ lstat;
+ lstat64;
+ malloc;
+ memalign;
+ memchr;
+ memcmp;
+ memcpy;
+ memmove;
+ memrchr;
+ memset;
+ mlock;
+ mlockall;
+ mmap;
+ mmap64;
+ modfl;
+ munlock;
+ munlockall;
+ munmap;
+ nanosleep;
+ on_exit;
+ open;
+ open64;
+ opendir;
+ pipe;
+ pipe2;
+ poll;
+ posix_memalign;
+ prctl;
+ pread;
+ pread64;
+ preadv;
+ preadv64;
+ pthread_barrier_destroy;
+ pthread_barrier_init;
+ pthread_barrier_wait;
+ pthread_cond_broadcast;
+ pthread_cond_destroy;
+ pthread_cond_init;
+ pthread_cond_signal;
+ pthread_cond_timedwait;
+ pthread_cond_wait;
+ pthread_create;
+ pthread_detach;
+ pthread_getschedparam;
+ pthread_join;
+ pthread_kill;
+ pthread_mutex_destroy;
+ pthread_mutex_init;
+ pthread_mutex_lock;
+ pthread_mutex_timedlock;
+ pthread_mutex_trylock;
+ pthread_mutex_unlock;
+ pthread_once;
+ pthread_rwlock_destroy;
+ pthread_rwlock_init;
+ pthread_rwlock_rdlock;
+ pthread_rwlock_timedrdlock;
+ pthread_rwlock_timedwrlock;
+ pthread_rwlock_tryrdlock;
+ pthread_rwlock_trywrlock;
+ pthread_rwlock_unlock;
+ pthread_rwlock_wrlock;
+ pthread_spin_destroy;
+ pthread_spin_init;
+ pthread_spin_lock;
+ pthread_spin_trylock;
+ pthread_spin_unlock;
+ puts;
+ pvalloc;
+ pwrite;
+ pwrite64;
+ pwritev;
+ pwritev64;
+ raise;
+ read;
+ readv;
+ realloc;
+ recv;
+ recvmsg;
+ rmdir;
+ RunningOnValgrind;
+ sem_destroy;
+ sem_getvalue;
+ sem_init;
+ sem_post;
+ sem_timedwait;
+ sem_trywait;
+ sem_wait;
+ send;
+ sendmsg;
+ setitimer;
+ setjmp;
+ sigaction;
+ siglongjmp;
+ signal;
+ signalfd;
+ sigsetjmp;
+ sleep;
+ socket;
+ socketpair;
+ stat;
+ stat64;
+ strcasecmp;
+ strchr;
+ strchrnul;
+ strcmp;
+ strcpy;
+ strlen;
+ strncasecmp;
+ strncmp;
+ strncpy;
+ strrchr;
+ strstr;
+ sysinfo;
+ time;
+ unlink;
+ usleep;
+ valloc;
+ wait4;
+ write;
+ writev;
+ WTFAnnotate*;
+ _setjmp;
+ _ZdaPv;
+ _ZdaPvRKSt9nothrow_t;
+ _ZdlPv;
+ _ZdlPvRKSt9nothrow_t;
+ _Znam;
+ _ZnamRKSt9nothrow_t;
+ _Znwm;
+ _ZnwmRKSt9nothrow_t;
+ __close;
+ __cxa_atexit;
+ __fxstat;
+ __fxstat64;
+ __interceptor_abort;
+ __interceptor_accept;
+ __interceptor_accept4;
+ __interceptor_asctime_r;
+ __interceptor_bind;
+ __interceptor_calloc;
+ __interceptor_cfree;
+ __interceptor_clock_settime;
+ __interceptor_close;
+ __interceptor_connect;
+ __interceptor_creat;
+ __interceptor_creat64;
+ __interceptor_dup;
+ __interceptor_dup2;
+ __interceptor_dup3;
+ __interceptor_epoll_create;
+ __interceptor_epoll_create1;
+ __interceptor_epoll_ctl;
+ __interceptor_epoll_wait;
+ __interceptor_eventfd;
+ __interceptor_fclose;
+ __interceptor_fflush;
+ __interceptor_fopen;
+ __interceptor_fork;
+ __interceptor_fread;
+ __interceptor_free;
+ __interceptor_freopen;
+ __interceptor_frexp;
+ __interceptor_frexpl;
+ __interceptor_fstat;
+ __interceptor_fstat64;
+ __interceptor_func;
+ __interceptor_fwrite;
+ __interceptor_getaddrinfo;
+ __interceptor_getgrgid;
+ __interceptor_getgrgid_r;
+ __interceptor_gethostbyname2;
+ __interceptor_gethostbyname2_r;
+ __interceptor_getpeername;
+ __interceptor_getsockname;
+ __interceptor_getsockopt;
+ __interceptor_gettimeofday;
+ __interceptor_glob64;
+ __interceptor_inet_aton;
+ __interceptor_inet_pton;
+ __interceptor_inotify_init;
+ __interceptor_inotify_init1;
+ __interceptor_ioctl;
+ __interceptor_kill;
+ __interceptor_listen;
+ __interceptor_longjmp;
+ __interceptor_lstat;
+ __interceptor_lstat64;
+ __interceptor_malloc;
+ __interceptor_memalign;
+ __interceptor_memchr;
+ __interceptor_memcmp;
+ __interceptor_memcpy;
+ __interceptor_memmove;
+ __interceptor_memrchr;
+ __interceptor_memset;
+ __interceptor_mlock;
+ __interceptor_mlockall;
+ __interceptor_mmap;
+ __interceptor_mmap64;
+ __interceptor_modfl;
+ __interceptor_munlock;
+ __interceptor_munlockall;
+ __interceptor_munmap;
+ __interceptor_nanosleep;
+ __interceptor_on_exit;
+ __interceptor_open;
+ __interceptor_open64;
+ __interceptor_opendir;
+ __interceptor_pipe;
+ __interceptor_pipe2;
+ __interceptor_poll;
+ __interceptor_posix_memalign;
+ __interceptor_prctl;
+ __interceptor_pread;
+ __interceptor_pread64;
+ __interceptor_preadv;
+ __interceptor_preadv64;
+ __interceptor_pthread_barrier_destroy;
+ __interceptor_pthread_barrier_init;
+ __interceptor_pthread_barrier_wait;
+ __interceptor_pthread_cond_broadcast;
+ __interceptor_pthread_cond_destroy;
+ __interceptor_pthread_cond_init;
+ __interceptor_pthread_cond_signal;
+ __interceptor_pthread_cond_timedwait;
+ __interceptor_pthread_cond_wait;
+ __interceptor_pthread_create;
+ __interceptor_pthread_detach;
+ __interceptor_pthread_getschedparam;
+ __interceptor_pthread_join;
+ __interceptor_pthread_kill;
+ __interceptor_pthread_mutex_destroy;
+ __interceptor_pthread_mutex_init;
+ __interceptor_pthread_mutex_lock;
+ __interceptor_pthread_mutex_timedlock;
+ __interceptor_pthread_mutex_trylock;
+ __interceptor_pthread_mutex_unlock;
+ __interceptor_pthread_once;
+ __interceptor_pthread_rwlock_destroy;
+ __interceptor_pthread_rwlock_init;
+ __interceptor_pthread_rwlock_rdlock;
+ __interceptor_pthread_rwlock_timedrdlock;
+ __interceptor_pthread_rwlock_timedwrlock;
+ __interceptor_pthread_rwlock_tryrdlock;
+ __interceptor_pthread_rwlock_trywrlock;
+ __interceptor_pthread_rwlock_unlock;
+ __interceptor_pthread_rwlock_wrlock;
+ __interceptor_pthread_spin_destroy;
+ __interceptor_pthread_spin_init;
+ __interceptor_pthread_spin_lock;
+ __interceptor_pthread_spin_trylock;
+ __interceptor_pthread_spin_unlock;
+ __interceptor_puts;
+ __interceptor_pvalloc;
+ __interceptor_pwrite;
+ __interceptor_pwrite64;
+ __interceptor_pwritev;
+ __interceptor_pwritev64;
+ __interceptor_raise;
+ __interceptor_read;
+ __interceptor_readv;
+ __interceptor_realloc;
+ __interceptor_recv;
+ __interceptor_recvmsg;
+ __interceptor_rmdir;
+ __interceptor_sem_destroy;
+ __interceptor_sem_getvalue;
+ __interceptor_sem_init;
+ __interceptor_sem_post;
+ __interceptor_sem_timedwait;
+ __interceptor_sem_trywait;
+ __interceptor_sem_wait;
+ __interceptor_send;
+ __interceptor_sendmsg;
+ __interceptor_setitimer;
+ __interceptor_setjmp;
+ __interceptor_sigaction;
+ __interceptor_siglongjmp;
+ __interceptor_signal;
+ __interceptor_signalfd;
+ __interceptor_sigsetjmp;
+ __interceptor_sleep;
+ __interceptor_socket;
+ __interceptor_socketpair;
+ __interceptor_stat;
+ __interceptor_stat64;
+ __interceptor_strcasecmp;
+ __interceptor_strchr;
+ __interceptor_strchrnul;
+ __interceptor_strcmp;
+ __interceptor_strcpy;
+ __interceptor_strlen;
+ __interceptor_strncasecmp;
+ __interceptor_strncmp;
+ __interceptor_strncpy;
+ __interceptor_strrchr;
+ __interceptor_strstr;
+ __interceptor_sysinfo;
+ __interceptor_time;
+ __interceptor_unlink;
+ __interceptor_usleep;
+ __interceptor_valloc;
+ __interceptor_wait4;
+ __interceptor_write;
+ __interceptor_writev;
+ __interceptor__setjmp;
+ __interceptor___close;
+ __interceptor___cxa_atexit;
+ __interceptor___fxstat;
+ __interceptor___fxstat64;
+ __interceptor___isoc99_vfscanf;
+ __interceptor___libc_memalign;
+ __interceptor___lxstat;
+ __interceptor___lxstat64;
+ __interceptor___res_iclose;
+ __interceptor___sigsetjmp;
+ __interceptor___xstat;
+ __interceptor___xstat64;
+ __isoc99_vfscanf;
+ __libc_memalign;
+ __lxstat;
+ __lxstat64;
+ __res_iclose;
+ __sanitizer_syscall*;
+ __sanitizer_unaligned*;
+ __sigsetjmp;
+ __tsan_acquire;
+ __tsan_atomic*;
+ __tsan_func*;
+ __tsan_init;
+ __tsan_java*;
+ __tsan_read*;
+ __tsan_release;
+ __tsan_unaligned*;
+ __tsan_vptr*;
+ __tsan_write*;
+ __xstat;
+ __xstat64;
};
More information about the llvm-commits
mailing list