]> git.pld-linux.org Git - packages/crossavr-gcc.git/blame - 404-gcc-atxmega_16_32_a4u.patch
- rebuild with ppl 1.0
[packages/crossavr-gcc.git] / 404-gcc-atxmega_16_32_a4u.patch
CommitLineData
dbe7ab63 1diff -Naurp gcc/config/avr/avr-devices.c gcc/config/avr/avr-devices.c
6ef8d480
PZ
2--- gcc/config/avr/avr-devices.c 2011-06-24 10:37:25.000000000 +0530
3+++ gcc/config/avr/avr-devices.c 2011-06-24 10:36:43.000000000 +0530
dbe7ab63 4@@ -55,7 +55,7 @@ const struct base_arch_s avr_arch_types[
5 - avr-libc. */
6
7 const struct mcu_type_s avr_mcu_types[] = {
8- /* Classic, <= 8K. */
9+ /* Classic, <= 8K, 2-byte PC. */
10 { "avr2", ARCH_AVR2, NULL, 0, 0x0060, "s8515" },
11 { "at90s2313", ARCH_AVR2, "__AVR_AT90S2313__", 1, 0x0060, "s2313" },
12 { "at90s2323", ARCH_AVR2, "__AVR_AT90S2323__", 1, 0x0060, "s2323" },
13@@ -69,7 +69,7 @@ const struct mcu_type_s avr_mcu_types[]
14 { "at90s8515", ARCH_AVR2, "__AVR_AT90S8515__", 0, 0x0060, "s8515" },
15 { "at90c8534", ARCH_AVR2, "__AVR_AT90C8534__", 0, 0x0060, "c8534" },
16 { "at90s8535", ARCH_AVR2, "__AVR_AT90S8535__", 0, 0x0060, "s8535" },
17- /* Classic + MOVW, <= 8K. */
18+ /* Classic, <= 8K + 2-byte PC + { MOVW/LPMX }. */
19 { "avr25", ARCH_AVR25, NULL, 0, 0x0060, "tn85" },
20 { "ata6289", ARCH_AVR25, "__AVR_ATA6289__", 0, 0x0100, "a6289" },
21 { "attiny13", ARCH_AVR25, "__AVR_ATtiny13__", 1, 0x0060, "tn13" },
22@@ -97,15 +97,15 @@ const struct mcu_type_s avr_mcu_types[]
23 { "attiny48", ARCH_AVR25, "__AVR_ATtiny48__", 0, 0x0100, "tn48" },
24 { "attiny88", ARCH_AVR25, "__AVR_ATtiny88__", 0, 0x0100, "tn88" },
25 { "at86rf401", ARCH_AVR25, "__AVR_AT86RF401__", 1, 0x0060, "86401" },
26- /* Classic, > 8K, <= 64K. */
27+ /* Classic, > 8K, <= 64K +2-byte PC + { JMP/CALL }. */
28 { "avr3", ARCH_AVR3, NULL, 0, 0x0060, "43355" },
29 { "at43usb355", ARCH_AVR3, "__AVR_AT43USB355__", 0, 0x0060, "43355" },
30 { "at76c711", ARCH_AVR3, "__AVR_AT76C711__", 0, 0x0060, "76711" },
31- /* Classic, == 128K. */
32+ /* Classic, == 128K + 2-byte PC + { JMP/CALL, ELPM }. */
33 { "avr31", ARCH_AVR31, NULL, 0, 0x0060, "m103" },
34 { "atmega103", ARCH_AVR31, "__AVR_ATmega103__", 0, 0x0060, "m103" },
35 { "at43usb320", ARCH_AVR31, "__AVR_AT43USB320__", 0, 0x0060, "43320" },
36- /* Classic + MOVW + JMP/CALL. */
37+ /* Classic, >=16K, <=64K + 2-byte PC + { MOVW/LPMX + JMP/CALL }. */
38 { "avr35", ARCH_AVR35, NULL, 0, 0x0100, "usb162" },
39 { "at90usb82", ARCH_AVR35, "__AVR_AT90USB82__", 0, 0x0100, "usb82" },
40 { "at90usb162", ARCH_AVR35, "__AVR_AT90USB162__", 0, 0x0100, "usb162" },
41@@ -114,7 +114,7 @@ const struct mcu_type_s avr_mcu_types[]
42 { "atmega32u2", ARCH_AVR35, "__AVR_ATmega32U2__", 0, 0x0100, "m32u2" },
43 { "attiny167", ARCH_AVR35, "__AVR_ATtiny167__", 0, 0x0100, "tn167" },
44 { "attiny1634", ARCH_AVR35, "__AVR_ATtiny1634__", 0, 0x0100, "tn1634" },
45- /* Enhanced, <= 8K. */
46+ /* Enhanced, <= 8K + 2-byte PC + { MOVW/LPMX, MUL }. */
47 { "avr4", ARCH_AVR4, NULL, 0, 0x0060, "m8" },
48 { "atmega8", ARCH_AVR4, "__AVR_ATmega8__", 0, 0x0060, "m8" },
49 { "atmega48", ARCH_AVR4, "__AVR_ATmega48__", 0, 0x0100, "m48" },
50@@ -134,7 +134,8 @@ const struct mcu_type_s avr_mcu_types[]
51 { "at90pwm3", ARCH_AVR4, "__AVR_AT90PWM3__", 0, 0x0100, "90pwm3" },
52 { "at90pwm3b", ARCH_AVR4, "__AVR_AT90PWM3B__", 0, 0x0100, "90pwm3b" },
53 { "at90pwm81", ARCH_AVR4, "__AVR_AT90PWM81__", 0, 0x0100, "90pwm81" },
54- /* Enhanced, > 8K, <= 64K. */
55+ /* Enhanced, > 8K, <= 64K + 2-byte PC +
56+ { MOVW/LPMX, JMP/CALL, MUL }. */
57 { "avr5", ARCH_AVR5, NULL, 0, 0x0060, "m16" },
6ef8d480
PZ
58 { "at90pwm161", ARCH_AVR5, "__AVR_AT90PWM161__", 1, 0x0100, "90pwm161" },
59
dbe7ab63 60@@ -229,7 +230,8 @@ const struct mcu_type_s avr_mcu_types[]
61 { "at90usb647", ARCH_AVR5, "__AVR_AT90USB647__", 0, 0x0100, "usb647" },
62 { "at94k", ARCH_AVR5, "__AVR_AT94K__", 0, 0x0060, "at94k" },
63 { "m3000", ARCH_AVR5, "__AVR_M3000__", 0, 0x1000, "m3000" },
64- /* Enhanced, == 128K. */
65+ /* Enhanced, == 128K + 2-byte PC +
66+ { MOVW/LPMX, JMP/CALL, MUL, ELPM, ELPMX }. */
67 { "avr51", ARCH_AVR51, NULL, 0, 0x0100, "m128" },
68 { "atmega128", ARCH_AVR51, "__AVR_ATmega128__", 0, 0x0100, "m128" },
69 { "atmega1280", ARCH_AVR51, "__AVR_ATmega1280__", 0, 0x0200, "m1280" },
6ef8d480 70@@ -239,7 +241,8 @@ const struct mcu_type_s avr_mcu_types[]
dbe7ab63 71 { "at90can128", ARCH_AVR51, "__AVR_AT90CAN128__", 0, 0x0100, "can128" },
72 { "at90usb1286", ARCH_AVR51, "__AVR_AT90USB1286__", 0, 0x0100, "usb1286" },
73 { "at90usb1287", ARCH_AVR51, "__AVR_AT90USB1287__", 0, 0x0100, "usb1286" },
74- /* 3-Byte PC. */
6ef8d480
PZ
75+/* Enhanced, ==256K + 3-Byte PC +
76+ { MOVW/LPMX, JMP/CALL, MUL, ELPM, ELPMX }. */
dbe7ab63 77 { "avr6", ARCH_AVR6, NULL, 0, 0x0200, "m2561" },
6ef8d480 78 { "atmega2560", ARCH_AVR6, "__AVR_ATmega2560__", 0, 0x0200, "m2560" },
dbe7ab63 79 { "atmega2561", ARCH_AVR6, "__AVR_ATmega2561__", 0, 0x0200, "m2561" },
6ef8d480
PZ
80@@ -248,8 +251,10 @@ const struct mcu_type_s avr_mcu_types[]
81 /* Xmega, > 8K, <= 64K FLASH, <= 64K RAM. */
dbe7ab63 82 { "avrxmega2", ARCH_AVRXMEGA2, NULL, 0, 0x2000, "x32a4" },
83 { "atxmega16a4", ARCH_AVRXMEGA2, "__AVR_ATxmega16A4__", 0, 0x2000, "x16a4" },
84+ { "atxmega16a4u", ARCH_AVRXMEGA2, "__AVR_ATxmega16A4U__", 0, 0x2000, "x16a4u" },
85 { "atxmega16d4", ARCH_AVRXMEGA2, "__AVR_ATxmega16D4__", 0, 0x2000, "x16d4" },
dbe7ab63 86 { "atxmega32a4", ARCH_AVRXMEGA2, "__AVR_ATxmega32A4__", 0, 0x2000, "x32a4" },
6ef8d480 87+ { "atxmega32a4u", ARCH_AVRXMEGA2, "__AVR_ATxmega32A4U__", 0, 0x2000, "x32a4u" },
dbe7ab63 88 { "atxmega32d4", ARCH_AVRXMEGA2, "__AVR_ATxmega32D4__", 0, 0x2000, "x32d4" },
6ef8d480 89 { "atxmega32x1", ARCH_AVRXMEGA2, "__AVR_ATxmega32X1__", 0, 0x2000, "x32x1" },
dbe7ab63 90 /* Xmega, > 8K, <= 64K FLASH, > 64K RAM. */
dbe7ab63 91@@ -273,7 +278,7 @@ const struct mcu_type_s avr_mcu_types[]
92 { "atxmega256a3b",ARCH_AVRXMEGA6, "__AVR_ATxmega256A3B__", 0, 0x2000, "x256a3b" },
93 { "atxmega256a3bu", ARCH_AVRXMEGA6, "__AVR_ATxmega256A3BU__", 0, 0x2000, "x256a3bu" },
94 { "atxmega256d3", ARCH_AVRXMEGA6, "__AVR_ATxmega256D3__", 0, 0x2000, "x256d3" },
95- /* Xmega, > 128K, <= 256K FLASH, > 64K RAM. */
96+ /* Xmega, >= 128K, <= 256K FLASH, > 64K RAM. */
97 { "avrxmega7", ARCH_AVRXMEGA7, NULL, 0, 0x2000, "x128a1" },
98 { "atxmega128a1", ARCH_AVRXMEGA7, "__AVR_ATxmega128A1__", 0, 0x2000, "x128a1" },
99 { "atxmega128a1u", ARCH_AVRXMEGA7, "__AVR_ATxmega128A1U__", 0, 0x2000, "x128a1u" },
100diff -Naurp gcc/config/avr/t-avr gcc/config/avr/t-avr
6ef8d480
PZ
101--- gcc/config/avr/t-avr 2011-06-24 10:37:25.000000000 +0530
102+++ gcc/config/avr/t-avr 2011-06-24 10:36:43.000000000 +0530
103@@ -265,9 +265,11 @@ MULTILIB_MATCHES = \
dbe7ab63 104 mmcu?avr6=mmcu?atmega2560 \
105 mmcu?avr6=mmcu?atmega2561 \
106 mmcu?avrxmega2=mmcu?atxmega16a4 \
107+ mmcu?avrxmega2=mmcu?atxmega16a4u \
108 mmcu?avrxmega2=mmcu?atxmega16d4 \
dbe7ab63 109 mmcu?avrxmega2=mmcu?atxmega32d4 \
110 mmcu?avrxmega2=mmcu?atxmega32a4 \
111+ mmcu?avrxmega2=mmcu?atxmega32a4u \
6ef8d480 112 mmcu?avrxmega2=mmcu?atxmega32x1 \
dbe7ab63 113 mmcu?avrxmega4=mmcu?atxmega64a3 \
114 mmcu?avrxmega4=mmcu?atxmega64d3 \
This page took 0.063263 seconds and 4 git commands to generate.