* sh-dis.c (print_insn_sh): If coff and bfd_mach_sh, use arch_sh4
authorJoern Rennecke <joern.rennecke@embecosm.com>
Wed, 22 May 2002 13:17:27 +0000 (13:17 +0000)
committerJoern Rennecke <joern.rennecke@embecosm.com>
Wed, 22 May 2002 13:17:27 +0000 (13:17 +0000)
for disassembly.

opcodes/ChangeLog
opcodes/sh-dis.c

index b5f5a74cdf912fc2223f5d69f9f619dc6c821745..80b10e55dce02560f8a1cca6d603c7623c5c2073 100644 (file)
@@ -1,3 +1,8 @@
+Wed May 22 14:13:40 2002  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh-dis.c (print_insn_sh): If coff and bfd_mach_sh, use arch_sh4
+       for disassembly.
+
 2002-05-22  Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
 
        * mips-opc.c (mips_builtin_opcodes): Add drol, dror macros.
index 54b91b7d986bbf37ac3e6c58f3617228f5f71593..7f403806dd4cf8f540e80a4773ee23e3b60f9bcc 100644 (file)
@@ -301,6 +301,11 @@ print_insn_sh (memaddr, info)
     {
     case bfd_mach_sh:
       target_arch = arch_sh1;
+      /* SH coff object files lack information about the machine type, so
+         we end up with bfd_mach_sh unless it was set explicitly (which
+        could have happended if this is a call from gdb or the simulator.)  */
+      if (bfd_asymbol_flavour(*info->symbols) == bfd_target_coff_flavour)
+       target_arch = arch_sh4;
       break;
     case bfd_mach_sh2:
       target_arch = arch_sh2;