2435 lines · plain
1include "OptionsBase.td"2 3let Command = "target modules dump symtab" in {4 def tm_sort : Option<"sort", "s">,5 Group<1>,6 Desc<"${S}upply a sort order when dumping the symbol table.">,7 EnumArg<"SortOrder">;8 def tm_smn : Option<"show-mangled-names", "m">,9 Group<1>,10 Desc<"Do not de${m}angle symbol names before showing them.">;11}12 13let Command = "target modules dump separate debug info" in {14 def tm_json : Option<"json", "j">,15 Group<1>,16 Desc<"Output the details in ${J}SON format.">;17 def tm_errors_only18 : Option<"errors-only", "e">,19 Group<1>,20 Desc<"Filter to show only debug info files with ${e}rrors.">;21 def tm_force_load_all_debug_info22 : Option<"force-load-all-debug-info", "f">,23 Group<1>,24 Desc<"${F}orce load all debug info files.">;25}26 27let Command = "help" in {28 def help_hide_aliases : Option<"hide-aliases", "a">,29 Desc<"Hide ${a}liases in the command list.">;30 def help_hide_user : Option<"hide-user-commands", "u">,31 Desc<"Hide ${u}ser-defined commands from the list.">;32 def help_show_hidden : Option<"show-hidden-commands", "h">,33 Desc<"Include commands prefixed with an underscore.">;34}35 36let Command = "settings set" in {37 def setset_global38 : Option<"global", "g">,39 Desc<"Apply the new value to the ${g}lobal default value.">;40 def setset_force41 : Option<"force", "f">,42 Desc<"${F}orce an empty value to be accepted as the default.">;43 def setset_exists44 : Option<"exists", "e">,45 Desc<"Set the setting if it ${e}xists, but do not cause the command to "46 "raise an error if it does not exist.">;47}48 49let Command = "settings write" in {50 def setwrite_file : Option<"file", "f">,51 Required,52 Arg<"Filename">,53 Completion<"DiskFile">,54 Desc<"The ${f}ile into which to write the settings.">;55 def setwrite_append : Option<"append", "a">,56 Desc<"${A}ppend to saved settings file if it exists.">;57}58 59let Command = "settings read" in {60 def setread_file : Option<"file", "f">,61 Required,62 Arg<"Filename">,63 Completion<"DiskFile">,64 Desc<"The ${f}ile from which to read the settings.">;65}66 67let Command = "settings clear" in {68 def setclear_all : Option<"all", "a">, Desc<"Clear ${a}ll settings.">;69}70 71let Command = "settings show" in {72 def setshow_defaults : Option<"defaults", "d">,73 Desc<"Include ${d}efault values if defined.">;74}75 76let Command = "breakpoint list" in {77 // FIXME: We need to add an "internal" command, and then add this sort of78 // thing to it. But I need to see it for now, and don't want to wait.79 def blist_internal : Option<"internal", "i">,80 Desc<"Show debugger ${i}nternal breakpoints.">;81 def blist_brief : Option<"brief", "b">,82 Group<1>,83 Desc<"Give a ${b}rief description of the breakpoint (no "84 "location info).">;85 def blist_full86 : Option<"full", "f">,87 Group<2>,88 Desc<"Give a ${f}ull description of the breakpoint and its locations.">;89 def blist_verbose : Option<"verbose", "v">,90 Group<3>,91 Desc<"Explain everything we know about the breakpoint "92 "(for debugging debugger bugs).">;93 def blist_dummy_bp94 : Option<"dummy-breakpoints", "D">,95 Desc<"List ${D}ummy breakpoints - i.e. breakpoints set before a file "96 "is provided, which prime new targets.">;97}98 99let Command = "breakpoint modify" in {100 def breakpoint_modify_ignore_count101 : Option<"ignore-count", "i">,102 Group<1>,103 Arg<"Count">,104 Desc<"Set the number of times this breakpoint is skipped before "105 "stopping.">;106 def breakpoint_modify_one_shot107 : Option<"one-shot", "o">,108 Group<1>,109 Arg<"Boolean">,110 Desc<"The breakpoint is deleted the first time it causes a stop.">;111 def breakpoint_modify_thread_index112 : Option<"thread-index", "x">,113 Group<1>,114 Arg<"ThreadIndex">,115 Desc<"The breakpoint stops only for the thread whose inde${x} matches "116 "this argument.">;117 def breakpoint_modify_thread_id118 : Option<"thread-id", "t">,119 Group<1>,120 Arg<"ThreadID">,121 Desc<"The breakpoint stops only for the ${t}hread whose TID matches "122 "this argument. The token 'current' resolves to the current "123 "thread's ID.">;124 def breakpoint_modify_thread_name125 : Option<"thread-name", "T">,126 Group<1>,127 Arg<"ThreadName">,128 Desc<"The breakpoint stops only for the ${t}hread whose thread name "129 "matches this argument.">;130 def breakpoint_modify_queue_name131 : Option<"queue-name", "q">,132 Group<1>,133 Arg<"QueueName">,134 Desc<"The breakpoint stops only for threads in the ${q}ueue whose name "135 "is given by this argument.">;136 def breakpoint_modify_condition137 : Option<"condition", "c">,138 Group<1>,139 Arg<"Expression">,140 Desc<"The breakpoint stops only if this ${c}ondition expression "141 "evaluates to true.">;142 def breakpoint_modify_condition_language143 : Option<"condition-language", "Y">,144 Group<1>,145 Arg<"Language">,146 Desc<"Specifies the Language to use when executing the breakpoint's "147 "condition expression.">;148 def breakpoint_modify_auto_continue149 : Option<"auto-continue", "G">,150 Group<1>,151 Arg<"Boolean">,152 Desc<"The breakpoint will auto-continue after running its commands.">;153 def breakpoint_modify_enable : Option<"enable", "e">,154 Group<2>,155 Desc<"${E}nable the breakpoint.">;156 def breakpoint_modify_disable : Option<"disable", "d">,157 Group<3>,158 Desc<"${D}isable the breakpoint.">;159 def breakpoint_modify_command160 : Option<"command", "C">,161 Group<4>,162 Arg<"Command">,163 Desc<164 "A ${c}ommand to run when the breakpoint is hit, can be provided "165 "more than once, the commands will be run in left-to-right order.">;166}167 168let Command = "breakpoint dummy" in {169 def breakpoint_dummy_options_dummy_breakpoints170 : Option<"dummy-breakpoints", "D">,171 Group<1>,172 Desc<"Act on ${D}ummy breakpoints - i.e. breakpoints set before a file "173 "is provided, which prime new targets.">;174}175 176let Command = "breakpoint set" in {177 def breakpoint_set_shlib178 : Option<"shlib", "s">,179 Arg<"ShlibName">,180 Completion<"Module">,181 Groups<[1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12]>, // *not* in group 10182 Desc<183 "${S}et the breakpoint only in this shared library. Can repeat "184 "this option multiple times to specify multiple shared libraries.">;185 def breakpoint_set_hardware186 : Option<"hardware", "H">,187 Desc<"Require the breakpoint to use ${h}ardware breakpoints.">;188 def breakpoint_set_file189 : Option<"file", "f">,190 Arg<"Filename">,191 Completion<"SourceFile">,192 Groups<[1, 3, 4, 5, 6, 7, 8, 9, 11]>,193 Desc<"Specifies the source ${f}ile in which to set this breakpoint. "194 "Note, by default lldb only looks for files that are #included if "195 "they use the standard include file extensions. To set "196 "breakpoints on .c/.cpp/.m/.mm files that are #included, set "197 "target.inline-breakpoint-strategy to \"always\".">;198 def breakpoint_set_line199 : Option<"line", "l">,200 Group<1>,201 Arg<"LineNum">,202 Required,203 Desc<"Specifies the ${l}ine number on which to set this breakpoint.">;204 def breakpoint_set_column205 : Option<"column", "u">,206 Group<1>,207 Arg<"ColumnNum">,208 Desc<"Specifies the col${u}mn number on which to set this breakpoint.">;209 def breakpoint_set_address210 : Option<"address", "a">,211 Group<2>,212 Arg<"AddressOrExpression">,213 Required,214 Desc<"Set the breakpoint at the specified ${a}ddress. If the address "215 "maps uniquely to a particular binary, then the address will be "216 "converted to a \"file\"address, so that the breakpoint will "217 "track that binary+offset no matter where the binary eventually "218 "loads. Alternately, if you also specify the module - with the "219 "-s option - then the address will be treated as a file address "220 "in that module, and resolved accordingly. Again, this will "221 "allow lldb to track that offset on subsequent reloads. The "222 "module need not have been loaded at the time you specify this "223 "breakpoint, and will get resolved when the module is loaded.">;224 def breakpoint_set_name225 : Option<"name", "n">,226 Group<3>,227 Arg<"FunctionName">,228 Completion<"Symbol">,229 Required,230 Desc<"Set the breakpoint by function ${n}ame. Can be repeated "231 "multiple times to make one breakpoint for multiple names.">;232 def breakpoint_set_source_regexp_function233 : Option<"source-regexp-function", "X">,234 Group<9>,235 Arg<"FunctionName">,236 Completion<"Symbol">,237 Desc<"When used with '-p' limits the source regex to source contained "238 "in the named functions. Can be repeated multiple times.">;239 def breakpoint_set_fullname240 : Option<"fullname", "F">,241 Group<4>,242 Arg<"FullName">,243 Required,244 Completion<"Symbol">,245 Desc<"Set the breakpoint by ${f}ully qualified function names. For C++ "246 "this means namespaces and all arguments, and for Objective-C "247 "this means a full function prototype with class and selector. "248 "Can be repeated multiple times to make one breakpoint for "249 "multiple names.">;250 def breakpoint_set_selector251 : Option<"selector", "S">,252 Group<5>,253 Arg<"Selector">,254 Required,255 Desc<"Set the breakpoint by Objective-C ${s}elector name. Can be "256 "repeated multiple times to make one breakpoint for multiple "257 "Selectors.">;258 def breakpoint_set_method259 : Option<"method", "M">,260 Group<6>,261 Arg<"Method">,262 Required,263 Desc<"Set the breakpoint by C++ ${m}ethod names. Can be repeated "264 "multiple times to make one breakpoint for multiple methods.">;265 def breakpoint_set_func_regex266 : Option<"func-regex", "r">,267 Group<7>,268 Arg<"RegularExpression">,269 Required,270 Desc<"Set the breakpoint by function name, evaluating a "271 "${r}egular-expression to find the function name(s).">;272 def breakpoint_set_basename273 : Option<"basename", "b">,274 Group<8>,275 Arg<"FunctionName">,276 Required,277 Completion<"Symbol">,278 Desc<"Set the breakpoint by function ${b}asename (C++ namespaces and "279 "arguments will be ignored). Can be repeated multiple times to "280 "make one breakpoint for multiple symbols.">;281 def breakpoint_set_source_pattern_regexp282 : Option<"source-pattern-regexp", "p">,283 Group<9>,284 Arg<"RegularExpression">,285 Required,286 Desc<"Set the breakpoint by specifying a regular expression which is "287 "matched against the source text in a source file or files "288 "specified with the -f can be specified more than once. If no "289 "source files are specified, uses the current \"default source "290 "file\". If you want to match against all source files, ${p}ass "291 "the \"--all-files\" option.">;292 def breakpoint_set_all_files293 : Option<"all-files", "A">,294 Group<9>,295 Desc<"${A}ll files are searched for source pattern matches.">;296 def breakpoint_set_language_exception297 : Option<"language-exception", "E">,298 Group<10>,299 Arg<"Language">,300 Required,301 Desc<"Set the breakpoint on ${e}xceptions thrown by the specified "302 "language (without options, on throw but not catch.)">;303 def breakpoint_set_on_throw304 : Option<"on-throw", "w">,305 Group<10>,306 Arg<"Boolean">,307 Desc<"Set the breakpoint on exception thro${w}.">;308 def breakpoint_set_on_catch309 : Option<"on-catch", "h">,310 Group<10>,311 Arg<"Boolean">,312 Desc<"Set the breakpoint on exception catc${h}.">;313 def breakpoint_set_language314 : Option<"language", "L">,315 GroupRange<3, 8>,316 Arg<"Language">,317 Desc<"Specifies the ${L}anguage to use when interpreting the "318 "breakpoint's expression (note: currently only implemented for "319 "setting breakpoints on identifiers). If not set the "320 "target.language setting is used.">;321 def breakpoint_set_skip_prologue322 : Option<"skip-prologue", "K">,323 Arg<"Boolean">,324 Groups<[1, 3, 4, 5, 6, 7, 8, 12]>,325 Desc<"S${k}ip the prologue if the breakpoint is at the beginning of a "326 "function. If not set the target.skip-prologue setting is used.">;327 def breakpoint_set_breakpoint_name328 : Option<"breakpoint-name", "N">,329 Arg<"BreakpointName">,330 Desc<"Adds this to the list of ${n}ames for this breakpoint.">;331 def breakpoint_set_address_slide332 : Option<"address-slide", "R">,333 Arg<"Address">,334 Groups<[1, 3, 4, 5, 6, 7, 8, 12]>,335 Desc<"Add the specified offset to whatever address(es) the breakpoint "336 "${r}esolves to. At present this applies the offset directly as "337 "given, and doesn't try to align it to instruction boundaries.">;338 def breakpoint_set_move_to_nearest_code339 : Option<"move-to-nearest-code", "m">,340 Groups<[1, 9, 12]>,341 Arg<"Boolean">,342 Desc<"${M}ove breakpoints to nearest code. If not set the "343 "target.move-to-nearest-code setting is used.">;344 def breakpoint_set_file_colon_line345 : Option<"joint-specifier", "y">,346 Group<12>,347 Arg<"FileLineColumn">,348 Required,349 Completion<"SourceFile">,350 Desc<"A specifier in the form filename:line[:column] for setting file "351 "& line breakpoints.">;352 /* Don't add this option till it actually does something useful...353 def breakpoint_set_exception_typename : Option<"exception-typename", "O">,354 Arg<"TypeName">, Desc<"The breakpoint will only stop if an "355 "exception Object of this type is thrown. Can be repeated multiple times "356 "to stop for multiple object types">;357 */358}359 360let Command = "breakpoint clear" in {361 def breakpoint_clear_file : Option<"file", "f">,362 Group<1>,363 Arg<"Filename">,364 Completion<"SourceFile">,365 Desc<"Specify the breakpoint by source location "366 "in this particular ${f}ile.">;367 def breakpoint_clear_line : Option<"line", "l">,368 Group<1>,369 Arg<"LineNum">,370 Required,371 Desc<"Specify the breakpoint by source location "372 "at this particular ${l}ine.">;373}374 375let Command = "breakpoint delete" in {376 def breakpoint_delete_force377 : Option<"force", "f">,378 Group<1>,379 Desc<"Delete all breakpoints without querying for confirmation.">;380 def breakpoint_delete_dummy_breakpoints381 : Option<"dummy-breakpoints", "D">,382 Group<1>,383 Desc<"Delete Dummy breakpoints - i.e. breakpoints set before a file is "384 "provided, which prime new targets.">;385 def breakpoint_delete_disabled386 : Option<"disabled", "d">,387 Group<1>,388 Desc<"${D}elete all breakpoints which are currently disabled. When "389 "using the disabled option any breakpoints listed on the command "390 "line are EXCLUDED from deletion.">;391}392 393let Command = "breakpoint name" in {394 def breakpoint_name_name : Option<"name", "N">,395 Group<1>,396 Arg<"BreakpointName">,397 Desc<"Specifies a breakpoint name to use.">;398 def breakpoint_name_breakpoint_id : Option<"breakpoint-id", "B">,399 Group<2>,400 Arg<"BreakpointID">,401 Desc<"Specify a breakpoint ID to use.">;402 def breakpoint_name_dummy_breakpoints403 : Option<"dummy-breakpoints", "D">,404 Group<3>,405 Desc<"Operate on Dummy breakpoints - i.e. breakpoints set before a "406 "file is provided, which prime new targets.">;407 def breakpoint_name_help_string408 : Option<"help-string", "H">,409 Group<4>,410 Arg<"None">,411 Desc<"A help string describing the purpose of this name.">;412}413 414let Command = "breakpoint access" in {415 def breakpoint_access_allow_list416 : Option<"allow-list", "L">,417 Group<1>,418 Arg<"Boolean">,419 Desc<"Determines whether the breakpoint will show up in break list if "420 "not referred to explicitly.">;421 def breakpoint_access_allow_disable422 : Option<"allow-disable", "A">,423 Group<2>,424 Arg<"Boolean">,425 Desc<"Determines whether the breakpoint can be disabled by name or "426 "when all breakpoints are disabled.">;427 def breakpoint_access_allow_delete428 : Option<"allow-delete", "D">,429 Group<3>,430 Arg<"Boolean">,431 Desc<"Determines whether the breakpoint can be deleted by name or when "432 "all breakpoints are deleted.">;433}434 435let Command = "breakpoint read" in {436 def breakpoint_read_file437 : Option<"file", "f">,438 Arg<"Filename">,439 Required,440 Completion<"DiskFile">,441 Desc<"The ${f}ile from which to read the breakpoints.">;442 def breakpoint_read_breakpoint_name443 : Option<"breakpoint-name", "N">,444 Arg<"BreakpointName">,445 Desc<"Only read in breakpoints with this name.">;446}447 448let Command = "breakpoint write" in {449 def breakpoint_write_file450 : Option<"file", "f">,451 Arg<"Filename">,452 Required,453 Completion<"DiskFile">,454 Desc<"The ${f}ile into which to write the breakpoints.">;455 def breakpoint_write_append456 : Option<"append", "a">,457 Desc<"${A}ppend to saved breakpoints file if it exists.">;458}459 460let Command = "breakpoint command add" in {461 def breakpoint_add_one_liner462 : Option<"one-liner", "o">,463 Group<1>,464 Arg<"OneLiner">,465 Desc<"Specify a ${o}ne-line breakpoint command inline. Be sure to "466 "surround it with quotes.">;467 def breakpoint_add_stop_on_error468 : Option<"stop-on-error", "e">,469 Arg<"Boolean">,470 Desc<"Specify whether breakpoint command execution should terminate on "471 "error.">;472 def breakpoint_add_script_type473 : Option<"script-type", "s">,474 EnumArg<"ScriptLang">,475 Desc<"Specify the language for the commands - if none is specified, "476 "the lldb command interpreter will be used.">;477 def breakpoint_add_dummy_breakpoints478 : Option<"dummy-breakpoints", "D">,479 Desc<"Sets Dummy breakpoints - i.e. breakpoints set before a file is "480 "provided, which prime new targets.">;481}482 483let Command = "breakpoint command delete" in {484 def breakpoint_command_delete_dummy_breakpoints485 : Option<"dummy-breakpoints", "D">,486 Group<1>,487 Desc<"Delete commands from Dummy breakpoints - i.e. breakpoints set "488 "before a file is provided, which prime new targets.">;489}490 491let Command = "disassemble" in {492 def disassemble_options_bytes493 : Option<"bytes", "b">,494 Desc<"Show opcode ${b}ytes when disassembling.">;495 def disassemble_options_kind496 : Option<"kind", "k">,497 Desc<"Show instruction control flow ${k}ind. Refer to the enum "498 "`InstructionControlFlowKind` for a list of control flow kind. As "499 "an important note, far jumps, far calls and far returns often "500 "indicate calls to and from kernel.">;501 def disassemble_options_context502 : Option<"context", "C">,503 Arg<"NumLines">,504 Desc<"Number of ${c}ontext lines of source to show.">;505 def disassemble_options_mixed506 : Option<"mixed", "m">,507 Desc<"Enable ${m}ixed source and assembly display.">;508 def disassemble_options_raw509 : Option<"raw", "r">,510 Desc<"Print ${r}aw disassembly with no symbol information.">;511 def disassemble_options_plugin512 : Option<"plugin", "P">,513 Arg<"Plugin">,514 Desc<"Name of the disassembler ${p}lugin you want to use.">;515 def disassemble_options_flavor516 : Option<"flavor", "F">,517 Arg<"DisassemblyFlavor">,518 Desc<"Name of the disassembly ${f}lavor you want to use. Currently the "519 "only valid options are default, and for Intel architectures, att "520 "and intel.">;521 def disassemble_options_cpu : Option<"cpu", "X">,522 Arg<"CPUName">,523 Desc<"Override the CPU for disassembling.">;524 def disassemble_options_features525 : Option<"features", "Y">,526 Arg<"CPUFeatures">,527 Desc<"Specify additional CPU features for disassembling.">;528 def disassemble_options_arch529 : Option<"arch", "A">,530 Arg<"Architecture">,531 Desc<"Specify the ${a}rchitecture to use for cross disassembly.">;532 def disassemble_options_start_address533 : Option<"start-address", "s">,534 Groups<[1, 2]>,535 Arg<"AddressOrExpression">,536 Required,537 Desc<"Address at which to ${s}tart disassembling.">;538 def disassemble_options_end_address539 : Option<"end-address", "e">,540 Group<1>,541 Arg<"AddressOrExpression">,542 Desc<"Address at which to ${e}nd disassembling.">;543 def disassemble_options_count : Option<"count", "c">,544 Groups<[2, 3, 4, 5, 7]>,545 Arg<"NumLines">,546 Desc<"Number of instructions to display.">;547 def disassemble_options_name548 : Option<"name", "n">,549 Group<3>,550 Arg<"FunctionName">,551 Completion<"Symbol">,552 Desc<"Disassemble entire contents of the given function ${n}ame.">;553 def disassemble_options_frame554 : Option<"frame", "f">,555 Group<4>,556 Desc<"Disassemble from the start of the current frame's function.">;557 def disassemble_options_pc : Option<"pc", "p">,558 Group<5>,559 Desc<"Disassemble around the current ${p}c.">;560 def disassemble_options_line561 : Option<"line", "l">,562 Group<6>,563 Desc<"Disassemble the current frame's current source ${l}ine "564 "instructions if there is debug line table information, else "565 "disassemble around the pc.">;566 def disassemble_options_address567 : Option<"address", "a">,568 Group<7>,569 Arg<"AddressOrExpression">,570 Desc<"Disassemble function containing this ${a}ddress.">;571 def disassemble_options_force : Option<"force", "\\x01">,572 Groups<[2, 3, 4, 5, 7]>,573 Desc<"Force disassembly of large functions.">;574 def disassemble_options_variable575 : Option<"variable", "v">,576 Desc<"Enable ${v}ariable disassembly annotations for this invocation.">;577}578 579let Command = "diagnostics dump" in {580 def diagnostics_dump_directory581 : Option<"directory", "d">,582 Group<1>,583 Arg<"Path">,584 Desc<"Dump the diagnostics to the given directory.">;585}586 587let Command = "expression" in {588 def expression_options_all_threads589 : Option<"all-threads", "a">,590 Groups<[1, 2]>,591 Arg<"Boolean">,592 Desc<593 "Should we run ${a}ll threads if the execution doesn't complete on "594 "one thread.">;595 def expression_options_ignore_breakpoints596 : Option<"ignore-breakpoints", "i">,597 Groups<[1, 2]>,598 Arg<"Boolean">,599 Desc<"${I}gnore breakpoint hits while running expressions">;600 def expression_options_timeout601 : Option<"timeout", "t">,602 Groups<[1, 2]>,603 Arg<"UnsignedInteger">,604 Desc<"${T}imeout value (in microseconds) for running the expression.">;605 def expression_options_unwind_on_error606 : Option<"unwind-on-error", "u">,607 Groups<[1, 2]>,608 Arg<"Boolean">,609 Desc<"Clean up program state if the expression causes a crash, or "610 "raises a signal. Note, unlike gdb hitting a breakpoint is "611 "controlled by another option (-i).">;612 def expression_options_debug613 : Option<"debug", "g">,614 Groups<[1, 2]>,615 Desc<"When specified, debug the JIT code by setting a breakpoint on "616 "the first instruction and forcing breakpoints to not be ignored "617 "(-i0) and no unwinding to happen on error (-u0).">;618 def expression_options_language619 : Option<"language", "l">,620 Groups<[1, 2, 3]>,621 Arg<"Language">,622 Desc<"Specifies the Language to use when parsing the expression. If "623 "not set the target.language setting is used.">;624 def expression_options_apply_fixits625 : Option<"apply-fixits", "X">,626 Groups<[1, 2]>,627 Arg<"Boolean">,628 Desc<"If true, simple fix-it hints will be automatically applied to "629 "the expression.">;630 def expression_options_description_verbosity631 : Option<"description-verbosity", "v">,632 Group<1>,633 OptionalEnumArg<"DescriptionVerbosity">,634 Desc<"How verbose should the output of this expression be, if the "635 "object description is asked for.">;636 def expression_options_top_level637 : Option<"top-level", "p">,638 Groups<[1, 2]>,639 Desc<"Interpret the expression as a complete translation unit, without "640 "injecting it into the local context. Allows declaration of "641 "persistent, top-level entities without a $ prefix.">;642 def expression_options_allow_jit643 : Option<"allow-jit", "j">,644 Groups<[1, 2]>,645 Arg<"Boolean">,646 Desc<"Controls whether the expression can fall back to being JITted if "647 "it's not supported by the interpreter (defaults to true).">;648 def persistent_result649 : Option<"persistent-result", "\\x01">,650 Groups<[1, 2]>,651 Arg<"Boolean">,652 Desc<"Persist expression result in a variable for subsequent use. "653 "Expression results will be labeled with $-prefixed variables, "654 "e.g. $0, $1, etc.">;655}656 657let Command = "frame diag" in {658 def frame_diag_register : Option<"register", "r">,659 Group<1>,660 Arg<"RegisterName">,661 Desc<"A register to diagnose.">;662 def frame_diag_address : Option<"address", "a">,663 Group<1>,664 Arg<"Address">,665 Desc<"An address to diagnose.">;666 def frame_diag_offset : Option<"offset", "o">,667 Group<1>,668 Arg<"Offset">,669 Desc<"An optional offset. Requires --register.">;670}671 672let Command = "frame select" in {673 def frame_select_relative674 : Option<"relative", "r">,675 Group<1>,676 Arg<"Offset">,677 Desc<"A relative frame index offset from the current frame index.">;678}679 680let Command = "frame recognizer add" in {681 def frame_recognizer_shlib : Option<"shlib", "s">,682 Arg<"ShlibName">,683 Completion<"Module">,684 Desc<"Name of the module or shared library that "685 "this recognizer applies to.">;686 def frame_recognizer_function687 : Option<"function", "n">,688 Arg<"Name">,689 Completion<"Symbol">,690 Desc<"Name of the function that this recognizer applies to. Can be "691 "specified more than once except if -x|--regex is provided.">;692 def frame_recognizer_python_class : Option<"python-class", "l">,693 Group<2>,694 Arg<"PythonClass">,695 Desc<"Give the name of a Python class to "696 "use for this frame recognizer.">;697 def frame_recognizer_regex698 : Option<"regex", "x">,699 Desc<"Function name and module name are actually regular expressions.">;700 def frame_recognizer_first_instruction_only701 : Option<"first-instruction-only", "f">,702 Arg<"Boolean">,703 Desc<"If true, only apply this recognizer to frames whose PC currently "704 "points to the first instruction of the specified function. If "705 "false, the recognizer will always be applied, regardless of the "706 "current position within the specified function. The implementer "707 "should keep in mind that some features, e.g., accessing function "708 "argument values via $arg<N>, are not guaranteed to work reliably "709 "in this case, so extra care must be taken to make the recognizer "710 "operate correctly. Defaults to true.">;711}712 713let Command = "history" in {714 def history_count : Option<"count", "c">,715 Group<1>,716 Arg<"UnsignedInteger">,717 Desc<"How many history commands to print.">;718 def history_start_index : Option<"start-index", "s">,719 Group<1>,720 Arg<"UnsignedInteger">,721 Desc<"Index at which to start printing history "722 "commands (or end to mean tail mode).">;723 def history_end_index724 : Option<"end-index", "e">,725 Group<1>,726 Arg<"UnsignedInteger">,727 Desc<"Index at which to stop printing history commands.">;728 def history_clear : Option<"clear", "C">,729 Group<2>,730 Desc<"Clears the current command history.">;731}732 733let Command = "log enable" in {734 def log_file : Option<"file", "f">,735 Group<1>,736 Arg<"Filename">,737 Desc<"Set the destination file to log to.">;738 def log_handler : Option<"log-handler", "h">,739 Group<1>,740 EnumArg<"LogHandler">,741 Desc<"Specify a log handler which determines where log "742 "messages are written.">;743 def log_buffer_size : Option<"buffer", "b">,744 Group<1>,745 Arg<"UnsignedInteger">,746 Desc<"Set the log to be buffered, using the specified "747 "buffer size, if supported by the log handler.">;748 def log_verbose : Option<"verbose", "v">,749 Group<1>,750 Desc<"Enable verbose logging.">;751 def log_sequence752 : Option<"sequence", "s">,753 Group<1>,754 Desc<"Prepend all log lines with an increasing integer sequence id.">;755 def log_timestamp : Option<"timestamp", "T">,756 Group<1>,757 Desc<"Prepend all log lines with a timestamp.">;758 def log_pid_tid : Option<"pid-tid", "p">,759 Group<1>,760 Desc<"Prepend all log lines with the process and thread ID "761 "that generates the log line.">;762 def log_thread_name : Option<"thread-name", "n">,763 Group<1>,764 Desc<"Prepend all log lines with the thread name for "765 "the thread that generates the log line.">;766 767 def log_stack : Option<"stack", "S">,768 Group<1>,769 Desc<"Append a stack backtrace to each log line.">;770 def log_append : Option<"append", "a">,771 Group<1>,772 Desc<"Append to the log file instead of overwriting.">;773 def log_file_function774 : Option<"file-function", "F">,775 Group<1>,776 Desc<"Prepend the names of files and function that generate the logs.">;777}778 779let Command = "log dump" in {780 def log_dump_file : Option<"file", "f">,781 Group<1>,782 Arg<"Filename">,783 Desc<"Set the destination file to dump to.">;784}785 786let Command = "memory read" in {787 def memory_read_num_per_line788 : Option<"num-per-line", "l">,789 Group<1>,790 Arg<"NumberPerLine">,791 Desc<"The number of items per line to display.">;792 def memory_read_binary793 : Option<"binary", "b">,794 Group<2>,795 Desc<"If true, memory will be saved as binary. If false, the memory is "796 "saved save as an ASCII dump that uses the format, size, count "797 "and number per line settings.">;798 def memory_read_type : Option<"type", "t">,799 Groups<[3, 4]>,800 Arg<"Name">,801 Required,802 Desc<"The name of a type to view memory as.">;803 def memory_read_language804 : Option<"language", "x">,805 Group<4>,806 Arg<"Language">,807 Desc<"The language of the type to view memory as.">;808 def memory_read_offset : Option<"offset", "E">,809 Group<3>,810 Arg<"Count">,811 Desc<"How many elements of the specified type to "812 "skip before starting to display data.">;813 def memory_read_force814 : Option<"force", "r">,815 Groups<[1, 2, 3]>,816 Desc<"Necessary if reading over target.max-memory-read-size bytes.">;817}818 819let Command = "memory find" in {820 def memory_find_expression821 : Option<"expression", "e">,822 Group<1>,823 Arg<"Expression">,824 Required,825 Desc<"Evaluate an expression to obtain a byte pattern.">;826 def memory_find_string : Option<"string", "s">,827 Group<2>,828 Arg<"Name">,829 Required,830 Desc<"Use text to find a byte pattern.">;831 def memory_find_count : Option<"count", "c">,832 Arg<"Count">,833 Desc<"How many times to perform the search.">;834 def memory_find_dump_offset835 : Option<"dump-offset", "o">,836 Arg<"Offset">,837 Desc<"When dumping memory for a match, an offset from the match "838 "location to start dumping from.">;839}840 841let Command = "memory write" in {842 def memory_write_infile : Option<"infile", "i">,843 Group<1>,844 Arg<"Filename">,845 Required,846 Desc<"Write memory using the contents of a file.">;847 def memory_write_offset848 : Option<"offset", "o">,849 Group<1>,850 Arg<"Offset">,851 Desc<"Start writing bytes from an offset within the input file.">;852}853 854let Command = "memory region" in {855 def memory_region_all : Option<"all", "a">,856 Group<2>,857 Required,858 Desc<"Show all memory regions. This is equivalent to "859 "starting from address 0 and repeating the "860 "command. Unmapped areas are included.">;861}862 863let Command = "memory tag write" in {864 def memory_write_end_addr865 : Option<"end-addr", "e">,866 Group<1>,867 Arg<"AddressOrExpression">,868 Desc<"Set tags for start address to end-addr, repeating tags as needed "869 "to cover the range. (instead of calculating the range from the "870 "number of tags given)">;871}872 873let Command = "register read" in {874 def register_read_alternate875 : Option<"alternate", "A">,876 Desc<"Display register names using the alternate register name if "877 "there is one.">;878 def register_read_set : Option<"set", "s">,879 Group<1>,880 Arg<"Index">,881 Desc<"Specify which register sets to dump by index.">;882 def register_read_all : Option<"all", "a">,883 Group<2>,884 Desc<"Show all register sets.">;885}886 887let Command = "source" in {888 def source_stop_on_error : Option<"stop-on-error", "e">,889 Arg<"Boolean">,890 Desc<"If true, stop executing commands on error.">;891 def source_stop_on_continue892 : Option<"stop-on-continue", "c">,893 Arg<"Boolean">,894 Desc<"If true, stop executing commands on continue.">;895 def source_silent_run : Option<"silent-run", "s">,896 Arg<"Boolean">,897 Desc<"If true don't echo commands while executing.">;898 def cmd_relative_to_command_file899 : Option<"relative-to-command-file", "C">,900 Desc<"Resolve non-absolute paths relative to the location of the "901 "current command file. This argument can only be used when the "902 "command is being sourced from a file.">;903}904 905let Command = "alias" in {906 def alias_help : Option<"help", "h">,907 Arg<"HelpText">,908 Desc<"Help text for this command">;909 def alias_long_help : Option<"long-help", "H">,910 Arg<"HelpText">,911 Desc<"Long help text for this command">;912}913 914let Command = "regex" in {915 def regex_help : Option<"help", "h">,916 Group<1>,917 Arg<"None">,918 Desc<"The help text to display for this command.">;919 def regex_syntax : Option<"syntax", "s">,920 Group<1>,921 Arg<"None">,922 Desc<"A syntax string showing the typical usage syntax.">;923}924 925let Command = "permissions" in {926 def permissions_permissions_value927 : Option<"permissions-value", "v">,928 Arg<"PermissionsNumber">,929 Desc<"Give out the numeric value for permissions (e.g. 757)">;930 def permissions_permissions_string931 : Option<"permissions-string", "s">,932 Arg<"PermissionsString">,933 Desc<"Give out the string value for permissions (e.g. rwxr-xr--).">;934 def permissions_user_read : Option<"user-read", "r">,935 Desc<"Allow user to read.">;936 def permissions_user_write : Option<"user-write", "w">,937 Desc<"Allow user to write.">;938 def permissions_user_exec : Option<"user-exec", "x">,939 Desc<"Allow user to execute.">;940 def permissions_group_read : Option<"group-read", "R">,941 Desc<"Allow group to read.">;942 def permissions_group_write : Option<"group-write", "W">,943 Desc<"Allow group to write.">;944 def permissions_group_exec : Option<"group-exec", "X">,945 Desc<"Allow group to execute.">;946 def permissions_world_read : Option<"world-read", "d">,947 Desc<"Allow world to read.">;948 def permissions_world_write : Option<"world-write", "t">,949 Desc<"Allow world to write.">;950 def permissions_world_exec : Option<"world-exec", "e">,951 Desc<"Allow world to execute.">;952}953 954let Command = "platform fread" in {955 def platform_fread_offset956 : Option<"offset", "o">,957 Group<1>,958 Arg<"Index">,959 Desc<"Offset into the file at which to start reading.">;960 def platform_fread_count : Option<"count", "c">,961 Group<1>,962 Arg<"Count">,963 Desc<"Number of bytes to read from the file.">;964}965 966let Command = "platform fwrite" in {967 def platform_fwrite_offset968 : Option<"offset", "o">,969 Group<1>,970 Arg<"Index">,971 Desc<"Offset into the file at which to start reading.">;972 def platform_fwrite_data : Option<"data", "d">,973 Group<1>,974 Arg<"Value">,975 Desc<"Text to write to the file.">;976}977 978let Command = "platform process list" in {979 def platform_process_list_pid980 : Option<"pid", "p">,981 Group<1>,982 Arg<"Pid">,983 Desc<"List the process info for a specific process ID.">;984 def platform_process_list_name985 : Option<"name", "n">,986 Group<2>,987 Arg<"ProcessName">,988 Required,989 Desc<"Find processes with executable basenames that match a string.">;990 def platform_process_list_ends_with991 : Option<"ends-with", "e">,992 Group<3>,993 Arg<"ProcessName">,994 Required,995 Desc<996 "Find processes with executable basenames that end with a string.">;997 def platform_process_list_starts_with998 : Option<"starts-with", "s">,999 Group<4>,1000 Arg<"ProcessName">,1001 Required,1002 Desc<"Find processes with executable basenames that start with a "1003 "string.">;1004 def platform_process_list_contains1005 : Option<"contains", "c">,1006 Group<5>,1007 Arg<"ProcessName">,1008 Required,1009 Desc<"Find processes with executable basenames that contain a string.">;1010 def platform_process_list_regex1011 : Option<"regex", "r">,1012 Group<6>,1013 Arg<"RegularExpression">,1014 Required,1015 Desc<"Find processes with executable basenames that match a regular "1016 "expression.">;1017 def platform_process_list_parent1018 : Option<"parent", "P">,1019 GroupRange<2, 6>,1020 Arg<"Pid">,1021 Desc<"Find processes that have a matching parent process ID.">;1022 def platform_process_list_uid1023 : Option<"uid", "u">,1024 GroupRange<2, 6>,1025 Arg<"UnsignedInteger">,1026 Validator<"&posix_validator">,1027 Desc<"Find processes that have a matching user ID.">;1028 def platform_process_list_euid1029 : Option<"euid", "U">,1030 GroupRange<2, 6>,1031 Arg<"UnsignedInteger">,1032 Validator<"&posix_validator">,1033 Desc<"Find processes that have a matching effective user ID.">;1034 def platform_process_list_gid1035 : Option<"gid", "g">,1036 GroupRange<2, 6>,1037 Arg<"UnsignedInteger">,1038 Validator<"&posix_validator">,1039 Desc<"Find processes that have a matching group ID.">;1040 def platform_process_list_egid1041 : Option<"egid", "G">,1042 GroupRange<2, 6>,1043 Arg<"UnsignedInteger">,1044 Validator<"&posix_validator">,1045 Desc<"Find processes that have a matching effective group ID.">;1046 def platform_process_list_arch1047 : Option<"arch", "a">,1048 GroupRange<2, 6>,1049 Arg<"Architecture">,1050 Desc<"Find processes that have a matching architecture.">;1051 def platform_process_list_show_args1052 : Option<"show-args", "A">,1053 GroupRange<1, 6>,1054 Desc<"Show process arguments instead of the process executable "1055 "basename.">;1056 def platform_process_list_all_users1057 : Option<"all-users", "x">,1058 GroupRange<1, 6>,1059 Desc<"Show processes matching all user IDs.">;1060 def platform_process_list_verbose : Option<"verbose", "v">,1061 GroupRange<1, 6>,1062 Desc<"Enable verbose output.">;1063}1064 1065let Command = "platform process attach" in {1066 def platform_process_attach_plugin1067 : Option<"plugin", "P">,1068 Arg<"Plugin">,1069 Desc<"Name of the process plugin you want to use.">;1070 def platform_process_attach_pid1071 : Option<"pid", "p">,1072 Group<1>,1073 Arg<"Pid">,1074 Desc<"The process ID of an existing process to attach to.">;1075 def platform_process_attach_name1076 : Option<"name", "n">,1077 Group<2>,1078 Arg<"ProcessName">,1079 Desc<"The name of the process to attach to.">;1080 def platform_process_attach_waitfor1081 : Option<"waitfor", "w">,1082 Group<2>,1083 Desc<"Wait for the process with <process-name> to launch.">;1084}1085 1086let Command = "platform shell" in {1087 def platform_shell_host1088 : Option<"host", "h">,1089 Desc<"Run the commands on the host shell when enabled.">;1090 def platform_shell_timeout : Option<"timeout", "t">,1091 Arg<"Value">,1092 Desc<"Seconds to wait for the remote host to "1093 "finish running the command.">;1094 def platform_shell_interpreter : Option<"shell", "s">,1095 Arg<"Path">,1096 Desc<"Shell interpreter path. This is the "1097 "binary used to run the command.">;1098}1099 1100let Command = "plugin list" in {1101 def plugin_list_json : Option<"json", "j">,1102 Desc<"Output the plugin list in json format.">;1103}1104 1105let Command = "process launch" in {1106 def process_launch_stop_at_entry1107 : Option<"stop-at-entry", "s">,1108 Desc<1109 "Stop at the entry point of the program when launching a process.">;1110 def process_launch_stop_at_user_entry1111 : Option<"stop-at-user-entry", "m">,1112 Desc<"Stop at the user entry point when launching a process. For C "1113 "based languages this will be the 'main' function, but this might "1114 "differ for other languages.">;1115 def process_launch_disable_aslr1116 : Option<"disable-aslr", "A">,1117 Arg<"Boolean">,1118 Desc<"Set whether to disable address space layout randomization when "1119 "launching a process.">;1120 def process_launch_plugin1121 : Option<"plugin", "P">,1122 Arg<"Plugin">,1123 Desc<"Name of the process plugin you want to use.">;1124 def process_launch_working_dir1125 : Option<"working-dir", "w">,1126 Arg<"DirectoryName">,1127 Desc<"Set the current working directory to <path> when running the "1128 "inferior. This option applies only to the current `process "1129 "launch` invocation. If `target.launch-working-dir` is set and "1130 "this option is given, the value of this option will be used "1131 "instead of the setting.">;1132 def process_launch_arch1133 : Option<"arch", "a">,1134 Arg<"Architecture">,1135 Desc<"Set the architecture for the process to launch when ambiguous.">;1136 def process_launch_environment1137 : Option<"environment", "E">,1138 Arg<"None">,1139 Desc<"Specify an environment variable name/value string (--environment "1140 "NAME=VALUE). Can be specified multiple times for subsequent "1141 "environment entries.">;1142 def process_launch_shell1143 : Option<"shell", "c">,1144 GroupRange<1, 3>,1145 OptionalArg<"Filename">,1146 Desc<"Run the process in a shell (not supported on all platforms).">;1147 def process_launch_stdin1148 : Option<"stdin", "i">,1149 Group<1>,1150 Arg<"Filename">,1151 Desc<"Redirect stdin for the process to <filename>.">;1152 def process_launch_stdout1153 : Option<"stdout", "o">,1154 Group<1>,1155 Arg<"Filename">,1156 Desc<"Redirect stdout for the process to <filename>.">;1157 def process_launch_stderr1158 : Option<"stderr", "e">,1159 Group<1>,1160 Arg<"Filename">,1161 Desc<"Redirect stderr for the process to <filename>.">;1162 def process_launch_tty : Option<"tty", "t">,1163 Group<2>,1164 Desc<"Start the process in a terminal (not "1165 "supported on all platforms).">;1166 def process_launch_no_stdio1167 : Option<"no-stdio", "n">,1168 Group<3>,1169 Desc<"Do not set up for terminal I/O to go to running process.">;1170 def process_launch_shell_expand_args1171 : Option<"shell-expand-args", "X">,1172 Group<4>,1173 Arg<"Boolean">,1174 Desc<"Set whether to shell expand arguments to the process when "1175 "launching.">;1176 def process_launch_memory_tagging1177 : Option<"memory-tagging", "M">,1178 Desc<"Set whether to explicitly enable memory tagging when launching "1179 "the process. Requires hardware support. "1180 "(Only supported on Darwin.)">;1181}1182 1183let Command = "process attach" in {1184 def process_attach_continue1185 : Option<"continue", "c">,1186 Desc<"Immediately ${c}ontinue the process once attached.">;1187 def process_attach_plugin1188 : Option<"plugin", "P">,1189 Arg<"Plugin">,1190 Desc<"Name of the process ${p}lugin you want to use.">;1191 def process_attach_pid1192 : Option<"pid", "p">,1193 Group<1>,1194 Arg<"Pid">,1195 Desc<"The ${p}rocess ID of an existing process to attach to.">;1196 def process_attach_name : Option<"name", "n">,1197 Group<2>,1198 Arg<"ProcessName">,1199 Desc<"The ${n}ame of the process to attach to.">;1200 def process_attach_include_existing1201 : Option<"include-existing", "i">,1202 Group<2>,1203 Desc<"${I}nclude existing processes when doing attach -w.">;1204 def process_attach_waitfor1205 : Option<"waitfor", "w">,1206 Group<2>,1207 Desc<"${W}ait for the process with <process-name> to launch.">;1208}1209 1210let Command = "process continue" in {1211 def process_continue_ignore_count1212 : Option<"ignore-count", "i">,1213 Groups<[1, 2]>,1214 Arg<"UnsignedInteger">,1215 Desc<"Ignore <N> crossings of the breakpoint (if it exists) for the "1216 "currently selected thread.">;1217 def process_continue_run_to_bkpt1218 : Option<"continue-to-bkpt", "b">,1219 Groups<[3, 4]>,1220 Arg<"BreakpointIDRange">,1221 Desc<"Specify a breakpoint to continue to, temporarily ignoring other "1222 "breakpoints. Can be specified more than once. The continue "1223 "action will be done synchronously if this option is specified.">;1224 def thread_continue_forward1225 : Option<"forward", "F">,1226 Groups<[1, 3]>,1227 Desc<"Set the direction to forward before continuing.">;1228 def thread_continue_reverse1229 : Option<"reverse", "R">,1230 Groups<[2, 4]>,1231 Desc<"Set the direction to reverse before continuing.">;1232}1233 1234let Command = "process detach" in {1235 def process_detach_keep_stopped1236 : Option<"keep-stopped", "s">,1237 Group<1>,1238 Arg<"Boolean">,1239 Desc<"Whether or not the process should be kept stopped on"1240 " detach (if possible).">;1241}1242 1243let Command = "process connect" in {1244 def process_connect_plugin1245 : Option<"plugin", "p">,1246 Arg<"Plugin">,1247 Desc<"Name of the process plugin you want to use.">;1248}1249 1250let Command = "process load" in {1251 def process_load_install1252 : Option<"install", "i">,1253 OptionalArg<"Path">,1254 Desc<1255 "Install the shared library to the target. If specified without an "1256 "argument then the library will installed in the current working "1257 "directory.">;1258}1259 1260let Command = "process handle" in {1261 def process_handle_clear1262 : Option<"clear", "c">,1263 Group<2>,1264 Desc<"Removes the signals listed from the Target signal handlers">;1265 def process_handle_stop1266 : Option<"stop", "s">,1267 Group<1>,1268 Arg<"Boolean">,1269 Desc<"Whether or not the process should be stopped if the signal is "1270 "received.">;1271 def process_handle_notify : Option<"notify", "n">,1272 Group<1>,1273 Arg<"Boolean">,1274 Desc<"Whether or not the debugger should notify "1275 "the user if the signal is "1276 "received.">;1277 def process_handle_pass1278 : Option<"pass", "p">,1279 Group<1>,1280 Arg<"Boolean">,1281 Desc<"Whether or not the signal should be passed to the process.">;1282 def process_handle_only_target1283 : Option<"target", "t">,1284 Group<1>,1285 Desc<"Show only the signals with behaviors modified in this target">;1286 def process_handle_dummy : Option<"dummy", "d">,1287 Group<2>,1288 Desc<"Also clear the values in the dummy target "1289 "so they won't be inherited by new targets.">;1290}1291 1292let Command = "process status" in {1293 def process_status_verbose : Option<"verbose", "v">,1294 Group<1>,1295 Desc<"Show verbose process status including "1296 "extended crash information.">;1297 def process_status_dump1298 : Option<"dump-modification-id", "d">,1299 Group<1>,1300 Desc<"Dump the state of the ProcessModID of the stopped process.">;1301}1302 1303let Command = "process save_core" in {1304 def process_save_core_style : Option<"style", "s">,1305 Group<1>,1306 EnumArg<"SaveCoreStyle">,1307 Desc<"Request a specific style "1308 "of corefile to be saved.">;1309 def process_save_core_plugin_name1310 : Option<"plugin-name", "p">,1311 OptionalArg<"Plugin">,1312 Desc<"Specify a plugin name to create the core file. "1313 "This allows core files to be saved in different formats.">;1314}1315 1316let Command = "script import" in {1317 def script_import_allow_reload1318 : Option<"allow-reload", "r">,1319 Group<1>,1320 Desc<"Allow the script to be loaded even if it was already loaded "1321 "before. "1322 "This argument exists for backwards compatibility, but reloading "1323 "is always "1324 "allowed, whether you specify it or not.">;1325 def relative_to_command_file1326 : Option<"relative-to-command-file", "c">,1327 Group<1>,1328 Desc<"Resolve non-absolute paths relative to the location of the "1329 "current command file. This argument can only be used when the "1330 "command is "1331 "being sourced from a file.">;1332 def silent : Option<"silent", "s">,1333 Group<1>,1334 Desc<"If true don't print any script output while importing.">;1335}1336 1337let Command = "script add" in {1338 def script_add_function1339 : Option<"function", "f">,1340 Group<1>,1341 Arg<"PythonFunction">,1342 Desc<"Name of the Python function to bind to this command name.">;1343 def script_add_class1344 : Option<"class", "c">,1345 Groups<[2, 3]>,1346 Arg<"PythonClass">,1347 Desc<"Name of the Python class to bind to this command name.">;1348 def script_add_help : Option<"help", "h">,1349 Group<1>,1350 Arg<"HelpText">,1351 Desc<"The help text to display for this command.">;1352 def script_add_overwrite1353 : Option<"overwrite", "o">,1354 Desc<"Overwrite an existing command at this node.">;1355 def script_add_synchronicity1356 : Option<"synchronicity", "s">,1357 EnumArg<"ScriptedCommandSynchronicity">,1358 Desc<1359 "Set the synchronicity of this command's executions with regard to "1360 "LLDB event system.">;1361 def script_add_completion_type1362 : Option<"completion-type", "C">,1363 Groups<[1, 2]>,1364 EnumArg<"CompletionType">,1365 Desc<1366 "Specify which completion type the command should use - if none is "1367 "specified, the command won't use auto-completion.">;1368 def script_add_parsed_command1369 : Option<"parsed", "p">,1370 Group<3>,1371 Desc<1372 "Make a parsed command. The command class will provide the command "1373 "definition by implementing get_options and get_arguments.">;1374}1375 1376let Command = "container add" in {1377 def container_add_help : Option<"help", "h">,1378 Arg<"HelpText">,1379 Desc<"Help text for this command">;1380 def container_add_long_help : Option<"long-help", "H">,1381 Arg<"HelpText">,1382 Desc<"Long help text for this command">;1383 def container_add_overwrite1384 : Option<"overwrite", "o">,1385 Group<1>,1386 Desc<"Overwrite an existing command at this node.">;1387}1388 1389let Command = "scripting run" in {1390 def script_language : Option<"language", "l">,1391 EnumArg<"ScriptLang">,1392 Desc<"Specify the scripting "1393 " language. If none is specific the default "1394 "scripting language is used.">;1395}1396 1397let Command = "scripting extension list" in {1398 def scripting_extension_list_language1399 : Option<"language", "l">,1400 EnumArg<"ScriptLang">,1401 Desc<"Specify the scripting "1402 " language. If none is specified the default scripting language "1403 "is used.">;1404}1405 1406let Command = "source info" in {1407 def source_info_count : Option<"count", "c">,1408 Arg<"Count">,1409 Desc<"The number of line entries to display.">;1410 def source_info_shlib1411 : Option<"shlib", "s">,1412 Groups<[1, 2]>,1413 Arg<"ShlibName">,1414 Completion<"Module">,1415 Desc<"Look up the source in the given module or "1416 "shared library (can be specified more than once).">;1417 def source_info_file : Option<"file", "f">,1418 Group<1>,1419 Arg<"Filename">,1420 Completion<"SourceFile">,1421 Desc<"The file from which to display source.">;1422 def source_info_line1423 : Option<"line", "l">,1424 Group<1>,1425 Arg<"LineNum">,1426 Desc<"The line number at which to start the displaying lines.">;1427 def source_info_end_line1428 : Option<"end-line", "e">,1429 Group<1>,1430 Arg<"LineNum">,1431 Desc<"The line number at which to stop displaying lines.">;1432 def source_info_name1433 : Option<"name", "n">,1434 Group<2>,1435 Arg<"Symbol">,1436 Completion<"Symbol">,1437 Desc<"The name of a function whose source to display.">;1438 def source_info_address1439 : Option<"address", "a">,1440 Group<3>,1441 Arg<"AddressOrExpression">,1442 Desc<"Lookup the address and display the source"1443 " information for the corresponding file and line.">;1444}1445 1446let Command = "source list" in {1447 def source_list_count : Option<"count", "c">,1448 Arg<"Count">,1449 Desc<"The number of source lines to display.">;1450 def source_list_shlib1451 : Option<"shlib", "s">,1452 Groups<[1, 2, 5]>,1453 Arg<"ShlibName">,1454 Completion<"Module">,1455 Desc<"Look up the source file in the given shared library.">;1456 def source_list_show_breakpoints1457 : Option<"show-breakpoints", "b">,1458 Desc<"Show the line table locations from the debug information that "1459 "indicate valid places to set source level breakpoints.">;1460 def source_list_file : Option<"file", "f">,1461 Group<1>,1462 Arg<"Filename">,1463 Completion<"SourceFile">,1464 Desc<"The file from which to display source.">;1465 def source_list_line1466 : Option<"line", "l">,1467 Group<1>,1468 Arg<"LineNum">,1469 Desc<"The line number at which to start displaying source.">;1470 def source_list_name1471 : Option<"name", "n">,1472 Group<2>,1473 Arg<"Symbol">,1474 Completion<"Symbol">,1475 Desc<"The name of a function whose source to display.">;1476 def source_list_address1477 : Option<"address", "a">,1478 Group<3>,1479 Arg<"AddressOrExpression">,1480 Desc<"Lookup the address and display the source information for the "1481 "corresponding file and line.">;1482 def source_list_reverse : Option<"reverse", "r">,1483 Group<4>,1484 Desc<"Reverse the listing to look backwards from "1485 "the last displayed block of source.">;1486 def source_list_file_colon_line1487 : Option<"joint-specifier", "y">,1488 Group<5>,1489 Arg<"FileLineColumn">,1490 Completion<"SourceFile">,1491 Desc<"A specifier in the form filename:line[:column] from which to "1492 "display source.">;1493}1494 1495let Command = "target dependents" in {1496 def dependents_no_dependents1497 : Option<"no-dependents", "d">,1498 Group<1>,1499 OptionalEnumArg<"Value">,1500 Desc<"Whether or not to load dependents when creating a target. If the "1501 "option is not specified, the value is implicitly 'default'. If "1502 "the "1503 "option is specified but without a value, the value is implicitly "1504 "'true'.">;1505}1506 1507let Command = "target modules dump" in {1508 def target_modules_dump_verbose : Option<"verbose", "v">,1509 Desc<"Enable verbose dump.">;1510}1511 1512let Command = "target modules list" in {1513 def target_modules_list_address : Option<"address", "a">,1514 Group<1>,1515 Arg<"AddressOrExpression">,1516 Desc<"Display the image at this address.">;1517 def target_modules_list_arch1518 : Option<"arch", "A">,1519 Group<1>,1520 OptionalArg<"Width">,1521 Desc<"Display the architecture when listing images.">;1522 def target_modules_list_triple1523 : Option<"triple", "t">,1524 Group<1>,1525 OptionalArg<"Width">,1526 Desc<"Display the triple when listing images.">;1527 def target_modules_list_header : Option<"header", "h">,1528 Group<1>,1529 Desc<"Display the image base address as a "1530 "load address if debugging, a file"1531 " address otherwise.">;1532 def target_modules_list_offset1533 : Option<"offset", "o">,1534 Group<1>,1535 Desc<"Display the image load address offset from the base file address "1536 "(the slide amount).">;1537 def target_modules_list_uuid : Option<"uuid", "u">,1538 Group<1>,1539 Desc<"Display the UUID when listing images.">;1540 def target_modules_list_fullpath1541 : Option<"fullpath", "f">,1542 Group<1>,1543 OptionalArg<"Width">,1544 Desc<"Display the fullpath to the image object file.">;1545 def target_modules_list_directory1546 : Option<"directory", "d">,1547 Group<1>,1548 OptionalArg<"Width">,1549 Desc<"Display the directory with optional width for "1550 "the image object file.">;1551 def target_modules_list_basename1552 : Option<"basename", "b">,1553 Group<1>,1554 OptionalArg<"Width">,1555 Desc<"Display the basename with optional width for "1556 "the image object file.">;1557 def target_modules_list_symfile1558 : Option<"symfile", "s">,1559 Group<1>,1560 OptionalArg<"Width">,1561 Desc<"Display the fullpath to the image symbol file "1562 "with optional width.">;1563 def target_modules_list_symfile_unique1564 : Option<"symfile-unique", "S">,1565 Group<1>,1566 OptionalArg<"Width">,1567 Desc<"Display the symbol file with optional"1568 " width only if it is different from the executable object file.">;1569 def target_modules_list_mod_time1570 : Option<"mod-time", "m">,1571 Group<1>,1572 OptionalArg<"Width">,1573 Desc<"Display the modification time with optional "1574 "width of the module.">;1575 def target_modules_list_ref_count1576 : Option<"ref-count", "r">,1577 Group<1>,1578 OptionalArg<"Width">,1579 Desc<1580 "Display whether the module is still in the "1581 "the shared module cache (Y/N), and its shared pointer use_count.">;1582 def target_modules_list_pointer : Option<"pointer", "p">,1583 Group<1>,1584 OptionalArg<"None">,1585 Desc<"Display the module pointer.">;1586 def target_modules_list_global1587 : Option<"global", "g">,1588 Group<1>,1589 Desc<"Display the modules from the global module list, not just the "1590 "current target.">;1591}1592 1593let Command = "target modules show unwind" in {1594 def target_modules_show_unwind_name1595 : Option<"name", "n">,1596 Group<1>,1597 Arg<"FunctionName">,1598 Desc<"Show unwind instructions for a function or symbol name.">;1599 def target_modules_show_unwind_address1600 : Option<"address", "a">,1601 Group<2>,1602 Arg<"AddressOrExpression">,1603 Desc<"Show unwind instructions for a function "1604 "or symbol containing an address">;1605 def target_modules_show_unwind_cached1606 : Option<"cached", "c">,1607 Arg<"Boolean">,1608 Desc<"Show cached unwind information">;1609}1610 1611let Command = "target modules lookup" in {1612 def target_modules_lookup_address : Option<"address", "a">,1613 Group<1>,1614 Arg<"AddressOrExpression">,1615 Required,1616 Desc<"Lookup an address in one or "1617 "more target modules.">;1618 def target_modules_lookup_offset1619 : Option<"offset", "o">,1620 Group<1>,1621 Arg<"Offset">,1622 Desc<"When looking up an address subtract <offset> from any "1623 "addresses before doing the lookup.">;1624 // FIXME: re-enable regex for types when the LookupTypeInModule actually uses1625 // the regex option by adding to group 6.1626 def target_modules_lookup_regex1627 : Option<"regex", "r">,1628 Groups<[2, 4, 5]>,1629 Desc<"The <name> argument for name lookups are regular expressions.">;1630 def target_modules_lookup_symbol1631 : Option<"symbol", "s">,1632 Group<2>,1633 Arg<"Symbol">,1634 Required,1635 Desc<"Lookup a symbol by name in the symbol tables"1636 " in one or more target modules.">;1637 def target_modules_lookup_file1638 : Option<"file", "f">,1639 Group<3>,1640 Arg<"Filename">,1641 Required,1642 Desc<"Lookup a file by fullpath or basename in "1643 "one or more target modules.">;1644 def target_modules_lookup_line1645 : Option<"line", "l">,1646 Group<3>,1647 Arg<"LineNum">,1648 Desc<"Lookup a line number in a file (must be used in "1649 "conjunction with --file).">;1650 def target_modules_lookup_no_inlines1651 : Option<"no-inlines", "i">,1652 GroupRange<3, 5>,1653 Desc<1654 "Ignore inline entries (must be used in conjunction with --file or "1655 "--function).">;1656 def target_modules_lookup_function1657 : Option<"function", "F">,1658 Group<4>,1659 Arg<"FunctionName">,1660 Required,1661 Desc<"Lookup a function by name in the debug"1662 " symbols in one or more target modules.">;1663 def target_modules_lookup_name : Option<"name", "n">,1664 Group<5>,1665 Arg<"FunctionOrSymbol">,1666 Required,1667 Desc<"Lookup a function or symbol by "1668 "name in one or more target modules.">;1669 def target_modules_lookup_type1670 : Option<"type", "t">,1671 Group<6>,1672 Arg<"Name">,1673 Required,1674 Desc<"Lookup a type by name in the debug symbols in one or more "1675 "target modules.">;1676 def target_modules_lookup_variables_ranges1677 : Option<"show-variable-ranges", "\\x01">,1678 GroupRange<1, 6>,1679 Desc<"Dump valid ranges of variables (must be used in conjunction with "1680 "--verbose">;1681 def target_modules_lookup_verbose1682 : Option<"verbose", "v">,1683 Desc<"Enable verbose lookup information.">;1684 def target_modules_lookup_all : Option<"all", "A">,1685 Desc<"Print all matches, not just the best "1686 "match, if a best match is available.">;1687}1688 1689let Command = "target stop_hook add" in {1690 def target_stop_hook_add_one_liner1691 : Option<"one-liner", "o">,1692 GroupRange<1, 3>,1693 Arg<"OneLiner">,1694 Desc<"Add a command for the stop hook. Can be specified more than "1695 "once, and commands will be run in the order they appear.">;1696 def target_stop_hook_add_shlib1697 : Option<"shlib", "s">,1698 Arg<"ShlibName">,1699 Completion<"Module">,1700 Desc<"Set the module within which the stop-hook is to be run.">;1701 def target_stop_hook_add_thread_index1702 : Option<"thread-index", "x">,1703 Arg<"ThreadIndex">,1704 Desc<"The stop hook is run only for the thread whose index matches "1705 "this argument.">;1706 def target_stop_hook_add_thread_id1707 : Option<"thread-id", "t">,1708 Arg<"ThreadID">,1709 Desc<"The stop hook is run only for the thread whose TID matches this "1710 "argument.">;1711 def target_stop_hook_add_thread_name1712 : Option<"thread-name", "T">,1713 Arg<"ThreadName">,1714 Desc<"The stop hook is run only for the thread whose thread name "1715 "matches this argument.">;1716 def target_stop_hook_add_queue_name1717 : Option<"queue-name", "q">,1718 Arg<"QueueName">,1719 Desc<"The stop hook is run only for threads in the ${q}ueue whose name "1720 "is given by this argument.">;1721 def target_stop_hook_add_file : Option<"file", "f">,1722 Groups<[1, 4]>,1723 Arg<"Filename">,1724 Desc<"Specify the source ${f}ile within "1725 "which the stop-hook is to be run.">,1726 Completion<"SourceFile">;1727 def target_stop_hook_add_start_line1728 : Option<"start-line", "l">,1729 Groups<[1, 4]>,1730 Arg<"LineNum">,1731 Desc<"Set the start of the ${l}ine range for which the "1732 "stop-hook is to be run.">;1733 def target_stop_hook_add_end_line1734 : Option<"end-line", "e">,1735 Groups<[1, 4]>,1736 Arg<"LineNum">,1737 Desc<"Set the ${e}nd of the line range for which the stop-hook is to "1738 "be run.">;1739 def target_stop_hook_add_classname1740 : Option<"classname", "c">,1741 Groups<[2, 5]>,1742 Arg<"ClassName">,1743 Desc<"Specify the ${c}lass within which the stop-hook is to be run.">;1744 def target_stop_hook_add_name1745 : Option<"name", "n">,1746 Groups<[3, 6]>,1747 Arg<"FunctionName">,1748 Desc<1749 "Set the ${f}unction name within which the stop hook will be run.">,1750 Completion<"Symbol">;1751 def target_stop_hook_add_auto_continue1752 : Option<"auto-continue", "G">,1753 Arg<"Boolean">,1754 Desc<"The stop-hook will auto-continue after running its commands.">;1755 def target_stop_hook_add_at_initial_stop1756 : Option<"at-initial-stop", "I">,1757 Arg<"Boolean">,1758 Desc<"Whether the stop-hook will trigger when lldb ${i}nitially gains "1759 "control of the process. For a process launch, this initial stop "1760 "may happen very early on - before the loader has run. You can "1761 "use this option if you do not want some stop-hooks to run then. "1762 "Defaults to true.">;1763}1764 1765let Command = "target stop_hook list" in {1766 def target_stop_hook_list_internal1767 : Option<"internal", "i">,1768 Desc<"Show debugger ${i}nternal stop hooks.">;1769}1770 1771let Command = "thread backtrace" in {1772 def thread_backtrace_count : Option<"count", "c">,1773 Group<1>,1774 Arg<"Count">,1775 Desc<"How many frames to display (0 for all)">;1776 def thread_backtrace_start : Option<"start", "s">,1777 Group<1>,1778 Arg<"FrameIndex">,1779 Desc<"Frame in which to ${s}tart the backtrace">;1780 def thread_backtrace_extended1781 : Option<"extended", "e">,1782 Group<1>,1783 Arg<"Boolean">,1784 Desc<"Show the ${e}xtended backtrace, if available">;1785 def thread_backtrace_unfiltered : Option<"unfiltered", "u">,1786 Group<1>,1787 Desc<"Do not filter out frames according "1788 "to installed frame recognizers">;1789}1790 1791let Command = "thread step scope" in {1792 def thread_step_scope_step_in_avoids_no_debug1793 : Option<"step-in-avoids-no-debug", "a">,1794 Group<1>,1795 Arg<"Boolean">,1796 Desc<"A boolean value that sets whether stepping into functions will "1797 "step over functions with no debug information.">;1798 def thread_step_scope_step_out_avoids_no_debug1799 : Option<"step-out-avoids-no-debug", "A">,1800 Group<1>,1801 Arg<"Boolean">,1802 Desc<"A boolean value, if true stepping out of functions will continue "1803 "to step out till it hits a function with debug information.">;1804 def thread_step_scope_count1805 : Option<"count", "c">,1806 Group<1>,1807 Arg<"Count">,1808 Desc<"How many times to perform the stepping operation - currently "1809 "only supported for step-inst and next-inst.">;1810 def thread_step_scope_end_linenumber1811 : Option<"end-linenumber", "e">,1812 Group<1>,1813 Arg<"LineNum">,1814 Desc<"The line at which to stop stepping - defaults to the next line "1815 "and only supported for step-in and step-over. You can also pass "1816 "the string 'block' to step to the end of the current block. This "1817 "is particularly useful in conjunction with --step-target to step "1818 "through a complex calling sequence.">;1819 def thread_step_scope_run_mode : Option<"run-mode", "m">,1820 Group<1>,1821 EnumArg<"RunMode">,1822 Desc<"Determine how to run other threads "1823 "while stepping the current thread.">;1824 def thread_step_scope_step_over_regexp1825 : Option<"step-over-regexp", "r">,1826 Group<1>,1827 Arg<"RegularExpression">,1828 Desc<"A ${r}egular expression that defines function names to not to "1829 "stop at when stepping in.">;1830 def thread_step_scope_step_in_target1831 : Option<"step-in-target", "t">,1832 Group<1>,1833 Arg<"FunctionName">,1834 Desc<"The name of the directly called function step in should stop at "1835 "when stepping into.">;1836}1837 1838let Command = "thread until" in {1839 def thread_until_frame1840 : Option<"frame", "f">,1841 Group<1>,1842 Arg<"FrameIndex">,1843 Desc<"Frame index for until operation - defaults to 0">;1844 def thread_until_thread1845 : Option<"thread", "t">,1846 Group<1>,1847 Arg<"ThreadIndex">,1848 Desc<"Thread index for the thread for until operation">;1849 def thread_until_run_mode : Option<"run-mode", "m">,1850 Group<1>,1851 EnumArg<"RunMode">,1852 Desc<"Determine how to run other "1853 "threads while stepping this one">;1854 def thread_until_address1855 : Option<"address", "a">,1856 Group<1>,1857 Arg<"AddressOrExpression">,1858 Desc<"Run until we reach the specified address, "1859 "or leave the function - can be specified multiple times.">;1860}1861 1862let Command = "thread info" in {1863 def thread_info_json : Option<"json", "j">,1864 Desc<"Display the thread info in"1865 " JSON format.">;1866 def thread_info_stop_info : Option<"stop-info", "s">,1867 Desc<"Display the "1868 "extended stop info in JSON format.">;1869 def thread_info_backing_thread : Option<"backing-thread", "b">,1870 Desc<"If this is an OS plugin thread, query "1871 "the backing thread instead; has"1872 " no effect otherwise.">;1873}1874 1875let Command = "thread return" in {1876 def thread_return_from_expression1877 : Option<"from-expression", "x">,1878 Desc<"Return from the innermost expression evaluation.">;1879}1880 1881let Command = "thread jump" in {1882 def thread_jump_file : Option<"file", "f">,1883 Group<1>,1884 Arg<"Filename">,1885 Completion<"SourceFile">,1886 Desc<"Specifies the source file to jump to.">;1887 def thread_jump_line : Option<"line", "l">,1888 Group<1>,1889 Arg<"LineNum">,1890 Required,1891 Desc<"Specifies the line number to jump to.">;1892 def thread_jump_by1893 : Option<"by", "b">,1894 Group<2>,1895 Arg<"Offset">,1896 Required,1897 Desc<"Jumps by a relative line offset from the current line, "1898 "can be a positive or negative offset.">;1899 def thread_jump_address : Option<"address", "a">,1900 Group<3>,1901 Arg<"AddressOrExpression">,1902 Required,1903 Desc<"Jumps to a specific address.">;1904 def thread_jump_force : Option<"force", "r">,1905 Groups<[1, 2, 3]>,1906 Desc<"Allows the PC to leave the current function.">;1907}1908 1909let Command = "thread plan list" in {1910 def thread_plan_list_verbose1911 : Option<"verbose", "v">,1912 Group<1>,1913 Desc<"Display more information about the thread plans">;1914 def thread_plan_list_internal1915 : Option<"internal", "i">,1916 Group<1>,1917 Desc<"Display internal as well as user thread plans">;1918 def thread_plan_list_thread_id1919 : Option<"thread-id", "t">,1920 Group<1>,1921 Arg<"ThreadID">,1922 Desc<"List the thread plans for this TID, can be "1923 "specified more than once.">;1924 def thread_plan_list_unreported1925 : Option<"unreported", "u">,1926 Group<1>,1927 Desc<"Display thread plans for unreported threads">;1928}1929 1930let Command = "thread select" in {1931 def thread_select_thread_id1932 : Option<"thread-id", "t">,1933 Group<2>,1934 Arg<"ThreadID">,1935 Completion<"ThreadID">,1936 Desc<"Provide a thread ID instead of a thread index.">;1937}1938 1939let Command = "thread trace dump function calls" in {1940 def thread_trace_dump_function_calls_file1941 : Option<"file", "F">,1942 Group<1>,1943 Arg<"Filename">,1944 Desc<"Dump the function calls to a file instead of the standard "1945 "output.">;1946 def thread_trace_dump_function_calls_json1947 : Option<"json", "j">,1948 Group<1>,1949 Desc<"Dump in simple JSON format.">;1950 def thread_trace_dump_function_calls_pretty_json1951 : Option<"pretty-json", "J">,1952 Group<1>,1953 Desc<"Dump in JSON format but pretty printing the output for easier "1954 "readability.">;1955}1956 1957let Command = "thread trace dump instructions" in {1958 def thread_trace_dump_instructions_forwards1959 : Option<"forwards", "f">,1960 Group<1>,1961 Desc<"If specified, the trace is traversed forwards chronologically "1962 "starting at the oldest instruction. Otherwise, it starts at the "1963 "most "1964 "recent one and the traversal is backwards.">;1965 def thread_trace_dump_instructions_count1966 : Option<"count", "c">,1967 Group<1>,1968 Arg<"Count">,1969 Desc<1970 "The number of instructions to display starting at the most recent "1971 "instruction, or the oldest if --forwards is provided.">;1972 def thread_trace_dump_instructions_all1973 : Option<"all", "a">,1974 Group<1>,1975 Desc<"From the starting point of the trace, dump all instructions "1976 "available.">;1977 def thread_trace_dump_instructions_id1978 : Option<"id", "i">,1979 Group<1>,1980 Arg<"Index">,1981 Desc<"Custom starting instruction id from where to start traversing. "1982 "This "1983 "id can be provided in decimal or hexadecimal representation.">;1984 def thread_trace_dump_instructions_skip1985 : Option<"skip", "s">,1986 Group<1>,1987 Arg<"Index">,1988 Desc<"How many trace items (instructions, errors and events) to skip "1989 "from "1990 "the starting position of the trace before starting the "1991 "traversal.">;1992 def thread_trace_dump_instructions_raw1993 : Option<"raw", "r">,1994 Group<1>,1995 Desc<"Dump only instruction address without disassembly nor symbol "1996 "information.">;1997 def thread_trace_dump_instructions_file1998 : Option<"file", "F">,1999 Group<1>,2000 Arg<"Filename">,2001 Desc<"Dump the instruction to a file instead of the standard output.">;2002 def thread_trace_dump_instructions_json : Option<"json", "j">,2003 Group<1>,2004 Desc<"Dump in simple JSON format.">;2005 def thread_trace_dump_instructions_pretty_print2006 : Option<"pretty-json", "J">,2007 Group<1>,2008 Desc<"Dump in JSON format but pretty printing the output for easier "2009 "readability.">;2010 def thread_trace_dump_instructions_show_kind2011 : Option<"kind", "k">,2012 Group<1>,2013 Desc<"Show instruction control flow kind. Refer to the enum "2014 "`InstructionControlFlowKind` for a list of control flow kind. "2015 "As an important note, far jumps, far calls and far returns often "2016 "indicate "2017 "calls to and from kernel.">;2018 def thread_trace_dump_instructions_show_timestamps2019 : Option<"time", "t">,2020 Group<1>,2021 Desc<2022 "For each trace item, print the corresponding wall clock timestamp "2023 "if available.">;2024 def thread_trace_dump_instructions_show_events2025 : Option<"events", "e">,2026 Group<1>,2027 Desc<"Dump the events that happened during the execution of the "2028 "target.">;2029 def thread_trace_dump_instruction_only_events2030 : Option<"only-events", "E">,2031 Group<1>,2032 Desc<"Dump only the events that happened during the execution of the "2033 "target. No instructions are dumped.">;2034 def thread_trace_dump_instructions_continue2035 : Option<"continue", "C">,2036 Group<1>,2037 Desc<2038 "Continue dumping instructions right where the previous invocation "2039 "of "2040 "this command was left, or from the beginning if this is the first "2041 "invocation. The --skip argument is discarded and the other "2042 "arguments are "2043 "preserved from the previous invocation when possible.">;2044}2045 2046let Command = "thread trace dump info" in {2047 def thread_trace_dump_info_verbose2048 : Option<"verbose", "v">,2049 Group<1>,2050 Desc<"show verbose thread trace dump info">;2051 def thread_trace_dump_info_json : Option<"json", "j">,2052 Group<1>,2053 Desc<"Dump in JSON format.">;2054}2055 2056let Command = "type summary add" in {2057 def type_summary_add_category2058 : Option<"category", "w">,2059 Arg<"Name">,2060 Desc<"Add this to the given category instead of the default one.">;2061 def type_summary_add_cascade2062 : Option<"cascade", "C">,2063 Arg<"Boolean">,2064 Desc<"If true, cascade through typedef chains.">;2065 def type_summary_add_no_value2066 : Option<"no-value", "v">,2067 Desc<"Don't show the value, just show the summary, for this type.">;2068 def type_summary_add_skip_pointers2069 : Option<"skip-pointers", "p">,2070 Desc<"Don't use this format for pointers-to-type objects.">;2071 def type_summary_add_pointer_match_depth2072 : Option<"pointer-match-depth", "d">,2073 Arg<"UnsignedInteger">,2074 Desc<"Specify the maximum pointer depth that this format can be apply "2075 "to "2076 "(default to 1). It's only effective when --skip-pointers is not "2077 "set.">;2078 def type_summary_add_skip_references2079 : Option<"skip-references", "r">,2080 Desc<"Don't use this format for references-to-type objects.">;2081 def type_summary_add_regex2082 : Option<"regex", "x">,2083 Desc<"Type names are actually regular expressions.">;2084 def type_summary_add_recognizer_function2085 : Option<"recognizer-function", "\\x01">,2086 Desc<"The names in the argument list are actually the names of python "2087 "functions that decide whether to use this summary for any given "2088 "type. "2089 "Cannot be specified at the same time as --regex (-x).">;2090 def type_summary_add_inline_children2091 : Option<"inline-children", "c">,2092 Group<1>,2093 Required,2094 Desc<"If true, inline all child values into summary string.">;2095 def type_summary_add_omit_names2096 : Option<"omit-names", "O">,2097 Group<1>,2098 Desc<"If true, omit value names in the summary display.">;2099 def type_summary_add_summary_string2100 : Option<"summary-string", "s">,2101 Group<2>,2102 Arg<"SummaryString">,2103 Required,2104 Desc<"Summary string used to display text and object contents.">;2105 def type_summary_add_python_script2106 : Option<"python-script", "o">,2107 Group<3>,2108 Arg<"PythonScript">,2109 Desc<"Give a one-liner Python script as part of the command.">;2110 def type_summary_add_python_function2111 : Option<"python-function", "F">,2112 Group<3>,2113 Arg<"PythonFunction">,2114 Desc<"Give the name of a Python function to use for this type.">;2115 def type_summary_add_input_python2116 : Option<"input-python", "P">,2117 Group<3>,2118 Desc<"Input Python code to use for this type manually.">;2119 def type_summary_add_expand2120 : Option<"expand", "e">,2121 Groups<[2, 3]>,2122 Desc<"Expand aggregate data types to show children on separate lines.">;2123 def type_summary_add_hide_empty2124 : Option<"hide-empty", "h">,2125 Groups<[2, 3]>,2126 Desc<"Do not expand aggregate data types with no children.">;2127 def type_summary_add_name : Option<"name", "n">,2128 Groups<[2, 3]>,2129 Arg<"Name">,2130 Desc<"A name for this summary string.">;2131}2132 2133let Command = "type synth add" in {2134 def type_synth_add_cascade : Option<"cascade", "C">,2135 Arg<"Boolean">,2136 Desc<"If true, cascade through typedef chains.">;2137 def type_synth_add_skip_pointers2138 : Option<"skip-pointers", "p">,2139 Desc<"Don't use this format for pointers-to-type objects.">;2140 def type_synth_add_skip_references2141 : Option<"skip-references", "r">,2142 Desc<"Don't use this format for references-to-type objects.">;2143 def type_synth_add_category2144 : Option<"category", "w">,2145 Arg<"Name">,2146 Desc<"Add this to the given category instead of the default one.">;2147 def type_synth_add_python_class2148 : Option<"python-class", "l">,2149 Group<2>,2150 Arg<"PythonClass">,2151 Desc<"Use this Python class to produce synthetic children.">;2152 def type_synth_add_input_python2153 : Option<"input-python", "P">,2154 Group<3>,2155 Desc<"Type Python code to generate a class that provides synthetic "2156 "children.">;2157 def type_synth_add_regex2158 : Option<"regex", "x">,2159 Desc<"Type names are actually regular expressions.">;2160 def type_synth_add_recognizer_function2161 : Option<"recognizer-function", "\\x01">,2162 Desc<"The names in the argument list are actually the names of python "2163 "functions that decide whether to use this summary for any given "2164 "type. "2165 "Cannot be specified at the same time as --regex (-x).">;2166}2167 2168let Command = "type format add" in {2169 def type_format_add_category2170 : Option<"category", "w">,2171 Arg<"Name">,2172 Desc<"Add this to the given category instead of the default one.">;2173 def type_format_add_cascade2174 : Option<"cascade", "C">,2175 Arg<"Boolean">,2176 Desc<"If true, cascade through typedef chains.">;2177 def type_format_add_skip_pointers2178 : Option<"skip-pointers", "p">,2179 Desc<"Don't use this format for pointers-to-type objects.">;2180 def type_format_add_skip_references2181 : Option<"skip-references", "r">,2182 Desc<"Don't use this format for references-to-type objects.">;2183 def type_format_add_regex2184 : Option<"regex", "x">,2185 Desc<"Type names are actually regular expressions.">;2186 def type_format_add_type2187 : Option<"type", "t">,2188 Group<2>,2189 Arg<"Name">,2190 Desc<"Format variables as if they were of this type.">;2191}2192 2193let Command = "type formatter delete" in {2194 def type_formatter_delete_all : Option<"all", "a">,2195 Group<1>,2196 Desc<"Delete from every category.">;2197 def type_formatter_delete_category : Option<"category", "w">,2198 Group<2>,2199 Arg<"Name">,2200 Desc<"Delete from given category.">;2201 def type_formatter_delete_language2202 : Option<"language", "l">,2203 Group<3>,2204 Arg<"Language">,2205 Desc<"Delete from given language's category.">;2206}2207 2208let Command = "type formatter clear" in {2209 def type_formatter_clear_all : Option<"all", "a">,2210 Desc<"Clear every category.">;2211}2212 2213let Command = "type formatter list" in {2214 def type_formatter_list_category_regex2215 : Option<"category-regex", "w">,2216 Group<1>,2217 Arg<"Name">,2218 Desc<"Only show categories matching this filter.">;2219 def type_formatter_list_language2220 : Option<"language", "l">,2221 Group<2>,2222 Arg<"Language">,2223 Desc<"Only show the category for a specific language.">;2224}2225 2226let Command = "type category define" in {2227 def type_category_define_enabled2228 : Option<"enabled", "e">,2229 Desc<"If specified, this category will be created enabled.">;2230 def type_category_define_language2231 : Option<"language", "l">,2232 Arg<"Language">,2233 Desc<"Specify the language that this category is supported for.">;2234}2235 2236let Command = "type category enable" in {2237 def type_category_enable_language2238 : Option<"language", "l">,2239 Arg<"Language">,2240 Desc<"Enable the category for this language.">;2241}2242 2243let Command = "type category disable" in {2244 def type_category_disable_language2245 : Option<"language", "l">,2246 Arg<"Language">,2247 Desc<"Disable the category for this language.">;2248}2249 2250let Command = "type filter add" in {2251 def type_filter_add_cascade2252 : Option<"cascade", "C">,2253 Arg<"Boolean">,2254 Desc<"If true, cascade through typedef chains.">;2255 def type_filter_add_skip_pointers2256 : Option<"skip-pointers", "p">,2257 Desc<"Don't use this format for pointers-to-type objects.">;2258 def type_filter_add_skip_references2259 : Option<"skip-references", "r">,2260 Desc<"Don't use this format for references-to-type objects.">;2261 def type_filter_add_category2262 : Option<"category", "w">,2263 Arg<"Name">,2264 Desc<"Add this to the given category instead of the default one.">;2265 def type_filter_add_child2266 : Option<"child", "c">,2267 Arg<"ExpressionPath">,2268 Desc<"Include this expression path in the synthetic view.">;2269 def type_filter_add_regex2270 : Option<"regex", "x">,2271 Desc<"Type names are actually regular expressions.">;2272}2273 2274let Command = "type lookup" in {2275 def type_lookup_show_help : Option<"show-help", "h">,2276 Desc<"Display available help for types">;2277 def type_lookup_language2278 : Option<"language", "l">,2279 Arg<"Language">,2280 Desc<"Which language's types should the search scope be">;2281}2282 2283let Command = "watchpoint list" in {2284 def watchpoint_list_brief2285 : Option<"brief", "b">,2286 Group<1>,2287 Desc<"Give a "2288 "brief description of the watchpoint (no location info).">;2289 def watchpoint_list_full2290 : Option<"full", "f">,2291 Group<2>,2292 Desc<"Give a full "2293 "description of the watchpoint and its locations.">;2294 def watchpoint_list_verbose : Option<"verbose", "v">,2295 Group<3>,2296 Desc<"Explain "2297 "everything we know about the watchpoint "2298 "(for debugging debugger bugs).">;2299}2300 2301let Command = "watchpoint ignore" in {2302 def watchpoint_ignore_ignore_count2303 : Option<"ignore-count", "i">,2304 Arg<"Count">,2305 Required,2306 Desc<"Set the number of times this watchpoint is"2307 " skipped before stopping.">;2308}2309 2310let Command = "watchpoint modify" in {2311 def watchpoint_modify_condition2312 : Option<"condition", "c">,2313 Arg<"Expression">,2314 Desc<"The watchpoint stops only if this condition expression evaluates "2315 "to true.">;2316}2317 2318let Command = "watchpoint command add" in {2319 def watchpoint_command_add_one_liner2320 : Option<"one-liner", "o">,2321 Group<1>,2322 Arg<"OneLiner">,2323 Desc<"Specify a one-line watchpoint command inline. Be "2324 "sure to surround it with quotes.">;2325 def watchpoint_command_add_stop_on_error2326 : Option<"stop-on-error", "e">,2327 Arg<"Boolean">,2328 Desc<"Specify whether watchpoint command execution should "2329 "terminate on error.">;2330 def watchpoint_command_add_script_type2331 : Option<"script-type", "s">,2332 EnumArg<"ScriptLang">,2333 Desc<"Specify the language for the"2334 " commands - if none is specified, the lldb command interpreter "2335 "will be "2336 "used.">;2337 def watchpoint_command_add_python_function2338 : Option<"python-function", "F">,2339 Group<2>,2340 Arg<"PythonFunction">,2341 Desc<"Give the name of a Python function "2342 "to run as command for this watchpoint. Be sure to give a module "2343 "name if "2344 "appropriate.">;2345}2346 2347let Command = "watchpoint delete" in {2348 def watchpoint_delete_force2349 : Option<"force", "f">,2350 Group<1>,2351 Desc<"Delete all watchpoints without querying for confirmation.">;2352}2353 2354let Command = "trace load" in {2355 def trace_load_verbose2356 : Option<"verbose", "v">,2357 Group<1>,2358 Desc<"Show verbose trace load logging for debugging the plug-in "2359 "implementation.">;2360}2361 2362let Command = "trace save" in {2363 def trace_save_compact2364 : Option<"compact", "c">,2365 Group<1>,2366 Desc<"Try not to save to disk information irrelevant to the traced "2367 "processes. Each trace plug-in implements this in a different "2368 "fashion.">;2369}2370 2371let Command = "trace dump" in {2372 def trace_dump_verbose : Option<"verbose", "v">,2373 Group<1>,2374 Desc<"Show verbose trace information.">;2375}2376 2377let Command = "trace schema" in {2378 def trace_schema_verbose2379 : Option<"verbose", "v">,2380 Group<1>,2381 Desc<"Show verbose trace schema logging for debugging the plug-in.">;2382}2383 2384let Command = "statistics dump" in {2385 def statistics_dump_all : Option<"all-targets", "a">,2386 Group<1>,2387 Desc<"Include statistics for all targets.">;2388 def statistics_dump_summary2389 : Option<"summary", "s">,2390 Group<1>,2391 Desc<"Dump only high-level summary statistics. Exclude targets, "2392 "modules, breakpoints etc... details.">;2393 def statistics_dump_force2394 : Option<"load-all-debug-info", "f">,2395 Group<1>,2396 Desc<"Dump the total possible debug info statistics. Force loading all "2397 "the debug information if not yet loaded, and collect statistics "2398 "with those.">;2399 def statistics_dump_targets2400 : Option<"targets", "r">,2401 Group<1>,2402 Arg<"Boolean">,2403 Desc<"Dump statistics for the targets, including breakpoints, "2404 "expression evaluations, frame variables, etc. Defaults to true "2405 "in both default mode and summary mode. In default mode, if both "2406 "'--targets' and '--modules' are 'true', a list of module "2407 "identifiers will be added to the 'targets' section.">;2408 def statistics_dump_modules2409 : Option<"modules", "m">,2410 Group<1>,2411 Arg<"Boolean">,2412 Desc<"Dump statistics for the modules, including time and size of "2413 "various aspects of the module and debug information, type "2414 "system, path, etc. Defaults to true, unless the '--summary' mode "2415 "is enabled, in which case this is turned off unless specified. "2416 "In default mode, if both '--targets' and '--modules' are 'true', "2417 "a list of module identifiers will be added to the 'targets' "2418 "section.">;2419 def statistics_dump_transcript2420 : Option<"transcript", "t">,2421 Group<1>,2422 Arg<"Boolean">,2423 Desc<"If the setting interpreter.save-transcript is enabled and this "2424 "option is 'true', include a JSON array with all commands the "2425 "user and/or scripts executed during a debug session. Defaults to "2426 "false. ">;2427 def statistics_dump_plugins2428 : Option<"plugins", "p">,2429 Group<1>,2430 Arg<"Boolean">,2431 Desc<"Dump statistics for known plugins including name, order, and "2432 "enabled state. Defaults to true for both summary and default "2433 "mode.">;2434}2435