aboutsummaryrefslogtreecommitdiff
path: root/gdb/mips-tdep.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2003-06-26 18:01:58 +0000
committerAndrew Cagney <cagney@redhat.com>2003-06-26 18:01:58 +0000
commitd31431ed7c28b0df944f5daf3e772b058f66d351 (patch)
tree15c5e10ba63a4f4315f60c72c87c41eb50e13e2c /gdb/mips-tdep.c
parent02fc308916fff15f2a1c7b2f275dd27f2e31cc14 (diff)
downloadgdb-d31431ed7c28b0df944f5daf3e772b058f66d351.zip
gdb-d31431ed7c28b0df944f5daf3e772b058f66d351.tar.gz
gdb-d31431ed7c28b0df944f5daf3e772b058f66d351.tar.bz2
2003-06-26 Andrew Cagney <cagney@redhat.com>
* mips-tdep.c (gdb_print_insn_mips): Only explicitly set info->mach when MIPS16. Patch suggested by Fred Fish.
Diffstat (limited to 'gdb/mips-tdep.c')
-rw-r--r--gdb/mips-tdep.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
index 4009ca5..f39179d 100644
--- a/gdb/mips-tdep.c
+++ b/gdb/mips-tdep.c
@@ -5270,12 +5270,20 @@ gdb_print_insn_mips (bfd_vma memaddr, disassemble_info *info)
the procedure descriptor exists and the address therein is odd,
it's definitely a 16-bit function. Otherwise, we have to just
guess that if the address passed in is odd, it's 16-bits. */
+ /* FIXME: cagney/2003-06-26: Is this even necessary? The
+ disassembler needs to be able to locally determine the ISA, and
+ not rely on GDB. Otherwize the stand-alone 'objdump -d' will not
+ work. */
if (proc_desc)
- info->mach = pc_is_mips16 (PROC_LOW_ADDR (proc_desc)) ?
- bfd_mach_mips16 : 0;
+ {
+ if (pc_is_mips16 (PROC_LOW_ADDR (proc_desc)))
+ info->mach = bfd_mach_mips16;
+ }
else
- info->mach = pc_is_mips16 (memaddr) ?
- bfd_mach_mips16 : 0;
+ {
+ if (pc_is_mips16 (memaddr))
+ info->mach = bfd_mach_mips16;
+ }
/* Round down the instruction address to the appropriate boundary. */
memaddr &= (info->mach == bfd_mach_mips16 ? ~1 : ~3);