[PATCH] D40482: [X86] Instrument Control Flow For Indirect Branch Tracking
Oren Ben Simhon via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Nov 27 03:19:09 PST 2017
oren_ben_simhon created this revision.
Herald added a subscriber: mgorny.
CET (Control-Flow Enforcement Technology) introduces a new mechanism called IBT (Indirect Branch Tracking).
According to IBT, each Indirect branch should land on dedicated ENDBR instruction (End Branch).
The new pass adds ENDBR instructions for every indirect jmp/call (including jumps using jump tables / switches).
For more information, please see the following:
https://software.intel.com/sites/default/files/managed/4d/2a/control-flow-enforcement-technology-preview.pdf
Repository:
rL LLVM
https://reviews.llvm.org/D40482
Files:
include/llvm/Target/TargetOptions.h
lib/Target/TargetMachine.cpp
lib/Target/X86/CMakeLists.txt
lib/Target/X86/X86.h
lib/Target/X86/X86IndirectBranchTracking.cpp
lib/Target/X86/X86InstrSystem.td
lib/Target/X86/X86TargetMachine.cpp
test/CodeGen/X86/indirect-branch-tracking.ll
test/MC/X86/cet-encoding.s
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D40482.124331.patch
Type: text/x-patch
Size: 17506 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20171127/904f6a58/attachment.bin>
More information about the llvm-commits
mailing list