Skip to content

Commit 7eb688b

Browse files
committed
[clang][Docs] Move debug info flags into groups
This moves a few existing debug info flags that were floating in the general pool of unorganised flags over to the existing groups for debug info flags (so that they are presented together in documentation). As a tiny further tweak, this also fixes the spelling of "DWARF" in the flag docs for consistency with other flags.
1 parent b38ed00 commit 7eb688b

File tree

1 file changed

+21
-15
lines changed

1 file changed

+21
-15
lines changed

clang/include/clang/Options/Options.td

Lines changed: 21 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4765,25 +4765,25 @@ def ggdb3 : Flag<["-"], "ggdb3">, Group<ggdbN_Group>;
47654765
def glldb : Flag<["-"], "glldb">, Group<gTune_Group>;
47664766
def gsce : Flag<["-"], "gsce">, Group<gTune_Group>;
47674767
def gdbx : Flag<["-"], "gdbx">, Group<gTune_Group>;
4768-
// Equivalent to our default dwarf version. Forces usual dwarf emission when
4768+
// Equivalent to our default DWARF version. Forces usual DWARF emission when
47694769
// CodeView is enabled.
47704770
def gdwarf : Flag<["-"], "gdwarf">, Group<g_Group>,
47714771
Visibility<[ClangOption, CLOption, DXCOption, FlangOption]>,
4772-
HelpText<"Generate source-level debug information with the default dwarf version">;
4772+
HelpText<"Generate source-level debug information with the default DWARF version">;
47734773

47744774
let Visibility = [ClangOption, FlangOption] in {
47754775
def gdwarf_2 : Flag<["-"], "gdwarf-2">, Group<g_Group>,
4776-
HelpText<"Generate source-level debug information with dwarf version 2">;
4776+
HelpText<"Generate source-level debug information with DWARF version 2">;
47774777
def gdwarf_3 : Flag<["-"], "gdwarf-3">, Group<g_Group>,
4778-
HelpText<"Generate source-level debug information with dwarf version 3">;
4778+
HelpText<"Generate source-level debug information with DWARF version 3">;
47794779
def gdwarf_4 : Flag<["-"], "gdwarf-4">, Group<g_Group>,
4780-
HelpText<"Generate source-level debug information with dwarf version 4">;
4780+
HelpText<"Generate source-level debug information with DWARF version 4">;
47814781
def gdwarf_5 : Flag<["-"], "gdwarf-5">, Group<g_Group>,
4782-
HelpText<"Generate source-level debug information with dwarf version 5">;
4782+
HelpText<"Generate source-level debug information with DWARF version 5">;
47834783
def gdwarf_6
47844784
: Flag<["-"], "gdwarf-6">,
47854785
Group<g_Group>,
4786-
HelpText<"Generate source-level debug information with dwarf version 6">;
4786+
HelpText<"Generate source-level debug information with DWARF version 6">;
47874787
}
47884788
def gdwarf64 : Flag<["-"], "gdwarf64">, Group<g_Group>,
47894789
Visibility<[ClangOption, CC1Option, CC1AsOption]>,
@@ -4793,25 +4793,28 @@ def gdwarf32 : Flag<["-"], "gdwarf32">, Group<g_Group>,
47934793
Visibility<[ClangOption, CC1Option, CC1AsOption]>,
47944794
HelpText<"Enables DWARF32 format for ELF binaries, if debug information emission is enabled.">;
47954795

4796-
def gcodeview : Flag<["-"], "gcodeview">,
4796+
def gcodeview : Flag<["-"], "gcodeview">, Group<g_Group>,
47974797
HelpText<"Generate CodeView debug information">,
47984798
Visibility<[ClangOption, CC1Option, CC1AsOption, CLOption, DXCOption]>,
47994799
MarshallingInfoFlag<CodeGenOpts<"EmitCodeView">>;
48004800
defm codeview_ghash : BoolOption<"g", "codeview-ghash",
48014801
CodeGenOpts<"CodeViewGHash">, DefaultFalse,
48024802
PosFlag<SetTrue, [], [ClangOption, CC1Option],
48034803
"Emit type record hashes in a .debug$H section">,
4804-
NegFlag<SetFalse>, BothFlags<[], [ClangOption, CLOption, DXCOption]>>;
4804+
NegFlag<SetFalse>, BothFlags<[], [ClangOption, CLOption, DXCOption]>>,
4805+
Group<g_flags_Group>;
48054806
defm codeview_command_line : BoolOption<"g", "codeview-command-line",
48064807
CodeGenOpts<"CodeViewCommandLine">, DefaultTrue,
48074808
PosFlag<SetTrue, [], [ClangOption], "Emit compiler path and command line into CodeView debug information">,
48084809
NegFlag<SetFalse, [], [ClangOption], "Don't emit compiler path and command line into CodeView debug information">,
4809-
BothFlags<[], [ClangOption, CLOption, DXCOption, CC1Option]>>;
4810+
BothFlags<[], [ClangOption, CLOption, DXCOption, CC1Option]>>,
4811+
Group<g_flags_Group>;
48104812
defm inline_line_tables : BoolGOption<"inline-line-tables",
48114813
CodeGenOpts<"NoInlineLineTables">, DefaultFalse,
48124814
NegFlag<SetTrue, [], [ClangOption, CC1Option],
48134815
"Don't emit inline line tables.">,
4814-
PosFlag<SetFalse>, BothFlags<[], [ClangOption, CLOption, DXCOption]>>;
4816+
PosFlag<SetFalse>, BothFlags<[], [ClangOption, CLOption, DXCOption]>>,
4817+
Group<g_flags_Group>;
48154818

48164819
def gfull : Flag<["-"], "gfull">, Group<g_Group>;
48174820
def gused : Flag<["-"], "gused">, Group<g_Group>;
@@ -4836,7 +4839,8 @@ defm strict_dwarf : BoolOption<"g", "strict-dwarf",
48364839
defm omit_unreferenced_methods : BoolGOption<"omit-unreferenced-methods",
48374840
CodeGenOpts<"DebugOmitUnreferencedMethods">, DefaultFalse,
48384841
NegFlag<SetFalse>,
4839-
PosFlag<SetTrue, [], [CC1Option]>, BothFlags<[], [ClangOption, CLOption, DXCOption]>>;
4842+
PosFlag<SetTrue, [], [CC1Option]>, BothFlags<[], [ClangOption, CLOption, DXCOption]>>,
4843+
Group<g_flags_Group>;
48404844
defm column_info : BoolOption<"g", "column-info",
48414845
CodeGenOpts<"DebugColumnInfo">, DefaultTrue,
48424846
NegFlag<SetFalse, [], [ClangOption, CC1Option]>,
@@ -4903,6 +4907,7 @@ defm structor_decl_linkage_names
49034907
"Attach linkage names to C++ constructor/destructor "
49044908
"declarations in DWARF.">,
49054909
BothFlags<[], [ClangOption, CLOption, CC1Option]>>,
4910+
Group<g_flags_Group>,
49064911
DocBrief<[{On some ABIs (e.g., Itanium), constructors and destructors may have multiple variants. Historically, when generating DWARF, Clang did not attach ``DW_AT_linkage_name`` to structor DIEs because there were multiple possible manglings (depending on the structor variant) that could be used. With ``-gstructor-decl-linkage-names``, for ABIs with structor variants, we attach a "unified" mangled name to structor declarations DIEs which debuggers can use to look up all the definitions for a structor declaration. E.g., a "unified" mangled name ``_ZN3FooC4Ev`` may have multiple definitions associated with it such as ``_ZN3FooC1Ev`` and ``_ZN3FooC2Ev``.
49074912

49084913
Enabling this flag results in a better interactive debugging experience (both GDB and LLDB have support for understanding these "unified" linkage names). However, it comes with a significant increase in debug-info size (particularly the `.debug_str` section). As an escape hatch, users can disable this feature using ``-gno-structor-decl-linkage-names``.}]>;
@@ -4911,7 +4916,8 @@ defm key_instructions : BoolGOption<"key-instructions",
49114916
NegFlag<SetFalse>, PosFlag<SetTrue, [], [],
49124917
"Enable Key Instructions, which reduces the jumpiness of debug stepping in optimized C/C++ code"
49134918
" in some debuggers. DWARF only.">,
4914-
BothFlags<[], [ClangOption, CLOption, CC1Option]>>;
4919+
BothFlags<[], [ClangOption, CLOption, CC1Option]>>,
4920+
Group<g_flags_Group>;
49154921
def headerpad__max__install__names : Joined<["-"], "headerpad_max_install_names">;
49164922
def help : Flag<["-", "--"], "help">,
49174923
Visibility<[ClangOption, CC1Option, CC1AsOption,
@@ -8530,7 +8536,7 @@ def main_file_name : Separate<["-"], "main-file-name">,
85308536
Visibility<[CC1Option, CC1AsOption]>,
85318537
MarshallingInfoString<CodeGenOpts<"MainFileName">>;
85328538
def split_dwarf_output : Separate<["-"], "split-dwarf-output">,
8533-
HelpText<"File name to use for split dwarf debug info output">,
8539+
HelpText<"File name to use for split DWARF debug info output">,
85348540
Visibility<[CC1Option, CC1AsOption, FC1Option]>,
85358541
MarshallingInfoString<CodeGenOpts<"SplitDwarfOutput">>;
85368542

@@ -8564,7 +8570,7 @@ def dependent_lib : Joined<["--"], "dependent-lib=">,
85648570
MarshallingInfoStringVector<CodeGenOpts<"DependentLibraries">>;
85658571

85668572
def split_dwarf_file : Separate<["-"], "split-dwarf-file">,
8567-
HelpText<"Name of the split dwarf debug info file to encode in the object file">,
8573+
HelpText<"Name of the split DWARF debug info file to encode in the object file">,
85688574
MarshallingInfoString<CodeGenOpts<"SplitDwarfFile">>;
85698575

85708576
} // let Visibility = [CC1Option, FC1Option]

0 commit comments

Comments
 (0)