diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2015-04-02 00:23:30 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2015-04-02 00:23:30 +0000 |
commit | 1a7488afaa2419eca0728b9e7adea48b03539cc1 (patch) | |
tree | 25b11642e512ec6692a2eec1775bd8b8c37c0de1 /clang/include | |
parent | 943206da8e1227822bc61ae86d2ce373c3d736fc (diff) | |
download | bcm5719-llvm-1a7488afaa2419eca0728b9e7adea48b03539cc1.tar.gz bcm5719-llvm-1a7488afaa2419eca0728b9e7adea48b03539cc1.zip |
Implement CFI type checks for non-virtual calls.
This uses the same class metadata currently used for virtual call and
cast checks.
The new flag is -fsanitize=cfi-nvcall. For consistency, the -fsanitize=cfi-vptr
flag has been renamed -fsanitize=cfi-vcall.
Differential Revision: http://reviews.llvm.org/D8756
llvm-svn: 233874
Diffstat (limited to 'clang/include')
-rw-r--r-- | clang/include/clang/Basic/Sanitizers.def | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/include/clang/Basic/Sanitizers.def b/clang/include/clang/Basic/Sanitizers.def index fa58a34a034..65ababd5ac8 100644 --- a/clang/include/clang/Basic/Sanitizers.def +++ b/clang/include/clang/Basic/Sanitizers.def @@ -82,8 +82,10 @@ SANITIZER("dataflow", DataFlow) SANITIZER("cfi-cast-strict", CFICastStrict) SANITIZER("cfi-derived-cast", CFIDerivedCast) SANITIZER("cfi-unrelated-cast", CFIUnrelatedCast) -SANITIZER("cfi-vptr", CFIVptr) -SANITIZER_GROUP("cfi", CFI, CFIDerivedCast | CFIUnrelatedCast | CFIVptr) +SANITIZER("cfi-nvcall", CFINVCall) +SANITIZER("cfi-vcall", CFIVCall) +SANITIZER_GROUP("cfi", CFI, + CFIDerivedCast | CFIUnrelatedCast | CFINVCall | CFIVCall) // -fsanitize=undefined-trap includes sanitizers from -fsanitize=undefined // that can be used without runtime support, generally by providing extra |