2008-12-09 Tristan Gingold <gingold@adacore.com>

* cpu-avr.c (compatible): Makes avr-6 compatible only with itself.
This commit is contained in:
Tristan Gingold 2008-12-09 09:51:08 +00:00
parent f5f53991ea
commit 3e22044af1
2 changed files with 11 additions and 1 deletions

View File

@ -1,3 +1,7 @@
2008-12-09 Tristan Gingold <gingold@adacore.com>
* cpu-avr.c (compatible): Makes avr-6 compatible only with itself.
2008-12-04 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* elf64-s390.c (elf_s390_check_relocs): Initialize

View File

@ -38,7 +38,13 @@ compatible (const bfd_arch_info_type * a,
if (a->mach == b->mach)
return a;
if (a->mach <= bfd_mach_avr6 && b->mach <= bfd_mach_avr6)
/* avr-6 is compatible only with itself as its call convention is not
compatible with other avr (the mcu saves the return address on 3 bytes
instead of 2). */
if (a->mach == bfd_mach_avr6 || b->mach == bfd_mach_avr6)
return NULL;
if (a->mach < bfd_mach_avr6 && b->mach < bfd_mach_avr6)
{
/* Special case for ATmega[16]03 (avr:3) and ATmega83 (avr:4). */
if ((a->mach == bfd_mach_avr3 && b->mach == bfd_mach_avr4)