r334669 - docs: Correct some misstatements in the control flow integrity docs.
Peter Collingbourne via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 13 16:18:27 PDT 2018
Author: pcc
Date: Wed Jun 13 16:18:26 2018
New Revision: 334669
URL: http://llvm.org/viewvc/llvm-project?rev=334669&view=rev
Log:
docs: Correct some misstatements in the control flow integrity docs.
These were true at one point but haven't been true for a long time.
Modified:
cfe/trunk/docs/ControlFlowIntegrity.rst
Modified: cfe/trunk/docs/ControlFlowIntegrity.rst
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/docs/ControlFlowIntegrity.rst?rev=334669&r1=334668&r2=334669&view=diff
==============================================================================
--- cfe/trunk/docs/ControlFlowIntegrity.rst (original)
+++ cfe/trunk/docs/ControlFlowIntegrity.rst Wed Jun 13 16:18:26 2018
@@ -104,10 +104,10 @@ dynamic type; that is, the dynamic type
derived class of the static type of the object used to make the call.
This CFI scheme can be enabled on its own using ``-fsanitize=cfi-vcall``.
-For this scheme to work, all translation units containing the definition
-of a virtual member function (whether inline or not), other than members
-of :ref:`blacklisted <cfi-blacklist>` types, must be compiled with
-``-fsanitize=cfi-vcall`` enabled and be statically linked into the program.
+For this scheme to work, all translation units containing the definition of
+a virtual member function (whether inline or not), other than members of
+:ref:`blacklisted <cfi-blacklist>` types, must be compiled with ``-flto``
+or ``-flto=thin`` enabled and be statically linked into the program.
Performance
-----------
@@ -152,9 +152,9 @@ functions may be :ref:`blacklisted <cfi-
For this scheme to work, all translation units containing the definition
of a virtual member function (whether inline or not), other than members
-of :ref:`blacklisted <cfi-blacklist>` types, must be compiled with
-``-fsanitize=cfi-derived-cast`` or ``-fsanitize=cfi-unrelated-cast`` enabled
-and be statically linked into the program.
+of :ref:`blacklisted <cfi-blacklist>` types or types with public :doc:`LTO
+visibility <LTOVisibility>`, must be compiled with ``-flto`` or ``-flto=thin``
+enabled and be statically linked into the program.
Non-Virtual Member Function Call Checking
=========================================
@@ -168,8 +168,9 @@ polymorphic class type. This CFI scheme
For this scheme to work, all translation units containing the definition
of a virtual member function (whether inline or not), other than members
-of :ref:`blacklisted <cfi-blacklist>` types, must be compiled with
-``-fsanitize=cfi-nvcall`` enabled and be statically linked into the program.
+of :ref:`blacklisted <cfi-blacklist>` types or types with public :doc:`LTO
+visibility <LTOVisibility>`, must be compiled with ``-flto`` or ``-flto=thin``
+enabled and be statically linked into the program.
.. _cfi-strictness:
More information about the cfe-commits
mailing list