[clang] [DebugInfo] Add flag to only emit referenced member functions (PR #87018)

Stephen Tozer via cfe-commits cfe-commits at lists.llvm.org
Tue May 28 09:54:31 PDT 2024


================
@@ -4260,6 +4260,13 @@ defm strict_dwarf : BoolOption<"g", "strict-dwarf",
           "the specified version, avoiding features from later versions.">,
   NegFlag<SetFalse>, BothFlags<[], [ClangOption, CLOption, DXCOption]>>,
   Group<g_flags_Group>;
+defm omit_unreferenced_members : BoolOption<"g", "omit-unreferenced-members",
+  CodeGenOpts<"DebugOmitUnreferencedMembers">, DefaultFalse,
+  PosFlag<SetTrue, [], [ClangOption, CC1Option],
+  	"Omit member function declarations from type descriptions if the "
+	"member is unreferenced.">,
+  NegFlag<SetFalse>, BothFlags<[], [ClangOption, CLOption, DXCOption]>>,
+  Group<g_flags_Group>;
----------------
SLTozer wrote:

It seems you're right - the marshalling stuff allows us to omit boilerplate in a few places, but `renderDebugOptions` isn't one of them; I'd missed that `BoolOption` was already covering that base as well, so carry on I think (though the `BoolGOption` change does seem sensible).

https://github.com/llvm/llvm-project/pull/87018


More information about the cfe-commits mailing list