UBSan: Add blacklist files for WebRTC standalone.

For more info, see
http://dev.chromium.org/developers/testing/undefinedbehaviorsanitizer

BUG=webrtc:5124
TESTED=Passing compilation using:
GYP_DEFINES="ubsan=1" webrtc/build/gyp_webrtc && ninja -C out/Release
GYP_DEFINES="ubsan_vptr=1" webrtc/build/gyp_webrtc && ninja -C out/Release
R=pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1418213005 .

Cr-Commit-Position: refs/heads/master@{#10429}
This commit is contained in:
Henrik Kjellander 2015-10-27 15:31:45 +01:00
parent 9397d84659
commit f1dcd46a9b
3 changed files with 39 additions and 0 deletions

2
tools/ubsan/OWNERS Normal file
View File

@ -0,0 +1,2 @@
pbos@webrtc.org
kjellander@webrtc.org

15
tools/ubsan/blacklist.txt Normal file
View File

@ -0,0 +1,15 @@
#############################################################################
# UBSan blacklist.
# Please think twice before you add or remove these rules.
# This is a stripped down copy of Chromium's blacklist.txt, to enable
# adding WebRTC-specific blacklist entries.
#############################################################################
# YASM does some funny things that UBsan doesn't like.
# https://crbug.com/489901
src:*/third_party/yasm/*
#############################################################################
# Ignore system libraries.
src:*/usr/*

View File

@ -0,0 +1,22 @@
#############################################################################
# UBSan vptr blacklist.
# Function and type based blacklisting use a mangled name, and it is especially
# tricky to represent C++ types. For now, any possible changes by name manglings
# are simply represented as wildcard expressions of regexp, and thus it might be
# over-blacklisted.
#
# Please think twice before you add or remove these rules.
#
# This is a stripped down copy of Chromium's vptr_blacklist.txt, to enable
# adding WebRTC-specific blacklist entries.
#############################################################################
# Using raw pointer values.
#
# A raw pointer value (16) is used to infer the field offset by
# GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET.
src:*/third_party/protobuf/src/google/protobuf/compiler/plugin.pb.cc
src:*/third_party/protobuf/src/google/protobuf/compiler/cpp/cpp_message.cc
src:*/third_party/protobuf/src/google/protobuf/descriptor.pb.cc