[clang] 26e9c99 - [Docs] Add some documentation for constructor homing, a debug info optimization (-fuse-ctor-homing)

Amy Huang via cfe-commits cfe-commits at lists.llvm.org
Wed Feb 3 15:27:25 PST 2021


Author: Amy Huang
Date: 2021-02-03T15:25:49-08:00
New Revision: 26e9c99010b6870ee5c8ce998a84214e06f3f3a9

URL: https://github.com/llvm/llvm-project/commit/26e9c99010b6870ee5c8ce998a84214e06f3f3a9
DIFF: https://github.com/llvm/llvm-project/commit/26e9c99010b6870ee5c8ce998a84214e06f3f3a9.diff

LOG: [Docs] Add some documentation for constructor homing, a debug info optimization (-fuse-ctor-homing)

Adding this, since there's currently no documentation about this.

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

Added: 
    

Modified: 
    clang/docs/UsersManual.rst

Removed: 
    


################################################################################
diff  --git a/clang/docs/UsersManual.rst b/clang/docs/UsersManual.rst
index b9024a3006f1..a2fc8c06dc6e 100644
--- a/clang/docs/UsersManual.rst
+++ b/clang/docs/UsersManual.rst
@@ -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.


        


More information about the cfe-commits mailing list