Update objdump's --disassemble=<symbol> feature so that if <symbol> is a function, the entire function will be disassembled, regardless of the presence of interveening symbols.

* objdump.c (disassemble_section): When disassembling from a
	symbol only stop at the next symbol if the original symbol was not
	a function symbol.  Otherwise continue disassembling until a new
	function is reached.
	* testsuite/binutils-all/objdump.exp: Add tests of extended
	functionality.
	* testsuite/binutils-all/disasm.s: New test source file.
This commit is contained in:
Nick Clifton 2019-01-17 15:29:43 +00:00
parent e89c694196
commit baae986a40
6 changed files with 213 additions and 25 deletions

View file

@ -2230,9 +2230,11 @@ with ctags tool.
Display the assembler mnemonics for the machine instructions from the
input file. This option only disassembles those sections which are
expected to contain instructions. If the optional @var{symbol}
argument is given, then display the assembler mnemonics only from
@var{symbol} up to next symbol. If there are no matches for
@var{symbol} then nothing will be displayed.
argument is given, then display the assembler mnemonics starting at
@var{symbol}. If @var{symbol} is a function name then disassembly
will stop at the end of the function, otherwise it will stop when the
next symbol is encountered. If there are no matches for @var{symbol}
then nothing will be displayed.
@item -D
@itemx --disassemble-all