diff options
-rw-r--r-- | gas/ChangeLog | 13 | ||||
-rw-r--r-- | gas/config/tc-avr.c | 40 | ||||
-rw-r--r-- | gas/doc/c-avr.texi | 37 |
3 files changed, 65 insertions, 25 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 888e1a7..0cd45b1 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,16 @@ +2010-04-07 Eric B. Weddington <eric.weddington@atmel.com> + + * config/tc-avr.c (mcu_types): Add support for atmega16a, atmega168a, + atmega164a, atmega165a, atmega169a, atmega169pa, atmega16hva2, + atmega324a, atmega324pa, atmega325a, atmega3250a, atmega328, + atmega329a, atmega329pa, atmega3290a, atmega48a, atmega644a, + atmega645a, atmega645p, atmega6450a, atmega6450p, atmega649a, + atmega649p, atmega6490a, atmega6490p, atmega64hve, atmega88a, + atmega88pa, attiny461a, attiny84a, m3000. + Remove support for atmega8m1, atmega8c1, atmega16c1, atmega4hvd, + atmega8hvd, attiny327, m3000f, m3000s, m3001b. + * doc/c-avr.texi: Same. + 2010-04-07 Jie Zhang <jie@codesourcery.com> * config/tc-arm.c (make_mapping_symbol): Handle the case diff --git a/gas/config/tc-avr.c b/gas/config/tc-avr.c index a884068..d5dabce 100644 --- a/gas/config/tc-avr.c +++ b/gas/config/tc-avr.c @@ -106,12 +106,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}, @@ -125,7 +127,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}, @@ -133,16 +134,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}, @@ -150,42 +150,66 @@ 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}, + {"atmega649a", AVR_ISA_AVR5, bfd_mach_avr5}, + {"atmega649p", 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}, {"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}, + {"atmega64hve",AVR_ISA_AVR5, bfd_mach_avr5}, {"at90can32" , AVR_ISA_AVR5, bfd_mach_avr5}, {"at90can64" , AVR_ISA_AVR5, bfd_mach_avr5}, {"at90pwm216", AVR_ISA_AVR5, bfd_mach_avr5}, @@ -202,6 +226,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}, @@ -210,9 +235,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}, {NULL, 0, 0} diff --git a/gas/doc/c-avr.texi b/gas/doc/c-avr.texi index bc40a86..d0d0068 100644 --- a/gas/doc/c-avr.texi +++ b/gas/doc/c-avr.texi @@ -44,8 +44,9 @@ 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). +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,32 @@ Instruction set avr31 is for the classic AVR core with exactly 128K program 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, atmega169a, atmega169p, atmega169pa, +atmega32, atmega323, atmega324a, atmega324p, 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, +atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb, atmega64hve, at90can32, +at90can64, at90pwm216, at90pwm316, atmega32c1, atmega64c1, 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). |