1# This black list is a merge of blacklist.txt and vptr_blacklist.txt.
2
3#############################################################################
4# UBSan blacklist.
5
6#############################################################################
7# YASM does some funny things that UBsan doesn't like.
8# https://crbug.com/489901
9src:*/third_party/yasm/*
10
11#############################################################################
12# V8 gives too many false positives. Ignore them for now.
13src:*/v8/*
14
15#############################################################################
16# Ignore system libraries.
17src:*/usr/*
18
19#############################################################################
20# ICU supressions. Mostly hash functions where integer overflow is OK.
21fun:*hashEntry*
22fun:*LocaleCacheKey*hashCode*
23fun:*google*protobuf*hash*
24fun:*(hash|Hash)*
25
26#############################################################################
27# Bounds blacklist.
28# Array at the end of struct pattern:
29# Maybe UBSan itself can be improved here?
30# e.g.
31# struct blah {
32#   int a;
33#   char foo[2]; // not actually 2
34# }
35src:*/third_party/icu/source/common/rbbi.cpp
36src:*/third_party/icu/source/common/rbbitblb.cpp
37src:*/third_party/icu/source/common/ucmndata.c
38
39#############################################################################
40# UBSan vptr blacklist.
41# Function and type based blacklisting use a mangled name, and it is especially
42# tricky to represent C++ types. For now, any possible changes by name manglings
43# are simply represented as wildcard expressions of regexp, and thus it might be
44# over-blacklisted.
45
46#############################################################################
47# UBSan seems to be emit false positives when virtual base classes are
48# involved, see e.g. crbug.com/448102.
49
50type:*v8*internal*OFStream*
51
52#############################################################################
53# UBsan goes into an infinite recursion when __dynamic_cast instrumented with
54# "vptr". See crbug.com/609786.
55
56src:*/third_party/libc\+\+abi/trunk/src/private_typeinfo.cpp
57