]> granicus.if.org Git - clang/commit
[XRay][llvm+clang] Consolidate attribute list files
authorDean Michael Berris <dberris@google.com>
Mon, 9 Apr 2018 04:02:09 +0000 (04:02 +0000)
committerDean Michael Berris <dberris@google.com>
Mon, 9 Apr 2018 04:02:09 +0000 (04:02 +0000)
commit46f5ec2ba706ffebdab8b77be3fe96070357766b
tree7c9befbeac9e0eeb31154cf91debe2cf6d5cc06a
parentf1010cd2b085546ee8d1902e432bcb3238117bcd
[XRay][llvm+clang] Consolidate attribute list files

Summary:
This change consolidates the always/never lists that may be provided to
clang to externally control which functions should be XRay instrumented
by imbuing attributes. The files follow the same format as defined in
https://clang.llvm.org/docs/SanitizerSpecialCaseList.html for the
sanitizer blacklist.

We also deprecate the existing `-fxray-instrument-always=` and
`-fxray-instrument-never=` flags, in favour of `-fxray-attr-list=`.

This fixes http://llvm.org/PR34721.

Reviewers: echristo, vlad.tsyrklevich, eugenis

Reviewed By: vlad.tsyrklevich

Subscribers: llvm-commits, cfe-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@329543 91177308-0d34-0410-b5e6-96231b3b80d8
12 files changed:
include/clang/Basic/LangOptions.h
include/clang/Basic/XRayLists.h
include/clang/Driver/Options.td
include/clang/Driver/XRayArgs.h
lib/AST/ASTContext.cpp
lib/Basic/XRayLists.cpp
lib/Driver/XRayArgs.cpp
lib/Frontend/CompilerInvocation.cpp
test/CodeGen/xray-always-instrument.cpp
test/CodeGen/xray-attr-list.cpp [new file with mode: 0644]
test/CodeGen/xray-imbue-arg1.cpp
test/CodeGen/xray-never-instrument.cpp [new file with mode: 0644]