diff -Naurp gcc/config/avr/avr-devices.c gcc/config/avr/avr-devices.c --- gcc/config/avr/avr-devices.c 2011-10-28 11:55:44.000000000 +0530 +++ gcc/config/avr/avr-devices.c 2011-10-28 12:00:41.000000000 +0530 @@ -295,6 +295,7 @@ const struct mcu_type_s avr_mcu_types[] { "avrxmega7", ARCH_AVRXMEGA7, NULL, 0, 0x2000, "x128a1" }, { "atxmega128a1", ARCH_AVRXMEGA7, "__AVR_ATxmega128A1__", 0, 0x2000, "x128a1" }, { "atxmega128a1u", ARCH_AVRXMEGA7, "__AVR_ATxmega128A1U__", 0, 0x2000, "x128a1u" }, + { "atxmega128a4u", ARCH_AVRXMEGA7, "__AVR_ATxmega128A4U__", 0, 0x2000, "x128a4u" }, /* tiny10 family */ { "avrtiny10", ARCH_AVRTINY10, NULL, 0, 0x0040, "tn10" }, { "attiny4", ARCH_AVRTINY10, "__AVR_ATtiny4__", 0, 0x0040, "tn4" }, diff -Naurp gcc/config/avr/t-avr gcc/config/avr/t-avr --- gcc/config/avr/t-avr 2011-10-28 11:55:44.000000000 +0530 +++ gcc/config/avr/t-avr 2011-10-28 12:00:41.000000000 +0530 @@ -299,6 +299,7 @@ MULTILIB_MATCHES = \ mmcu?avrxmega6=mmcu?atxmega384c3 \ mmcu?avrxmega7=mmcu?atxmega128a1 \ mmcu?avrxmega7=mmcu?atxmega128a1u \ + mmcu?avrxmega7=mmcu?atxmega128a4u \ mmcu?avrtiny10=mmcu?attiny4 \ mmcu?avrtiny10=mmcu?attiny5 \ mmcu?avrtiny10=mmcu?attiny9 \