ports/devel/avr-gcc/files/patch-mega325x-mega645x
Joerg Wunsch 96fe03484f Bring in some patches from the head of GCC's CVS back to the latest
released version, 3.4.3.  This mainly adds support for new AVR devices
that appeared on the market recently, and fixes a bug related to the
order of assignments for volatile uint16_t * objects (in the
assumption they might point to IO space where the order of two 8-bit
operations can be important).
2005-03-10 21:14:44 +00:00

59 lines
2.9 KiB
Plaintext

2005-03-04 Eric B. Weddington <ericw@evcohs.com>
* gcc/config/avr/avr.c (avr_mcu_types): Add entries for atmega325,
atmega3250, atmega645, atmega6450.
* gcc/config/avr/avr.h (LINK_SPEC): Ditto.
(CRT_BINUTILS_SPECS): Ditto.
* gcc/config/avr/t-avr (MULTILIB_MATCHES): Ditto.
--- gcc/config/avr/avr.c.old 2005-02-10 17:36:47.921875000 -0700
+++ gcc/config/avr/avr.c 2005-03-04 09:35:26.633875000 -0700
@@ -202,7 +202,11 @@
{ "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__" },
--- gcc/config/avr/avr.h.old 2005-02-10 17:36:48.015625000 -0700
+++ gcc/config/avr/avr.h 2005-03-04 09:44:23.118250000 -0700
@@ -2355,8 +2355,8 @@
%{mmcu=attiny22|mmcu=attiny26|mmcu=at90s2*|mmcu=at90s4*|mmcu=at90s8*|mmcu=at90c8*|mmcu=at86rf401|mmcu=attiny13|mmcu=attiny2313:-m avr2}\
%{mmcu=atmega103|mmcu=atmega603|mmcu=at43*|mmcu=at76*:-m avr3}\
%{mmcu=atmega8*|mmcu=atmega48:-m avr4}\
-%{mmcu=atmega16*|mmcu=atmega32*|mmcu=atmega64|mmcu=atmega128|mmcu=at90can128|mmcu=at94k:-m avr5}\
-%{mmcu=atmega48|mmcu=atmega88|mmcu=atmega64|mmcu=atmega128|mmcu=at90can128|mmcu=at90can128|mmcu=atmega162|mmcu=atmega168|mmcu=atmega169: -Tdata 0x800100} "
+%{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=atmega168|mmcu=atmega169: -Tdata 0x800100} "
/* A C string constant that tells the GCC driver program options to
pass to the linker. It can also specify how to translate options
@@ -2441,7 +2441,11 @@
%{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:crtm645.o%s} \
+%{mmcu=atmega6450:crtm6450.o%s} \
%{mmcu=atmega128:crtm128.o%s} \
%{mmcu=at90can128:crtcan128.o%s} \
%{mmcu=at94k:crtat94k.o%s}"
--- gcc/config/avr/t-avr.old 2005-02-10 17:36:48.031250000 -0700
+++ gcc/config/avr/t-avr 2005-03-04 09:56:43.790125000 -0700
@@ -56,6 +56,8 @@
mmcu?avr5=mmcu?atmega163 mmcu?avr5=mmcu?atmega169 \
mmcu?avr5=mmcu?atmega16 mmcu?avr5=mmcu?atmega168 \
mmcu?avr5=mmcu?atmega323 mmcu?avr5=mmcu?atmega32 \
+ mmcu?avr5=mmcu?atmega325 mmcu?avr5=mmcu?atmega3250 \
+ mmcu?avr5=mmcu?atmega645 mmcu?avr5=mmcu?atmega6450 \
mmcu?avr5=mmcu?atmega64 mmcu?avr5=mmcu?atmega128 \
mmcu?avr5=mmcu?at94k mmcu?avr5=mmcu?at90can128