1 # This ignore list is the subset of ignorelist.txt that's needed in
2 # is_ubsan_security builds. is_ubsan_security builds also use
3 # vptr_ignorelist.txt. This file does not duplicate the contents of that file.
5 #############################################################################
6 # UBSan security ignorelist.
8 #############################################################################
9 # YASM does some funny things that UBsan doesn't like.
10 # https://crbug.com/489901
11 src:*/third_party/yasm/*
13 #############################################################################
14 # V8 gives too many false positives. Ignore them for now.
17 #############################################################################
18 # Ignore system libraries.
21 #############################################################################
22 # V8 UBsan supressions, commented out for now since we are ignorning v8
24 # fun:*v8*internal*FastD2I*
25 # fun:*v8*internal*ComputeIntegerHash*
26 # fun:*v8*internal*ComputeLongHash*
27 # fun:*v8*internal*ComputePointerHash*
28 # src:*/v8/src/base/bits.cc
29 # src:*/v8/src/base/functional.cc
30 # Undefined behaviour (integer overflow) is expected but ignored in this
32 # fun:*JsonParser*ParseJsonNumber*
34 # Runtime numeric functions.
35 # src:*/v8/src/runtime/runtime-numbers.cc
37 # Shifts of negative numbers
38 # fun:*v8*internal*HPositionInfo*TagPosition*
39 # fun:*v8*internal*Range*Shl*
40 # fun:*v8*internal*RelocInfoWriter*WriteTaggedData*
42 #############################################################################
43 # Undefined arithmetic that can be safely ignored.
44 src:*/ppapi/shared_impl/id_assignment.h
46 #############################################################################
47 # ICU supressions. Mostly hash functions where integer overflow is OK.
49 fun:*LocaleCacheKey*hashCode*
50 fun:*google*protobuf*hash*
53 #############################################################################
55 # Array at the end of struct pattern:
56 # Maybe UBSan itself can be improved here?
60 # char foo[2]; // not actually 2
62 src:*/net/disk_cache/blockfile/backend_impl.cc
63 src:*/net/disk_cache/blockfile/entry_impl.cc
64 src:*/third_party/icu/source/common/rbbi.cpp
65 src:*/third_party/icu/source/common/rbbitblb.cpp
66 src:*/third_party/icu/source/common/ucmndata.c
68 #############################################################################
69 # Delete in destructor on a this where this == nullptr
72 #############################################################################
73 # Harmless float division by zero.
74 fun:*RendererFrameManager*CullUnlockedFrames*
76 #############################################################################
77 # Generic cleanup function pointer of wrong type.
78 fun:sqlite3ParseObjectReset
80 #############################################################################
81 # Function pointer of wrong type.
82 src:*/third_party/angle/src/libANGLE/renderer/vulkan/vk_wrapper.h
83 src:*/third_party/vulkan_memory_allocator/include/vk_mem_alloc.h
84 fun:vmaFindMemoryTypeIndexForBufferInfo
85 fun:*rx*vk*GarbageObject*destroy*
87 #############################################################################
88 # -fsanitize=vptr suppressions should go in vptr_ignorelist.txt, not here.
89 #############################################################################