diff --git a/librz/core/cmd/cmd_analysis.c b/librz/core/cmd/cmd_analysis.c index 592d399297..4fa0bd9ab7 100644 --- a/librz/core/cmd/cmd_analysis.c +++ b/librz/core/cmd/cmd_analysis.c @@ -6298,8 +6298,7 @@ RZ_IPI int rz_cmd_analysis(void *data, const char *input) { } RZ_IPI RzCmdStatus rz_analysis_function_blocks_list_handler(RzCore *core, int argc, const char **argv, RzCmdStateOutput *state) { - ut64 addr = argc > 1 ? rz_num_math(core->num, argv[1]) : core->offset; - RzAnalysisFunction *fcn = analysis_get_function_in(core->analysis, addr); + RzAnalysisFunction *fcn = analysis_get_function_in(core->analysis, core->offset); if (!fcn) { return RZ_CMD_STATUS_ERROR; } @@ -6308,8 +6307,7 @@ RZ_IPI RzCmdStatus rz_analysis_function_blocks_list_handler(RzCore *core, int ar } RZ_IPI RzCmdStatus rz_analysis_function_blocks_del_handler(RzCore *core, int argc, const char **argv) { - ut64 addr = argc > 1 ? rz_num_math(core->num, argv[1]) : core->offset; - RzAnalysisBlock *b = rz_analysis_find_most_relevant_block_in(core->analysis, addr); + RzAnalysisBlock *b = rz_analysis_find_most_relevant_block_in(core->analysis, core->offset); if (!b) { eprintf("Cannot find basic block\n"); return RZ_CMD_STATUS_ERROR; @@ -6320,8 +6318,7 @@ RZ_IPI RzCmdStatus rz_analysis_function_blocks_del_handler(RzCore *core, int arg } RZ_IPI RzCmdStatus rz_analysis_function_blocks_del_all_handler(RzCore *core, int argc, const char **argv) { - ut64 addr = argc > 1 ? rz_num_math(core->num, argv[1]) : core->offset; - RzAnalysisFunction *fcn = analysis_get_function_in(core->analysis, addr); + RzAnalysisFunction *fcn = analysis_get_function_in(core->analysis, core->offset); if (!fcn) { return RZ_CMD_STATUS_ERROR; } @@ -6345,8 +6342,7 @@ RZ_IPI RzCmdStatus rz_analysis_function_blocks_edge_handler(RzCore *core, int ar } RZ_IPI RzCmdStatus rz_analysis_function_returns_handler(RzCore *core, int argc, const char **argv) { - ut64 addr = argc > 1 ? rz_num_math(core->num, argv[1]) : core->offset; - RzAnalysisFunction *fcn = analysis_get_function_in(core->analysis, addr); + RzAnalysisFunction *fcn = analysis_get_function_in(core->analysis, core->offset); if (!fcn) { return RZ_CMD_STATUS_ERROR; } @@ -6355,8 +6351,7 @@ RZ_IPI RzCmdStatus rz_analysis_function_returns_handler(RzCore *core, int argc, } RZ_IPI RzCmdStatus rz_analysis_function_blocks_asciiart_handler(RzCore *core, int argc, const char **argv) { - ut64 addr = argc > 1 ? rz_num_math(core->num, argv[1]) : core->offset; - RzAnalysisFunction *fcn = analysis_get_function_in(core->analysis, addr); + RzAnalysisFunction *fcn = analysis_get_function_in(core->analysis, core->offset); if (!fcn) { return RZ_CMD_STATUS_ERROR; } @@ -6365,13 +6360,12 @@ RZ_IPI RzCmdStatus rz_analysis_function_blocks_asciiart_handler(RzCore *core, in } RZ_IPI RzCmdStatus rz_analysis_function_blocks_info_handler(RzCore *core, int argc, const char **argv, RzCmdStateOutput *state) { - ut64 addr = argc > 1 ? rz_num_math(core->num, argv[1]) : core->offset; - RzAnalysisBlock *bb = rz_analysis_find_most_relevant_block_in(core->analysis, addr); + RzAnalysisBlock *bb = rz_analysis_find_most_relevant_block_in(core->analysis, core->offset); if (!bb) { eprintf("No basic block at 0x%" PFMT64x, core->offset); return RZ_CMD_STATUS_ERROR; } - rz_core_analysis_bb_info_print(core, bb, addr, state); + rz_core_analysis_bb_info_print(core, bb, core->offset, state); return RZ_CMD_STATUS_OK; } diff --git a/librz/core/cmd_descs/cmd_analysis.yaml b/librz/core/cmd_descs/cmd_analysis.yaml index 49895fd8ce..2e9a2c713c 100644 --- a/librz/core/cmd_descs/cmd_analysis.yaml +++ b/librz/core/cmd_descs/cmd_analysis.yaml @@ -21,10 +21,7 @@ commands: - RZ_OUTPUT_MODE_JSON - RZ_OUTPUT_MODE_QUIET - RZ_OUTPUT_MODE_TABLE - args: - - name: addr - type: RZ_CMD_ARG_TYPE_RZNUM - optional: true + args: [] - name: afb+ summary: Add basic block by hand cname: analysis_function_blocks_add @@ -48,17 +45,11 @@ commands: - name: afb- summary: Remove basic block from function cname: analysis_function_blocks_del - args: - - name: addr - type: RZ_CMD_ARG_TYPE_RZNUM - optional: true + args: [] - name: afb-* summary: Remove all basic blocks from function cname: analysis_function_blocks_del_all - args: - - name: addr - type: RZ_CMD_ARG_TYPE_RZNUM - optional: true + args: [] - name: afbe summary: Add basic-block edge for switch-cases cname: analysis_function_blocks_edge @@ -70,17 +61,11 @@ commands: - name: afbr summary: Show addresses of instructions which leave the function cname: analysis_function_returns - args: - - name: addr - type: RZ_CMD_ARG_TYPE_RZNUM - optional: true + args: [] - name: afb= summary: Display ascii-art bars for basic block regions cname: analysis_function_blocks_asciiart - args: - - name: addr - type: RZ_CMD_ARG_TYPE_RZNUM - optional: true + args: [] - name: afbi summary: Print single basic block information cname: analysis_function_blocks_info @@ -92,10 +77,7 @@ commands: - RZ_OUTPUT_MODE_JSON - RZ_OUTPUT_MODE_QUIET - RZ_OUTPUT_MODE_TABLE - args: - - name: addr - type: RZ_CMD_ARG_TYPE_RZNUM - optional: true + args: [] - name: afbc summary: Set a color for the basic block at a given address cname: analysis_function_blocks_color diff --git a/librz/core/cmd_descs/cmd_descs.c b/librz/core/cmd_descs/cmd_descs.c index 1e7027281e..a1c1842dfe 100644 --- a/librz/core/cmd_descs/cmd_descs.c +++ b/librz/core/cmd_descs/cmd_descs.c @@ -77,14 +77,8 @@ static const RzCmdDescArg remote_tcp_args[3]; static const RzCmdDescArg remote_rap_bg_args[2]; static const RzCmdDescArg cmd_help_search_args[2]; static const RzCmdDescArg push_escaped_args[2]; -static const RzCmdDescArg analysis_function_blocks_list_args[2]; static const RzCmdDescArg analysis_function_blocks_add_args[7]; -static const RzCmdDescArg analysis_function_blocks_del_args[2]; -static const RzCmdDescArg analysis_function_blocks_del_all_args[2]; static const RzCmdDescArg analysis_function_blocks_edge_args[3]; -static const RzCmdDescArg analysis_function_returns_args[2]; -static const RzCmdDescArg analysis_function_blocks_asciiart_args[2]; -static const RzCmdDescArg analysis_function_blocks_info_args[2]; static const RzCmdDescArg analysis_function_blocks_color_args[3]; static const RzCmdDescArg analysis_function_setbits_args[2]; static const RzCmdDescArg analysis_function_signature_args[2]; @@ -1018,13 +1012,6 @@ static const RzCmdDescHelp afb_help = { .summary = "Basic blocks commands", }; static const RzCmdDescArg analysis_function_blocks_list_args[] = { - { - .name = "addr", - .type = RZ_CMD_ARG_TYPE_RZNUM, - .flags = RZ_CMD_ARG_FLAG_LAST, - .optional = true, - - }, { 0 }, }; static const RzCmdDescHelp analysis_function_blocks_list_help = { @@ -1076,13 +1063,6 @@ static const RzCmdDescHelp analysis_function_blocks_add_help = { }; static const RzCmdDescArg analysis_function_blocks_del_args[] = { - { - .name = "addr", - .type = RZ_CMD_ARG_TYPE_RZNUM, - .flags = RZ_CMD_ARG_FLAG_LAST, - .optional = true, - - }, { 0 }, }; static const RzCmdDescHelp analysis_function_blocks_del_help = { @@ -1091,13 +1071,6 @@ static const RzCmdDescHelp analysis_function_blocks_del_help = { }; static const RzCmdDescArg analysis_function_blocks_del_all_args[] = { - { - .name = "addr", - .type = RZ_CMD_ARG_TYPE_RZNUM, - .flags = RZ_CMD_ARG_FLAG_LAST, - .optional = true, - - }, { 0 }, }; static const RzCmdDescHelp analysis_function_blocks_del_all_help = { @@ -1125,13 +1098,6 @@ static const RzCmdDescHelp analysis_function_blocks_edge_help = { }; static const RzCmdDescArg analysis_function_returns_args[] = { - { - .name = "addr", - .type = RZ_CMD_ARG_TYPE_RZNUM, - .flags = RZ_CMD_ARG_FLAG_LAST, - .optional = true, - - }, { 0 }, }; static const RzCmdDescHelp analysis_function_returns_help = { @@ -1140,13 +1106,6 @@ static const RzCmdDescHelp analysis_function_returns_help = { }; static const RzCmdDescArg analysis_function_blocks_asciiart_args[] = { - { - .name = "addr", - .type = RZ_CMD_ARG_TYPE_RZNUM, - .flags = RZ_CMD_ARG_FLAG_LAST, - .optional = true, - - }, { 0 }, }; static const RzCmdDescHelp analysis_function_blocks_asciiart_help = { @@ -1155,13 +1114,6 @@ static const RzCmdDescHelp analysis_function_blocks_asciiart_help = { }; static const RzCmdDescArg analysis_function_blocks_info_args[] = { - { - .name = "addr", - .type = RZ_CMD_ARG_TYPE_RZNUM, - .flags = RZ_CMD_ARG_FLAG_LAST, - .optional = true, - - }, { 0 }, }; static const RzCmdDescHelp analysis_function_blocks_info_help = { diff --git a/test/db/analysis/x86_64 b/test/db/analysis/x86_64 index 51ea292082..5efa000242 100644 --- a/test/db/analysis/x86_64 +++ b/test/db/analysis/x86_64 @@ -2452,7 +2452,7 @@ NAME=noreturn of reloc-functions FILE=bins/elf/ls CMDS=<