[clang] 66cf68e - [docs] Update ControlFlowIntegrity.rst.
Evgenii Stepanov via cfe-commits
cfe-commits at lists.llvm.org
Fri Oct 2 12:02:29 PDT 2020
Author: Evgenii Stepanov
Date: 2020-10-02T12:01:05-07:00
New Revision: 66cf68ed46789217a8382bb419a0bda1c4e97650
URL: https://github.com/llvm/llvm-project/commit/66cf68ed46789217a8382bb419a0bda1c4e97650
DIFF: https://github.com/llvm/llvm-project/commit/66cf68ed46789217a8382bb419a0bda1c4e97650.diff
LOG: [docs] Update ControlFlowIntegrity.rst.
Expand the list of targets that support cfi-icall.
Add ThinLTO everywhere LTO is mentioned. AFAIK all CFI features are
supported with ThinLTO.
Differential Revision: https://reviews.llvm.org/D87717
Added:
Modified:
clang/docs/ControlFlowIntegrity.rst
Removed:
################################################################################
diff --git a/clang/docs/ControlFlowIntegrity.rst b/clang/docs/ControlFlowIntegrity.rst
index 03e27d3ede89..3f6b3ca6cafb 100644
--- a/clang/docs/ControlFlowIntegrity.rst
+++ b/clang/docs/ControlFlowIntegrity.rst
@@ -76,8 +76,8 @@ For example, you can build your program with
to use all schemes except for non-virtual member function call and indirect call
checking.
-Remember that you have to provide ``-flto`` if at least one CFI scheme is
-enabled.
+Remember that you have to provide ``-flto`` or ``-flto=thin`` if at
+least one CFI scheme is enabled.
Trapping and Diagnostics
========================
@@ -217,7 +217,8 @@ statically linked into the program or shared library, and calls across
shared library boundaries are handled as if the callee was not compiled with
``-fsanitize=cfi-icall``.
-This scheme is currently only supported on the x86 and x86_64 architectures.
+This scheme is currently supported on a limited set of targets: x86,
+x86_64, arm, arch64 and wasm.
``-fsanitize-cfi-icall-generalize-pointers``
--------------------------------------------
@@ -368,7 +369,7 @@ Shared library support
Use **-f[no-]sanitize-cfi-cross-dso** to enable the cross-DSO control
flow integrity mode, which allows all CFI schemes listed above to
apply across DSO boundaries. As in the regular CFI, each DSO must be
-built with ``-flto``.
+built with ``-flto`` or ``-flto=thin``.
Normally, CFI checks will only be performed for classes that have hidden LTO
visibility. With this flag enabled, the compiler will emit cross-DSO CFI
More information about the cfe-commits
mailing list