  Data-Flow Integrity (DFI) is a well-known approach to effectively detecting a
wide range of software attacks. However, its real-world application has been
quite limited so far because of the prohibitive performance overhead it incurs.
Moreover, the overhead is enormously difficult to overcome without
substantially lowering the DFI criterion. In this work, an analysis is
performed to understand the main factors contributing to the overhead.
Accordingly, a hardware-assisted parallel approach is proposed to tackle the
overhead challenge. Simulations on SPEC CPU 2006 benchmark show that the
proposed approach can completely enforce the DFI defined in the original
seminal work while reducing performance overhead by 4x, on average.
