aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf32-m68k.c
diff options
context:
space:
mode:
authorKazu Hirata <kazu@codesourcery.com>2006-12-25 22:39:21 +0000
committerKazu Hirata <kazu@codesourcery.com>2006-12-25 22:39:21 +0000
commit9840d27e8183796b97a7320fa51d52dc08577e69 (patch)
tree680186c4c2d1eaabd528db5554fd02a179a00cfa /bfd/elf32-m68k.c
parent8fce5f8c17863e0d03747400cd745a3cbd4451e3 (diff)
downloadgdb-9840d27e8183796b97a7320fa51d52dc08577e69.zip
gdb-9840d27e8183796b97a7320fa51d52dc08577e69.tar.gz
gdb-9840d27e8183796b97a7320fa51d52dc08577e69.tar.bz2
bfd/
* archures.c (bfd_mach_cpu32_fido): New. (bfd_mach_mcf_isa_a_nodiv, bfd_mach_mcf_isa_a, bfd_mach_mcf_isa_a_mac, bfd_mach_mcf_isa_a_emac, bfd_mach_mcf_isa_aplus, bfd_mach_mcf_isa_aplus_mac, bfd_mach_mcf_isa_aplus_emac, bfd_mach_mcf_isa_b_nousp, bfd_mach_mcf_isa_b_nousp_mac, bfd_mach_mcf_isa_b_nousp_emac, bfd_mach_mcf_isa_b, bfd_mach_mcf_isa_b_mac, bfd_mach_mcf_isa_b_emac, bfd_mach_mcf_isa_b_float, bfd_mach_mcf_isa_b_float_mac, bfd_mach_mcf_isa_b_float_emac): Increment the defined values. * bfd-in2.h: Regenerate. * cpu-m68k.c (arch_info_struct): Add en entry for bfd_mach_cpu32_fido. * elf32-m68k.c (elf32_m68k_object_p): Handle EF_M68K_CPU32_FIDO_A. (elf32_m68k_merge_private_bfd_data): Use EF_M68K_CPU32_MASK. (elf32_m68k_print_private_bfd_data): Handle EF_M68K_CPU32_FIDO_A. binutils/ * readelf.c (get_machine_flags): Handle EF_M68K_CPU32_FIDO_A. gas/ * config/tc-m68k.c (cpu_of_arch): Add fido. (m68k_archs, m68k_cpu): Add entries for fido. (m68k_elf_final_processing): Handle EF_M68K_CPU32_FIDO_A. include/elf/ * m68k.h (EF_M68K_CPU32_FIDO_A, EF_M68K_CPU32_MASK): New. include/opcode/ * m68k.h (fido_a): New.
Diffstat (limited to 'bfd/elf32-m68k.c')
-rw-r--r--bfd/elf32-m68k.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/bfd/elf32-m68k.c b/bfd/elf32-m68k.c
index 81a9225..1c04a69 100644
--- a/bfd/elf32-m68k.c
+++ b/bfd/elf32-m68k.c
@@ -432,7 +432,14 @@ elf32_m68k_object_p (bfd *abfd)
if ((eflags & EF_M68K_ARCH_MASK) == EF_M68K_M68000)
features |= m68000;
else if ((eflags & EF_M68K_ARCH_MASK) == EF_M68K_CPU32)
- features |= cpu32;
+ {
+ features |= cpu32;
+ switch (eflags & EF_M68K_CPU32_MASK)
+ {
+ case EF_M68K_CPU32_FIDO_A:
+ features |= fido_a; break;
+ }
+ }
else
{
switch (eflags & EF_M68K_CF_ISA_MASK)
@@ -523,7 +530,7 @@ elf32_m68k_merge_private_bfd_data (ibfd, obfd)
if ((in_flags & EF_M68K_ARCH_MASK) == EF_M68K_M68000)
variant_mask = 0;
else if ((in_flags & EF_M68K_ARCH_MASK) == EF_M68K_CPU32)
- variant_mask = 0;
+ variant_mask = EF_M68K_CPU32_MASK;
else
variant_mask = EF_M68K_CF_ISA_MASK;
@@ -560,7 +567,11 @@ elf32_m68k_print_private_bfd_data (abfd, ptr)
if ((eflags & EF_M68K_ARCH_MASK) == EF_M68K_M68000)
fprintf (file, " [m68000]");
else if ((eflags & EF_M68K_ARCH_MASK) == EF_M68K_CPU32)
- fprintf (file, " [cpu32]");
+ {
+ fprintf (file, " [cpu32]");
+ if (eflags & EF_M68K_CPU32_FIDO_A)
+ fprintf (file, " [fido]");
+ }
else
{
if ((eflags & EF_M68K_ARCH_MASK) == EF_M68K_CFV4E)