1 RUN: llvm-debuginfo-analyzer --version 2>&1 | FileCheck --check-prefix=VERSION %s
4 RUN: llvm-debuginfo-analyzer -h > %t 2>&1
5 RUN: FileCheck -input-file=%t %s --check-prefix=HELP --implicit-check-not=out-file
6 RUN: llvm-debuginfo-analyzer --help > %t 2>&1
7 RUN: FileCheck -input-file=%t %s --check-prefix=HELP --implicit-check-not=out-file
8 HELP: OVERVIEW: Printing a logical representation of low-level debug information.
9 HELP: USAGE: llvm-debuginfo-analyzer{{[^ ]*}} [options] <input object files or .dSYM bundles>
11 HELP: Generic Options:
12 HELP: --help - Display available options (--help-hidden for more)
13 HELP: --help-list - Display list of available options (--help-list-hidden for more)
14 HELP: --version - Display the version of this program
16 HELP: These control which elements are printed.
17 HELP: --print=<value> - Element to print.
18 HELP: =all - All elements.
19 HELP: =elements - Instructions, lines, scopes, symbols and types.
20 HELP: =instructions - Assembler instructions.
21 HELP: =lines - Lines referenced in the debug information.
22 HELP: =scopes - A lexical block (Function, Class, etc.).
23 HELP: =sizes - Scope contributions to the debug information.
24 HELP: =summary - Summary of elements missing/added/matched/printed.
25 HELP: =symbols - Symbols (Variable, Members, etc.).
26 HELP: =types - Types (Pointer, Reference, etc.).
27 HELP: =warnings - Warnings detected.
28 HELP: Pass @FILE as argument to read options from FILE.
30 RUN: llvm-debuginfo-analyzer --help-hidden > %t 2>&1
31 RUN: FileCheck -input-file=%t %s --check-prefix=HELP-ALL --implicit-check-not=out-file
32 HELP-ALL: OVERVIEW: Printing a logical representation of low-level debug information.
33 HELP-ALL: USAGE: llvm-debuginfo-analyzer{{[^ ]*}} [options] <input object files or .dSYM bundles>
35 HELP-ALL: Attribute Options:
36 HELP-ALL: These control extra attributes that are added when the element is printed.
37 HELP-ALL: --attribute=<value> - Element attributes.
38 HELP-ALL: =all - Include all attributes.
39 HELP-ALL: =argument - Template parameters replaced by its arguments.
40 HELP-ALL: =base - Base types (int, bool, etc.).
41 HELP-ALL: =coverage - Symbol location coverage.
42 HELP-ALL: =directories - Directories referenced in the debug information.
43 HELP-ALL: =discarded - Discarded elements by the linker.
44 HELP-ALL: =discriminator - Discriminators for inlined function instances.
45 HELP-ALL: =encoded - Template arguments encoded in the template name.
46 HELP-ALL: =extended - Advanced attributes alias.
47 HELP-ALL: =filename - Filename where the element is defined.
48 HELP-ALL: =files - Files referenced in the debug information.
49 HELP-ALL: =format - Object file format name.
50 HELP-ALL: =gaps - Missing debug location (gaps).
51 HELP-ALL: =generated - Compiler generated elements.
52 HELP-ALL: =global - Element referenced across Compile Units.
53 HELP-ALL: =inserted - Generated inlined abstract references.
54 HELP-ALL: =level - Lexical scope level (File=0, Compile Unit=1).
55 HELP-ALL: =linkage - Linkage name.
56 HELP-ALL: =local - Element referenced only in the Compile Unit.
57 HELP-ALL: =location - Element debug location.
58 HELP-ALL: =offset - Debug information offset.
59 HELP-ALL: =pathname - Pathname where the element is defined.
60 HELP-ALL: =producer - Toolchain identification name.
61 HELP-ALL: =publics - Function names that are public.
62 HELP-ALL: =qualified - The element type include parents in its name.
63 HELP-ALL: =qualifier - Line qualifiers (Newstatement, BasicBlock, etc.).
64 HELP-ALL: =range - Debug location ranges.
65 HELP-ALL: =reference - Element declaration and definition references.
66 HELP-ALL: =register - Processor register names.
67 HELP-ALL: =standard - Basic attributes alias.
68 HELP-ALL: =subrange - Subrange encoding information for arrays.
69 HELP-ALL: =system - Display PDB's MS system elements.
70 HELP-ALL: =typename - Include Parameters in templates.
71 HELP-ALL: =underlying - Underlying type for type definitions.
72 HELP-ALL: =zero - Zero line numbers.
73 HELP-ALL: Color Options:
74 HELP-ALL: This option category has no options.
75 HELP-ALL: Compare Options:
76 HELP-ALL: These control the view comparison.
77 HELP-ALL: --compare=<value> - Elements to compare.
78 HELP-ALL: =all - Compare all elements.
79 HELP-ALL: =lines - Lines.
80 HELP-ALL: =scopes - Scopes.
81 HELP-ALL: =symbols - Symbols.
82 HELP-ALL: =types - Types.
83 HELP-ALL: --compare-context - Add the view as compare context.
84 HELP-ALL: General options:
85 HELP-ALL: This option category has no options.
86 HELP-ALL: Generic Options:
87 HELP-ALL: -h - Alias for --help
88 HELP-ALL: --help - Display available options (--help-hidden for more)
89 HELP-ALL: --help-hidden - Display all available options
90 HELP-ALL: --help-list - Display list of available options (--help-list-hidden for more)
91 HELP-ALL: --help-list-hidden - Display list of all available options
92 HELP-ALL: --print-all-options - Print all option values after command line parsing
93 HELP-ALL: --print-options - Print non-default options after command line parsing
94 HELP-ALL: --version - Display the version of this program
95 HELP-ALL: Internal Options:
96 HELP-ALL: Internal traces and extra debugging code.
97 HELP-ALL: --internal=<value> - Traces to enable.
98 HELP-ALL: =all - Enable all traces.
99 HELP-ALL: =cmdline - Print command line.
100 HELP-ALL: =id - Print unique element ID
101 HELP-ALL: =integrity - Check elements integrity.
102 HELP-ALL: =none - Ignore element line number.
103 HELP-ALL: =tag - Debug information tags.
104 HELP-ALL: Output Options:
105 HELP-ALL: These control the output generated.
106 HELP-ALL: --output=<value> - Outputs for view.
107 HELP-ALL: =all - All outputs.
108 HELP-ALL: =split - Split the output by Compile Units.
109 HELP-ALL: =text - Use a free form text output.
110 HELP-ALL: =json - Use JSON as the output format.
111 HELP-ALL: --output-file=<filename> - Redirect output to the specified file.
112 HELP-ALL: --output-folder=<pathname> - Folder name for view splitting.
113 HELP-ALL: --output-level=<N> - Only print to a depth of N elements.
114 HELP-ALL: --output-sort=<value> - Primary key when ordering logical view (default: line).
115 HELP-ALL: =kind - Sort by element kind.
116 HELP-ALL: =line - Sort by element line number.
117 HELP-ALL: =name - Sort by element name.
118 HELP-ALL: =offset - Sort by element offset.
119 HELP-ALL: Print Options:
120 HELP-ALL: These control which elements are printed.
121 HELP-ALL: --print=<value> - Element to print.
122 HELP-ALL: =all - All elements.
123 HELP-ALL: =elements - Instructions, lines, scopes, symbols and types.
124 HELP-ALL: =instructions - Assembler instructions.
125 HELP-ALL: =lines - Lines referenced in the debug information.
126 HELP-ALL: =scopes - A lexical block (Function, Class, etc.).
127 HELP-ALL: =sizes - Scope contributions to the debug information.
128 HELP-ALL: =summary - Summary of elements missing/added/matched/printed.
129 HELP-ALL: =symbols - Symbols (Variable, Members, etc.).
130 HELP-ALL: =types - Types (Pointer, Reference, etc.).
131 HELP-ALL: =warnings - Warnings detected.
132 HELP-ALL: Report Options:
133 HELP-ALL: These control how the elements are printed.
134 HELP-ALL: --report=<value> - Reports layout used for print, compare and select.
135 HELP-ALL: =all - Generate all reports.
136 HELP-ALL: =children - Selected elements are displayed in a tree view (Include children)
137 HELP-ALL: =list - Selected elements are displayed in a tabular format.
138 HELP-ALL: =parents - Selected elements are displayed in a tree view. (Include parents)
139 HELP-ALL: =view - Selected elements are displayed in a tree view (Include parents and children.
140 HELP-ALL: Select Options:
141 HELP-ALL: These control which elements are selected.
142 HELP-ALL: --select=<pattern> - Search elements matching the given pattern.
143 HELP-ALL: --select-elements=<value> - Conditions to use when printing elements.
144 HELP-ALL: =Discarded - Discarded elements by the linker.
145 HELP-ALL: =Global - Element referenced across Compile Units.
146 HELP-ALL: =Optimized - Generated inlined abstract references.
147 HELP-ALL: --select-lines=<value> - Line kind to use when printing lines.
148 HELP-ALL: =AlwaysStepInto - Always Step Into.
149 HELP-ALL: =BasicBlock - Basic block.
150 HELP-ALL: =Discriminator - Discriminator.
151 HELP-ALL: =EndSequence - End sequence.
152 HELP-ALL: =EpilogueBegin. - Epilogue begin.
153 HELP-ALL: =LineDebug - Debug line.
154 HELP-ALL: =LineAssembler - Assembler line.
155 HELP-ALL: =NeverStepInto - Never Step Into.
156 HELP-ALL: =NewStatement - New statement.
157 HELP-ALL: =PrologueEnd - Prologue end.
158 HELP-ALL: --select-nocase - Ignore case distinctions when searching.
159 HELP-ALL: --select-offsets=<offset> - Offset element to print.
160 HELP-ALL: --select-regex - Treat any <pattern> strings as regular expressions when selecting instead of just as an exact string match.
161 HELP-ALL: --select-scopes=<value> - Scope kind to use when printing scopes.
162 HELP-ALL: =Aggregate - Class, Structure or Union.
163 HELP-ALL: =Array - Array.
164 HELP-ALL: =Block - Lexical block.
165 HELP-ALL: =CallSite - Call site block.
166 HELP-ALL: =CatchBlock - Exception catch block.
167 HELP-ALL: =Class - Class.
168 HELP-ALL: =CompileUnit - Compile unit.
169 HELP-ALL: =EntryPoint - Function entry point.
170 HELP-ALL: =Enumeration - Enumeration.
171 HELP-ALL: =Function - Function.
172 HELP-ALL: =FunctionType - Function type.
173 HELP-ALL: =InlinedFunction - Inlined function.
174 HELP-ALL: =Label - Label.
175 HELP-ALL: =LexicalBlock - Lexical block.
176 HELP-ALL: =Namespace - Namespace.
177 HELP-ALL: =Root - Root.
178 HELP-ALL: =Structure - Structure.
179 HELP-ALL: =Subprogram - Subprogram.
180 HELP-ALL: =Template - Template.
181 HELP-ALL: =TemplateAlias - Template alias.
182 HELP-ALL: =TemplatePack - Template pack.
183 HELP-ALL: =TryBlock - Exception try block.
184 HELP-ALL: =Union - Union.
185 HELP-ALL: --select-symbols=<value> - Symbol kind to use when printing symbols.
186 HELP-ALL: =CallSiteParameter - Call site parameter.
187 HELP-ALL: =Constant - Constant.
188 HELP-ALL: =Inheritance - Inheritance.
189 HELP-ALL: =Member - Member.
190 HELP-ALL: =Parameter - Parameter.
191 HELP-ALL: =Unspecified - Unspecified parameter.
192 HELP-ALL: =Variable - Variable.
193 HELP-ALL: --select-types=<value> - Type kind to use when printing types.
194 HELP-ALL: =Base - Base Type (int, bool, etc.).
195 HELP-ALL: =Const - Constant specifier.
196 HELP-ALL: =Enumerator - Enumerator.
197 HELP-ALL: =Import - Import.
198 HELP-ALL: =ImportDeclaration - Import declaration.
199 HELP-ALL: =ImportModule - Import module.
200 HELP-ALL: =Pointer - Pointer.
201 HELP-ALL: =PointerMember - Pointer to member.
202 HELP-ALL: =Reference - Reference type.
203 HELP-ALL: =Restrict - Restrict specifier.
204 HELP-ALL: =RvalueReference - Rvalue reference.
205 HELP-ALL: =Subrange - Array subrange.
206 HELP-ALL: =TemplateParam - Template Parameter.
207 HELP-ALL: =TemplateTemplateParam - Template template parameter.
208 HELP-ALL: =TemplateTypeParam - Template type parameter.
209 HELP-ALL: =TemplateValueParam - Template value parameter.
210 HELP-ALL: =Typedef - Type definition.
211 HELP-ALL: =Unspecified - Unspecified type.
212 HELP-ALL: =Volatile - Volatile specifier.
213 HELP-ALL: Warning Options:
214 HELP-ALL: These control the generated warnings.
215 HELP-ALL: --warning=<value> - Warnings to generate.
216 HELP-ALL: =all - All warnings.
217 HELP-ALL: =coverages - Invalid symbol coverages values.
218 HELP-ALL: =lines - Debug lines that are zero.
219 HELP-ALL: =locations - Invalid symbol locations.
220 HELP-ALL: =ranges - Invalid code ranges.
221 HELP-ALL: Pass @FILE as argument to read options from FILE.