bfd/
authorKazu Hirata <kazu@codesourcery.com>
Tue, 11 Sep 2007 16:07:50 +0000 (16:07 +0000)
committerKazu Hirata <kazu@codesourcery.com>
Tue, 11 Sep 2007 16:07:50 +0000 (16:07 +0000)
* archures.c: Add bfd_mach_mcf_isa_c_nodiv,
bfd_mach_mcf_isa_c_nodiv_mac & bfd_mach_mcf_isa_c_nodiv_emac.
* ieee.c (ieee_write_processor): Update coldfire architecture
list.
* bfd-in2.h: Rebuilt.
* cpu-m68k.c (arch_info_struct): Add isa_c nodiv architectures.
(m68k_arch_features): Likewise.
* elf32-m68k.c (elf32_m68k_object_p): Add EF_M68K_CF_ISA_C_NODIV.
(elf32_m68k_print_private_bfd_data): Likewise.

gas/
* config/tc-m68k.c (m68k_ip): Add mcfisa_c case.
(m68k_elf_final_processing): Add EF_M68K_CF_ISA_C_NODIV.

include/elf/
* m68k.h (EF_M68K_CF_ISA_C_NODIV): New.

bfd/ChangeLog
bfd/archures.c
bfd/bfd-in2.h
bfd/cpu-m68k.c
bfd/elf32-m68k.c
bfd/ieee.c
gas/ChangeLog
gas/config/tc-m68k.c
include/elf/ChangeLog
include/elf/m68k.h

index cba32ae5aafd593534323c687c6816cbfdd1c0b6..eb7c625e3c493d302bf1599e9428901355ad4b34 100644 (file)
@@ -1,3 +1,15 @@
+2007-09-11  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * archures.c: Add bfd_mach_mcf_isa_c_nodiv,
+       bfd_mach_mcf_isa_c_nodiv_mac & bfd_mach_mcf_isa_c_nodiv_emac.
+       * ieee.c (ieee_write_processor): Update coldfire architecture
+       list.
+       * bfd-in2.h: Rebuilt.
+       * cpu-m68k.c (arch_info_struct): Add isa_c nodiv architectures.
+       (m68k_arch_features): Likewise.
+       * elf32-m68k.c (elf32_m68k_object_p): Add EF_M68K_CF_ISA_C_NODIV.
+       (elf32_m68k_print_private_bfd_data): Likewise.
+
 2007-09-11  Jan Beulich  <jbeulich@novell.com>
 
        * elf64-i386.c (elf64_i386_tls_transition): Remove redundant 'const'.
index 67d1b5cc6e160633505c66adea4247223f592de3..8f19b7edace77e28cdd1737e95cabaa915af5f57 100644 (file)
@@ -101,6 +101,9 @@ DESCRIPTION
 .#define bfd_mach_mcf_isa_c 26
 .#define bfd_mach_mcf_isa_c_mac 27
 .#define bfd_mach_mcf_isa_c_emac 28
+.#define bfd_mach_mcf_isa_c_nodiv 29
+.#define bfd_mach_mcf_isa_c_nodiv_mac 30
+.#define bfd_mach_mcf_isa_c_nodiv_emac 31
 .  bfd_arch_vax,       {* DEC Vax *}
 .  bfd_arch_i960,      {* Intel 960 *}
 .    {* The order of the following is important.
index 317d32e01dd9039491838831ec493d491b3158f1..d3228d05e4123c82cdaa8e81a5f40ad4411b55fd 100644 (file)
@@ -1772,6 +1772,9 @@ enum bfd_architecture
 #define bfd_mach_mcf_isa_c 26
 #define bfd_mach_mcf_isa_c_mac 27
 #define bfd_mach_mcf_isa_c_emac 28
+#define bfd_mach_mcf_isa_c_nodiv 29
+#define bfd_mach_mcf_isa_c_nodiv_mac 30
+#define bfd_mach_mcf_isa_c_nodiv_emac 31
   bfd_arch_vax,       /* DEC Vax */
   bfd_arch_i960,      /* Intel 960 */
     /* The order of the following is important.
index e23998832ef740043fa1697a4baa1264112ec081..a82c4ee4af712564a6b762745d93584131d52f08 100644 (file)
@@ -83,19 +83,25 @@ static const bfd_arch_info_type arch_info_struct[] =
       FALSE, &arch_info_struct[27]),
     N(bfd_mach_mcf_isa_c_emac, "m68k:isa-c:emac",
       FALSE, &arch_info_struct[28]),
+    N(bfd_mach_mcf_isa_c_nodiv, "m68k:isa-c:nodiv",
+      FALSE, &arch_info_struct[29]),
+    N(bfd_mach_mcf_isa_c_nodiv_mac, "m68k:isa-c:nodiv:mac",
+      FALSE, &arch_info_struct[30]),
+    N(bfd_mach_mcf_isa_c_nodiv_emac, "m68k:isa-c:nodiv:emac",
+      FALSE, &arch_info_struct[31]),
 
     /* Legacy names for CF architectures */
-    N(bfd_mach_mcf_isa_a_nodiv, "m68k:5200", FALSE, &arch_info_struct[29]),
-    N(bfd_mach_mcf_isa_a_mac,"m68k:5206e", FALSE, &arch_info_struct[30]),
-    N(bfd_mach_mcf_isa_a_mac, "m68k:5307", FALSE, &arch_info_struct[31]),
-    N(bfd_mach_mcf_isa_b_nousp_mac, "m68k:5407", FALSE, &arch_info_struct[32]),
-    N(bfd_mach_mcf_isa_aplus_emac, "m68k:528x", FALSE, &arch_info_struct[33]),
-    N(bfd_mach_mcf_isa_aplus_emac, "m68k:521x", FALSE, &arch_info_struct[34]),
-    N(bfd_mach_mcf_isa_a_emac, "m68k:5249", FALSE, &arch_info_struct[35]),
+    N(bfd_mach_mcf_isa_a_nodiv, "m68k:5200", FALSE, &arch_info_struct[32]),
+    N(bfd_mach_mcf_isa_a_mac,"m68k:5206e", FALSE, &arch_info_struct[33]),
+    N(bfd_mach_mcf_isa_a_mac, "m68k:5307", FALSE, &arch_info_struct[34]),
+    N(bfd_mach_mcf_isa_b_nousp_mac, "m68k:5407", FALSE, &arch_info_struct[35]),
+    N(bfd_mach_mcf_isa_aplus_emac, "m68k:528x", FALSE, &arch_info_struct[36]),
+    N(bfd_mach_mcf_isa_aplus_emac, "m68k:521x", FALSE, &arch_info_struct[37]),
+    N(bfd_mach_mcf_isa_a_emac, "m68k:5249", FALSE, &arch_info_struct[38]),
     N(bfd_mach_mcf_isa_b_float_emac, "m68k:547x",
-      FALSE, &arch_info_struct[36]),
+      FALSE, &arch_info_struct[39]),
     N(bfd_mach_mcf_isa_b_float_emac, "m68k:548x",
-      FALSE, &arch_info_struct[37]),
+      FALSE, &arch_info_struct[40]),
     N(bfd_mach_mcf_isa_b_float_emac, "m68k:cfv4e", FALSE, 0),
   };
 
@@ -135,6 +141,9 @@ static const unsigned m68k_arch_features[] =
   mcfisa_a|mcfhwdiv|mcfisa_c|mcfusp,
   mcfisa_a|mcfhwdiv|mcfisa_c|mcfusp|mcfmac,
   mcfisa_a|mcfhwdiv|mcfisa_c|mcfusp|mcfemac,
+  mcfisa_a|mcfisa_c|mcfusp,
+  mcfisa_a|mcfisa_c|mcfusp|mcfmac,
+  mcfisa_a|mcfisa_c|mcfusp|mcfemac,
 };
 
 /* Return the count of bits set in MASK  */
index ffa1668ada49e66ec27703d8ec715a4e35d4a8bf..b48c09cb8d7faa87b8ceea2ea579da13bbc8e3b4 100644 (file)
@@ -506,6 +506,9 @@ elf32_m68k_object_p (bfd *abfd)
        case EF_M68K_CF_ISA_C:
          features |= mcfisa_a|mcfisa_c|mcfhwdiv|mcfusp;
          break;
+       case EF_M68K_CF_ISA_C_NODIV:
+         features |= mcfisa_a|mcfisa_c|mcfusp;
+         break;
        }
       switch (eflags & EF_M68K_CF_MAC_MASK)
        {
@@ -658,6 +661,10 @@ elf32_m68k_print_private_bfd_data (abfd, ptr)
            case EF_M68K_CF_ISA_C:
              isa = "C";
              break;
+           case EF_M68K_CF_ISA_C_NODIV:
+             isa = "C";
+             additional = " [nodiv]";
+             break;
            }
          fprintf (file, " [isa %s]%s", isa, additional);
          if (eflags & EF_M68K_CF_FLOAT)
index 6efd978e17c004f3f41a6d8638f97f2a8e2a2ca6..d032e9c133a3246913b59ff7e933433c4753f9f9 100644 (file)
@@ -3487,6 +3487,12 @@ ieee_write_processor (bfd *abfd)
          case bfd_mach_mcf_isa_b_float: id = "isa-b:float"; break;
          case bfd_mach_mcf_isa_b_float_mac: id = "isa-b:float:mac"; break;
          case bfd_mach_mcf_isa_b_float_emac: id = "isa-b:float:emac"; break;
+         case bfd_mach_mcf_isa_c: id = "isa-c"; break;
+         case bfd_mach_mcf_isa_c_mac: id = "isa-c:mac"; break;
+         case bfd_mach_mcf_isa_c_emac: id = "isa-c:emac"; break;
+         case bfd_mach_mcf_isa_c_nodiv: id = "isa-c:nodiv"; break;
+         case bfd_mach_mcf_isa_c_nodiv_mac: id = "isa-c:nodiv:mac"; break;
+         case bfd_mach_mcf_isa_c_nodiv_emac: id = "isa-c:nodiv:emac"; break;
          }
 
        if (! ieee_write_id (abfd, id))
index 18f054c21bb3fdf42c2d0d9d8304d4e00e044d84..1d13235e74d15f31946bad18ef2ecfe6e88a165e 100644 (file)
@@ -1,3 +1,8 @@
+2007-09-11  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * config/tc-m68k.c (m68k_ip): Add mcfisa_c case.
+       (m68k_elf_final_processing): Add EF_M68K_CF_ISA_C_NODIV.
+
 2007-09-09  H.J. Lu  <hongjiu.lu@intel.com>
 
        * tc-i386.c (output_insn): Only check SSE4.2 and ABM for 3
index d4e21ceb46e80058b2095e78c0726f086dd484f2..57163ce3f598a90acd61153791e9c2ecec3be331 100644 (file)
@@ -2186,6 +2186,9 @@ m68k_ip (char *instring)
                case mcfisa_b:
                  APPEND (_("ColdFire ISA_B"));
                  break;
+               case mcfisa_c:
+                 APPEND (_("ColdFire ISA_C"));
+                 break;
                case cfloat:
                  APPEND (_("ColdFire fpu"));
                  break;
@@ -7749,6 +7752,7 @@ m68k_elf_final_processing (void)
        {EF_M68K_CF_ISA_B_NOUSP,mcfisa_a|mcfisa_b|mcfhwdiv},
        {EF_M68K_CF_ISA_B,      mcfisa_a|mcfisa_b|mcfhwdiv|mcfusp},
        {EF_M68K_CF_ISA_C,      mcfisa_a|mcfisa_c|mcfhwdiv|mcfusp},
+       {EF_M68K_CF_ISA_C_NODIV,mcfisa_a|mcfisa_c|mcfusp},
        {0,0},
       };
       static const unsigned mac_features[][2] =
index c24893d169db17855880259f50414cb1c62f5d8f..939c371c13ee6878a762c06ec6322e6f29d2dbce 100644 (file)
@@ -1,3 +1,7 @@
+2007-09-11  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * m68k.h (EF_M68K_CF_ISA_C_NODIV): New.
+
 2007-08-25  Ulrich Weigand  <uweigand@de.ibm.com>
 
        * common.h (NT_SPU): Define.
index a9f2203a6884e0ad6dc1c4dde0d83dddf27dda49..23b269a822a312ad09572ec1486eb9857e9e1e75 100644 (file)
@@ -71,6 +71,7 @@ END_RELOC_NUMBERS (R_68K_max)
 #define EF_M68K_CF_ISA_B_NOUSP 0x04  /* ISA_B except for USP */
 #define EF_M68K_CF_ISA_B       0x05
 #define EF_M68K_CF_ISA_C       0x06
+#define EF_M68K_CF_ISA_C_NODIV 0x07  /* ISA C except for div */
 #define EF_M68K_CF_MAC_MASK    0x30 
 #define EF_M68K_CF_MAC         0x10  /* MAC */
 #define EF_M68K_CF_EMAC                0x20  /* EMAC */