mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-28 18:10:46 +00:00
bfd:
* archures.c (bfd_mach_mcf_isa_a_nodiv, bfd_mach_mcf_isa_b_nousp): New. Adjust other variants. (bfd_default_scan): Update. * bfd-in2.h: Rebuilt. * cpu-m68k.c: Adjust. (bfd_m68k_compatible): New. Use it for architectures. * elf32-m68k.c (elf32_m68k_object_p): Adjust. (elf32_m68k_merge_private_bfd_data): Adjust. Correct isa-a/b mismatch. (elf32_m68k_print_private_bfd_data): Adjust. * ieee.c (ieee_write_processor): Adjust. binutils: * readelf.c (get_machine_flags): Adjust. gas: * config/tc-m68k.c (m68k_extensions): Allow 'float' on both m68k and cf. (m68k_ip): <case 'J'> Check we have some control regs. (md_parse_option): Allow raw arch switch. (m68k_init_arch): Better detection of arch/cpu mismatch. Detect whether 68881 or cfloat was meant by -mfloat. (md_show_usage): Adjust extension display. (m68k_elf_final_processing): Adjust. gas/testsuite: * gas/m68k/arch-cpu-1.s: Tweak. * gas/m68k/arch-cpu-1.d: Tweak. include/elf: * m68k.h (EF_M68K_ISA_MASK, EF_M68K_ISA_A, EF_M68K_ISA_A_PLUS, EF_M68K_ISA_B, EF_M68K_ISA_C): Adjust. (EF_M68K_ISA_A_NODIV, EF_M68K_ISA_B_NOUSP): New. (EF_M68K_HW_DIV, EF_M68K_USP): Remove. (EF_M68K_MAC, EF_M68K_EMAC, EF_M68K_FLOAT): Adjust. (EF_M68K_EMAC_B): New. ld/testsuite: * ld-m68k: New tests.
This commit is contained in:
@@ -1949,23 +1949,34 @@ get_machine_flags (unsigned e_flags, unsigned e_machine)
|
||||
{
|
||||
char const *isa = _("unknown");
|
||||
char const *mac = _("unknown mac");
|
||||
char const *additional = NULL;
|
||||
|
||||
switch (e_flags & EF_M68K_ISA_MASK)
|
||||
{
|
||||
case EF_M68K_ISA_A_NODIV:
|
||||
isa = "A";
|
||||
additional = ", nodiv";
|
||||
break;
|
||||
case EF_M68K_ISA_A:
|
||||
isa = "A";
|
||||
break;
|
||||
case EF_M68K_ISA_A_PLUS:
|
||||
isa = "A+";
|
||||
break;
|
||||
case EF_M68K_ISA_B_NOUSP:
|
||||
isa = "B";
|
||||
additional = ", nousp";
|
||||
break;
|
||||
case EF_M68K_ISA_B:
|
||||
isa = "B";
|
||||
break;
|
||||
}
|
||||
strcat (buf, ", cf, isa ");
|
||||
strcat (buf, isa);
|
||||
if (e_flags & EF_M68K_HW_DIV)
|
||||
strcat (buf, ", hwdiv");
|
||||
if (additional)
|
||||
strcat (buf, additional);
|
||||
if (e_flags & EF_M68K_FLOAT)
|
||||
strcat (buf, ", float");
|
||||
switch (e_flags & EF_M68K_MAC_MASK)
|
||||
{
|
||||
case 0:
|
||||
@@ -1983,10 +1994,6 @@ get_machine_flags (unsigned e_flags, unsigned e_machine)
|
||||
strcat (buf, ", ");
|
||||
strcat (buf, mac);
|
||||
}
|
||||
if (e_flags & EF_M68K_USP)
|
||||
strcat (buf, ", usp");
|
||||
if (e_flags & EF_M68K_FLOAT)
|
||||
strcat (buf, ", float");
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user