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: _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits