Skip to content

Commit

Permalink
[lldb][NFC] Tablegenify source
Browse files Browse the repository at this point in the history
llvm-svn: 366795
  • Loading branch information
Teemperor committed Jul 23, 2019
1 parent 1957d68 commit aaa6827
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 19 deletions.
23 changes: 4 additions & 19 deletions lldb/source/Commands/CommandObjectSource.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,8 @@ using namespace lldb_private;
// CommandObjectSourceInfo - debug line entries dumping command

static constexpr OptionDefinition g_source_info_options[] = {
// clang-format off
{ LLDB_OPT_SET_ALL, false, "count", 'c', OptionParser::eRequiredArgument, nullptr, {}, 0, eArgTypeCount, "The number of line entries to display." },
{ LLDB_OPT_SET_1 | LLDB_OPT_SET_2, false, "shlib", 's', OptionParser::eRequiredArgument, nullptr, {}, CommandCompletions::eModuleCompletion, eArgTypeShlibName, "Look up the source in the given module or shared library (can be specified more than once)." },
{ LLDB_OPT_SET_1, false, "file", 'f', OptionParser::eRequiredArgument, nullptr, {}, CommandCompletions::eSourceFileCompletion, eArgTypeFilename, "The file from which to display source." },
{ LLDB_OPT_SET_1, false, "line", 'l', OptionParser::eRequiredArgument, nullptr, {}, 0, eArgTypeLineNum, "The line number at which to start the displaying lines." },
{ LLDB_OPT_SET_1, false, "end-line", 'e', OptionParser::eRequiredArgument, nullptr, {}, 0, eArgTypeLineNum, "The line number at which to stop displaying lines." },
{ LLDB_OPT_SET_2, false, "name", 'n', OptionParser::eRequiredArgument, nullptr, {}, CommandCompletions::eSymbolCompletion, eArgTypeSymbol, "The name of a function whose source to display." },
{ LLDB_OPT_SET_3, false, "address", 'a', OptionParser::eRequiredArgument, nullptr, {}, 0, eArgTypeAddressOrExpression, "Lookup the address and display the source information for the corresponding file and line." },
// clang-format on
#define LLDB_OPTIONS_source_info
#include "CommandOptions.inc"
};

class CommandObjectSourceInfo : public CommandObjectParsed {
Expand Down Expand Up @@ -645,16 +638,8 @@ class CommandObjectSourceInfo : public CommandObjectParsed {
// CommandObjectSourceList

static constexpr OptionDefinition g_source_list_options[] = {
// clang-format off
{ LLDB_OPT_SET_ALL, false, "count", 'c', OptionParser::eRequiredArgument, nullptr, {}, 0, eArgTypeCount, "The number of source lines to display." },
{ LLDB_OPT_SET_1 | LLDB_OPT_SET_2, false, "shlib", 's', OptionParser::eRequiredArgument, nullptr, {}, CommandCompletions::eModuleCompletion, eArgTypeShlibName, "Look up the source file in the given shared library." },
{ LLDB_OPT_SET_ALL, false, "show-breakpoints", 'b', OptionParser::eNoArgument, nullptr, {}, 0, eArgTypeNone, "Show the line table locations from the debug information that indicate valid places to set source level breakpoints." },
{ LLDB_OPT_SET_1, false, "file", 'f', OptionParser::eRequiredArgument, nullptr, {}, CommandCompletions::eSourceFileCompletion, eArgTypeFilename, "The file from which to display source." },
{ LLDB_OPT_SET_1, false, "line", 'l', OptionParser::eRequiredArgument, nullptr, {}, 0, eArgTypeLineNum, "The line number at which to start the display source." },
{ LLDB_OPT_SET_2, false, "name", 'n', OptionParser::eRequiredArgument, nullptr, {}, CommandCompletions::eSymbolCompletion, eArgTypeSymbol, "The name of a function whose source to display." },
{ LLDB_OPT_SET_3, false, "address", 'a', OptionParser::eRequiredArgument, nullptr, {}, 0, eArgTypeAddressOrExpression, "Lookup the address and display the source information for the corresponding file and line." },
{ LLDB_OPT_SET_4, false, "reverse", 'r', OptionParser::eNoArgument, nullptr, {}, 0, eArgTypeNone, "Reverse the listing to look backwards from the last displayed block of source." },
// clang-format on
#define LLDB_OPTIONS_source_list
#include "CommandOptions.inc"
};

class CommandObjectSourceList : public CommandObjectParsed {
Expand Down
42 changes: 42 additions & 0 deletions lldb/source/Commands/Options.td
Original file line number Diff line number Diff line change
Expand Up @@ -390,6 +390,48 @@ let Command = "script add" in {
Desc<"Set the synchronicity of this command's executions with regard to "
"LLDB event system.">;
}
let Command = "source info" in {
def source_info_count : Option<"count", "c">, Arg<"Count">,
Desc<"The number of line entries to display.">;
def source_info_shlib : Option<"shlib", "s">, Groups<[1,2]>, Arg<"ShlibName">,
Completion<"Module">, Desc<"Look up the source in the given module or "
"shared library (can be specified more than once).">;
def source_info_file : Option<"file", "f">, Group<1>, Arg<"Filename">,
Completion<"SourceFile">, Desc<"The file from which to display source.">;
def source_info_line : Option<"line", "l">, Group<1>, Arg<"LineNum">,
Desc<"The line number at which to start the displaying lines.">;
def source_info_end_line : Option<"end-line", "e">, Group<1>, Arg<"LineNum">,
Desc<"The line number at which to stop displaying lines.">;
def source_info_name : Option<"name", "n">, Group<2>, Arg<"Symbol">,
Completion<"Symbol">,
Desc<"The name of a function whose source to display.">;
def source_info_address : Option<"address", "a">, Group<3>,
Arg<"AddressOrExpression">, Desc<"Lookup the address and display the source"
" information for the corresponding file and line.">;
}

let Command = "source list" in {
def source_list_count : Option<"count", "c">, Arg<"Count">,
Desc<"The number of source lines to display.">;
def source_list_shlib : Option<"shlib", "s">, Groups<[1,2]>, Arg<"ShlibName">,
Completion<"Module">,
Desc<"Look up the source file in the given shared library.">;
def source_list_show_breakpoints : Option<"show-breakpoints", "b">,
Desc<"Show the line table locations from the debug information that "
"indicate valid places to set source level breakpoints.">;
def source_list_file : Option<"file", "f">, Group<1>, Arg<"Filename">,
Completion<"SourceFile">, Desc<"The file from which to display source.">;
def source_list_line : Option<"line", "l">, Group<1>, Arg<"LineNum">,
Desc<"The line number at which to start the display source.">;
def source_list_name : Option<"name", "n">, Group<2>, Arg<"Symbol">,
Completion<"Symbol">,
Desc<"The name of a function whose source to display.">;
def source_list_address : Option<"address", "a">, Group<3>,
Arg<"AddressOrExpression">, Desc<"Lookup the address and display the source"
" information for the corresponding file and line.">;
def source_list_reverse : Option<"reverse", "r">, Group<4>, Desc<"Reverse the"
" listing to look backwards from the last displayed block of source.">;
}

let Command = "target dependents" in {
def dependents_no_dependents : Option<"no-dependents", "d">, Group<1>,
Expand Down

0 comments on commit aaa6827

Please sign in to comment.