]> granicus.if.org Git - clang/commit
CFI: Introduce -fsanitize=cfi-icall flag.
authorPeter Collingbourne <peter@pcc.me.uk>
Thu, 10 Sep 2015 02:17:40 +0000 (02:17 +0000)
committerPeter Collingbourne <peter@pcc.me.uk>
Thu, 10 Sep 2015 02:17:40 +0000 (02:17 +0000)
commitf29b6351df57100e68c64bc335e9344620a17840
treea3f78b11445005229d6a4922405e53758b38d341
parent5bffe679bd98244fd694fcc357193fe96d3723ab
CFI: Introduce -fsanitize=cfi-icall flag.

This flag causes the compiler to emit bit set entries for functions as well
as runtime bitset checks at indirect call sites. Depends on the new function
bitset mechanism.

Differential Revision: http://reviews.llvm.org/D11857

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@247238 91177308-0d34-0410-b5e6-96231b3b80d8
19 files changed:
docs/ControlFlowIntegrity.rst
docs/ControlFlowIntegrityDesign.rst
include/clang/AST/Mangle.h
include/clang/Basic/Sanitizers.def
lib/AST/ItaniumMangle.cpp
lib/AST/MicrosoftMangle.cpp
lib/CodeGen/CGClass.cpp
lib/CodeGen/CGExpr.cpp
lib/CodeGen/CGVTables.cpp
lib/CodeGen/CodeGenModule.cpp
lib/Driver/ToolChain.cpp
lib/Driver/ToolChains.cpp
test/CodeGen/cfi-icall.c [new file with mode: 0644]
test/CodeGenCXX/cfi-cast.cpp
test/CodeGenCXX/cfi-icall.cpp [new file with mode: 0644]
test/CodeGenCXX/cfi-ms-rtti.cpp
test/CodeGenCXX/cfi-nvcall.cpp
test/CodeGenCXX/cfi-vcall.cpp
test/Driver/fsanitize.c