1 diff -Naurp binutils/size.c binutils/size.c
2 --- binutils/size.c 2011-09-05 15:54:26.000000000 +0300
3 +++ binutils/size.c 2011-09-05 15:54:34.000000000 +0300
4 @@ -177,11 +177,12 @@ avr_device_t avr[] =
5 {"atmega64c1", AVR64K, AVR4K, AVR2K},
6 {"atmega64hve", AVR64K, AVR4K, AVR1K},
7 {"atmega64m1", AVR64K, AVR4K, AVR2K},
8 - {"m3000", AVR64K, AVR4K, 0UL},
9 + {"m3000", AVR64K, AVR4K, 0UL},
11 {"atmega406", AVR40K, AVR2K, AVR512},
13 {"atxmega32a4", AVR36K, AVR4K, AVR1K},
14 + {"atxmega32a4u", AVR36K, AVR4K, AVR1K},
15 {"atxmega32d4", AVR36K, AVR4K, AVR1K},
16 {"atxmega32x1", AVR36K, AVR2K, AVR1K},
18 @@ -221,6 +222,7 @@ avr_device_t avr[] =
19 {"at43usb355", AVR24K, 1120UL, 0UL},
21 {"atxmega16a4", AVR20K, AVR2K, AVR1K},
22 + {"atxmega16a4u", AVR20K, AVR2K, AVR1K},
23 {"atxmega16d4", AVR20K, AVR2K, AVR1K},
25 {"at76c711", AVR16K, AVR2K, 0UL},
26 @@ -305,7 +307,7 @@ avr_device_t avr[] =
27 {"at90s2323", AVR2K, AVR128, AVR128},
28 {"at90s2333", AVR2K, 224UL, AVR128},
29 {"at90s2343", AVR2K, AVR128, AVR128},
30 - {"attiny20", AVR2K, AVR128, 0UL},
31 + {"attiny20", AVR2K, AVR128, 0UL},
32 {"attiny22", AVR2K, 224UL, AVR128},
33 {"attiny2313", AVR2K, AVR128, AVR128},
34 {"attiny2313a", AVR2K, AVR128, AVR128},
35 @@ -316,19 +318,19 @@ avr_device_t avr[] =
36 {"attiny261", AVR2K, AVR128, AVR128},
37 {"attiny261a", AVR2K, AVR128, AVR128},
38 {"attiny28", AVR2K, 0UL, 0UL},
39 - {"attiny40", AVR2K, AVR256, 0UL},
40 + {"attiny40", AVR2K, AVR256, 0UL},
42 {"at90s1200", AVR1K, 0UL, AVR64},
43 - {"attiny9", AVR1K, 32UL, 0UL},
44 - {"attiny10", AVR1K, 32UL, 0UL},
45 + {"attiny9", AVR1K, 32UL, 0UL},
46 + {"attiny10", AVR1K, 32UL, 0UL},
47 {"attiny11", AVR1K, 0UL, AVR64},
48 {"attiny12", AVR1K, 0UL, AVR64},
49 {"attiny13", AVR1K, AVR64, AVR64},
50 {"attiny13a", AVR1K, AVR64, AVR64},
51 {"attiny15", AVR1K, 0UL, AVR64},
53 - {"attiny4", AVR512, 32UL, 0UL},
54 - {"attiny5", AVR512, 32UL, 0UL},
55 + {"attiny4", AVR512, 32UL, 0UL},
56 + {"attiny5", AVR512, 32UL, 0UL},
59 static char *avrmcu = NULL;
60 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
61 --- gas/config/tc-avr.c 2011-09-05 15:54:26.000000000 +0300
62 +++ gas/config/tc-avr.c 2011-09-05 15:56:53.000000000 +0300
63 @@ -256,8 +256,10 @@ static struct mcu_type_s mcu_types[] =
64 {"atmega2560", AVR_ISA_AVR6, bfd_mach_avr6},
65 {"atmega2561", AVR_ISA_AVR6, bfd_mach_avr6},
66 {"atxmega16a4", AVR_ISA_XMEGA, bfd_mach_avrxmega2},
67 + {"atxmega16a4u",AVR_ISA_XMEGA, bfd_mach_avrxmega2},
68 {"atxmega16d4", AVR_ISA_XMEGA, bfd_mach_avrxmega2},
69 {"atxmega32a4", AVR_ISA_XMEGA, bfd_mach_avrxmega2},
70 + {"atxmega32a4u",AVR_ISA_XMEGA, bfd_mach_avrxmega2},
71 {"atxmega32d4", AVR_ISA_XMEGA, bfd_mach_avrxmega2},
72 {"atxmega32x1", AVR_ISA_XMEGA, bfd_mach_avrxmega2},
73 {"atxmega64a3", AVR_ISA_XMEGA, bfd_mach_avrxmega4},
74 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
75 --- gas/doc/c-avr.texi 2011-09-05 15:54:26.000000000 +0300
76 +++ gas/doc/c-avr.texi 2011-09-05 15:58:33.000000000 +0300
77 @@ -86,8 +86,8 @@ Instruction set avr6 is for the enhanced
78 atmega2560, atmega2561).
80 Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program
81 -memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16d4,
82 -atxmega32a4, atxmega32d4, atxmega32x1).
83 +memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u,
84 +atxmega16d4, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1).
86 Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program
87 memory space and greater than 64K data space (MCU types: none).