Cross-DSO control flow integrity (LLVM part).
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Tue, 15 Dec 2015 23:00:08 +0000 (23:00 +0000)
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>
Tue, 15 Dec 2015 23:00:08 +0000 (23:00 +0000)
commit053615be026c65a88de1eb79642f2521174cd502
tree3450733c067e1cbe71474ee99b2b61bbd5121230
parent09dd945fa5dce92b9acdd8772e90ef574274c1b4
Cross-DSO control flow integrity (LLVM part).

An LTO pass that generates a __cfi_check() function that validates a
call based on a hash of the call-site-known type and the target
pointer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@255693 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/InitializePasses.h
include/llvm/Transforms/IPO.h
lib/Transforms/IPO/CMakeLists.txt
lib/Transforms/IPO/CrossDSOCFI.cpp [new file with mode: 0644]
lib/Transforms/IPO/IPO.cpp
lib/Transforms/IPO/PassManagerBuilder.cpp
test/Transforms/CrossDSOCFI/basic.ll [new file with mode: 0644]