attiny461a
atmega48a
atmega88a
atmega88pa
atmega16a
atmega164a
atmega165a
atmega168a
atmega169a
atmega169pa
atmega324a
atmega324pa
atmega328
atmega329pa
atmega644a
atmega645a
atmega645p
atmega649p
atmega649a
atmega6450a
atmega6450p
atmega6490a
atmega6490p
atmega64hve
atmega16hva2
attiny84a
atmega325a
atmega3250a
atmega329a
atmega3290a
m3000
Remove: m3000f, m3000s, m3001b, atmega16c1, atmega4hvd, atmega8hvd, atmega8m1,
atmega8c1, attiny327
===========================================================
diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
--- gas/config/tc-avr.c	2011-01-12 14:20:58.000000000 -0600
+++ gas/config/tc-avr.c	2011-01-12 14:24:17.000000000 -0600
@@ -115,12 +115,14 @@ static struct mcu_type_s mcu_types[] =
   {"attiny44",   AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny44a",  AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny84",   AVR_ISA_AVR25,   bfd_mach_avr25},
+  {"attiny84a",  AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny25",   AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny45",   AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny85",   AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny261",  AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny261a", AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny461",  AVR_ISA_AVR25,   bfd_mach_avr25},
+  {"attiny461a", AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny861",  AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny861a", AVR_ISA_AVR25,   bfd_mach_avr25},
   {"attiny87",   AVR_ISA_AVR25,   bfd_mach_avr25},
@@ -134,7 +136,6 @@ static struct mcu_type_s mcu_types[] =
   {"atmega103",  AVR_ISA_AVR31,   bfd_mach_avr31},
   {"at43usb320", AVR_ISA_AVR31,   bfd_mach_avr31},
   {"attiny167",  AVR_ISA_AVR35,   bfd_mach_avr35},
-  {"attiny327",  AVR_ISA_AVR35,   bfd_mach_avr35},
   {"at90usb82",  AVR_ISA_AVR35,   bfd_mach_avr35},
   {"at90usb162", AVR_ISA_AVR35,   bfd_mach_avr35},
   {"atmega8u2",  AVR_ISA_AVR35,   bfd_mach_avr35},
@@ -142,16 +143,15 @@ static struct mcu_type_s mcu_types[] =
   {"atmega32u2", AVR_ISA_AVR35,   bfd_mach_avr35},
   {"atmega8",    AVR_ISA_M8,      bfd_mach_avr4},
   {"atmega48",   AVR_ISA_AVR4,    bfd_mach_avr4},
+  {"atmega48a",  AVR_ISA_AVR4,    bfd_mach_avr4},
   {"atmega48p",  AVR_ISA_AVR4,    bfd_mach_avr4},
   {"atmega88",   AVR_ISA_AVR4,    bfd_mach_avr4},
+  {"atmega88a",  AVR_ISA_AVR4,    bfd_mach_avr4},
   {"atmega88p",  AVR_ISA_AVR4,    bfd_mach_avr4},
+  {"atmega88pa", AVR_ISA_AVR4,    bfd_mach_avr4},
   {"atmega8515", AVR_ISA_M8,      bfd_mach_avr4},
   {"atmega8535", AVR_ISA_M8,      bfd_mach_avr4},
   {"atmega8hva", AVR_ISA_AVR4,    bfd_mach_avr4},
-  {"atmega4hvd", AVR_ISA_AVR4,    bfd_mach_avr4},
-  {"atmega8hvd", AVR_ISA_AVR4,    bfd_mach_avr4},
-  {"atmega8c1",  AVR_ISA_AVR4,    bfd_mach_avr4},
-  {"atmega8m1",  AVR_ISA_AVR4,    bfd_mach_avr4},
   {"at90pwm1",   AVR_ISA_AVR4,    bfd_mach_avr4},
   {"at90pwm2",   AVR_ISA_AVR4,    bfd_mach_avr4},
   {"at90pwm2b",  AVR_ISA_AVR4,    bfd_mach_avr4},
@@ -159,40 +159,64 @@ static struct mcu_type_s mcu_types[] =
   {"at90pwm3b",  AVR_ISA_AVR4,    bfd_mach_avr4},
   {"at90pwm81",  AVR_ISA_AVR4,    bfd_mach_avr4},
   {"atmega16",   AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega16a",  AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega161",  AVR_ISA_M161,    bfd_mach_avr5},
   {"atmega162",  AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega163",  AVR_ISA_M161,    bfd_mach_avr5},
+  {"atmega164a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega164p", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega165",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega165a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega165p", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega168",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega168a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega168p", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega169",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega169a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega169p", AVR_ISA_AVR5,    bfd_mach_avr5},
-  {"atmega16c1", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega169pa",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega32",   AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega323",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega324a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega324p", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega324pa",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega325",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega325a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega325p", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega3250", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega3250a",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega3250p",AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega328",  AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega328p", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega329",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega329a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega329p", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega329pa",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega3290", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega3290a",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega3290p",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega406",  AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega64",   AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega640",  AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega644",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega644a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega644p", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega644pa",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega645",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega645a", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega645p", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega649",  AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega649p", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega649a", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega6450", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega6450a",AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega6450p",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega6490", AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega6490a",AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega6490p",AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega64hve",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega16hva",AVR_ISA_AVR5,    bfd_mach_avr5},
+  {"atmega16hva2",AVR_ISA_AVR5,   bfd_mach_avr5},
   {"atmega16hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega32hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
   {"at90can32" , AVR_ISA_AVR5,    bfd_mach_avr5},
@@ -211,6 +235,7 @@ static struct mcu_type_s mcu_types[] =
   {"at90usb647", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"at90scr100", AVR_ISA_AVR5,    bfd_mach_avr5},
   {"at94k",      AVR_ISA_94K,     bfd_mach_avr5},
+  {"m3000",      AVR_ISA_AVR5,    bfd_mach_avr5},
   {"atmega128",  AVR_ISA_AVR51,   bfd_mach_avr51},
   {"atmega1280", AVR_ISA_AVR51,   bfd_mach_avr51},
   {"atmega1281", AVR_ISA_AVR51,   bfd_mach_avr51},
@@ -219,9 +244,6 @@ static struct mcu_type_s mcu_types[] =
   {"at90can128", AVR_ISA_AVR51,   bfd_mach_avr51},
   {"at90usb1286",AVR_ISA_AVR51,   bfd_mach_avr51},
   {"at90usb1287",AVR_ISA_AVR51,   bfd_mach_avr51},
-  {"m3000f",     AVR_ISA_AVR51,   bfd_mach_avr51},
-  {"m3000s",     AVR_ISA_AVR51,   bfd_mach_avr51},
-  {"m3001b",     AVR_ISA_AVR51,   bfd_mach_avr51},
   {"atmega2560", AVR_ISA_AVR6,    bfd_mach_avr6},
   {"atmega2561", AVR_ISA_AVR6,    bfd_mach_avr6},
   {"atxmega16a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
--- gas/doc/c-avr.texi	2011-01-12 14:20:58.000000000 -0600
+++ gas/doc/c-avr.texi	2011-01-12 14:22:42.000000000 -0600
@@ -43,9 +43,10 @@ at90s8535).
 
 Instruction set avr25 is for the classic AVR core with up to 8K program memory
 space plus the MOVW instruction (MCU types: attiny13, attiny13a, attiny2313,
-attiny2313a, attiny24, attiny24a, attiny4313, attiny44, attiny44a, attiny84,
-attiny25, attiny45, attiny85, attiny261, attiny261a, attiny461, attiny861,
-attiny861a, attiny87, attiny43u, attiny48, attiny88, at86rf401, ata6289).
+attiny2313a, attiny24, attiny24a, attiny4313, attiny43u, attiny44, attiny44a, 
+attiny84, attiny84a, attiny25, attiny45, attiny85, attiny261, attiny261a,
+attiny461, attiny461a, attiny861, attiny861a, attiny87, attiny43u, attiny48,
+attiny88, at86rf401, ata6289).
 
 Instruction set avr3 is for the classic AVR core with up to 128K program
 memory space (MCU types: at43usb355, at76c711).
@@ -54,28 +55,33 @@ Instruction set avr31 is for the classic
 memory space (MCU types: atmega103, at43usb320).
 
 Instruction set avr35 is for classic AVR core plus MOVW, CALL, and JMP
-instructions (MCU types: attiny167, attiny327, at90usb82, at90usb162, atmega8u2,
+instructions (MCU types: attiny167, at90usb82, at90usb162, atmega8u2,
 atmega16u2, atmega32u2).
 
 Instruction set avr4 is for the enhanced AVR core with up to 8K program
-memory space (MCU types: atmega48, atmega48p,atmega8, atmega88, atmega88p,
-atmega8515, atmega8535, atmega8hva, atmega4hvd, atmega8hvd, at90pwm1,
-at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81, atmega8m1, atmega8c1).
+memory space (MCU types: atmega48, atmega48a, atmega48p,atmega8, atmega88, 
+atmega88a, atmega88p, atmega88pa, atmega8515, atmega8535, atmega8hva, 
+at90pwm1,at90pwm2, at90pwm2b, at90pwm3, at90pwm3b,
+at90pwm81).
 
 Instruction set avr5 is for the enhanced AVR core with up to 128K program
-memory space (MCU types: atmega16, atmega161, atmega162, atmega163, atmega164p,
-atmega165, atmega165p, atmega168, atmega168p, atmega169, atmega169p, atmega16c1,
-atmega32, atmega323, atmega324p, atmega325, atmega325p, atmega3250, atmega3250p,
-atmega328p, atmega329, atmega329p, atmega3290, atmega3290p, atmega406, atmega64,
-atmega640, atmega644, atmega644p, atmega644pa, atmega645, atmega6450, atmega649,
-atmega6490, atmega16hva, atmega16hvb, atmega32hvb, at90can32, at90can64,
-at90pwm216, at90pwm316, atmega32c1, atmega64c1, atmega16m1, atmega32m1,
-atmega64m1, atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647, at94k,
-at90scr100).
+memory space (MCU types: atmega16, atmega16a, atmega161, atmega162, atmega163,
+atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
+atmega168a, atmega168p, atmega169, atmega169p, atmega169pa,
+atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a,
+atmega325p, atmega3250, atmega3250a, atmega3250p, atmega328, atmega328p,
+atmega329, atmega329a, atmega329p, atmega329pa, atmega3290, atmega3290a,
+atmega3290p, atmega406, atmega64, atmega640, atmega644, atmega644a, atmega644p,
+atmega644pa, atmega645, atmega645a, atmega645p, atmega6450, atmega6450a,
+atmega6450p, atmega649, atmega649a, atmega649p, atmega6490, atmega6490a,
+atmega6490p, atmega64hve, atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb,
+at90can32, at90can64, at90pwm216, at90pwm316, atmega16u4, atmega32c1,
+atmega64c1, atmega64m1, atmega16m1, atmega32m1, atmega64m1, atmega16u4,
+atmega32u4, atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
 
 Instruction set avr51 is for the enhanced AVR core with exactly 128K program
 memory space (MCU types: atmega128, atmega1280, atmega1281, atmega1284p,
-atmega128rfa1, at90can128, at90usb1286, at90usb1287, m3000f, m3000s, m3001b).
+atmega128rfa1, at90can128, at90usb1286, at90usb1287, m3000).
 
 Instruction set avr6 is for the enhanced AVR core with a 3-byte PC (MCU types:
 atmega2560, atmega2561).
