Path: blob/main/contrib/llvm-project/compiler-rt/lib/dfsan/done_abilist.txt
35233 views
fun:main=uninstrumented1fun:main=discard23###############################################################################4# DFSan interface functions5###############################################################################6fun:dfsan_union=uninstrumented7fun:dfsan_union=discard8fun:dfsan_create_label=uninstrumented9fun:dfsan_create_label=discard10fun:dfsan_set_label=uninstrumented11fun:dfsan_set_label=discard12fun:dfsan_add_label=uninstrumented13fun:dfsan_add_label=discard14fun:dfsan_get_label=uninstrumented15fun:dfsan_get_label=custom16fun:dfsan_read_label=uninstrumented17fun:dfsan_read_label=discard18fun:dfsan_get_label_count=uninstrumented19fun:dfsan_get_label_count=discard20fun:dfsan_get_label_info=uninstrumented21fun:dfsan_get_label_info=discard22fun:dfsan_has_label=uninstrumented23fun:dfsan_has_label=discard24fun:dfsan_has_label_with_desc=uninstrumented25fun:dfsan_has_label_with_desc=discard26fun:dfsan_set_write_callback=uninstrumented27fun:dfsan_set_write_callback=custom28fun:dfsan_flush=uninstrumented29fun:dfsan_flush=discard30fun:dfsan_print_origin_trace=uninstrumented31fun:dfsan_print_origin_trace=discard32fun:dfsan_print_origin_id_trace=uninstrumented33fun:dfsan_print_origin_id_trace=discard34fun:dfsan_sprint_origin_trace=uninstrumented35fun:dfsan_sprint_origin_trace=discard36fun:dfsan_sprint_origin_id_trace=uninstrumented37fun:dfsan_sprint_origin_id_trace=discard38fun:dfsan_sprint_stack_trace=uninstrumented39fun:dfsan_sprint_stack_trace=discard40fun:dfsan_get_origin=uninstrumented41fun:dfsan_get_origin=custom42fun:dfsan_read_origin_of_first_taint=uninstrumented43fun:dfsan_read_origin_of_first_taint=discard44fun:dfsan_get_init_origin=uninstrumented45fun:dfsan_get_init_origin=discard46fun:dfsan_get_track_origins=uninstrumented47fun:dfsan_get_track_origins=discard48fun:dfsan_set_conditional_callback=uninstrumented49fun:dfsan_set_conditional_callback=discard50fun:dfsan_get_labels_in_signal_conditional=uninstrumented51fun:dfsan_get_labels_in_signal_conditional=discard52fun:dfsan_set_reaches_function_callback=uninstrumented53fun:dfsan_set_reaches_function_callback=discard54fun:dfsan_get_labels_in_signal_reaches_function=uninstrumented55fun:dfsan_get_labels_in_signal_reaches_function=discard56fun:dfsan_reaches_function_callback=uninstrumented57fun:dfsan_reaches_function_callback=discard5859###############################################################################60# glibc61###############################################################################62# Functions of memory allocators63fun:__libc_memalign=discard64fun:aligned_alloc=discard65fun:calloc=discard66fun:cfree=discard67fun:mallinfo=discard68fun:malloc=discard69fun:free=discard70fun:malloc_stats=discard71fun:malloc_usable_size=discard72fun:mallopt=discard73fun:memalign=discard74fun:posix_memalign=discard75fun:pvalloc=discard76fun:realloc=discard77fun:reallocarray=discard78fun:valloc=discard7980# Functions that return a value that depends on the input, but the output might81# not be necessarily data-dependent on the input.82fun:isalpha=functional83fun:isdigit=functional84fun:isprint=functional85fun:isxdigit=functional86fun:isalnum=functional87fun:ispunct=functional88fun:isspace=functional89fun:tolower=functional90fun:_tolower=functional91fun:toupper=functional9293# Functions that return a value that is data-dependent on the input.94fun:__isinf=functional95fun:__isinff=functional96fun:__signbit=functional97fun:__signbitf=functional98fun:__signbitl=functional99fun:btowc=functional100fun:exp=functional101fun:exp2=functional102fun:expf=functional103fun:expl=functional104fun:fabs=functional105fun:finite=functional106fun:finitef=functional107fun:finitel=functional108fun:floor=functional109fun:fmod=functional110fun:isinf=functional111fun:isinff=functional112fun:isinfl=functional113fun:isnan=functional114fun:isnanf=functional115fun:isnanl=functional116fun:log=functional117fun:log1p=functional118fun:log1pf=functional119fun:log1pl=functional120fun:log2=functional121fun:log2f=functional122fun:log2l=functional123fun:modf=functional124fun:nextafter=functional125fun:nextafterf=functional126fun:nextafterl=functional127fun:nexttoward=functional128fun:nexttowardf=functional129fun:nexttowardl=functional130fun:pow=functional131fun:powf=functional132fun:powl=functional133fun:round=functional134fun:sqrt=functional135fun:sqrtf=functional136fun:sqrtl=functional137fun:wctob=functional138139# Functions that produce an output that does not depend on the input (shadow is140# zeroed automatically).141fun:__assert_fail=discard142fun:__cmsg_nxthdr=discard143fun:__ctype_b_loc=discard144fun:__cxa_atexit=discard145fun:__errno_location=discard146fun:__newlocale=discard147fun:__sbrk=discard148fun:__sigsetjmp=discard149fun:__uselocale=discard150fun:__wctype_l=discard151fun:access=discard152fun:alarm=discard153fun:atexit=discard154fun:bind=discard155fun:chdir=discard156fun:close=discard157fun:closedir=discard158fun:connect=discard159fun:creat=discard160fun:dladdr=discard161fun:dlclose=discard162fun:epoll_create=discard163fun:epoll_create1=discard164fun:epoll_ctl=discard165fun:fclose=discard166fun:feof=discard167fun:ferror=discard168fun:fflush=discard169fun:fileno=discard170fun:fopen=discard171fun:fprintf=discard172fun:fputc=discard173fun:fputc=discard174fun:fputs=discard175fun:fputs=discard176fun:fseek=discard177fun:ftell=discard178fun:fwrite=discard179fun:getenv=discard180fun:getuid=discard181fun:geteuid=discard182fun:getpagesize=discard183fun:getpid=discard184fun:kill=discard185fun:listen=discard186fun:lseek=discard187fun:mkdir=discard188fun:mmap=discard189fun:munmap=discard190fun:open=discard191fun:openat=discard192fun:pipe=discard193fun:posix_fadvise=discard194fun:prctl=discard195fun:printf=discard196fun:pthread_sigmask=discard197fun:putc=discard198fun:putchar=discard199fun:puts=discard200fun:rand=discard201fun:random=discard202fun:remove=discard203fun:sched_getcpu=discard204fun:sched_get_priority_max=discard205fun:sched_setaffinity=discard206fun:sched_yield=discard207fun:sem_destroy=discard208fun:sem_init=discard209fun:sem_post=discard210fun:sem_wait=discard211fun:send=discard212fun:sendmsg=discard213fun:sendto=discard214fun:setsockopt=discard215fun:shutdown=discard216fun:sleep=discard217fun:socket=discard218fun:strerror=discard219fun:strspn=discard220fun:strcspn=discard221fun:symlink=discard222fun:syscall=discard223fun:unlink=discard224fun:uselocale=discard225fun:vfprintf=discard226227# Functions that produce output does not depend on the input (need to zero the228# shadow manually).229fun:_dl_get_tls_static_info=custom230fun:clock_gettime=custom231fun:dlopen=custom232fun:epoll_wait=custom233fun:fgets=custom234fun:fstat=custom235fun:getcwd=custom236fun:get_current_dir_name=custom237fun:getentropy=custom238fun:gethostname=custom239fun:getpeername=custom240fun:getrlimit=custom241fun:getrusage=custom242fun:getsockname=custom243fun:getsockopt=custom244fun:nanosleep=custom245fun:pread=custom246fun:read=custom247fun:recvmmsg=custom248fun:recvmsg=custom249fun:sigaltstack=custom250fun:socketpair=custom251fun:stat=custom252fun:time=custom253254# Functions that produce an output that depend on the input (propagate the255# shadow manually).256fun:ctime_r=custom257fun:inet_pton=custom258fun:localtime_r=custom259fun:memcpy=custom260fun:memmove=custom261fun:memset=custom262fun:strcpy=custom263fun:strdup=custom264fun:strncpy=custom265fun:strtod=custom266fun:strtol=custom267fun:strtoll=custom268fun:strtoul=custom269fun:strtoull=custom270fun:strcat=custom271fun:strncat=custom272fun:__isoc23_strtod=custom273fun:__isoc23_strtol=custom274fun:__isoc23_strtoll=custom275fun:__isoc23_strtoul=custom276fun:__isoc23_strtoull=custom277278# Functions that produce an output that is computed from the input, but is not279# necessarily data dependent.280fun:bcmp=custom281fun:memchr=custom282fun:memcmp=custom283fun:strcasecmp=custom284fun:strchr=custom285fun:strcmp=custom286fun:strlen=custom287fun:strnlen=custom288fun:strncasecmp=custom289fun:strncmp=custom290fun:strpbrk=custom291fun:strrchr=custom292fun:strstr=custom293fun:strsep=custom294295# Functions which take action based on global state, such as running a callback296# set by a separate function.297fun:write=custom298299# Functions that take a callback (wrap the callback manually).300fun:dl_iterate_phdr=custom301302fun:getpwuid_r=custom303fun:poll=custom304fun:sched_getaffinity=custom305fun:select=custom306fun:sigemptyset=custom307fun:sigaction=custom308fun:signal=custom309fun:gettimeofday=custom310311# sprintf-like312fun:sprintf=custom313fun:snprintf=custom314315# scanf-like316fun:sscanf=custom317fun:__isoc99_sscanf=custom318fun:__isoc23_sscanf=custom319320# TODO: custom321fun:asprintf=discard322fun:qsort=discard323324# fork325fun:fork=custom326327###############################################################################328# pthread329###############################################################################330fun:__pthread_register_cancel=discard331fun:__pthread_unregister_cancel=discard332fun:pthread_attr_destroy=discard333fun:pthread_attr_getaffinity_np=discard334fun:pthread_attr_getdetachstate=discard335fun:pthread_attr_getguardsize=discard336fun:pthread_attr_getinheritsched=discard337fun:pthread_attr_getschedparam=discard338fun:pthread_attr_getschedpolicy=discard339fun:pthread_attr_getscope=discard340fun:pthread_attr_getstack=discard341fun:pthread_attr_getstackaddr=disacrd342fun:pthread_attr_getstacksize=discard343fun:pthread_attr_init=discard344fun:pthread_attr_setaffinity_np=discard345fun:pthread_attr_setdetachstate=discard346fun:pthread_attr_setguardsize=discard347fun:pthread_attr_setinheritsched=discard348fun:pthread_attr_setschedparam=discard349fun:pthread_attr_setschedpolicy=discard350fun:pthread_attr_setscope=discard351fun:pthread_attr_setstack=discard352fun:pthread_attr_setstackaddr=discard353fun:pthread_attr_setstacksize=discard354fun:pthread_equal=discard355fun:pthread_getschedparam=discard356fun:pthread_getspecific=discard357fun:pthread_key_create=discard358fun:pthread_key_delete=discard359fun:pthread_mutex_destroy=discard360fun:pthread_mutex_init=discard361fun:pthread_mutex_lock=discard362fun:pthread_mutex_trylock=discard363fun:pthread_mutex_unlock=discard364fun:pthread_mutexattr_destroy=discard365fun:pthread_mutexattr_init=discard366fun:pthread_mutexattr_settype=discard367fun:pthread_rwlock_destroy=discard368fun:pthread_rwlock_init=discard369fun:pthread_rwlock_rdlock=discard370fun:pthread_rwlock_timedrdlock=discard371fun:pthread_rwlock_timedwrlock=discard372fun:pthread_rwlock_tryrdlock=discard373fun:pthread_rwlock_trywrlock=discard374fun:pthread_rwlock_wrlock=discard375fun:pthread_rwlock_unlock=discard376fun:pthread_setschedparam=discard377fun:pthread_setname_np=discard378fun:pthread_once=discard379fun:pthread_self=discard380fun:pthread_setspecific=discard381382# Functions that take a callback (wrap the callback manually).383fun:pthread_create=custom384385# Functions that produce output does not depend on the input (need to zero the386# shadow manually).387fun:pthread_join=custom388389###############################################################################390# libffi/libgo391###############################################################################392# Functions that are written in asm or are called from asm.393fun:ffi_call_unix64=uninstrumented394fun:ffi_call_unix64=discard395fun:ffi_closure_unix64_inner=uninstrumented396fun:ffi_closure_unix64_inner=discard397fun:ffi_closure_unix64=uninstrumented398fun:ffi_closure_unix64=discard399fun:__go_get_closure=uninstrumented400fun:__go_get_closure=discard401fun:__go_makefunc_can_recover=uninstrumented402fun:__go_makefunc_can_recover=discard403fun:__go_makefunc_returning=uninstrumented404fun:__go_makefunc_returning=discard405fun:reflect.MakeFuncStubGo=uninstrumented406fun:reflect.MakeFuncStubGo=discard407fun:reflect.makeFuncStub=uninstrumented408fun:reflect.makeFuncStub=discard409410411###############################################################################412# lib/Fuzzer413###############################################################################414# Replaces __sanitizer_cov_trace_cmp with __dfsw___sanitizer_cov_trace_cmp415fun:__sanitizer_cov_trace_cmp1=custom416fun:__sanitizer_cov_trace_cmp1=uninstrumented417fun:__sanitizer_cov_trace_cmp2=custom418fun:__sanitizer_cov_trace_cmp2=uninstrumented419fun:__sanitizer_cov_trace_cmp4=custom420fun:__sanitizer_cov_trace_cmp4=uninstrumented421fun:__sanitizer_cov_trace_cmp8=custom422fun:__sanitizer_cov_trace_cmp8=uninstrumented423fun:__sanitizer_cov_trace_const_cmp1=custom424fun:__sanitizer_cov_trace_const_cmp1=uninstrumented425fun:__sanitizer_cov_trace_const_cmp2=custom426fun:__sanitizer_cov_trace_const_cmp2=uninstrumented427fun:__sanitizer_cov_trace_const_cmp4=custom428fun:__sanitizer_cov_trace_const_cmp4=uninstrumented429fun:__sanitizer_cov_trace_const_cmp8=custom430fun:__sanitizer_cov_trace_const_cmp8=uninstrumented431# Similar for __sanitizer_cov_trace_switch432fun:__sanitizer_cov_trace_switch=custom433fun:__sanitizer_cov_trace_switch=uninstrumented434435# Ignores all other __sanitizer callbacks.436fun:__sanitizer_cov=uninstrumented437fun:__sanitizer_cov=discard438fun:__sanitizer_cov_module_init=uninstrumented439fun:__sanitizer_cov_module_init=discard440fun:__sanitizer_cov_with_check=uninstrumented441fun:__sanitizer_cov_with_check=discard442fun:__sanitizer_set_death_callback=uninstrumented443fun:__sanitizer_set_death_callback=discard444fun:__sanitizer_update_counter_bitset_and_clear_counters=uninstrumented445fun:__sanitizer_update_counter_bitset_and_clear_counters=discard446fun:__sanitizer_cov_trace_pc*=uninstrumented447fun:__sanitizer_cov_trace_pc*=discard448fun:__sanitizer_cov_pcs_init=uninstrumented449fun:__sanitizer_cov_pcs_init=discard450451fun:__sanitizer_get_current_allocated_bytes=uninstrumented452fun:__sanitizer_get_current_allocated_bytes=discard453fun:__sanitizer_get_heap_size=uninstrumented454fun:__sanitizer_get_heap_size=discard455fun:__sanitizer_get_free_bytes=uninstrumented456fun:__sanitizer_get_free_bytes=discard457fun:__sanitizer_get_unmapped_bytes=uninstrumented458fun:__sanitizer_get_unmapped_bytes=discard459fun:__sanitizer_get_estimated_allocated_size=uninstrumented460fun:__sanitizer_get_estimated_allocated_size=discard461fun:__sanitizer_get_ownership=uninstrumented462fun:__sanitizer_get_ownership=discard463fun:__sanitizer_get_allocated_begin=uninstrumented464fun:__sanitizer_get_allocated_begin=discard465fun:__sanitizer_get_allocated_size=uninstrumented466fun:__sanitizer_get_allocated_size=discard467fun:__sanitizer_get_allocated_size_fast=uninstrumented468fun:__sanitizer_get_allocated_size_fast=discard469fun:__sanitizer_print_stack_trace=uninstrumented470fun:__sanitizer_print_stack_trace=discard471472fun:TcmallocSlab_Internal_PushBatch_FixedShift=uninstrumented473fun:TcmallocSlab_Internal_PushBatch_FixedShift=discard474fun:TcmallocSlab_Internal_PushBatch_FixedShift_VCPU=uninstrumented475fun:TcmallocSlab_Internal_PushBatch_FixedShift_VCPU=discard476fun:TcmallocSlab_Internal_PerCpuCmpxchg64=uninstrumented477fun:TcmallocSlab_Internal_PerCpuCmpxchg64=discard478fun:TcmallocSlab_Internal_PerCpuCmpxchg64_VCPU=uninstrumented479fun:TcmallocSlab_Internal_PerCpuCmpxchg64_VCPU=discard480fun:TcmallocSlab_Internal_PopBatch_FixedShift=uninstrumented481fun:TcmallocSlab_Internal_PopBatch_FixedShift=discard482fun:TcmallocSlab_Internal_PopBatch_FixedShift_VCPU=uninstrumented483fun:TcmallocSlab_Internal_PopBatch_FixedShift_VCPU=discard484485# Ignores the dfsan wrappers.486fun:__dfsw_*=uninstrumented487fun:__dfsw_*=discard488fun:__dfso_*=uninstrumented489fun:__dfso_*=discard490491492