diff options
-rw-r--r-- | bfd/ChangeLog | 12 | ||||
-rw-r--r-- | bfd/archures.c | 3 | ||||
-rw-r--r-- | bfd/bfd-in2.h | 3 | ||||
-rw-r--r-- | bfd/cpu-m68k.c | 27 | ||||
-rw-r--r-- | bfd/elf32-m68k.c | 7 | ||||
-rw-r--r-- | bfd/ieee.c | 6 | ||||
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-m68k.c | 4 | ||||
-rw-r--r-- | include/elf/ChangeLog | 4 | ||||
-rw-r--r-- | include/elf/m68k.h | 1 |
10 files changed, 63 insertions, 9 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index cba32ae..eb7c625 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -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'. diff --git a/bfd/archures.c b/bfd/archures.c index 67d1b5c..8f19b7e 100644 --- a/bfd/archures.c +++ b/bfd/archures.c @@ -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. diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index 317d32e..d3228d0 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -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. diff --git a/bfd/cpu-m68k.c b/bfd/cpu-m68k.c index e239988..a82c4ee 100644 --- a/bfd/cpu-m68k.c +++ b/bfd/cpu-m68k.c @@ -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 */ diff --git a/bfd/elf32-m68k.c b/bfd/elf32-m68k.c index ffa1668..b48c09c 100644 --- a/bfd/elf32-m68k.c +++ b/bfd/elf32-m68k.c @@ -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) @@ -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)) diff --git a/gas/ChangeLog b/gas/ChangeLog index 18f054c..1d13235 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -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 diff --git a/gas/config/tc-m68k.c b/gas/config/tc-m68k.c index d4e21ce..57163ce 100644 --- a/gas/config/tc-m68k.c +++ b/gas/config/tc-m68k.c @@ -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] = diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog index c24893d..939c371 100644 --- a/include/elf/ChangeLog +++ b/include/elf/ChangeLog @@ -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. diff --git a/include/elf/m68k.h b/include/elf/m68k.h index a9f2203..23b269a 100644 --- a/include/elf/m68k.h +++ b/include/elf/m68k.h @@ -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 */ |