aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Michalkiewicz <marekm@amelek.gda.pl>2002-01-07 16:04:35 +0100
committerMarek Michalkiewicz <marekm@gcc.gnu.org>2002-01-07 15:04:35 +0000
commitc7f3e0b01fcc9905d3906331cb1923eee5b00ff6 (patch)
treeba874207dfdb8ff730707f1d5431f251a0d69153
parent6ba4d630f6bcede0ccfd73baa99c1f964d188d43 (diff)
downloadgcc-c7f3e0b01fcc9905d3906331cb1923eee5b00ff6.zip
gcc-c7f3e0b01fcc9905d3906331cb1923eee5b00ff6.tar.gz
gcc-c7f3e0b01fcc9905d3906331cb1923eee5b00ff6.tar.bz2
avr.c (avr_mcu_types): Add new MCU types.
* config/avr/avr.c (avr_mcu_types): Add new MCU types. * config/avr/avr.h (CPP_SPEC): Likewise. (LINK_SPEC): Likewise. (CRT_BINUTILS_SPECS): Likewise. * config/avr/t-avr (MULTILIB_MATCHES): Likewise. * doc/invoke.texi (AVR Options): Document them. From-SVN: r48604
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/config/avr/avr.c8
-rw-r--r--gcc/config/avr/avr.h24
-rw-r--r--gcc/config/avr/t-avr4
-rw-r--r--gcc/doc/invoke.texi7
5 files changed, 49 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ebae515..ddfc3e0 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2002-01-07 Marek Michalkiewicz <marekm@amelek.gda.pl>
+
+ * config/avr/avr.c (avr_mcu_types): Add new MCU types.
+ * config/avr/avr.h (CPP_SPEC): Likewise.
+ (LINK_SPEC): Likewise.
+ (CRT_BINUTILS_SPECS): Likewise.
+ * config/avr/t-avr (MULTILIB_MATCHES): Likewise.
+ * doc/invoke.texi (AVR Options): Document them.
+
Mon Jan 7 11:59:34 CET 2002 Jan Hubicka <jh@suse.cz>
* unroll.c (copy_loop_body): Always properly update JUMP_LABEL and
diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c
index 5d6e120..1457519 100644
--- a/gcc/config/avr/avr.c
+++ b/gcc/config/avr/avr.c
@@ -151,15 +151,23 @@ static const struct mcu_type_s avr_mcu_types[] = {
{ "avr3", AVR3 },
{ "atmega103", AVR3 },
{ "atmega603", AVR3 },
+ { "at43usb320", AVR3 },
+ { "at76c711", AVR3 },
/* Enhanced, <= 8K. */
{ "avr4", AVR4 },
+ { "atmega8", AVR4 },
{ "atmega83", AVR4 },
{ "atmega85", AVR4 },
/* Enhanced, > 8K. */
{ "avr5", AVR5 },
+ { "atmega16", AVR5 },
{ "atmega161", AVR5 },
{ "atmega163", AVR5 },
{ "atmega32", AVR5 },
+ { "atmega323", AVR5 },
+ { "atmega64", AVR5 },
+ { "atmega128", AVR5 },
+ { "at43usb355", AVR5 },
{ "at94k", AVR5 },
/* Assembler only. */
{ "avr1", AVR1 },
diff --git a/gcc/config/avr/avr.h b/gcc/config/avr/avr.h
index 1f8a8da..005936e 100644
--- a/gcc/config/avr/avr.h
+++ b/gcc/config/avr/avr.h
@@ -2735,13 +2735,21 @@ extern int avr_case_values_threshold;
%{mmcu=avr3:%(cpp_avr3)} \
%{mmcu=atmega603:%(cpp_avr3) -D__AVR_ATmega603__} \
%{mmcu=atmega103:%(cpp_avr3) -D__AVR_ATmega103__} \
+%{mmcu=at43usb320:%(cpp_avr3) -D__AVR_AT43USB320__} \
+%{mmcu=at76c711: %(cpp_avr3) -D__AVR_AT76C711__} \
%{mmcu=avr4:%(cpp_avr4)} \
+%{mmcu=atmega8: %(cpp_avr4) -D__AVR_ATmega8__} \
%{mmcu=atmega83: %(cpp_avr4) -D__AVR_ATmega83__} \
%{mmcu=atmega85: %(cpp_avr4) -D__AVR_ATmega85__} \
%{mmcu=avr5:%(cpp_avr5)} \
+%{mmcu=atmega16: %(cpp_avr5) -D__AVR_ATmega16__} \
%{mmcu=atmega161:%(cpp_avr5) -D__AVR_ATmega161__} \
%{mmcu=atmega163:%(cpp_avr5) -D__AVR_ATmega163__} \
%{mmcu=atmega32: %(cpp_avr5) -D__AVR_ATmega32__} \
+%{mmcu=atmega323:%(cpp_avr5) -D__AVR_ATmega323__} \
+%{mmcu=atmega64: %(cpp_avr5) -D__AVR_ATmega64__} \
+%{mmcu=atmega128:%(cpp_avr5) -D__AVR_ATmega128__} \
+%{mmcu=at43usb355:%(cpp_avr5) -D__AVR_AT43USB355__} \
%{mmcu=at94k: %(cpp_avr5) -D__AVR_AT94K__} \
%{mmcu=avr1:%(cpp_avr1)} \
%{mmcu=at90s1200:%(cpp_avr1) -D__AVR_AT90S1200__} \
@@ -2813,10 +2821,18 @@ extern int avr_case_values_threshold;
%{!mmcu*:-m avr85xx} \
%{mmcu=atmega603:-m avrmega603} \
%{mmcu=atmega103:-m avrmega103} \
+%{mmcu=at43usb320:-m avr3} \
+%{mmcu=at76c711:-m avr3} \
+%{mmcu=atmega16:-m avrmega161} \
%{mmcu=atmega161:-m avrmega161} \
%{mmcu=atmega163:-m avrmega161} \
%{mmcu=atmega32:-m avr5} \
+%{mmcu=atmega323:-m avr5} \
+%{mmcu=atmega64:-m avr5} \
+%{mmcu=atmega128:-m avr5} \
+%{mmcu=at43usb355:-m avr5} \
%{mmcu=at94k:-m avr5} \
+%{mmcu=atmega8:-m avr4} \
%{mmcu=atmega83:-m avr4} \
%{mmcu=atmega85:-m avr4} \
%{mmcu=at90s1200|mmcu=attiny1*:-m avr1200} \
@@ -2893,11 +2909,19 @@ extern int avr_case_values_threshold;
%{mmcu=at90s8535:crts8535.o%s} \
%{mmcu=atmega103|mmcu=avr3:crtm103.o%s} \
%{mmcu=atmega603:crtm603.o%s} \
+%{mmcu=at43usb320:crt43320.o%s} \
+%{mmcu=at76c711:crt76711.o%s } \
+%{mmcu=atmega8:crtm8.o%s} \
%{mmcu=atmega83|mmcu=avr4:crtm83.o%s} \
%{mmcu=atmega85:crtm85.o%s} \
+%{mmcu=atmega16:crtm16.o%s} \
%{mmcu=atmega161|mmcu=avr5:crtm161.o%s} \
%{mmcu=atmega163:crtm163.o%s} \
%{mmcu=atmega32:crtm32.o%s} \
+%{mmcu=atmega323:crtm323.o%s} \
+%{mmcu=atmega64:crtm64.o%s} \
+%{mmcu=atmega128:crtm128.o%s} \
+%{mmcu=at43usb355:crt43355.o%s} \
%{mmcu=at94k:crtat94k.o%s}"
#define CPP_AVR1_SPEC "-D__AVR_ARCH__=1 -D__AVR_ASM_ONLY__ "
diff --git a/gcc/config/avr/t-avr b/gcc/config/avr/t-avr
index ecffea3..31f41df 100644
--- a/gcc/config/avr/t-avr
+++ b/gcc/config/avr/t-avr
@@ -43,8 +43,12 @@ MULTILIB_DIRNAMES = avr2 avr3 avr4 avr5
# The many avr2 matches are not listed here - this is the default.
MULTILIB_MATCHES = \
mmcu?avr3=mmcu?atmega103 mmcu?avr3=mmcu?atmega603 \
+ mmcu?avr3=mmcu?at43usb320 mmcu?avr3=mmcu?at76c711 \
mmcu?avr4=mmcu?atmega83 mmcu?avr4=mmcu?atmega85 \
+ mmcu?avr4=mmcu?atmega8 mmcu?avr5=mmcu?atmega16 \
mmcu?avr5=mmcu?atmega161 mmcu?avr5=mmcu?atmega163 \
+ mmcu?avr5=mmcu?atmega64 mmcu?avr5=mmcu?atmega128 \
+ mmcu?avr5=mmcu?at43usb355 mmcu?avr5=mmcu?atmega323 \
mmcu?avr5=mmcu?atmega32 mmcu?avr5=mmcu?at94k
MULTILIB_EXCEPTIONS =
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 5b3fbc1..22de537 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -9233,13 +9233,14 @@ at90s2333, at90s2343, at90s4414, at90s4433, at90s4434, at90s8515,
at90c8534, at90s8535).
Instruction set avr3 is for the classic AVR core with up to 128K program
-memory space (MCU types: atmega103, atmega603).
+memory space (MCU types: atmega103, atmega603, at43usb320, at76c711).
Instruction set avr4 is for the enhanced AVR core with up to 8K program
-memory space (MCU types: atmega83, atmega85).
+memory space (MCU types: atmega8, atmega83, atmega85).
Instruction set avr5 is for the enhanced AVR core with up to 128K program
-memory space (MCU types: atmega161, atmega163, atmega32, at94k).
+memory space (MCU types: atmega16, atmega161, atmega163, atmega32, atmega323,
+atmega64, atmega128, at43usb355, at94k).
@item -msize
@opindex msize