]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm-project/compiler-rt/lib/dfsan/done_abilist.txt
MFV r362143:
[FreeBSD/FreeBSD.git] / contrib / llvm-project / compiler-rt / lib / dfsan / done_abilist.txt
1 fun:main=uninstrumented
2 fun:main=discard
3
4 ###############################################################################
5 # DFSan interface functions
6 ###############################################################################
7 fun:dfsan_union=uninstrumented
8 fun:dfsan_union=discard
9 fun:dfsan_create_label=uninstrumented
10 fun:dfsan_create_label=discard
11 fun:dfsan_set_label=uninstrumented
12 fun:dfsan_set_label=discard
13 fun:dfsan_add_label=uninstrumented
14 fun:dfsan_add_label=discard
15 fun:dfsan_get_label=uninstrumented
16 fun:dfsan_get_label=custom
17 fun:dfsan_read_label=uninstrumented
18 fun:dfsan_read_label=discard
19 fun:dfsan_get_label_count=uninstrumented
20 fun:dfsan_get_label_count=discard
21 fun:dfsan_get_label_info=uninstrumented
22 fun:dfsan_get_label_info=discard
23 fun:dfsan_has_label=uninstrumented
24 fun:dfsan_has_label=discard
25 fun:dfsan_has_label_with_desc=uninstrumented
26 fun:dfsan_has_label_with_desc=discard
27 fun:dfsan_set_write_callback=uninstrumented
28 fun:dfsan_set_write_callback=custom
29 fun:dfsan_flush=uninstrumented
30 fun:dfsan_flush=discard
31
32 ###############################################################################
33 # glibc
34 ###############################################################################
35 fun:malloc=discard
36 fun:realloc=discard
37 fun:free=discard
38
39 # Functions that return a value that depends on the input, but the output might
40 # not be necessarily data-dependent on the input.
41 fun:isalpha=functional
42 fun:isdigit=functional
43 fun:isprint=functional
44 fun:isxdigit=functional
45 fun:isalnum=functional
46 fun:ispunct=functional
47 fun:isspace=functional
48 fun:tolower=functional
49 fun:toupper=functional
50
51 # Functions that return a value that is data-dependent on the input.
52 fun:btowc=functional
53 fun:exp=functional
54 fun:exp2=functional
55 fun:fabs=functional
56 fun:finite=functional
57 fun:floor=functional
58 fun:fmod=functional
59 fun:isinf=functional
60 fun:isnan=functional
61 fun:log=functional
62 fun:modf=functional
63 fun:pow=functional
64 fun:round=functional
65 fun:sqrt=functional
66 fun:wctob=functional
67
68 # Functions that produce an output that does not depend on the input (shadow is
69 # zeroed automatically).
70 fun:__assert_fail=discard
71 fun:__ctype_b_loc=discard
72 fun:__cxa_atexit=discard
73 fun:__errno_location=discard
74 fun:__newlocale=discard
75 fun:__sbrk=discard
76 fun:__sigsetjmp=discard
77 fun:__uselocale=discard
78 fun:__wctype_l=discard
79 fun:access=discard
80 fun:alarm=discard
81 fun:atexit=discard
82 fun:bind=discard
83 fun:chdir=discard
84 fun:close=discard
85 fun:closedir=discard
86 fun:connect=discard
87 fun:dladdr=discard
88 fun:dlclose=discard
89 fun:fclose=discard
90 fun:feof=discard
91 fun:ferror=discard
92 fun:fflush=discard
93 fun:fileno=discard
94 fun:fopen=discard
95 fun:fprintf=discard
96 fun:fputc=discard
97 fun:fputc=discard
98 fun:fputs=discard
99 fun:fputs=discard
100 fun:fseek=discard
101 fun:ftell=discard
102 fun:fwrite=discard
103 fun:getenv=discard
104 fun:getuid=discard
105 fun:geteuid=discard
106 fun:getpagesize=discard
107 fun:getpid=discard
108 fun:kill=discard
109 fun:listen=discard
110 fun:lseek=discard
111 fun:mkdir=discard
112 fun:mmap=discard
113 fun:munmap=discard
114 fun:open=discard
115 fun:pipe=discard
116 fun:posix_fadvise=discard
117 fun:posix_memalign=discard
118 fun:prctl=discard
119 fun:printf=discard
120 fun:pthread_sigmask=discard
121 fun:putc=discard
122 fun:putchar=discard
123 fun:puts=discard
124 fun:rand=discard
125 fun:random=discard
126 fun:remove=discard
127 fun:sched_getcpu=discard
128 fun:sched_get_priority_max=discard
129 fun:sched_setaffinity=discard
130 fun:sched_yield=discard
131 fun:sem_destroy=discard
132 fun:sem_init=discard
133 fun:sem_post=discard
134 fun:sem_wait=discard
135 fun:send=discard
136 fun:sendmsg=discard
137 fun:sendto=discard
138 fun:setsockopt=discard
139 fun:shutdown=discard
140 fun:sleep=discard
141 fun:socket=discard
142 fun:strerror=discard
143 fun:strspn=discard
144 fun:strcspn=discard
145 fun:symlink=discard
146 fun:syscall=discard
147 fun:unlink=discard
148 fun:uselocale=discard
149
150 # Functions that produce output does not depend on the input (need to zero the
151 # shadow manually).
152 fun:calloc=custom
153 fun:clock_gettime=custom
154 fun:dlopen=custom
155 fun:fgets=custom
156 fun:fstat=custom
157 fun:getcwd=custom
158 fun:get_current_dir_name=custom
159 fun:gethostname=custom
160 fun:getrlimit=custom
161 fun:getrusage=custom
162 fun:nanosleep=custom
163 fun:pread=custom
164 fun:read=custom
165 fun:socketpair=custom
166 fun:stat=custom
167 fun:time=custom
168
169 # Functions that produce an output that depend on the input (propagate the
170 # shadow manually).
171 fun:ctime_r=custom
172 fun:inet_pton=custom
173 fun:localtime_r=custom
174 fun:memcpy=custom
175 fun:memset=custom
176 fun:strcpy=custom
177 fun:strdup=custom
178 fun:strncpy=custom
179 fun:strtod=custom
180 fun:strtol=custom
181 fun:strtoll=custom
182 fun:strtoul=custom
183 fun:strtoull=custom
184
185 # Functions that produce an output that is computed from the input, but is not
186 # necessarily data dependent.
187 fun:memchr=custom
188 fun:memcmp=custom
189 fun:strcasecmp=custom
190 fun:strchr=custom
191 fun:strcmp=custom
192 fun:strlen=custom
193 fun:strncasecmp=custom
194 fun:strncmp=custom
195 fun:strrchr=custom
196 fun:strstr=custom
197
198 # Functions which take action based on global state, such as running a callback
199 # set by a sepperate function.
200 fun:write=custom
201
202 # Functions that take a callback (wrap the callback manually).
203 fun:dl_iterate_phdr=custom
204
205 fun:getpwuid_r=custom
206 fun:poll=custom
207 fun:sched_getaffinity=custom
208 fun:select=custom
209 fun:sigemptyset=custom
210 fun:sigaction=custom
211 fun:gettimeofday=custom
212
213 # sprintf-like
214 fun:sprintf=custom
215 fun:snprintf=custom
216
217 # TODO: custom
218 fun:asprintf=discard
219 fun:qsort=discard
220
221 ###############################################################################
222 # pthread
223 ###############################################################################
224 fun:pthread_equal=discard
225 fun:pthread_getspecific=discard
226 fun:pthread_key_create=discard
227 fun:pthread_key_delete=discard
228 fun:pthread_mutex_destroy=discard
229 fun:pthread_mutex_init=discard
230 fun:pthread_mutex_lock=discard
231 fun:pthread_mutex_trylock=discard
232 fun:pthread_mutex_unlock=discard
233 fun:pthread_mutexattr_destroy=discard
234 fun:pthread_mutexattr_init=discard
235 fun:pthread_mutexattr_settype=discard
236 fun:pthread_once=discard
237 fun:pthread_self=discard
238 fun:pthread_setspecific=discard
239
240 # Functions that take a callback (wrap the callback manually).
241 fun:pthread_create=custom
242
243 ###############################################################################
244 # libffi/libgo
245 ###############################################################################
246 # Functions that are written in asm or are called from asm.
247 fun:ffi_call_unix64=uninstrumented
248 fun:ffi_call_unix64=discard
249 fun:ffi_closure_unix64_inner=uninstrumented
250 fun:ffi_closure_unix64_inner=discard
251 fun:ffi_closure_unix64=uninstrumented
252 fun:ffi_closure_unix64=discard
253 fun:__go_get_closure=uninstrumented
254 fun:__go_get_closure=discard
255 fun:__go_makefunc_can_recover=uninstrumented
256 fun:__go_makefunc_can_recover=discard
257 fun:__go_makefunc_returning=uninstrumented
258 fun:__go_makefunc_returning=discard
259 fun:reflect.MakeFuncStubGo=uninstrumented
260 fun:reflect.MakeFuncStubGo=discard
261 fun:reflect.makeFuncStub=uninstrumented
262 fun:reflect.makeFuncStub=discard
263
264
265 ###############################################################################
266 # lib/Fuzzer
267 ###############################################################################
268 # Replaces __sanitizer_cov_trace_cmp with __dfsw___sanitizer_cov_trace_cmp
269 fun:__sanitizer_cov_trace_cmp1=custom
270 fun:__sanitizer_cov_trace_cmp1=uninstrumented
271 fun:__sanitizer_cov_trace_cmp2=custom
272 fun:__sanitizer_cov_trace_cmp2=uninstrumented
273 fun:__sanitizer_cov_trace_cmp4=custom
274 fun:__sanitizer_cov_trace_cmp4=uninstrumented
275 fun:__sanitizer_cov_trace_cmp8=custom
276 fun:__sanitizer_cov_trace_cmp8=uninstrumented
277 fun:__sanitizer_cov_trace_const_cmp1=custom
278 fun:__sanitizer_cov_trace_const_cmp1=uninstrumented
279 fun:__sanitizer_cov_trace_const_cmp2=custom
280 fun:__sanitizer_cov_trace_const_cmp2=uninstrumented
281 fun:__sanitizer_cov_trace_const_cmp4=custom
282 fun:__sanitizer_cov_trace_const_cmp4=uninstrumented
283 fun:__sanitizer_cov_trace_const_cmp8=custom
284 fun:__sanitizer_cov_trace_const_cmp8=uninstrumented
285 # Similar for __sanitizer_cov_trace_switch
286 fun:__sanitizer_cov_trace_switch=custom
287 fun:__sanitizer_cov_trace_switch=uninstrumented
288
289 # Ignores all other __sanitizer callbacks.
290 fun:__sanitizer_cov=uninstrumented
291 fun:__sanitizer_cov=discard
292 fun:__sanitizer_cov_module_init=uninstrumented
293 fun:__sanitizer_cov_module_init=discard
294 fun:__sanitizer_cov_with_check=uninstrumented
295 fun:__sanitizer_cov_with_check=discard
296 fun:__sanitizer_set_death_callback=uninstrumented
297 fun:__sanitizer_set_death_callback=discard
298 fun:__sanitizer_update_counter_bitset_and_clear_counters=uninstrumented
299 fun:__sanitizer_update_counter_bitset_and_clear_counters=discard
300 fun:__sanitizer_cov_trace_pc*=uninstrumented
301 fun:__sanitizer_cov_trace_pc*=discard
302 fun:__sanitizer_cov_pcs_init=uninstrumented
303 fun:__sanitizer_cov_pcs_init=discard
304
305 # Ignores the dfsan wrappers.
306 fun:__dfsw_*=uninstrumented
307 fun:__dfsw_*=discard