diff options
Diffstat (limited to 'binutils')
-rw-r--r-- | binutils/ChangeLog | 14 | ||||
-rw-r--r-- | binutils/doc/binutils.texi | 11 | ||||
-rw-r--r-- | binutils/objdump.c | 2 |
3 files changed, 25 insertions, 2 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index f7974f7..ddacde1 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,8 +1,18 @@ +2009-06-18 Nick Clifton <nickc@redhat.com> + + PR 10288 + * objdump.c (disassemble_bytes): Set the + USER_SPECIFIED_MACHINE_TYPE flag in the disassemble_info structure + if the user has invoked the -m switch. + * doc/binutils.texi: Document the additional behaviour of + objdump's -m switch for ARM targets. + 2009-06-18 Dave Korn <dave.korn.cygwin@gmail.com> - Merge cegcc and mingw32ce target name changes from CeGCC project. + * configure.in: Merge cegcc and mingw32ce target name changes from + CeGCC project. - 2007-12-25 Pedro Alves <pedro_alves@portugalmail.pt> +2007-12-25 Pedro Alves <pedro_alves@portugalmail.pt> * configure.in: Add arm*-*-cegcc* and arm*-*-mingw32ce* targets. * configure: Regenerate. diff --git a/binutils/doc/binutils.texi b/binutils/doc/binutils.texi index 7680c6f..d74b12b 100644 --- a/binutils/doc/binutils.texi +++ b/binutils/doc/binutils.texi @@ -1801,6 +1801,10 @@ expected to contain instructions. Like @option{-d}, but disassemble the contents of all sections, not just those expected to contain instructions. +If the target is an ARM architecture this switch also has the effect +of forcing the disassembler to decode pieces of data found in code +sections as if they were instructions. + @item --prefix-addresses When disassembling, print the complete address on each line. This is the older disassembly format. @@ -1884,6 +1888,13 @@ can be useful when disassembling object files which do not describe architecture information, such as S-records. You can list the available architectures with the @option{-i} option. +If the target is an ARM architecture then this switch has an +additional effect. It restricts the disassembly to only those +instructions supported by the architecture specified by @var{machine}. +If it is necessary to use this switch because the input file does not +contain any architecture information, but it is also desired to +disassemble all the instructions use @option{-marm}. + @item -M @var{options} @itemx --disassembler-options=@var{options} Pass target specific information to the disassembler. Only supported on diff --git a/binutils/objdump.c b/binutils/objdump.c index 3cf03f7..dfe6a57 100644 --- a/binutils/objdump.c +++ b/binutils/objdump.c @@ -1526,6 +1526,8 @@ disassemble_bytes (struct disassemble_info * info, info->bytes_per_line = 0; info->bytes_per_chunk = 0; info->flags = disassemble_all ? DISASSEMBLE_DATA : 0; + if (machine) + info->flags |= USER_SPECIFIED_MACHINE_TYPE; if (info->disassembler_needs_relocs && (bfd_get_file_flags (aux->abfd) & EXEC_P) == 0 |