mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-20 05:50:28 +08:00
avr.c (avr_mcu_t): Add attiny87...
* config/avr/avr.c (avr_mcu_t): Add attiny87, attiny327, at90pwm81, atmega16m1, at90scr100, atmega128rfa1, m3000f, m3000s and m3001b devices. * config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.). * config/avr/t-avr (MULTILIB_MATCHES): (Ditto.). From-SVN: r142783
This commit is contained in:
parent
91102877a1
commit
f15a9aa2e4
@ -1,3 +1,11 @@
|
||||
2008-12-12 Anatoly Sokolov <aesok@post.ru>
|
||||
|
||||
* config/avr/avr.c (avr_mcu_t): Add attiny87, attiny327, at90pwm81,
|
||||
atmega16m1, at90scr100, atmega128rfa1, m3000f, m3000s and m3001b
|
||||
devices.
|
||||
* config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.).
|
||||
* config/avr/t-avr (MULTILIB_MATCHES): (Ditto.).
|
||||
|
||||
2008-12-16 Hariharan Sandanagobalane <hariharan@picochip.com>
|
||||
|
||||
PR target/38842
|
||||
|
@ -188,6 +188,7 @@ static const struct mcu_type_s avr_mcu_types[] = {
|
||||
{ "attiny461", ARCH_AVR25, "__AVR_ATtiny461__" },
|
||||
{ "attiny861", ARCH_AVR25, "__AVR_ATtiny861__" },
|
||||
{ "attiny43u", ARCH_AVR25, "__AVR_ATtiny43U__" },
|
||||
{ "attiny87", ARCH_AVR25, "__AVR_ATtiny87__" },
|
||||
{ "attiny48", ARCH_AVR25, "__AVR_ATtiny48__" },
|
||||
{ "attiny88", ARCH_AVR25, "__AVR_ATtiny88__" },
|
||||
{ "at86rf401", ARCH_AVR25, "__AVR_AT86RF401__" },
|
||||
@ -204,6 +205,7 @@ static const struct mcu_type_s avr_mcu_types[] = {
|
||||
{ "at90usb82", ARCH_AVR35, "__AVR_AT90USB82__" },
|
||||
{ "at90usb162", ARCH_AVR35, "__AVR_AT90USB162__" },
|
||||
{ "attiny167", ARCH_AVR35, "__AVR_ATtiny167__" },
|
||||
{ "attiny327", ARCH_AVR35, "__AVR_ATtiny327__" },
|
||||
/* Enhanced, <= 8K. */
|
||||
{ "avr4", ARCH_AVR4, NULL },
|
||||
{ "atmega8", ARCH_AVR4, "__AVR_ATmega8__" },
|
||||
@ -221,6 +223,7 @@ static const struct mcu_type_s avr_mcu_types[] = {
|
||||
{ "at90pwm2b", ARCH_AVR4, "__AVR_AT90PWM2B__" },
|
||||
{ "at90pwm3", ARCH_AVR4, "__AVR_AT90PWM3__" },
|
||||
{ "at90pwm3b", ARCH_AVR4, "__AVR_AT90PWM3B__" },
|
||||
{ "at90pwm81", ARCH_AVR4, "__AVR_AT90PWM81__" },
|
||||
/* Enhanced, > 8K, <= 64K. */
|
||||
{ "avr5", ARCH_AVR5, NULL },
|
||||
{ "atmega16", ARCH_AVR5, "__AVR_ATmega16__" },
|
||||
@ -264,11 +267,13 @@ static const struct mcu_type_s avr_mcu_types[] = {
|
||||
{ "at90pwm316", ARCH_AVR5, "__AVR_AT90PWM316__" },
|
||||
{ "atmega32c1", ARCH_AVR5, "__AVR_ATmega32C1__" },
|
||||
{ "atmega64c1", ARCH_AVR5, "__AVR_ATmega64C1__" },
|
||||
{ "atmega16m1", ARCH_AVR5, "__AVR_ATmega16M1__" },
|
||||
{ "atmega32m1", ARCH_AVR5, "__AVR_ATmega32M1__" },
|
||||
{ "atmega64m1", ARCH_AVR5, "__AVR_ATmega64M1__" },
|
||||
{ "atmega16u4", ARCH_AVR5, "__AVR_ATmega16U4__" },
|
||||
{ "atmega32u4", ARCH_AVR5, "__AVR_ATmega32U4__" },
|
||||
{ "atmega32u6", ARCH_AVR5, "__AVR_ATmega32U6__" },
|
||||
{ "at90scr100", ARCH_AVR5, "__AVR_AT90SCR100__" },
|
||||
{ "at90usb646", ARCH_AVR5, "__AVR_AT90USB646__" },
|
||||
{ "at90usb647", ARCH_AVR5, "__AVR_AT90USB647__" },
|
||||
{ "at94k", ARCH_AVR5, "__AVR_AT94K__" },
|
||||
@ -278,9 +283,13 @@ static const struct mcu_type_s avr_mcu_types[] = {
|
||||
{ "atmega1280", ARCH_AVR51, "__AVR_ATmega1280__" },
|
||||
{ "atmega1281", ARCH_AVR51, "__AVR_ATmega1281__" },
|
||||
{ "atmega1284p", ARCH_AVR51, "__AVR_ATmega1284P__" },
|
||||
{ "atmega128rfa1", ARCH_AVR51, "__AVR_ATmega128RFA1__" },
|
||||
{ "at90can128", ARCH_AVR51, "__AVR_AT90CAN128__" },
|
||||
{ "at90usb1286", ARCH_AVR51, "__AVR_AT90USB1286__" },
|
||||
{ "at90usb1287", ARCH_AVR51, "__AVR_AT90USB1287__" },
|
||||
{ "m3000f", ARCH_AVR51, "__AVR_M3000F__" },
|
||||
{ "m3000s", ARCH_AVR51, "__AVR_M3000S__" },
|
||||
{ "m3001b", ARCH_AVR51, "__AVR_M3001B__" },
|
||||
/* 3-Byte PC. */
|
||||
{ "avr6", ARCH_AVR6, NULL },
|
||||
{ "atmega2560", ARCH_AVR6, "__AVR_ATmega2560__" },
|
||||
|
@ -838,14 +838,16 @@ mmcu=*:-mmcu=%*}"
|
||||
mmcu=at76*|\
|
||||
mmcu=at90usb82|\
|
||||
mmcu=at90usb162|\
|
||||
mmcu=attiny167: -m avr3}\
|
||||
mmcu=attiny16*|\
|
||||
mmcu=attiny32*: -m avr3}\
|
||||
%{mmcu=atmega8*|\
|
||||
mmcu=atmega4*|\
|
||||
mmcu=at90pwm1|\
|
||||
mmcu=at90pwm2|\
|
||||
mmcu=at90pwm2b|\
|
||||
mmcu=at90pwm3|\
|
||||
mmcu=at90pwm3b: -m avr4}\
|
||||
mmcu=at90pwm3b|\
|
||||
mmcu=at90pwm81: -m avr4}\
|
||||
%{mmcu=atmega16*|\
|
||||
mmcu=atmega32*|\
|
||||
mmcu=atmega406|\
|
||||
@ -854,9 +856,12 @@ mmcu=*:-mmcu=%*}"
|
||||
mmcu=at90can*|\
|
||||
mmcu=at90pwm216|\
|
||||
mmcu=at90pwm316|\
|
||||
mmcu=at90scr100|\
|
||||
mmcu=at90usb64*|\
|
||||
mmcu=at90usb128*|\
|
||||
mmcu=at94k: -m avr5}\
|
||||
mmcu=at94k|\
|
||||
mmcu=m3000*|\
|
||||
mmcu=m3001*: -m avr5}\
|
||||
%{mmcu=atmega256*:-m avr6}\
|
||||
%{mmcu=atmega324*|\
|
||||
mmcu=atmega325*|\
|
||||
@ -882,20 +887,27 @@ mmcu=*:-mmcu=%*}"
|
||||
mmcu=atmega32hv*|\
|
||||
mmcu=attiny48|\
|
||||
mmcu=attiny88|\
|
||||
mmcu=attiny87|\
|
||||
mmcu=attiny167|\
|
||||
mmcu=attiny327|\
|
||||
mmcu=at90can*|\
|
||||
mmcu=at90pwm*|\
|
||||
mmcu=atmega32c1|\
|
||||
mmcu=atmega64c1|\
|
||||
mmcu=atmega16m1|\
|
||||
mmcu=atmega32m1|\
|
||||
mmcu=atmega64m1|\
|
||||
mmcu=atmega16u4|\
|
||||
mmcu=atmega32u*|\
|
||||
mmcu=at90scr100|\
|
||||
mmcu=at90usb*: -Tdata 0x800100}\
|
||||
%{mmcu=atmega640|\
|
||||
mmcu=atmega1280|\
|
||||
mmcu=atmega1281|\
|
||||
mmcu=atmega256*: -Tdata 0x800200} "
|
||||
mmcu=atmega256*|\
|
||||
mmcu=atmega128rfa1: -Tdata 0x800200}\
|
||||
%{mmcu=m3000*|\
|
||||
mmcu=m3001*: -Tdata 0x801000}"
|
||||
|
||||
#define LIB_SPEC \
|
||||
"%{!mmcu=at90s1*:%{!mmcu=attiny11:%{!mmcu=attiny12:%{!mmcu=attiny15:%{!mmcu=attiny28: -lc }}}}}"
|
||||
@ -942,15 +954,17 @@ mmcu=*:-mmcu=%*}"
|
||||
%{mmcu=attiny461:crttn461.o%s} \
|
||||
%{mmcu=attiny861:crttn861.o%s} \
|
||||
%{mmcu=attiny43u:crttn43u.o%s} \
|
||||
%{mmcu=attiny87:crttn87.o%s} \
|
||||
%{mmcu=attiny48:crttn48.o%s} \
|
||||
%{mmcu=attiny88:crttn88.o%s} \
|
||||
%{mmcu=attiny167:crttn167.o%s} \
|
||||
%{mmcu=at43usb355|mmcu=avr3:crt43355.o%s} \
|
||||
%{mmcu=at76c711:crt76711.o%s} \
|
||||
%{mmcu=atmega103|mmcu=avr31:crtm103.o%s} \
|
||||
%{mmcu=at43usb320:crt43320.o%s} \
|
||||
%{mmcu=at90usb162|mmcu=avr35:crtusb162.o%s} \
|
||||
%{mmcu=at90usb82:crtusb82.o%s} \
|
||||
%{mmcu=attiny167:crttn167.o%s} \
|
||||
%{mmcu=attiny327:crttn327.o%s} \
|
||||
%{mmcu=atmega8|mmcu=avr4:crtm8.o%s} \
|
||||
%{mmcu=atmega48:crtm48.o%s} \
|
||||
%{mmcu=atmega48p:crtm48p.o%s} \
|
||||
@ -963,6 +977,7 @@ mmcu=*:-mmcu=%*}"
|
||||
%{mmcu=at90pwm2b:crt90pwm2b.o%s} \
|
||||
%{mmcu=at90pwm3:crt90pwm3.o%s} \
|
||||
%{mmcu=at90pwm3b:crt90pwm3b.o%s} \
|
||||
%{mmcu=at90pwm81:crt90pwm81.o%s} \
|
||||
%{mmcu=atmega16:crtm16.o%s} \
|
||||
%{mmcu=atmega161|mmcu=avr5:crtm161.o%s} \
|
||||
%{mmcu=atmega162:crtm162.o%s} \
|
||||
@ -1007,11 +1022,13 @@ mmcu=*:-mmcu=%*}"
|
||||
%{mmcu=at90pwm316:crt90pwm316.o%s} \
|
||||
%{mmcu=atmega32c1:crtm32c1.o%s} \
|
||||
%{mmcu=atmega64c1:crtm64c1.o%s} \
|
||||
%{mmcu=atmega16m1:crtm16m1.o%s} \
|
||||
%{mmcu=atmega32m1:crtm32m1.o%s} \
|
||||
%{mmcu=atmega64m1:crtm64m1.o%s} \
|
||||
%{mmcu=atmega16u4:crtm16u4.o%s} \
|
||||
%{mmcu=atmega32u4:crtm32u4.o%s} \
|
||||
%{mmcu=atmega32u6:crtm32u6.o%s} \
|
||||
%{mmcu=at90scr100:crt90scr100.o%s} \
|
||||
%{mmcu=at90usb646:crtusb646.o%s} \
|
||||
%{mmcu=at90usb647:crtusb647.o%s} \
|
||||
%{mmcu=at94k:crtat94k.o%s} \
|
||||
@ -1019,11 +1036,15 @@ mmcu=*:-mmcu=%*}"
|
||||
%{mmcu=atmega1280:crtm1280.o%s} \
|
||||
%{mmcu=atmega1281:crtm1281.o%s} \
|
||||
%{mmcu=atmega1284p:crtm1284p.o%s} \
|
||||
%{mmcu=atmega2560:crtm2560.o%s} \
|
||||
%{mmcu=atmega2561:crtm2561.o%s} \
|
||||
%{mmcu=at90can128:crtcan128.o%s} \
|
||||
%{mmcu=atmega128rfa1:crtm128rfa1.o%s} \
|
||||
%{mmcu=at90usb1286:crtusb1286.o%s} \
|
||||
%{mmcu=at90usb1287:crtusb1287.o%s}"
|
||||
%{mmcu=at90usb1287:crtusb1287.o%s} \
|
||||
%{mmcu=m3000f:crtm3000f.o%s} \
|
||||
%{mmcu=m3000s:crtm3000s.o%s} \
|
||||
%{mmcu=m3001b:crtm3001b.o%s} \
|
||||
%{mmcu=atmega2560|mmcu=avr6:crtm2560.o%s} \
|
||||
%{mmcu=atmega2561:crtm2561.o%s}"
|
||||
|
||||
#define EXTRA_SPECS {"crt_binutils", CRT_BINUTILS_SPECS},
|
||||
|
||||
|
@ -55,6 +55,7 @@ MULTILIB_MATCHES = \
|
||||
mmcu?avr25=mmcu?attiny461 \
|
||||
mmcu?avr25=mmcu?attiny861 \
|
||||
mmcu?avr25=mmcu?attiny43u \
|
||||
mmcu?avr25=mmcu?attiny87 \
|
||||
mmcu?avr25=mmcu?attiny48 \
|
||||
mmcu?avr25=mmcu?attiny88 \
|
||||
mmcu?avr25=mmcu?at86rf401 \
|
||||
@ -65,6 +66,7 @@ MULTILIB_MATCHES = \
|
||||
mmcu?avr35=mmcu?at90usb82 \
|
||||
mmcu?avr35=mmcu?at90usb162 \
|
||||
mmcu?avr35=mmcu?attiny167 \
|
||||
mmcu?avr35=mmcu?attiny327 \
|
||||
mmcu?avr4=mmcu?atmega48 \
|
||||
mmcu?avr4=mmcu?atmega48p \
|
||||
mmcu?avr4=mmcu?atmega8 \
|
||||
@ -80,6 +82,7 @@ MULTILIB_MATCHES = \
|
||||
mmcu?avr4=mmcu?at90pwm2b \
|
||||
mmcu?avr4=mmcu?at90pwm3 \
|
||||
mmcu?avr4=mmcu?at90pwm3b \
|
||||
mmcu?avr4=mmcu?at90pwm81 \
|
||||
mmcu?avr5=mmcu?atmega16 \
|
||||
mmcu?avr5=mmcu?atmega161 \
|
||||
mmcu?avr5=mmcu?atmega162 \
|
||||
@ -121,11 +124,13 @@ MULTILIB_MATCHES = \
|
||||
mmcu?avr5=mmcu?at90pwm316 \
|
||||
mmcu?avr5=mmcu?atmega32c1 \
|
||||
mmcu?avr5=mmcu?atmega64c1 \
|
||||
mmcu?avr5=mmcu?atmega16m1 \
|
||||
mmcu?avr5=mmcu?atmega32m1 \
|
||||
mmcu?avr5=mmcu?atmega64m1 \
|
||||
mmcu?avr5=mmcu?atmega16u4 \
|
||||
mmcu?avr5=mmcu?atmega32u4 \
|
||||
mmcu?avr5=mmcu?atmega32u6 \
|
||||
mmcu?avr5=mmcu?at90scr100 \
|
||||
mmcu?avr5=mmcu?at90usb646 \
|
||||
mmcu?avr5=mmcu?at90usb647 \
|
||||
mmcu?avr5=mmcu?at94k \
|
||||
@ -133,9 +138,13 @@ MULTILIB_MATCHES = \
|
||||
mmcu?avr51=mmcu?atmega1280 \
|
||||
mmcu?avr51=mmcu?atmega1281 \
|
||||
mmcu?avr51=mmcu?atmega1284p \
|
||||
mmcu?avr51=mmcu?atmega128rfa1 \
|
||||
mmcu?avr51=mmcu?at90can128 \
|
||||
mmcu?avr51=mmcu?at90usb1286 \
|
||||
mmcu?avr51=mmcu?at90usb1287 \
|
||||
mmcu?avr51=mmcu?m3000f \
|
||||
mmcu?avr51=mmcu?m3000s \
|
||||
mmcu?avr51=mmcu?m3001b \
|
||||
mmcu?avr6=mmcu?atmega2560 \
|
||||
mmcu?avr6=mmcu?atmega2561
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user