1 fun:main=uninstrumented
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
30 ###############################################################################
32 ###############################################################################
37 # Functions that return a value that depends on the input, but the output might
38 # not be necessarily data-dependent on the input.
39 fun:isalpha=functional
40 fun:isdigit=functional
41 fun:isprint=functional
42 fun:isxdigit=functional
43 fun:isalnum=functional
44 fun:ispunct=functional
45 fun:isspace=functional
46 fun:tolower=functional
47 fun:toupper=functional
49 # Functions that return a value that is data-dependent on the input.
66 # Functions that produce an output that does not depend on the input (shadow is
67 # zeroed automatically).
68 fun:__assert_fail=discard
69 fun:__ctype_b_loc=discard
70 fun:__cxa_atexit=discard
71 fun:__errno_location=discard
72 fun:__newlocale=discard
74 fun:__sigsetjmp=discard
75 fun:__uselocale=discard
76 fun:__wctype_l=discard
104 fun:getpagesize=discard
114 fun:posix_fadvise=discard
115 fun:posix_memalign=discard
118 fun:pthread_sigmask=discard
125 fun:sched_getcpu=discard
126 fun:sched_get_priority_max=discard
127 fun:sched_setaffinity=discard
128 fun:sched_yield=discard
129 fun:sem_destroy=discard
136 fun:setsockopt=discard
146 fun:uselocale=discard
148 # Functions that produce output does not depend on the input (need to zero the
151 fun:clock_gettime=custom
156 fun:get_current_dir_name=custom
157 fun:gethostname=custom
163 fun:socketpair=custom
167 # Functions that produce an output that depend on the input (propagate the
171 fun:localtime_r=custom
183 # Functions that produce an output that is computed from the input, but is not
184 # necessarily data dependent.
187 fun:strcasecmp=custom
191 fun:strncasecmp=custom
196 # Functions which take action based on global state, such as running a callback
197 # set by a sepperate function.
200 # Functions that take a callback (wrap the callback manually).
201 fun:dl_iterate_phdr=custom
203 fun:getpwuid_r=custom
205 fun:sched_getaffinity=custom
207 fun:sigemptyset=custom
209 fun:gettimeofday=custom
219 ###############################################################################
221 ###############################################################################
222 fun:pthread_equal=discard
223 fun:pthread_getspecific=discard
224 fun:pthread_key_create=discard
225 fun:pthread_key_delete=discard
226 fun:pthread_mutex_destroy=discard
227 fun:pthread_mutex_init=discard
228 fun:pthread_mutex_lock=discard
229 fun:pthread_mutex_trylock=discard
230 fun:pthread_mutex_unlock=discard
231 fun:pthread_mutexattr_destroy=discard
232 fun:pthread_mutexattr_init=discard
233 fun:pthread_mutexattr_settype=discard
234 fun:pthread_once=discard
235 fun:pthread_self=discard
236 fun:pthread_setspecific=discard
238 # Functions that take a callback (wrap the callback manually).
239 fun:pthread_create=custom
241 ###############################################################################
243 ###############################################################################
244 # Functions that are written in asm or are called from asm.
245 fun:ffi_call_unix64=uninstrumented
246 fun:ffi_call_unix64=discard
247 fun:ffi_closure_unix64_inner=uninstrumented
248 fun:ffi_closure_unix64_inner=discard
249 fun:ffi_closure_unix64=uninstrumented
250 fun:ffi_closure_unix64=discard
251 fun:__go_get_closure=uninstrumented
252 fun:__go_get_closure=discard
253 fun:__go_makefunc_can_recover=uninstrumented
254 fun:__go_makefunc_can_recover=discard
255 fun:__go_makefunc_returning=uninstrumented
256 fun:__go_makefunc_returning=discard
257 fun:reflect.MakeFuncStubGo=uninstrumented
258 fun:reflect.MakeFuncStubGo=discard
259 fun:reflect.makeFuncStub=uninstrumented
260 fun:reflect.makeFuncStub=discard
263 ###############################################################################
265 ###############################################################################
266 # Replaces __sanitizer_cov_trace_cmp with __dfsw___sanitizer_cov_trace_cmp
267 fun:__sanitizer_cov_trace_cmp=custom
268 fun:__sanitizer_cov_trace_cmp=uninstrumented
269 # Similar for __sanitizer_cov_trace_switch
270 fun:__sanitizer_cov_trace_switch=custom
271 fun:__sanitizer_cov_trace_switch=uninstrumented
273 # Ignores all other __sanitizer callbacks.
274 fun:__sanitizer_cov=uninstrumented
275 fun:__sanitizer_cov=discard
276 fun:__sanitizer_cov_module_init=uninstrumented
277 fun:__sanitizer_cov_module_init=discard
278 fun:__sanitizer_cov_with_check=uninstrumented
279 fun:__sanitizer_cov_with_check=discard
280 fun:__sanitizer_cov_indir_call16=uninstrumented
281 fun:__sanitizer_cov_indir_call16=discard
282 fun:__sanitizer_cov_indir_call16=uninstrumented
283 fun:__sanitizer_cov_indir_call16=discard
284 fun:__sanitizer_reset_coverage=uninstrumented
285 fun:__sanitizer_reset_coverage=discard
286 fun:__sanitizer_set_death_callback=uninstrumented
287 fun:__sanitizer_set_death_callback=discard
288 fun:__sanitizer_get_coverage_guards=uninstrumented
289 fun:__sanitizer_get_coverage_guards=discard
290 fun:__sanitizer_get_number_of_counters=uninstrumented
291 fun:__sanitizer_get_number_of_counters=discard
292 fun:__sanitizer_update_counter_bitset_and_clear_counters=uninstrumented
293 fun:__sanitizer_update_counter_bitset_and_clear_counters=discard
294 fun:__sanitizer_get_total_unique_coverage=uninstrumented
295 fun:__sanitizer_get_total_unique_coverage=discard
296 fun:__sanitizer_get_total_unique_coverage=uninstrumented
297 fun:__sanitizer_get_total_unique_coverage=discard
298 fun:__sanitizer_update_counter_bitset_and_clear_counters=uninstrumented
299 fun:__sanitizer_update_counter_bitset_and_clear_counters=discard
301 # Ignores the dfsan wrappers.
302 fun:__dfsw_*=uninstrumented
305 # Don't add extra parameters to the Fuzzer callback.
306 fun:LLVMFuzzerTestOneInput=uninstrumented