diff options
| author | Scott Constable <scott.d.constable@intel.com> | 2020-04-03 12:12:51 -0700 |
|---|---|---|
| committer | Craig Topper <craig.topper@intel.com> | 2020-04-03 13:02:04 -0700 |
| commit | c74dd640fd740c6928f66a39c7c15a014af3f66f (patch) | |
| tree | 1385067dc880a3b4aa15172592c650072c6b3f5f /llvm/lib/CodeGen/MachineFunction.cpp | |
| parent | 80237523193d1311e8744b84faa077a1295d80da (diff) | |
| download | llvm-c74dd640fd740c6928f66a39c7c15a014af3f66f.zip llvm-c74dd640fd740c6928f66a39c7c15a014af3f66f.tar.gz llvm-c74dd640fd740c6928f66a39c7c15a014af3f66f.tar.bz2 | |
[X86] Add a Pass that builds a Condensed CFG for Load Value Injection (LVI) Gadgets
Adds a new data structure, ImmutableGraph, and uses RDF to find LVI gadgets and add them to a MachineGadgetGraph.
More specifically, a new X86 machine pass finds Load Value Injection (LVI) gadgets consisting of a load from memory (i.e., SOURCE), and any operation that may transmit the value loaded from memory over a covert channel, or use the value loaded from memory to determine a branch/call target (i.e., SINK).
Also adds a new target feature to X86: +lvi-load-hardening
The feature can be added via the clang CLI using -mlvi-hardening.
Differential Revision: https://reviews.llvm.org/D75936
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions
