Go to file
Vlad Tsyrklevich 998b220e97 Add section headers to SpecialCaseLists
Summary:
Sanitizer blacklist entries currently apply to all sanitizers--there
is no way to specify that an entry should only apply to a specific
sanitizer. This is important for Control Flow Integrity since there are
several different CFI modes that can be enabled at once. For maximum
security, CFI blacklist entries should be scoped to only the specific
CFI mode(s) that entry applies to.

Adding section headers to SpecialCaseLists allows users to specify more
information about list entries, like sanitizer names or other metadata,
like so:

  [section1]
  fun:*fun1*
  [section2|section3]
  fun:*fun23*

The section headers are regular expressions. For backwards compatbility,
blacklist entries entered before a section header are put into the '[*]'
section so that blacklists without sections retain the same behavior.

SpecialCaseList has been modified to also accept a section name when
matching against the blacklist. It has also been modified so the
follow-up change to clang can define a derived class that allows
matching sections by SectionMask instead of by string.

Reviewers: pcc, kcc, eugenis, vsk

Reviewed By: eugenis, vsk

Subscribers: vitalybuka, llvm-commits

Differential Revision: https://reviews.llvm.org/D37924

llvm-svn: 314170
2017-09-25 22:11:11 +00:00
clang [OpenMP] Enable the existing nocudalib flag for OpenMP offloading toolchain. 2017-09-25 21:56:32 +00:00
clang-tools-extra [clangd] Fix missing "message" key when responding with unsupported method 2017-09-25 17:16:47 +00:00
compiler-rt Add missing include to sanitizer procmaps 2017-09-25 21:51:04 +00:00
debuginfo-tests Revert r313600 due to bot failures on Green Dragon. 2017-09-19 14:51:37 +00:00
libclc Rework atomic ops to use clang builtins rather than llvm asm 2017-09-25 16:07:34 +00:00
libcxx Revert 313789 because gcc doesn't like it 2017-09-20 19:38:43 +00:00
libcxxabi Fix ASAN build with older compiler-rt versions. 2017-09-14 22:37:34 +00:00
libunwind [libunwind] Partially revert r297174 to fix build on at least FreeBSD. 2017-09-21 21:28:48 +00:00
lld Use UINT64_MAX instead of implicitly-type-converted -1. 2017-09-25 17:40:21 +00:00
lldb Remove the details of the libstdc++ implementation that were 2017-09-25 21:23:37 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm Add section headers to SpecialCaseLists 2017-09-25 22:11:11 +00:00
openmp Read blocktime value set by kmp_set_blocktime() before reading from KMP_BLOCKTIME 2017-09-05 15:45:48 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly [ScopInfo] Allow invariant loads in branch conditions 2017-09-25 20:27:15 +00:00