diff -Naurp binutils/size.c binutils/size.c --- binutils/size.c 2012-10-16 17:02:14.000000000 +0530 +++ binutils/size.c 2012-10-16 17:01:47.000000000 +0530 @@ -239,6 +239,9 @@ avr_device_t avr[] = {"atxmega32a4u", AVR36K, AVR4K, AVR1K}, {"atxmega32c4", AVR36K, AVR4K, AVR1K}, {"atxmega32d4", AVR36K, AVR4K, AVR1K}, + {"atxmega32e5", AVR36K, AVR4K, AVR1K}, + {"atxmega16e5", AVR20K, AVR2K, AVR512}, + {"atxmega8e5", AVR10K, AVR1K, AVR512}, {"at90can32", AVR32K, AVR2K, AVR1K}, {"at94k", AVR32K, AVR4K, 0UL}, diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c --- gas/config/tc-avr.c 2012-10-16 17:02:14.000000000 +0530 +++ gas/config/tc-avr.c 2012-10-16 17:01:47.000000000 +0530 @@ -298,6 +298,9 @@ static struct mcu_type_s mcu_types[] = {"atxmega32a4u",AVR_ISA_XMEGAU, bfd_mach_avrxmega2}, {"atxmega32c4", AVR_ISA_XMEGAU, bfd_mach_avrxmega2}, {"atxmega32d4", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, + {"atxmega32e5", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, + {"atxmega16e5", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, + {"atxmega8e5", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, {"atxmega32x1", AVR_ISA_XMEGA, bfd_mach_avrxmega2}, {"atxmega64a3", AVR_ISA_XMEGA, bfd_mach_avrxmega4}, {"atxmega64a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega4}, diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi --- gas/doc/c-avr.texi 2012-10-16 17:02:14.000000000 +0530 +++ gas/doc/c-avr.texi 2012-10-16 17:01:47.000000000 +0530 @@ -92,7 +92,7 @@ from 0x8000 (MCU types: ata5831) Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u, atxmega16c4, -atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, ,atxmega32c4, atxmega32d4, +atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, atxmega32c4, atxmega32d4, atxmega32e5, atxmega16e5, atxmega8e5, atxmega32x1, atmxt224, atmxt224e, atmxt336s, atmxt112sl). Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program