[Docs] Add some documentation for constructor homing, a debug info optimization ...
authorAmy Huang <akhuang@google.com>
Tue, 2 Feb 2021 01:33:46 +0000 (17:33 -0800)
committerAmy Huang <akhuang@google.com>
Wed, 3 Feb 2021 23:25:49 +0000 (15:25 -0800)
Adding this, since there's currently no documentation about this.

Differential Revision: https://reviews.llvm.org/D95911

clang/docs/UsersManual.rst

index b9024a3..a2fc8c0 100644 (file)
@@ -2504,6 +2504,18 @@ below. If multiple flags are present, the last one is used.
    **-fno-standalone-debug** option can be used to get to turn on the
    vtable-based optimization described above.
 
+.. option:: -fuse-ctor-homing
+
+   This optimization is similar to the optimizations that are enabled as part
+   of -fno-standalone-debug. Here, Clang only emits type info for a
+   non-trivial, non-aggregate C++ class in the modules that contain a
+   definition of one of its constructors. This relies on the additional
+   assumption that all classes that are not trivially constructible have a
+   non-trivial constructor that is used somewhere.
+
+   This flag is not enabled by default, and needs to be used with -cc1 or
+   -Xclang.
+
 .. option:: -g
 
   Generate complete debug info.