avr.c (avr_mcu_types): Add entries for atmega48...

* config/avr/avr.c (avr_mcu_types): Add entries for atmega48,
	atmega88, atmega168, attiny13, attiny2313, at90can128, atmega165,
	atmega325, atmega3250, atmega645 and atmega6450.
	* config/avr/avr.h (LINK_SPEC): Ditto.
	(LIB_SPEC): Ditto.
	(LIBGCC_SPEC): Ditto.
	(CRT_BINUTILS_SPECS): Ditto.
	* config/avr/t-avr (MULTILIB_MATCHES): Ditto.

From-SVN: r91432
This commit is contained in:
Theodore A. Roth 2004-11-28 23:10:28 +00:00 committed by Marek Michalkiewicz
parent 20db5bc845
commit 3592022563
4 changed files with 47 additions and 9 deletions

View File

@ -1,3 +1,14 @@
2004-11-28 Theodore A. Roth <troth@openavr.org>
* config/avr/avr.c (avr_mcu_types): Add entries for atmega48,
atmega88, atmega168, attiny13, attiny2313, at90can128, atmega165,
atmega325, atmega3250, atmega645 and atmega6450.
* config/avr/avr.h (LINK_SPEC): Ditto.
(LIB_SPEC): Ditto.
(LIBGCC_SPEC): Ditto.
(CRT_BINUTILS_SPECS): Ditto.
* config/avr/t-avr (MULTILIB_MATCHES): Ditto.
2004-11-28 Nathanael Nerode <neroden@gcc.gnu.org>
PR preprocessor/17610

View File

@ -186,19 +186,30 @@ static const struct mcu_type_s avr_mcu_types[] = {
/* Enhanced, <= 8K. */
{ "avr4", 4, NULL },
{ "atmega8", 4, "__AVR_ATmega8__" },
{ "atmega48", 4, "__AVR_ATmega48__" },
{ "atmega88", 4, "__AVR_ATmega88__" },
{ "atmega8515", 4, "__AVR_ATmega8515__" },
{ "atmega8535", 4, "__AVR_ATmega8535__" },
{ "attiny13", 4, "__AVR_ATtiny13__" },
{ "attiny2313", 4, "__AVR_ATtiny2313__" },
/* Enhanced, > 8K. */
{ "avr5", 5, NULL },
{ "atmega16", 5, "__AVR_ATmega16__" },
{ "atmega161", 5, "__AVR_ATmega161__" },
{ "atmega162", 5, "__AVR_ATmega162__" },
{ "atmega163", 5, "__AVR_ATmega163__" },
{ "atmega165", 5, "__AVR_ATmega165__" },
{ "atmega168", 5, "__AVR_ATmega168__" },
{ "atmega169", 5, "__AVR_ATmega169__" },
{ "atmega32", 5, "__AVR_ATmega32__" },
{ "atmega323", 5, "__AVR_ATmega323__" },
{ "atmega325", 5, "__AVR_ATmega325__" },
{ "atmega3250", 5, "__AVR_ATmega3250__" },
{ "atmega64", 5, "__AVR_ATmega64__" },
{ "atmega645", 5, "__AVR_ATmega645__" },
{ "atmega6450", 5, "__AVR_ATmega6450__" },
{ "atmega128", 5, "__AVR_ATmega128__" },
{ "at90can128", 5, "__AVR_AT90CAN128__" },
{ "at94k", 5, "__AVR_AT94K__" },
/* Assembler only. */
{ "avr1", 1, NULL },

View File

@ -811,21 +811,21 @@ extern int avr_case_values_threshold;
#define ASM_SPEC "%{mmcu=*:-mmcu=%*}"
#define LINK_SPEC " %{!mmcu*:-m avr2}\
%{mmcu=at90s1200|mmcu=attiny1*|mmcu=attiny28:-m avr1} \
%{mmcu=at90s1200|mmcu=attiny11|mmcu=attiny12|mmcu=attiny15|mmcu=attiny28:-m avr1} \
%{mmcu=attiny22|mmcu=attiny26|mmcu=at90s2*|mmcu=at90s4*|mmcu=at90s8*|mmcu=at90c8*|mmcu=at86rf401:-m avr2}\
%{mmcu=atmega103|mmcu=atmega603|mmcu=at43*|mmcu=at76*:-m avr3}\
%{mmcu=atmega8*:-m avr4}\
%{mmcu=atmega16*|mmcu=atmega32*|mmcu=atmega64|mmcu=atmega128|mmcu=at94k:-m avr5}\
%{mmcu=atmega64|mmcu=atmega128|mmcu=atmega162|mmcu=atmega169: -Tdata 0x800100} "
%{mmcu=atmega8*|mmcu=atmega48|mmcu=attiny13|mmcu=attiny2313:-m avr4}\
%{mmcu=atmega16*|mmcu=atmega32*|mmcu=atmega64*|mmcu=atmega128|mmcu=at90can128|mmcu=at94k:-m avr5}\
%{mmcu=atmega325|mmcu=atmega3250|mmcu=atmega48|mmcu=atmega88|mmcu=atmega64|mmcu=atmega645|mmcu=atmega6450|mmcu=atmega128|mmcu=at90can128|mmcu=at90can128|mmcu=atmega162|mmcu=atmega165|mmcu=atmega168|mmcu=atmega169: -Tdata 0x800100} "
#define LIB_SPEC \
"%{!mmcu=at90s1*:%{!mmcu=attiny1*:%{!mmcu=attiny28: -lc }}}"
"%{!mmcu=at90s1*:%{!mmcu=attiny11:%{!mmcu=attiny12:%{!mmcu=attiny15:%{!mmcu=attiny28: -lc }}}}}"
#define LIBSTDCXX "-lgcc"
/* No libstdc++ for now. Empty string doesn't work. */
#define LIBGCC_SPEC \
"%{!mmcu=at90s1*:%{!mmcu=attiny1*:%{!mmcu=attiny28: -lgcc }}}"
"%{!mmcu=at90s1*:%{!mmcu=attiny11:%{!mmcu=attiny12:%{!mmcu=attiny15:%{!mmcu=attiny28: -lgcc }}}}}"
#define STARTFILE_SPEC "%(crt_binutils)"
@ -856,17 +856,28 @@ extern int avr_case_values_threshold;
%{mmcu=at43usb355:crt43355.o%s} \
%{mmcu=at76c711:crt76711.o%s} \
%{mmcu=atmega8|mmcu=avr4:crtm8.o%s} \
%{mmcu=atmega48:crtm48.o%s} \
%{mmcu=atmega88:crtm88.o%s} \
%{mmcu=atmega8515:crtm8515.o%s} \
%{mmcu=atmega8535:crtm8535.o%s} \
%{mmcu=attiny13:crttn13.o%s} \
%{mmcu=attiny2313:crttn2313.o%s} \
%{mmcu=atmega16:crtm16.o%s} \
%{mmcu=atmega161|mmcu=avr5:crtm161.o%s} \
%{mmcu=atmega162:crtm162.o%s} \
%{mmcu=atmega163:crtm163.o%s} \
%{mmcu=atmega165:crtm165.o%s} \
%{mmcu=atmega168:crtm168.o%s} \
%{mmcu=atmega169:crtm169.o%s} \
%{mmcu=atmega32:crtm32.o%s} \
%{mmcu=atmega323:crtm323.o%s} \
%{mmcu=atmega325:crtm325.o%s} \
%{mmcu=atmega3250:crtm3250.o%s} \
%{mmcu=atmega64:crtm64.o%s} \
%{mmcu=atmega645:crtm6450.o%s} \
%{mmcu=atmega6450:crtm6450.o%s} \
%{mmcu=atmega128:crtm128.o%s} \
%{mmcu=at90can128:crtcan128.o%s} \
%{mmcu=at94k:crtat94k.o%s}"
#define EXTRA_SPECS {"crt_binutils", CRT_BINUTILS_SPECS},

View File

@ -50,13 +50,18 @@ MULTILIB_MATCHES = \
mmcu?avr3=mmcu?at43usb320 mmcu?avr3=mmcu?at43usb355 \
mmcu?avr3=mmcu?at76c711 \
mmcu?avr4=mmcu?atmega8515 mmcu?avr4=mmcu?atmega8535 \
mmcu?avr4=mmcu?atmega8 \
mmcu?avr4=mmcu?attiny13 mmcu?avr4=mmcu?attiny2313 \
mmcu?avr4=mmcu?atmega8 mmcu?avr4=mmcu?atmega48 \
mmcu?avr4=mmcu?atmega88 \
mmcu?avr5=mmcu?atmega161 mmcu?avr5=mmcu?atmega162 \
mmcu?avr5=mmcu?atmega163 mmcu?avr5=mmcu?atmega169 \
mmcu?avr5=mmcu?atmega16 \
mmcu?avr5=mmcu?atmega16 mmcu?avr5=mmcu?atmega168 \
mmcu?avr5=mmcu?atmega165 \
mmcu?avr5=mmcu?atmega323 mmcu?avr5=mmcu?atmega32 \
mmcu?avr5=mmcu?atmega325 mmcu?avr5=mmcu?atmega3250 \
mmcu?avr5=mmcu?atmega64 mmcu?avr5=mmcu?atmega128 \
mmcu?avr5=mmcu?at94k
mmcu?avr5=mmcu?atmega645 mmcu?avr5=mmcu?atmega6450 \
mmcu?avr5=mmcu?at94k mmcu?avr5=mmcu?at90can128
MULTILIB_EXCEPTIONS =