Index: lib/dfsan/done_abilist.txt =================================================================== --- lib/dfsan/done_abilist.txt +++ lib/dfsan/done_abilist.txt @@ -258,3 +258,20 @@ fun:reflect.MakeFuncStubGo=discard fun:reflect.makeFuncStub=uninstrumented fun:reflect.makeFuncStub=discard + + +############################################################################### +# lib/Fuzzer +############################################################################### +# Replaces __sanitizer_cov_trace_cmp with __dfsw___sanitizer_cov_trace_cmp +fun:__sanitizer_cov_trace_cmp=custom +fun:__sanitizer_cov_trace_cmp=uninstrumented + +# Ignores coverage callbacks. +fun:__sanitizer_cov=uninstrumented +fun:__sanitizer_cov=discard +fun:__sanitizer_cov_module_init=uninstrumented +fun:__sanitizer_cov_module_init=discard + +# Don't add extra parameters to the Fuzzer callback. +fun:LLVMFuzzerTestOneInput=uninstrumented Index: lib/dfsan/scripts/check_custom_wrappers.sh =================================================================== --- lib/dfsan/scripts/check_custom_wrappers.sh +++ lib/dfsan/scripts/check_custom_wrappers.sh @@ -17,9 +17,10 @@ rm -f ${DIFF_B} 2> /dev/null } +# Ignore __sanitizer_cov_trace* because they are implemented elsewhere. trap on_exit EXIT grep -E "^fun:.*=custom" ${DFSAN_ABI_LIST} | grep -v "dfsan_get_label" \ - | sed "s/^fun:\(.*\)=custom.*/\1/" | sort > $DIFF_A + | sed "s/^fun:\(.*\)=custom.*/\1/" | grep -v __sanitizer_cov_trace | sort > $DIFF_A grep -E "__dfsw.*\(" ${DFSAN_CUSTOM_WRAPPERS} \ | sed "s/.*__dfsw_\(.*\)(.*/\1/" | sort > $DIFF_B diff -u $DIFF_A $DIFF_B > ${DIFFOUT}