]> git.pld-linux.org Git - packages/crossavr-binutils.git/commitdiff
crossavr-binutils: Synchronized with official AVR toolchain 3.4.0.663. auto/th/crossavr-binutils-2.22-1
authorPiotr Ziecik <kosmo@pld-linux.org>
Tue, 14 Aug 2012 18:58:50 +0000 (20:58 +0200)
committerPiotr Ziecik <kosmo@pld-linux.org>
Tue, 14 Aug 2012 18:58:50 +0000 (20:58 +0200)
59 files changed:
300-binutils-avr-size.patch [moved from 300-binutils-2.20.1-avr-size.patch with 97% similarity]
301-binutils-avr-coff.patch [moved from 301-binutils-2.20.1-avr-coff.patch with 95% similarity]
302-binutils-2.20.1-new-sections.patch [deleted file]
302-binutils-as-dwarf.patch [new file with mode: 0644]
303-binutils-2.20.1-as-dwarf.patch [deleted file]
303-binutils-dwarf2-AVRStudio-workaround.patch [moved from 304-binutils-2.20.1-dwarf2-AVRStudio-workaround.patch with 76% similarity]
304-binutils-bug13113.patch [moved from 501-binutils-2.20.1-bug13113.patch with 82% similarity]
305-binutils-2.20.1-assembler-options.patch [deleted file]
305-binutils-new-usb-insns.patch [new file with mode: 0644]
306-binutils-bug15573-AVRTC-419.patch [new file with mode: 0644]
307-binutils-fix-AVRTC-424.patch [new file with mode: 0644]
400-binutils-2.20.1-xmega.patch [deleted file]
400-binutils-xmega.patch [new file with mode: 0644]
401-binutils-2.20.1-new-devices.patch [deleted file]
401-binutils-avrtiny10.patch [moved from 402-binutils-2.20.1-avrtiny10.patch with 73% similarity]
402-binutils-at90pwm161.patch [moved from 407-binutils-2.20.1-at90pwm161.patch with 69% similarity]
403-binutils-2.20.1-xmega128a1u-64a1u.patch [deleted file]
403-binutils-new-devices.patch [new file with mode: 0644]
404-binutils-2.20.1-atxmega32x1.patch [deleted file]
404-binutils-attiny1634.patch [moved from 410-binutils-2.20.1-attiny1634.patch with 71% similarity]
405-binutils-2.20.1-atxmega128b1.patch [deleted file]
405-binutils-atmega48pa.patch [moved from 411-binutils-2.20.1-atmega48pa.patch with 63% similarity]
406-binutils-2.20.1-atxmega256a3bu.patch [deleted file]
406-binutils-atxmega_16_32_a4u.patch [moved from 412-binutils-2.20.1-atxmega_16_32_a4u.patch with 75% similarity]
407-binutils-atxmega64_128_192_256a3u.patch [moved from 413-binutils-2.20.1-atxmega64_128_192_256a3u.patch with 78% similarity]
408-binutils-2.20.1-atmega16hvb-32hvb.patch [deleted file]
408-binutils-atmegarfr2_a2.patch [moved from 414-binutils-2.20.1-atmegarfr2_a2.patch with 60% similarity]
409-binutils-2.20.1-atmega32_5_50_90_pa.patch [deleted file]
409-binutils-atmega165pa.patch [moved from 415-binutils-2.20.1-atmega165pa.patch with 64% similarity]
410-binutils-atxmega384c3.patch [moved from 416-binutils-2.20.1-atxmega384c3.patch with 65% similarity]
411-binutils-attiny80.patch [moved from 417-binutils-2.20.1-attiny80.patch with 56% similarity]
412-binutils-atxmega128a4u.patch [moved from 418-binutils-2.20.1-atxmega128a4u.patch with 60% similarity]
413-binutils-atxmega64d4.patch [moved from 419-binutils-2.20.1-atxmega64d4.patch with 58% similarity]
414-binutils-atmega164pa_168pa_32a_64a.patch [moved from 420-binutils-2.20.1-atmega164pa_168pa_32a_64a.patch with 70% similarity]
415-binutils-atxmega64_128_b3.patch [moved from 421-binutils-2.20.1-atxmega64_128_b3.patch with 70% similarity]
416-binutils-atxmega64b1.patch [moved from 422-binutils-2.20.1-atxmega64b1.patch with 73% similarity]
417-binutils-atmega_8a_128a_1284.patch [moved from 423-binutils-2.20.1-atmega_8a_128a_1284.patch with 77% similarity]
418-binutils-atxmega64a4u.patch [moved from 424-binutils-2.20.1-atxmega64a4u.patch with 70% similarity]
419-binutils-atxmega128d4.patch [moved from 425-binutils-2.20.1-atxmega128d4.patch with 59% similarity]
420-binutils-atmxt336s.patch [moved from 426-binutils-2.20.1-atmxt336s.patch with 69% similarity]
421-binutils-atxmega16c4_32c4_128c3_256c3.patch [moved from 427-binutils-2.20.1-atxmega16c4_32c4_128c3_256c3.patch with 59% similarity]
422-binutils-atxmega384d3.patch [moved from 428-binutils-2.20.1-atxmega384d3.patch with 62% similarity]
423-binutils-atmega48hvf.patch [new file with mode: 0644]
424-binutils-atmega26hvg.patch [moved from 430-binutils-2.20.1-atmega26hvg.patch with 51% similarity]
425-binutils-atmxt224_224e.patch [moved from 431-binutils-2.20.1-atmxt224_224e.patch with 68% similarity]
426-binutils-atxmega192c3.patch [moved from 431-binutils-2.20.1-atxmega192c3.patch with 57% similarity]
427-binutils-atmxt112sl.patch [new file with mode: 0644]
428-binutils-atxmega64c3.patch [new file with mode: 0644]
429-binutils-2.20.1-atmega48hvf.patch [deleted file]
429-binutils-ata6285_6286.patch [new file with mode: 0644]
430-binutils-attiny828.patch [new file with mode: 0644]
431-binutils-ata5790_5790N_5795.patch [new file with mode: 0644]
432-binutils-ata5272_5505.patch [new file with mode: 0644]
500-binutils-bug13789.patch [moved from 500-binutils-2.20.1-bug13789.patch with 88% similarity]
501-binutils-modify-usb-xmega-isa.patch [new file with mode: 0644]
502-binutils-add-config-section-tiny.patch [new file with mode: 0644]
503-binutils-avrtc193-tiny.patch [new file with mode: 0644]
crossavr-binutils-new-devices.patch [deleted file]
crossavr-binutils.spec

similarity index 97%
rename from 300-binutils-2.20.1-avr-size.patch
rename to 300-binutils-avr-size.patch
index e9065e9ec556d009a4ba6dacb028814d7221db0c..047fb2e19f7533bba283da988dc6dafd8f5814e2 100644 (file)
@@ -430,9 +430,9 @@ AVR specific only
 +  int rammax = 0;
 +  int eeprommax = 0;
 +  asection *section; 
-+  bfd_size_type datasize = 0;
-+  bfd_size_type textsize = 0;
-+  bfd_size_type bsssize = 0;
++  bfd_size_type avr_datasize = 0;
++  bfd_size_type avr_textsize = 0;
++  bfd_size_type avr_bsssize = 0;
 +  bfd_size_type bootloadersize = 0;
 +  bfd_size_type noinitsize = 0;
 +  bfd_size_type eepromsize = 0;
@@ -447,11 +447,11 @@ AVR specific only
 +  }
 +
 +  if ((section = bfd_get_section_by_name (file, ".data")) != NULL)
-+    datasize = bfd_section_size (file, section);
++    avr_datasize = bfd_section_size (file, section);
 +  if ((section = bfd_get_section_by_name (file, ".text")) != NULL)
-+    textsize = bfd_section_size (file, section);
++    avr_textsize = bfd_section_size (file, section);
 +  if ((section = bfd_get_section_by_name (file, ".bss")) != NULL)
-+    bsssize = bfd_section_size (file, section);
++    avr_bsssize = bfd_section_size (file, section);
 +  if ((section = bfd_get_section_by_name (file, ".bootloader")) != NULL)
 +    bootloadersize = bfd_section_size (file, section);
 +  if ((section = bfd_get_section_by_name (file, ".noinit")) != NULL)
@@ -459,8 +459,8 @@ AVR specific only
 +  if ((section = bfd_get_section_by_name (file, ".eeprom")) != NULL)
 +    eepromsize = bfd_section_size (file, section);
 +  
-+  bfd_size_type text = textsize + datasize + bootloadersize;
-+  bfd_size_type data = datasize + bsssize + noinitsize;
++  bfd_size_type text = avr_textsize + avr_datasize + bootloadersize;
++  bfd_size_type data = avr_datasize + avr_bsssize + noinitsize;
 +  bfd_size_type eeprom = eepromsize;
 +  
 +  printf ("AVR Memory Usage\n"
similarity index 95%
rename from 301-binutils-2.20.1-avr-coff.patch
rename to 301-binutils-avr-coff.patch
index c21327f43c73950a0894e68f7520e6ef70b2805c..d3c2a1741c439fa84b2e31129fc9fe9b2a519779 100644 (file)
@@ -1,48 +1,6 @@
-diff -ruwN bfd/Makefile.am bfd/Makefile.am
---- bfd/Makefile.am    2009-10-16 17:17:44.000000000 +0530
-+++ bfd/Makefile.am    2010-03-11 12:13:23.069283600 +0530
-@@ -228,6 +228,8 @@
-       coff-apollo.lo \
-       coff-arm.lo \
-       coff-aux.lo \
-+        coff-avr.lo \
-+        coff-ext-avr.lo \
-       coff-go32.lo \
-       coff-h8300.lo \
-       coff-h8500.lo \
-@@ -411,6 +413,8 @@
-       coff-apollo.c \
-       coff-arm.c \
-       coff-aux.c \
-+      coff-avr.c \
-+      coff-ext-avr.c \
-       coff-go32.c \
-       coff-h8300.c \
-       coff-h8500.c \
-diff -ruwN bfd/Makefile.in bfd/Makefile.in
---- bfd/Makefile.in    2009-10-16 17:17:48.000000000 +0530
-+++ bfd/Makefile.in    2010-03-11 12:13:23.084906900 +0530
-@@ -524,6 +524,8 @@
-       coff-apollo.lo \
-       coff-arm.lo \
-       coff-aux.lo \
-+      coff-avr.lo \
-+        coff-ext-avr.lo \
-       coff-go32.lo \
-       coff-h8300.lo \
-       coff-h8500.lo \
-@@ -707,6 +709,8 @@
-       coff-apollo.c \
-       coff-arm.c \
-       coff-aux.c \
-+      coff-avr.c \
-+      coff-ext-avr.c \
-       coff-go32.c \
-       coff-h8300.c \
-       coff-h8500.c \
-diff -ruwN bfd/coff-avr.c bfd/coff-avr.c
+diff -Naurp bfd/coff-avr.c bfd/coff-avr.c
 --- bfd/coff-avr.c     1970-01-01 05:30:00.000000000 +0530
-+++ bfd/coff-avr.c     2010-03-11 12:13:23.100530200 +0530
++++ bfd/coff-avr.c     2011-11-30 12:59:26.000000000 +0530
 @@ -0,0 +1,613 @@
 +/* BFD back-end for Atmel AVR COFF files.
 +   Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1999, 2000, 2001, 2003
@@ -627,7 +585,7 @@ diff -ruwN bfd/coff-avr.c bfd/coff-avr.c
 +  0,                          /* leading char */
 +  '/',                                /* ar_pad_char */
 +  15,                         /* ar_max_namelen */
-+
++  0,                          /* match_priority */
 +  bfd_getl64, bfd_getl_signed_64, bfd_putl64,
 +     bfd_getl32, bfd_getl_signed_32, bfd_putl32,
 +     bfd_getl16, bfd_getl_signed_16, bfd_putl16, /* data */
@@ -657,9 +615,147 @@ diff -ruwN bfd/coff-avr.c bfd/coff-avr.c
 +
 +  COFF_SWAP_TABLE
 +};
-diff -ruwN bfd/coff-ext-avr.c bfd/coff-ext-avr.c
+diff -Naurp bfd/coffcode.h bfd/coffcode.h
+--- bfd/coffcode.h     2011-08-17 06:09:38.000000000 +0530
++++ bfd/coffcode.h     2011-11-30 12:54:36.000000000 +0530
+@@ -1,3 +1,4 @@
++
+ /* Support for the generic parts of most COFF variants, for BFD.
+    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+    2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011
+@@ -1968,6 +1969,17 @@ coff_mkobject (bfd * abfd)
+   coff->relocbase = 0;
+   coff->local_toc_sym_map = 0;
++  /* These members communicate important constants about the symbol
++     table to GDB's symbol-reading code.  These `constants'
++     unfortunately vary among coff implementations...  */
++  coff->local_n_btmask = N_BTMASK;
++  coff->local_n_btshft = N_BTSHFT;
++  coff->local_n_tmask = N_TMASK;
++  coff->local_n_tshift = N_TSHIFT;
++  coff->local_symesz = bfd_coff_symesz (abfd);
++  coff->local_auxesz = bfd_coff_auxesz (abfd);
++  coff->local_linesz = bfd_coff_linesz (abfd);
++
+ /*  make_abs_section(abfd);*/
+   return TRUE;
+@@ -1992,17 +2004,6 @@ coff_mkobject_hook (bfd * abfd,
+   coff->sym_filepos = internal_f->f_symptr;
+-  /* These members communicate important constants about the symbol
+-     table to GDB's symbol-reading code.  These `constants'
+-     unfortunately vary among coff implementations...  */
+-  coff->local_n_btmask = N_BTMASK;
+-  coff->local_n_btshft = N_BTSHFT;
+-  coff->local_n_tmask = N_TMASK;
+-  coff->local_n_tshift = N_TSHIFT;
+-  coff->local_symesz = bfd_coff_symesz (abfd);
+-  coff->local_auxesz = bfd_coff_auxesz (abfd);
+-  coff->local_linesz = bfd_coff_linesz (abfd);
+-
+   coff->timestamp = internal_f->f_timdat;
+   obj_raw_syment_count (abfd) =
+@@ -2134,6 +2135,11 @@ coff_set_arch_mach_hook (bfd *abfd, void
+       }
+       break;
+ #endif
++#ifdef AVRMAGIC
++    case AVRMAGIC:
++      arch = bfd_arch_avr;
++      break;
++#endif
+ #ifdef MC68MAGIC
+     case MC68MAGIC:
+     case M68MAGIC:
+@@ -2913,6 +2919,13 @@ coff_set_flags (bfd * abfd,
+       return TRUE;
+ #endif
++#ifdef AVRMAGIC
++    case bfd_arch_avr:
++      *magicp = AVRMAGIC;
++      return TRUE;
++      break;
++#endif
++
+ #ifdef PPCMAGIC
+     case bfd_arch_powerpc:
+       *magicp = PPCMAGIC;
+@@ -3741,6 +3754,11 @@ coff_write_object_contents (bfd * abfd)
+       section.s_page = 0;
+ #endif
++#ifdef AVR
++      /* AVR uses s_paddr the way GNU uses s_vaddr, and effectively
++       ignores s_vaddr. */
++      section.s_paddr = current->vma;
++#endif
+ #ifdef COFF_WITH_PE
+       section.s_paddr = 0;
+ #endif
+@@ -4087,6 +4105,17 @@ coff_write_object_contents (bfd * abfd)
+     internal_a.magic = ZMAGIC;
+ #endif
++#ifdef AVR
++    /* a.out is a dummy for non-extended COFF */
++    internal_a.magic = AVRAOUTMAGIC;
++    /* Upper nibble of f_flags must be set for historical reasons.
++       The upper byte remains blank on coff-avr, so undo the F_AR32WR
++       setting performed above. */
++    internal_f.f_flags |= F_JUNK;
++    internal_f.f_flags &= ~F_UNUSED;
++#define __A_MAGIC_SET__
++#endif /* AVR */
++
+ #if defined(PPC_PE)
+ #define __A_MAGIC_SET__
+     internal_a.magic = IMAGE_NT_OPTIONAL_HDR_MAGIC;
+@@ -4149,8 +4178,16 @@ coff_write_object_contents (bfd * abfd)
+ #endif
+   }
++#ifdef AVR_EXT_COFF
++    /* Note that we do not set F_PTRINFO because the GNU toolchain
++       doesn't provide any information about the target of a pointer,
++       so we cannot derive which section our pointer target would be
++       in. */
++  internal_a.vstamp = F_FULLPATHS | F_STRUCTINFO;
++#else
+   /* FIXME: Does anybody ever set this to another value?  */
+   internal_a.vstamp = 0;
++#endif
+   /* Now should write relocs, strings, syms.  */
+   obj_sym_filepos (abfd) = sym_base;
+@@ -4708,6 +4745,10 @@ coff_slurp_symbol_table (bfd * abfd)
+           /* In PE, 0x69 (105) denotes a weak external symbol.  */
+           case C_NT_WEAK:
+ #endif
++#ifdef AVR
++          /* Some AVR COFF compilers handle EXTDEF like EXT. */
++          case C_EXTDEF:      /* external definition           */
++#endif
+             switch (coff_classify_symbol (abfd, &src->u.syment))
+               {
+               case COFF_SYMBOL_GLOBAL:
+@@ -4940,7 +4981,9 @@ coff_slurp_symbol_table (bfd * abfd)
+                 break;
+ #endif
+             /* Fall through.  */
++#if !defined(AVR)
+           case C_EXTDEF:      /* External definition.  */
++#endif
+           case C_ULABEL:      /* Undefined label.  */
+           case C_USTATIC:     /* Undefined static.  */
+ #ifndef COFF_WITH_PE
+diff -Naurp bfd/coff-ext-avr.c bfd/coff-ext-avr.c
 --- bfd/coff-ext-avr.c 1970-01-01 05:30:00.000000000 +0530
-+++ bfd/coff-ext-avr.c 2010-03-11 12:13:23.131776800 +0530
++++ bfd/coff-ext-avr.c 2011-11-30 15:09:15.000000000 +0530
 @@ -0,0 +1,428 @@
 +/* BFD back-end for Atmel AVR "extended" COFF files.
 +   Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1999, 2000, 2001, 2003
@@ -1059,7 +1155,7 @@ diff -ruwN bfd/coff-ext-avr.c bfd/coff-ext-avr.c
 +  0,                          /* leading char */
 +  '/',                                /* ar_pad_char */
 +  15,                         /* ar_max_namelen */
-+
++  0,                          /* match_priority */
 +  bfd_getl64, bfd_getl_signed_64, bfd_putl64,
 +     bfd_getl32, bfd_getl_signed_32, bfd_putl32,
 +     bfd_getl16, bfd_getl_signed_16, bfd_putl16, /* data */
@@ -1089,148 +1185,10 @@ diff -ruwN bfd/coff-ext-avr.c bfd/coff-ext-avr.c
 +
 +  COFF_SWAP_TABLE
 +};
-diff -ruwN bfd/coffcode.h bfd/coffcode.h
---- bfd/coffcode.h     2009-09-10 17:17:12.000000000 +0530
-+++ bfd/coffcode.h     2010-03-11 12:13:23.147400100 +0530
-@@ -1,3 +1,4 @@
-+
- /* Support for the generic parts of most COFF variants, for BFD.
-    Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-    2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
-@@ -1910,6 +1911,17 @@
-   coff->relocbase = 0;
-   coff->local_toc_sym_map = 0;
-+  /* These members communicate important constants about the symbol
-+     table to GDB's symbol-reading code.  These `constants'
-+     unfortunately vary among coff implementations...  */
-+  coff->local_n_btmask = N_BTMASK;
-+  coff->local_n_btshft = N_BTSHFT;
-+  coff->local_n_tmask = N_TMASK;
-+  coff->local_n_tshift = N_TSHIFT;
-+  coff->local_symesz = bfd_coff_symesz (abfd);
-+  coff->local_auxesz = bfd_coff_auxesz (abfd);
-+  coff->local_linesz = bfd_coff_linesz (abfd);
-+
- /*  make_abs_section(abfd);*/
-   return TRUE;
-@@ -1934,17 +1946,6 @@
-   coff->sym_filepos = internal_f->f_symptr;
--  /* These members communicate important constants about the symbol
--     table to GDB's symbol-reading code.  These `constants'
--     unfortunately vary among coff implementations...  */
--  coff->local_n_btmask = N_BTMASK;
--  coff->local_n_btshft = N_BTSHFT;
--  coff->local_n_tmask = N_TMASK;
--  coff->local_n_tshift = N_TSHIFT;
--  coff->local_symesz = bfd_coff_symesz (abfd);
--  coff->local_auxesz = bfd_coff_auxesz (abfd);
--  coff->local_linesz = bfd_coff_linesz (abfd);
--
-   coff->timestamp = internal_f->f_timdat;
-   obj_raw_syment_count (abfd) =
-@@ -2076,6 +2077,11 @@
-       }
-       break;
- #endif
-+#ifdef AVRMAGIC
-+    case AVRMAGIC:
-+      arch = bfd_arch_avr;
-+      break;
-+#endif
- #ifdef MC68MAGIC
-     case MC68MAGIC:
-     case M68MAGIC:
-@@ -2871,6 +2877,13 @@
-       return TRUE;
- #endif
-+#ifdef AVRMAGIC
-+    case bfd_arch_avr:
-+      *magicp = AVRMAGIC;
-+      return TRUE;
-+      break;
-+#endif
-+
- #ifdef PPCMAGIC
-     case bfd_arch_powerpc:
-       *magicp = PPCMAGIC;
-@@ -3698,6 +3711,11 @@
-       section.s_page = 0;
- #endif
-+#ifdef AVR
-+      /* AVR uses s_paddr the way GNU uses s_vaddr, and effectively
-+       ignores s_vaddr. */
-+      section.s_paddr = current->vma;
-+#endif
- #ifdef COFF_WITH_PE
-       section.s_paddr = 0;
- #endif
-@@ -4042,6 +4060,17 @@
-     internal_a.magic = ZMAGIC;
- #endif
-+#ifdef AVR
-+    /* a.out is a dummy for non-extended COFF */
-+    internal_a.magic = AVRAOUTMAGIC;
-+    /* Upper nibble of f_flags must be set for historical reasons.
-+       The upper byte remains blank on coff-avr, so undo the F_AR32WR
-+       setting performed above. */
-+    internal_f.f_flags |= F_JUNK;
-+    internal_f.f_flags &= ~F_UNUSED;
-+#define __A_MAGIC_SET__
-+#endif /* AVR */
-+
- #if defined(PPC_PE)
- #define __A_MAGIC_SET__
-     internal_a.magic = IMAGE_NT_OPTIONAL_HDR_MAGIC;
-@@ -4109,8 +4138,16 @@
- #endif
-   }
-+#ifdef AVR_EXT_COFF
-+    /* Note that we do not set F_PTRINFO because the GNU toolchain
-+       doesn't provide any information about the target of a pointer,
-+       so we cannot derive which section our pointer target would be
-+       in. */
-+  internal_a.vstamp = F_FULLPATHS | F_STRUCTINFO;
-+#else
-   /* FIXME: Does anybody ever set this to another value?  */
-   internal_a.vstamp = 0;
-+#endif
-   /* Now should write relocs, strings, syms.  */
-   obj_sym_filepos (abfd) = sym_base;
-@@ -4668,6 +4705,10 @@
-           /* In PE, 0x69 (105) denotes a weak external symbol.  */
-           case C_NT_WEAK:
- #endif
-+#ifdef AVR
-+          /* Some AVR COFF compilers handle EXTDEF like EXT. */
-+          case C_EXTDEF:      /* external definition           */
-+#endif
-             switch (coff_classify_symbol (abfd, &src->u.syment))
-               {
-               case COFF_SYMBOL_GLOBAL:
-@@ -4891,7 +4932,9 @@
-                 && src->u.syment.n_scnum == 0)
-               break;
-             /* Fall through.  */
-+#if !defined(AVR)
-           case C_EXTDEF:      /* External definition.  */
-+#endif
-           case C_ULABEL:      /* Undefined label.  */
-           case C_USTATIC:     /* Undefined static.  */
- #ifndef COFF_WITH_PE
-diff -ruwN bfd/coffgen.c bfd/coffgen.c
---- bfd/coffgen.c      2009-09-10 17:17:12.000000000 +0530
-+++ bfd/coffgen.c      2010-03-11 12:13:23.163023400 +0530
-@@ -699,6 +699,20 @@
+diff -Naurp bfd/coffgen.c bfd/coffgen.c
+--- bfd/coffgen.c      2011-08-17 06:09:39.000000000 +0530
++++ bfd/coffgen.c      2011-11-30 12:54:36.000000000 +0530
+@@ -699,6 +699,20 @@ coff_renumber_symbols (bfd *bfd_ptr, int
              if (last_file != NULL)
                last_file->n_value = native_index;
              last_file = &(s->u.syment);
@@ -1251,7 +1209,7 @@ diff -ruwN bfd/coffgen.c bfd/coffgen.c
            }
          else
            /* Modify the symbol values according to their section and
-@@ -827,6 +841,20 @@
+@@ -827,6 +841,20 @@ coff_fix_symbol_name (bfd *abfd,
        {
          if (name_length <= filnmlen)
            strncpy (auxent->x_file.x_fname, name, filnmlen);
@@ -1272,7 +1230,7 @@ diff -ruwN bfd/coffgen.c bfd/coffgen.c
          else
            {
              auxent->x_file.x_n.x_offset = *string_size_p + STRING_SIZE_SIZE;
-@@ -1272,6 +1300,10 @@
+@@ -1277,6 +1305,10 @@ coff_write_symbols (bfd *abfd)
                  if (bfd_bwrite (".file", (bfd_size_type) 6, abfd) != 6)
                    return FALSE;
                }
@@ -1283,7 +1241,7 @@ diff -ruwN bfd/coffgen.c bfd/coffgen.c
              maxlen = bfd_coff_filnmlen (abfd);
            }
          else
-@@ -1710,14 +1742,27 @@
+@@ -1715,14 +1747,27 @@ coff_get_normalized_symtab (bfd *abfd)
            {
              /* Ordinary short filename, put into memory anyway.  The
                   Microsoft PE tools sometimes store a filename in
@@ -1318,7 +1276,7 @@ diff -ruwN bfd/coffgen.c bfd/coffgen.c
              else
                internal_ptr->u.syment._n._n_n._n_offset =
                  ((bfd_hostptr_t)
-@@ -1823,9 +1868,9 @@
+@@ -1828,9 +1873,9 @@ coff_bfd_make_debug_symbol (bfd *abfd,
  
    if (new_symbol == NULL)
      return NULL;
@@ -1330,10 +1288,10 @@ diff -ruwN bfd/coffgen.c bfd/coffgen.c
    new_symbol->native = (combined_entry_type *) bfd_zalloc (abfd, amt);
    if (!new_symbol->native)
      return NULL;
-diff -ruwN bfd/coffswap.h bfd/coffswap.h
---- bfd/coffswap.h     2009-09-07 13:45:15.000000000 +0530
-+++ bfd/coffswap.h     2010-03-11 12:13:23.178646700 +0530
-@@ -383,7 +383,11 @@
+diff -Naurp bfd/coffswap.h bfd/coffswap.h
+--- bfd/coffswap.h     2009-09-05 13:26:22.000000000 +0530
++++ bfd/coffswap.h     2011-11-30 12:54:36.000000000 +0530
+@@ -383,7 +383,11 @@ coff_swap_aux_in (bfd *abfd,
                  void * ext1,
                  int type,
                  int in_class,
@@ -1346,7 +1304,7 @@ diff -ruwN bfd/coffswap.h bfd/coffswap.h
                  int numaux,
                  void * in1)
  {
-@@ -409,9 +413,13 @@
+@@ -409,9 +413,13 @@ coff_swap_aux_in (bfd *abfd,
  #else
          if (numaux > 1)
            {
@@ -1360,10 +1318,10 @@ diff -ruwN bfd/coffswap.h bfd/coffswap.h
            }
          else
            memcpy (in->x_file.x_fname, ext->x_file.x_fname, FILNMLEN);
-diff -ruwN bfd/config.bfd bfd/config.bfd
---- bfd/config.bfd     2009-08-06 23:08:00.000000000 +0530
-+++ bfd/config.bfd     2010-03-11 12:13:23.178646700 +0530
-@@ -339,6 +339,7 @@
+diff -Naurp bfd/config.bfd bfd/config.bfd
+--- bfd/config.bfd     2011-07-29 04:05:13.000000000 +0530
++++ bfd/config.bfd     2011-11-30 12:54:36.000000000 +0530
+@@ -300,6 +300,7 @@ case "${targ}" in
  
    avr-*-*)
      targ_defvec=bfd_elf32_avr_vec
@@ -1371,10 +1329,10 @@ diff -ruwN bfd/config.bfd bfd/config.bfd
      ;;
  
    bfin-*-*)
-diff -ruwN bfd/configure bfd/configure
---- bfd/configure      2009-10-16 17:17:47.000000000 +0530
-+++ bfd/configure      2010-03-11 12:13:23.209893300 +0530
-@@ -14782,6 +14782,8 @@
+diff -Naurp bfd/configure bfd/configure
+--- bfd/configure      2011-11-21 17:25:48.000000000 +0530
++++ bfd/configure      2011-11-30 12:54:36.000000000 +0530
+@@ -15175,6 +15175,8 @@ do
      armpe_little_vec)         tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;;
      armpei_big_vec)           tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;;
      armpei_little_vec)                tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;;
@@ -1383,10 +1341,10 @@ diff -ruwN bfd/configure bfd/configure
      b_out_vec_big_host)               tb="$tb bout.lo aout32.lo" ;;
      b_out_vec_little_host)    tb="$tb bout.lo aout32.lo" ;;
      bfd_pei_ia64_vec)         tb="$tb pei-ia64.lo pepigen.lo cofflink.lo"; target_size=64 ;;
-diff -ruwN bfd/configure.in bfd/configure.in
---- bfd/configure.in   2009-10-16 17:17:44.000000000 +0530
-+++ bfd/configure.in   2010-03-11 12:13:23.209893300 +0530
-@@ -670,6 +670,8 @@
+diff -Naurp bfd/configure.in bfd/configure.in
+--- bfd/configure.in   2011-11-21 17:25:46.000000000 +0530
++++ bfd/configure.in   2011-11-30 12:54:36.000000000 +0530
+@@ -674,6 +674,8 @@ do
      armpe_little_vec)         tb="$tb pe-arm.lo peigen.lo cofflink.lo " ;;
      armpei_big_vec)           tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;;
      armpei_little_vec)                tb="$tb pei-arm.lo peigen.lo cofflink.lo " ;;
@@ -1395,10 +1353,52 @@ diff -ruwN bfd/configure.in bfd/configure.in
      b_out_vec_big_host)               tb="$tb bout.lo aout32.lo" ;;
      b_out_vec_little_host)    tb="$tb bout.lo aout32.lo" ;;
      bfd_pei_ia64_vec)         tb="$tb pei-ia64.lo pepigen.lo cofflink.lo"; target_size=64 ;;
-diff -ruwN bfd/targets.c bfd/targets.c
---- bfd/targets.c      2009-09-10 17:17:13.000000000 +0530
-+++ bfd/targets.c      2010-03-11 12:13:23.225516600 +0530
-@@ -564,6 +564,8 @@
+diff -Naurp bfd/Makefile.am bfd/Makefile.am
+--- bfd/Makefile.am    2011-11-21 17:25:46.000000000 +0530
++++ bfd/Makefile.am    2011-11-30 12:54:36.000000000 +0530
+@@ -238,6 +238,8 @@ BFD32_BACKENDS = \
+       coff-apollo.lo \
+       coff-arm.lo \
+       coff-aux.lo \
++        coff-avr.lo \
++        coff-ext-avr.lo \
+       coff-go32.lo \
+       coff-h8300.lo \
+       coff-h8500.lo \
+@@ -422,6 +424,8 @@ BFD32_BACKENDS_CFILES = \
+       coff-apollo.c \
+       coff-arm.c \
+       coff-aux.c \
++      coff-avr.c \
++      coff-ext-avr.c \
+       coff-go32.c \
+       coff-h8300.c \
+       coff-h8500.c \
+diff -Naurp bfd/Makefile.in bfd/Makefile.in
+--- bfd/Makefile.in    2011-11-21 17:25:49.000000000 +0530
++++ bfd/Makefile.in    2011-11-30 12:54:36.000000000 +0530
+@@ -538,6 +538,8 @@ BFD32_BACKENDS = \
+       coff-apollo.lo \
+       coff-arm.lo \
+       coff-aux.lo \
++      coff-avr.lo \
++        coff-ext-avr.lo \
+       coff-go32.lo \
+       coff-h8300.lo \
+       coff-h8500.lo \
+@@ -722,6 +724,8 @@ BFD32_BACKENDS_CFILES = \
+       coff-apollo.c \
+       coff-arm.c \
+       coff-aux.c \
++      coff-avr.c \
++      coff-ext-avr.c \
+       coff-go32.c \
+       coff-h8300.c \
+       coff-h8500.c \
+diff -Naurp bfd/targets.c bfd/targets.c
+--- bfd/targets.c      2011-08-17 06:09:38.000000000 +0530
++++ bfd/targets.c      2011-11-30 12:54:36.000000000 +0530
+@@ -587,6 +587,8 @@ extern const bfd_target armpe_big_vec;
  extern const bfd_target armpe_little_vec;
  extern const bfd_target armpei_big_vec;
  extern const bfd_target armpei_little_vec;
@@ -1407,7 +1407,7 @@ diff -ruwN bfd/targets.c bfd/targets.c
  extern const bfd_target b_out_vec_big_host;
  extern const bfd_target b_out_vec_little_host;
  extern const bfd_target bfd_pei_ia64_vec;
-@@ -890,6 +892,8 @@
+@@ -941,6 +943,8 @@ static const bfd_target * const _bfd_tar
        &armpe_little_vec,
        &armpei_big_vec,
        &armpei_little_vec,
@@ -1416,61 +1416,10 @@ diff -ruwN bfd/targets.c bfd/targets.c
        &b_out_vec_big_host,
        &b_out_vec_little_host,
  #ifdef BFD64
-diff -ruwN binutils/Makefile.am binutils/Makefile.am
---- binutils/Makefile.am       2009-09-09 13:43:23.000000000 +0530
-+++ binutils/Makefile.am       2010-03-11 12:13:23.241139900 +0530
-@@ -101,7 +101,7 @@
-       resbin.c rescoff.c resrc.c resres.c \
-       size.c srconv.c stabs.c strings.c sysdump.c \
-       unwind-ia64.c version.c \
--      windres.c winduni.c wrstabs.c \
-+      windres.c winduni.c wrcoff.c wrstabs.c \
-       windmc.c mclex.c
- GENERATED_CFILES = \
-@@ -109,7 +109,7 @@
-       defparse.c deflex.c nlmheader.c rcparse.c mcparse.c
- DEBUG_SRCS = rddbg.c debug.c stabs.c ieee.c rdcoff.c
--WRITE_DEBUG_SRCS = $(DEBUG_SRCS) wrstabs.c
-+WRITE_DEBUG_SRCS = $(DEBUG_SRCS) wrstabs.c wrcoff.c
- # Code shared by all the binutils.
- BULIBS = bucomm.c version.c filemode.c
-diff -ruwN binutils/Makefile.in binutils/Makefile.in
---- binutils/Makefile.in       2009-09-09 13:43:23.000000000 +0530
-+++ binutils/Makefile.in       2010-03-11 12:13:23.241139900 +0530
-@@ -126,7 +126,7 @@
- nm_new_OBJECTS = $(am_nm_new_OBJECTS)
- nm_new_LDADD = $(LDADD)
- am__objects_2 = rddbg.$(OBJEXT) debug.$(OBJEXT) stabs.$(OBJEXT) \
--      ieee.$(OBJEXT) rdcoff.$(OBJEXT)
-+      ieee.$(OBJEXT) rdcoff.$(OBJEXT) wrcoff.$(OBJEXT)
- am__objects_3 = $(am__objects_2) wrstabs.$(OBJEXT)
- am_objcopy_OBJECTS = objcopy.$(OBJEXT) not-strip.$(OBJEXT) \
-       rename.$(OBJEXT) $(am__objects_3) $(am__objects_1)
-@@ -439,7 +439,7 @@
-       resbin.c rescoff.c resrc.c resres.c \
-       size.c srconv.c stabs.c strings.c sysdump.c \
-       unwind-ia64.c version.c \
--      windres.c winduni.c wrstabs.c \
-+      windres.c winduni.c wrcoff.c wrstabs.c \
-       windmc.c mclex.c
- GENERATED_CFILES = \
-@@ -447,7 +447,7 @@
-       defparse.c deflex.c nlmheader.c rcparse.c mcparse.c
- DEBUG_SRCS = rddbg.c debug.c stabs.c ieee.c rdcoff.c
--WRITE_DEBUG_SRCS = $(DEBUG_SRCS) wrstabs.c
-+WRITE_DEBUG_SRCS = $(DEBUG_SRCS) wrstabs.c wrcoff.c
- # Code shared by all the binutils.
- BULIBS = bucomm.c version.c filemode.c
-diff -ruwN binutils/bucomm.c binutils/bucomm.c
---- binutils/bucomm.c  2009-09-14 17:13:26.000000000 +0530
-+++ binutils/bucomm.c  2010-03-11 12:13:23.256763200 +0530
-@@ -550,6 +550,32 @@
+diff -Naurp binutils/bucomm.c binutils/bucomm.c
+--- binutils/bucomm.c  2011-03-25 23:21:10.000000000 +0530
++++ binutils/bucomm.c  2011-11-30 12:54:36.000000000 +0530
+@@ -561,6 +561,32 @@ parse_vma (const char *s, const char *ar
    return ret;
  }
  
@@ -1502,11 +1451,11 @@ diff -ruwN binutils/bucomm.c binutils/bucomm.c
 +
  /* Returns the size of the named file.  If the file does not
     exist, or if it is not a real file, then a suitable non-fatal
-    error message is printed and zero is returned.  */
-diff -ruwN binutils/bucomm.h binutils/bucomm.h
+    error message is printed and (off_t) -1 is returned.  */
+diff -Naurp binutils/bucomm.h binutils/bucomm.h
 --- binutils/bucomm.h  2009-09-02 12:52:31.000000000 +0530
-+++ binutils/bucomm.h  2010-03-11 12:13:23.272386500 +0530
-@@ -58,6 +58,8 @@
++++ binutils/bucomm.h  2011-11-30 12:54:36.000000000 +0530
+@@ -58,6 +58,8 @@ bfd_vma parse_vma (const char *, const c
  
  off_t get_file_size (const char *);
  
@@ -1515,10 +1464,10 @@ diff -ruwN binutils/bucomm.h binutils/bucomm.h
  extern char *program_name;
  
  /* filemode.c */
-diff -ruwN binutils/budbg.h binutils/budbg.h
+diff -Naurp binutils/budbg.h binutils/budbg.h
 --- binutils/budbg.h   2009-09-02 12:52:31.000000000 +0530
-+++ binutils/budbg.h   2010-03-11 12:13:23.272386500 +0530
-@@ -52,8 +52,11 @@
++++ binutils/budbg.h   2011-11-30 12:54:36.000000000 +0530
+@@ -52,8 +52,11 @@ extern bfd_boolean parse_ieee (void *, b
  
  extern bfd_boolean write_ieee_debugging_info (bfd *, void *);
  
@@ -1531,18 +1480,18 @@ diff -ruwN binutils/budbg.h binutils/budbg.h
 +  (bfd *abfd, void *, long *symcountp, asymbol ***);
 +
  #endif
-diff -ruwN binutils/debug.c binutils/debug.c
---- binutils/debug.c   2009-09-14 17:13:26.000000000 +0530
-+++ binutils/debug.c   2010-03-11 12:13:23.288009800 +0530
-@@ -31,6 +31,7 @@
- #include <assert.h>
+diff -Naurp binutils/debug.c binutils/debug.c
+--- binutils/debug.c   2011-03-01 00:02:51.000000000 +0530
++++ binutils/debug.c   2011-11-30 12:54:36.000000000 +0530
+@@ -32,6 +32,7 @@
  #include "bfd.h"
  #include "libiberty.h"
+ #include "filenames.h"
 +#include "bucomm.h"
  #include "debug.h"
  
  /* Global information we keep for debugging.  A pointer to this
-@@ -552,6 +553,19 @@
+@@ -553,6 +554,19 @@ struct debug_type_real_list
    struct debug_type_s *t;
  };
  
@@ -1562,7 +1511,7 @@ diff -ruwN binutils/debug.c binutils/debug.c
  /* Local functions.  */
  
  static void debug_error (const char *);
-@@ -588,6 +602,11 @@
+@@ -589,6 +603,11 @@ static bfd_boolean debug_type_samep
    (struct debug_handle *, struct debug_type_s *, struct debug_type_s *);
  static bfd_boolean debug_class_type_samep
    (struct debug_handle *, struct debug_type_s *, struct debug_type_s *);
@@ -1574,7 +1523,7 @@ diff -ruwN binutils/debug.c binutils/debug.c
  \f
  /* Issue an error message.  */
  
-@@ -680,6 +699,8 @@
+@@ -681,6 +700,8 @@ debug_set_filename (void *handle, const 
  
    if (name == NULL)
      name = "";
@@ -1583,7 +1532,7 @@ diff -ruwN binutils/debug.c binutils/debug.c
  
    nfile = (struct debug_file *) xmalloc (sizeof *nfile);
    memset (nfile, 0, sizeof *nfile);
-@@ -720,6 +741,8 @@
+@@ -721,6 +742,8 @@ debug_start_source (void *handle, const 
  
    if (name == NULL)
      name = "";
@@ -1592,7 +1541,7 @@ diff -ruwN binutils/debug.c binutils/debug.c
  
    if (info->current_unit == NULL)
      {
-@@ -3370,3 +3393,69 @@
+@@ -3369,3 +3392,70 @@ debug_class_type_samep (struct debug_han
  
    return TRUE;
  }
@@ -1638,34 +1587,35 @@ diff -ruwN binutils/debug.c binutils/debug.c
 +  size_t olen;
 +
 +  if (xlat_basename)
-+    return bu_basename (oname);  
++    return bu_basename (oname);
 +
 +  olen = strlen (oname);
 +  for (xlp = xlat; xlp; xlp = xlp->next)
 +    {
 +      if (xlp->olen > olen)
-+      /* This cannot be our turn. */
-+      continue;
++       /* This cannot be our turn. */
++       continue;
 +      /* Since we have pre-computed all our length values to avoid
-+       repetitively computing them, just use memcmp() since it's
-+       faster than strcmp(). */
++        repetitively computing them, just use memcmp() since it's
++        faster than strcmp(). */
 +      if (memcmp (xlp->old, oname, xlp->olen) == 0)
-+      {
-+        cp = (char *) xmalloc (olen + xlp->nlen - xlp->olen + 1);
-+        memcpy (cp, xlp->newstr, xlp->nlen);
-+        memcpy (cp + xlp->nlen, oname + xlp->olen,
-+                olen - xlp->olen + 1);
-+        return cp;
-+      }
++       {
++         cp = (char *) xmalloc (olen + xlp->nlen - xlp->olen + 1);
++         memcpy (cp, xlp->newstr, xlp->nlen);
++         memcpy (cp + xlp->nlen, oname + xlp->olen,
++                 olen - xlp->olen + 1);
++         return cp;
++       }
 +    }
 +
 +  /* Not found, pass the original name on. */
 +  return oname;
 +}
-diff -ruwN binutils/debug.h binutils/debug.h
---- binutils/debug.h   2009-09-14 17:13:26.000000000 +0530
-+++ binutils/debug.h   2010-03-11 12:13:23.288009800 +0530
-@@ -440,6 +440,12 @@
++
+diff -Naurp binutils/debug.h binutils/debug.h
+--- binutils/debug.h   2009-09-10 19:10:44.000000000 +0530
++++ binutils/debug.h   2011-11-30 12:54:36.000000000 +0530
+@@ -441,6 +441,12 @@ extern bfd_boolean debug_set_filename (v
  
  extern bfd_boolean debug_start_source (void *, const char *);
  
@@ -1678,10 +1628,10 @@ diff -ruwN binutils/debug.h binutils/debug.h
  /* Record a function definition.  This implicitly starts a function
     block.  The debug_type argument is the type of the return value.
     The bfd_boolean indicates whether the function is globally visible.
-diff -ruwN binutils/doc/objcopy.1 binutils/doc/objcopy.1
---- binutils/doc/objcopy.1     2009-10-16 17:22:19.000000000 +0530
-+++ binutils/doc/objcopy.1     2010-03-11 12:13:23.303633100 +0530
-@@ -202,6 +202,8 @@
+diff -Naurp binutils/doc/objcopy.1 binutils/doc/objcopy.1
+--- binutils/doc/objcopy.1     2011-11-21 17:10:06.000000000 +0530
++++ binutils/doc/objcopy.1     2011-11-30 12:54:36.000000000 +0530
+@@ -195,6 +195,8 @@ objcopy [\fB\-F\fR \fIbfdname\fR|\fB\-\-
          [\fB\-\-readonly\-text\fR]
          [\fB\-\-pure\fR]
          [\fB\-\-impure\fR]
@@ -1690,10 +1640,10 @@ diff -ruwN binutils/doc/objcopy.1 binutils/doc/objcopy.1
          [\fB\-\-file\-alignment=\fR\fInum\fR]
          [\fB\-\-heap=\fR\fIsize\fR]
          [\fB\-\-image\-base=\fR\fIaddress\fR]
-@@ -885,6 +887,23 @@
- It can also be a useful way of reducing the size of a \fB\-\-just\-symbols\fR
- linker input file.
- .RE
+@@ -911,6 +913,23 @@ Compress \s-1DWARF\s0 debug sections usi
+ .IP "\fB\-\-decompress\-debug\-sections\fR" 4
+ .IX Item "--decompress-debug-sections"
+ Decompress \s-1DWARF\s0 debug sections using zlib.
 +.IP "\fB\-\-change\-pathname\fR \fIold\fR=\fInew\fR" 4
 +.IX Item "--change-pathname old=new"
 +When converting debugging information using \fB\-\-debugging\fR, for
@@ -1714,9 +1664,60 @@ diff -ruwN binutils/doc/objcopy.1 binutils/doc/objcopy.1
  .IP "\fB\-V\fR" 4
  .IX Item "-V"
  .PD 0
-diff -ruwN binutils/objcopy.c binutils/objcopy.c
---- binutils/objcopy.c 2009-09-14 17:13:26.000000000 +0530
-+++ binutils/objcopy.c 2010-03-11 12:13:23.319256400 +0530
+diff -Naurp binutils/Makefile.am binutils/Makefile.am
+--- binutils/Makefile.am       2011-08-08 05:57:15.000000000 +0530
++++ binutils/Makefile.am       2011-11-30 12:54:36.000000000 +0530
+@@ -107,7 +107,7 @@ CFILES = \
+       resbin.c rescoff.c resrc.c resres.c \
+       size.c srconv.c stabs.c strings.c sysdump.c \
+       unwind-ia64.c elfedit.c version.c \
+-      windres.c winduni.c wrstabs.c \
++      windres.c winduni.c wrcoff.c wrstabs.c \
+       windmc.c mclex.c
+ GENERATED_CFILES = \
+@@ -115,7 +115,7 @@ GENERATED_CFILES = \
+       defparse.c deflex.c nlmheader.c rcparse.c mcparse.c
+ DEBUG_SRCS = rddbg.c debug.c stabs.c ieee.c rdcoff.c
+-WRITE_DEBUG_SRCS = $(DEBUG_SRCS) wrstabs.c
++WRITE_DEBUG_SRCS = $(DEBUG_SRCS) wrstabs.c wrcoff.c
+ # Extra object files for objdump
+ OBJDUMP_PRIVATE_OFILES = @OBJDUMP_PRIVATE_OFILES@
+diff -Naurp binutils/Makefile.in binutils/Makefile.in
+--- binutils/Makefile.in       2011-08-08 05:57:15.000000000 +0530
++++ binutils/Makefile.in       2011-11-30 12:54:36.000000000 +0530
+@@ -134,7 +134,7 @@ am_nm_new_OBJECTS = nm.$(OBJEXT) $(am__o
+ nm_new_OBJECTS = $(am_nm_new_OBJECTS)
+ nm_new_LDADD = $(LDADD)
+ am__objects_3 = rddbg.$(OBJEXT) debug.$(OBJEXT) stabs.$(OBJEXT) \
+-      ieee.$(OBJEXT) rdcoff.$(OBJEXT)
++      ieee.$(OBJEXT) rdcoff.$(OBJEXT) wrcoff.$(OBJEXT)
+ am__objects_4 = $(am__objects_3) wrstabs.$(OBJEXT)
+ am_objcopy_OBJECTS = objcopy.$(OBJEXT) not-strip.$(OBJEXT) \
+       rename.$(OBJEXT) $(am__objects_4) $(am__objects_1)
+@@ -476,7 +476,7 @@ CFILES = \
+       resbin.c rescoff.c resrc.c resres.c \
+       size.c srconv.c stabs.c strings.c sysdump.c \
+       unwind-ia64.c elfedit.c version.c \
+-      windres.c winduni.c wrstabs.c \
++      windres.c winduni.c wrcoff.c wrstabs.c \
+       windmc.c mclex.c
+ GENERATED_CFILES = \
+@@ -484,7 +484,7 @@ GENERATED_CFILES = \
+       defparse.c deflex.c nlmheader.c rcparse.c mcparse.c
+ DEBUG_SRCS = rddbg.c debug.c stabs.c ieee.c rdcoff.c
+-WRITE_DEBUG_SRCS = $(DEBUG_SRCS) wrstabs.c
++WRITE_DEBUG_SRCS = $(DEBUG_SRCS) wrstabs.c wrcoff.c
+ # Code shared by all the binutils.
+ BULIBS = bucomm.c version.c filemode.c
+diff -Naurp binutils/objcopy.c binutils/objcopy.c
+--- binutils/objcopy.c 2011-09-16 09:53:17.000000000 +0530
++++ binutils/objcopy.c 2011-11-30 12:54:36.000000000 +0530
 @@ -32,6 +32,7 @@
  #include "elf-bfd.h"
  #include <sys/stat.h>
@@ -1725,7 +1726,7 @@ diff -ruwN binutils/objcopy.c binutils/objcopy.c
  #include "coff/internal.h"
  #include "libcoff.h"
  
-@@ -297,6 +298,8 @@
+@@ -308,6 +309,8 @@ enum command_line_switch
      OPTION_IMPURE,
      OPTION_EXTRACT_SYMBOL,
      OPTION_REVERSE_BYTES,
@@ -1734,7 +1735,7 @@ diff -ruwN binutils/objcopy.c binutils/objcopy.c
      OPTION_FILE_ALIGNMENT,
      OPTION_HEAP,
      OPTION_IMAGE_BASE,
-@@ -346,10 +349,12 @@
+@@ -358,10 +361,12 @@ static struct option copy_options[] =
    {"adjust-section-vma", required_argument, 0, OPTION_CHANGE_SECTION_ADDRESS},
    {"adjust-warnings", no_argument, 0, OPTION_CHANGE_WARNINGS},
    {"alt-machine-code", required_argument, 0, OPTION_ALT_MACH_CODE},
@@ -1747,7 +1748,7 @@ diff -ruwN binutils/objcopy.c binutils/objcopy.c
    {"change-section-address", required_argument, 0, OPTION_CHANGE_SECTION_ADDRESS},
    {"change-section-lma", required_argument, 0, OPTION_CHANGE_SECTION_LMA},
    {"change-section-vma", required_argument, 0, OPTION_CHANGE_SECTION_VMA},
-@@ -543,6 +548,8 @@
+@@ -554,6 +559,8 @@ copy_usage (FILE *stream, int exit_statu
       --prefix-alloc-sections <prefix>\n\
                                     Add <prefix> to start of every allocatable\n\
                                       section name\n\
@@ -1756,7 +1757,7 @@ diff -ruwN binutils/objcopy.c binutils/objcopy.c
       --file-alignment <num>        Set PE file alignment to <num>\n\
       --heap <reserve>[,<commit>]   Set PE reserve/commit heap to <reserve>/\n\
                                     <commit>\n\
-@@ -999,6 +1006,8 @@
+@@ -1031,6 +1038,8 @@ filter_symbols (bfd *abfd, bfd *obfd, as
    asymbol **from = isyms, **to = osyms;
    long src_count = 0, dst_count = 0;
    int relocatable = (abfd->flags & (EXEC_P | DYNAMIC)) == 0;
@@ -1765,7 +1766,7 @@ diff -ruwN binutils/objcopy.c binutils/objcopy.c
  
    for (; src_count < symcount; src_count++)
      {
-@@ -1099,7 +1108,8 @@
+@@ -1131,7 +1140,8 @@ filter_symbols (bfd *abfd, bfd *obfd, as
               || bfd_is_com_section (bfd_get_section (sym)))
        keep = strip_symbols != STRIP_UNNEEDED;
        else if ((flags & BSF_DEBUGGING) != 0)  /* Debugging symbol.  */
@@ -1775,7 +1776,7 @@ diff -ruwN binutils/objcopy.c binutils/objcopy.c
                && strip_symbols != STRIP_UNNEEDED
                && ! convert_debugging);
        else if (bfd_coff_get_comdat_section (abfd, bfd_get_section (sym)))
-@@ -2817,6 +2827,10 @@
+@@ -2883,6 +2893,10 @@ write_debugging_info (bfd *obfd, void *d
      return write_ieee_debugging_info (obfd, dhandle);
  
    if (bfd_get_flavour (obfd) == bfd_target_coff_flavour
@@ -1786,7 +1787,7 @@ diff -ruwN binutils/objcopy.c binutils/objcopy.c
        || bfd_get_flavour (obfd) == bfd_target_elf_flavour)
      {
        bfd_byte *syms, *strings;
-@@ -3641,6 +3655,30 @@
+@@ -3735,6 +3749,30 @@ copy_main (int argc, char *argv[])
          prefix_alloc_sections_string = optarg;
          break;
  
@@ -1817,10 +1818,10 @@ diff -ruwN binutils/objcopy.c binutils/objcopy.c
        case OPTION_READONLY_TEXT:
          bfd_flags_to_set |= WP_TEXT;
          bfd_flags_to_clear &= ~WP_TEXT;
-diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
+diff -Naurp binutils/rdcoff.c binutils/rdcoff.c
 --- binutils/rdcoff.c  2009-09-02 12:52:32.000000000 +0530
-+++ binutils/rdcoff.c  2010-03-11 12:13:23.334879700 +0530
-@@ -82,6 +82,9 @@
++++ binutils/rdcoff.c  2011-11-30 12:54:36.000000000 +0530
+@@ -82,6 +82,9 @@ struct coff_types
    struct coff_slots *slots;
    /* Basic types.  */
    debug_type basic[T_MAX + 1];
@@ -1830,7 +1831,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
  };
  
  static debug_type *coff_get_slot (struct coff_types *, int);
-@@ -101,6 +104,7 @@
+@@ -101,6 +104,7 @@ static bfd_boolean parse_coff_symbol
    (bfd *, struct coff_types *, asymbol *, long, struct internal_syment *,
     void *, debug_type, bfd_boolean);
  static bfd_boolean external_coff_symbol_p (int sym_class);
@@ -1838,7 +1839,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
  \f
  /* Return the slot for a type.  */
  
-@@ -271,8 +275,7 @@
+@@ -271,8 +275,7 @@ parse_coff_base_type (bfd *abfd, struct 
        break;
  
      case T_INT:
@@ -1848,7 +1849,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
        name = "int";
        break;
  
-@@ -287,7 +290,7 @@
+@@ -287,7 +290,7 @@ parse_coff_base_type (bfd *abfd, struct 
        break;
  
      case T_DOUBLE:
@@ -1857,7 +1858,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
        name = "double";
        break;
  
-@@ -307,7 +310,7 @@
+@@ -307,7 +310,7 @@ parse_coff_base_type (bfd *abfd, struct 
        break;
  
      case T_UINT:
@@ -1866,7 +1867,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
        name = "unsigned int";
        break;
  
-@@ -565,6 +568,8 @@
+@@ -565,6 +568,8 @@ parse_coff_symbol (bfd *abfd ATTRIBUTE_U
  
      case C_WEAKEXT:
      case C_EXT:
@@ -1875,7 +1876,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
        if (! debug_record_variable (dhandle, bfd_asymbol_name (sym), type,
                                   DEBUG_GLOBAL, bfd_asymbol_value (sym)))
        return FALSE;
-@@ -580,9 +585,9 @@
+@@ -580,9 +585,9 @@ parse_coff_symbol (bfd *abfd ATTRIBUTE_U
        break;
  
      case C_REG:
@@ -1887,7 +1888,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
        return FALSE;
        break;
  
-@@ -596,9 +601,9 @@
+@@ -596,9 +601,9 @@ parse_coff_symbol (bfd *abfd ATTRIBUTE_U
        break;
  
      case C_REGPARM:
@@ -1899,7 +1900,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
        return FALSE;
        break;
  
-@@ -648,6 +653,28 @@
+@@ -648,6 +653,28 @@ external_coff_symbol_p (int sym_class)
    return FALSE;
  }
  
@@ -1928,7 +1929,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
  /* This is the main routine.  It looks through all the symbols and
     handles them.  */
  
-@@ -674,6 +701,17 @@
+@@ -674,6 +701,17 @@ parse_coff (bfd *abfd, asymbol **syms, l
    types.slots = NULL;
    for (i = 0; i <= T_MAX; i++)
      types.basic[i] = DEBUG_TYPE_NULL;
@@ -1946,7 +1947,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
  
    next_c_file = -1;
    fnname = NULL;
-@@ -734,7 +772,6 @@
+@@ -734,7 +772,6 @@ parse_coff (bfd *abfd, asymbol **syms, l
        switch (syment.n_sclass)
        {
        case C_EFCN:
@@ -1954,7 +1955,7 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
        case C_ULABEL:
        case C_USTATIC:
        case C_LINE:
-@@ -757,6 +794,8 @@
+@@ -757,6 +794,8 @@ parse_coff (bfd *abfd, asymbol **syms, l
          /* Fall through.  */
        case C_WEAKEXT:
        case C_EXT:
@@ -1963,9 +1964,9 @@ diff -ruwN binutils/rdcoff.c binutils/rdcoff.c
          if (ISFCN (syment.n_type))
            {
              fnname = name;
-diff -ruwN binutils/wrcoff.c binutils/wrcoff.c
+diff -Naurp binutils/wrcoff.c binutils/wrcoff.c
 --- binutils/wrcoff.c  1970-01-01 05:30:00.000000000 +0530
-+++ binutils/wrcoff.c  2010-03-11 12:13:23.366126300 +0530
++++ binutils/wrcoff.c  2011-11-30 12:54:36.000000000 +0530
 @@ -0,0 +1,3410 @@
 +/* wrcoff.c -- Generate (AVR) COFF debugging information
 +   Copyright 2003 Free Software Foundation, Inc.
@@ -3139,13 +3140,13 @@ diff -ruwN binutils/wrcoff.c binutils/wrcoff.c
 +            if (ehash->nfixidxs != 0)
 +              {
 +                coff_symbol_type *symp;
-+                unsigned i;
++                unsigned tmp_i1;
 +
-+                for (i = 0; i < ehash->nfixidxs; i++)
++                for (tmp_i1 = 0; tmp_i1 < ehash->nfixidxs; tmp_i1++)
 +                  {
 +                    combined_entry_type *np;
 +
-+                    symp = (coff_symbol_type *) info->syms[ehash->fixidxs[i]];
++                    symp = (coff_symbol_type *) info->syms[ehash->fixidxs[tmp_i1]];
 +                    symp->native->u.syment.n_type &= ~N_BTMASK;
 +                    symp->native->u.syment.n_type |= T_ENUM;
 +
@@ -3207,13 +3208,13 @@ diff -ruwN binutils/wrcoff.c binutils/wrcoff.c
 +            if (shash->nfixidxs != 0)
 +              {
 +                coff_symbol_type *symp;
-+                unsigned i;
++                unsigned tmp_i2;
 +
-+                for (i = 0; i < shash->nfixidxs; i++)
++                for (tmp_i2 = 0; tmp_i2 < shash->nfixidxs; tmp_i2++)
 +                  {
 +                    combined_entry_type *np;
 +
-+                    symp = (coff_symbol_type *) info->syms[shash->fixidxs[i]];
++                    symp = (coff_symbol_type *) info->syms[shash->fixidxs[tmp_i2]];
 +                    symp->native->u.syment.n_type &= ~N_BTMASK;
 +                    if (tst->u.ts_struct.isstruct)
 +                      symp->native->u.syment.n_type |= T_STRUCT;
@@ -5377,9 +5378,9 @@ diff -ruwN binutils/wrcoff.c binutils/wrcoff.c
 +
 +  return TRUE;
 +}
-diff -ruwN include/coff/avr.h include/coff/avr.h
+diff -Naurp include/coff/avr.h include/coff/avr.h
 --- include/coff/avr.h 1970-01-01 05:30:00.000000000 +0530
-+++ include/coff/avr.h 2010-03-11 12:13:23.381749600 +0530
++++ include/coff/avr.h 2011-11-30 12:54:36.000000000 +0530
 @@ -0,0 +1,110 @@
 +/* coff information for Atmel AVR.
 +   
@@ -5491,10 +5492,10 @@ diff -ruwN include/coff/avr.h include/coff/avr.h
 +
 +#define RELOC struct external_reloc
 +#define RELSZ 10
-diff -ruwN include/coff/internal.h include/coff/internal.h
---- include/coff/internal.h    2009-09-02 12:51:39.000000000 +0530
-+++ include/coff/internal.h    2010-03-11 12:13:23.381749600 +0530
-@@ -646,6 +646,8 @@
+diff -Naurp include/coff/internal.h include/coff/internal.h
+--- include/coff/internal.h    2011-03-31 13:43:48.000000000 +0530
++++ include/coff/internal.h    2011-11-30 12:54:36.000000000 +0530
+@@ -649,6 +649,8 @@ union internal_auxent
  
  };
  
diff --git a/302-binutils-2.20.1-new-sections.patch b/302-binutils-2.20.1-new-sections.patch
deleted file mode 100644 (file)
index c1dac97..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-diff -ruwN ld/scripttempl/avr.sc ld/scripttempl/avr.sc
---- ld/scripttempl/avr.sc      2009-10-09 18:42:35.000000000 +0530
-+++ ld/scripttempl/avr.sc      2010-03-11 12:26:00.563046000 +0530
-@@ -7,6 +7,9 @@
-   text   (rx)   : ORIGIN = 0, LENGTH = $TEXT_LENGTH
-   data   (rw!x) : ORIGIN = $DATA_ORIGIN, LENGTH = $DATA_LENGTH
-   eeprom (rw!x) : ORIGIN = 0x810000, LENGTH = 64K
-+  fuse      (rw!x) : ORIGIN = 0x820000, LENGTH = 1K
-+  lock      (rw!x) : ORIGIN = 0x830000, LENGTH = 1K
-+  signature (rw!x) : ORIGIN = 0x840000, LENGTH = 1K
- }
- SECTIONS
-@@ -196,6 +199,24 @@
-     ${RELOCATING+ __eeprom_end = . ; }
-   } ${RELOCATING+ > eeprom}
-+  .fuse ${RELOCATING-0}:
-+  {
-+    KEEP(*(.fuse))
-+    KEEP(*(.lfuse))
-+    KEEP(*(.hfuse))
-+    KEEP(*(.efuse))
-+  } ${RELOCATING+ > fuse}
-+
-+  .lock ${RELOCATING-0}:
-+  {
-+    KEEP(*(.lock*))
-+  } ${RELOCATING+ > lock}
-+
-+  .signature ${RELOCATING-0}:
-+  {
-+    KEEP(*(.signature*))
-+  } ${RELOCATING+ > signature}
-+
-   /* Stabs debugging sections.  */
-   .stab 0 : { *(.stab) }
-   .stabstr 0 : { *(.stabstr) }
diff --git a/302-binutils-as-dwarf.patch b/302-binutils-as-dwarf.patch
new file mode 100644 (file)
index 0000000..c74d4ae
--- /dev/null
@@ -0,0 +1,19 @@
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2011-03-29 23:46:15.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 12:28:16.000000000 +0530
+@@ -24,6 +24,7 @@
+ #include "as.h"
+ #include "safe-ctype.h"
+ #include "subsegs.h"
++#include "dwarf2dbg.h"
+ #include "dw2gencfi.h"
+@@ -1453,6 +1454,7 @@ md_assemble (char *str)
+   dwarf2_emit_insn (0);
++  dwarf2_emit_insn (0);
+   /* We used to set input_line_pointer to the result of get_operands,
+      but that is wrong.  Our caller assumes we don't change it.  */
+   {
diff --git a/303-binutils-2.20.1-as-dwarf.patch b/303-binutils-2.20.1-as-dwarf.patch
deleted file mode 100644 (file)
index 6aade2d..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-diff -ruwN gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2010-03-11 14:56:16.484109300 +0530
-+++ gas/config/tc-avr.c        2010-03-11 14:58:59.248690500 +0530
-@@ -24,6 +24,7 @@
- #include "as.h"
- #include "safe-ctype.h"
- #include "subsegs.h"
-+#include "dwarf2dbg.h"
- struct avr_opcodes_s
- {
-@@ -1368,6 +1369,7 @@
-   dwarf2_emit_insn (0);
-+  dwarf2_emit_insn (0);
-   /* We used to set input_line_pointer to the result of get_operands,
-      but that is wrong.  Our caller assumes we don't change it.  */
-   {
-diff -ruwN gas/config/tc-avr.h gas/config/tc-avr.h
---- gas/config/tc-avr.h        2010-03-11 14:56:16.484109300 +0530
-+++ gas/config/tc-avr.h        2010-03-11 14:58:59.264313900 +0530
-@@ -147,3 +147,6 @@
- /* This target is buggy, and sets fix size too large.  */
- #define TC_FX_SIZE_SLACK(FIX) 2
-+
-+/* keep DWARF2_ADDR_SIZE in consistency with C compiler produced information */
-+#define DWARF2_ADDR_SIZE(bfd) 4
similarity index 76%
rename from 304-binutils-2.20.1-dwarf2-AVRStudio-workaround.patch
rename to 303-binutils-dwarf2-AVRStudio-workaround.patch
index a75b26b2791972d064c2d8fff164d68cddf93645..0813ff1dc6f15251e7f21c97d107de489e10e902 100644 (file)
@@ -1,7 +1,7 @@
-diff -ruwN gas/dwarf2dbg.c gas/dwarf2dbg.c
---- gas/dwarf2dbg.c    2010-03-11 15:06:25.773290700 +0530
-+++ gas/dwarf2dbg.c    2010-03-11 15:08:20.410311300 +0530
-@@ -112,8 +112,11 @@
+diff -Naurp gas/dwarf2dbg.c gas/dwarf2dbg.c
+--- gas/dwarf2dbg.c    2011-11-28 13:04:11.000000000 +0530
++++ gas/dwarf2dbg.c    2011-11-28 16:33:02.000000000 +0530
+@@ -116,8 +116,11 @@
     Note: If you want to change this, you'll have to update the
     "standard_opcode_lengths" table that is emitted below in
     out_debug_line().  */
@@ -14,7 +14,7 @@ diff -ruwN gas/dwarf2dbg.c gas/dwarf2dbg.c
  #ifndef DWARF2_LINE_BASE
    /* Minimum line offset in a special line info. opcode.  This value
       was chosen to give a reasonable range of values.  */
-@@ -1439,9 +1442,11 @@
+@@ -1482,9 +1485,11 @@ out_debug_line (segT line_seg)
    out_byte (0);                       /* DW_LNS_set_basic_block */
    out_byte (0);                       /* DW_LNS_const_add_pc */
    out_byte (1);                       /* DW_LNS_fixed_advance_pc */
similarity index 82%
rename from 501-binutils-2.20.1-bug13113.patch
rename to 304-binutils-bug13113.patch
index d79bdc5f9ddb46ddcd103969f22dd93e8fbbf921..59624347c73bb2c8f46fc5eec9f285d4e613495e 100644 (file)
@@ -1,7 +1,7 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2012-01-24 12:19:53.000000000 +0530
-+++ binutils/size.c    2012-01-24 12:17:26.000000000 +0530
-@@ -402,6 +402,7 @@ usage (FILE *stream, int status)
+--- binutils/size.c    2011-12-16 12:25:31.000000000 +0530
++++ binutils/size.c    2011-12-16 12:36:09.000000000 +0530
+@@ -341,6 +341,7 @@ usage (FILE *stream, int status)
    fprintf (stream, _(" The options are:\n\
    -A|-B|-C  --format={sysv|berkeley|avr}  Select output style (default is %s)\n\
              --mcu=<avrmcu>            MCU name for AVR format only\n\
@@ -9,7 +9,7 @@ diff -Naurp binutils/size.c binutils/size.c
    -o|-d|-x  --radix={8|10|16}         Display numbers in octal, decimal or hex\n\
    -t        --totals                  Display the total sizes (Berkeley only)\n\
              --common                  Display total size for *COM* syms\n\
-@@ -422,6 +423,7 @@ FORMAT_NAME
+@@ -361,6 +362,7 @@ FORMAT_NAME
  #define OPTION_RADIX (OPTION_FORMAT + 1)
  #define OPTION_TARGET (OPTION_RADIX + 1)
  #define OPTION_MCU (OPTION_TARGET + 1) 
@@ -17,7 +17,7 @@ diff -Naurp binutils/size.c binutils/size.c
  
  static struct option long_options[] =
  {
-@@ -430,12 +432,37 @@ static struct option long_options[] =
+@@ -369,12 +371,37 @@ static struct option long_options[] =
    {"radix", required_argument, 0, OPTION_RADIX},
    {"target", required_argument, 0, OPTION_TARGET},
    {"mcu", required_argument, 0, 203},
@@ -55,7 +55,7 @@ diff -Naurp binutils/size.c binutils/size.c
  int main (int, char **);
  
  int
-@@ -490,6 +517,10 @@ main (int argc, char **argv)
+@@ -429,6 +456,10 @@ main (int argc, char **argv)
        avrmcu = optarg;
        break;
  
@@ -67,9 +67,9 @@ diff -Naurp binutils/size.c binutils/size.c
        target = optarg;
        break;
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2012-01-24 12:19:53.000000000 +0530
-+++ gas/config/tc-avr.c        2012-01-24 12:17:26.000000000 +0530
-@@ -392,7 +392,8 @@ static struct hash_control *avr_mod_hash
+--- gas/config/tc-avr.c        2011-12-16 12:30:52.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 12:36:09.000000000 +0530
+@@ -348,7 +348,8 @@ static struct hash_control *avr_mod_hash
  #define OPTION_MMCU 'm'
  enum options
  {
@@ -79,7 +79,7 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    OPTION_NO_SKIP_BUG,
    OPTION_NO_WRAP
  };
-@@ -400,6 +401,7 @@ enum options
+@@ -356,6 +357,7 @@ enum options
  struct option md_longopts[] =
  {
    { "mmcu",   required_argument, NULL, OPTION_MMCU        },
@@ -87,8 +87,8 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    { "mall-opcodes", no_argument, NULL, OPTION_ALL_OPCODES },
    { "mno-skip-bug", no_argument, NULL, OPTION_NO_SKIP_BUG },
    { "mno-wrap",     no_argument, NULL, OPTION_NO_WRAP     },
-@@ -504,12 +506,12 @@ md_show_usage (FILE *stream)
-       "                   avrtiny10 - tiny devices with 16 gp registers\n"
+@@ -458,12 +460,12 @@ md_show_usage (FILE *stream)
+       "                   avrxmega7 - XMEGA, > 128K, <= 256K FLASH, > 64K RAM\n"
        "                   or immediate microcontroller name.\n"));
    fprintf (stream,
 -      _("  -mall-opcodes    accept all AVR opcodes, even if not supported by MCU\n"
@@ -102,7 +102,7 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
  }
  
  static void
-@@ -561,6 +563,9 @@ md_parse_option (int c, char *arg)
+@@ -515,6 +517,9 @@ md_parse_option (int c, char *arg)
                    avr_mcu->name, mcu_types[i].name);
        return 1;
        }
diff --git a/305-binutils-2.20.1-assembler-options.patch b/305-binutils-2.20.1-assembler-options.patch
deleted file mode 100644 (file)
index 18ecaac..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-02-08 10:59:27.000000000 -0600
-+++ gas/config/tc-avr.c        2011-02-08 11:01:47.000000000 -0600
-@@ -378,7 +378,7 @@ void
- md_show_usage (FILE *stream)
- {
-   fprintf (stream,
--      _("AVR options:\n"
-+      _("AVR Assembler options:\n"
-       "  -mmcu=[avr-name] select microcontroller variant\n"
-       "                   [avr-name] can be:\n"
-       "                   avr1  - classic AVR core without data RAM\n"
diff --git a/305-binutils-new-usb-insns.patch b/305-binutils-new-usb-insns.patch
new file mode 100644 (file)
index 0000000..9d5dd7b
--- /dev/null
@@ -0,0 +1,31 @@
+diff -Naurp include/opcode/avr.h include/opcode/avr.h
+--- include/opcode/avr.h       2011-07-01 22:44:03.000000000 +0530
++++ include/opcode/avr.h       2011-12-22 11:56:43.000000000 +0530
+@@ -33,6 +33,7 @@
+ #define AVR_ISA_MOVW  0x1000 /* device has MOVW */
+ #define AVR_ISA_SPMX  0x2000 /* device has SPM Z[+] */
+ #define AVR_ISA_DES   0x4000 /* device has DES */
++#define AVR_ISA_USB   0x8000 /* device has USB */
+ #define AVR_ISA_TINY1 (AVR_ISA_1200 | AVR_ISA_LPM)
+ #define AVR_ISA_2xxx  (AVR_ISA_TINY1 | AVR_ISA_SRAM)
+@@ -53,6 +54,7 @@
+ #define AVR_ISA_M128  (AVR_ISA_M323 | AVR_ISA_ELPM | AVR_ISA_ELPMX)
+ #define AVR_ISA_M256  (AVR_ISA_M128 | AVR_ISA_EIND)
+ #define AVR_ISA_XMEGA (AVR_ISA_M256 | AVR_ISA_SPMX | AVR_ISA_DES)
++#define AVR_ISA_XMEGAU (AVR_ISA_XMEGA | AVR_ISA_USB)
+ #define AVR_ISA_AVR1   AVR_ISA_TINY1
+ #define AVR_ISA_AVR2   AVR_ISA_2xxx
+@@ -276,6 +278,11 @@ AVR_INSN (fmulsu,"a,a","000000111ddd1rrr
+ AVR_INSN (sts,  "i,r", "1001001ddddd0000", 2, AVR_ISA_2xxx, 0x9200)
+ AVR_INSN (lds,  "r,i", "1001000ddddd0000", 2, AVR_ISA_2xxx, 0x9000)
++AVR_INSN (xch,  "z,r", "1001001rrrrr0100", 1, AVR_ISA_XMEGAU, 0x9204)
++AVR_INSN (las,  "z,r", "1001001rrrrr0101", 1, AVR_ISA_XMEGAU, 0x9205)
++AVR_INSN (lac,  "z,r", "1001001rrrrr0110", 1, AVR_ISA_XMEGAU, 0x9206)
++AVR_INSN (lat,  "z,r", "1001001rrrrr0111", 1, AVR_ISA_XMEGAU, 0x9207)
++
+    /* Special case for b+0, `e' must be next entry after `b',
+       b={Y=1,Z=0}, ee={X=11,Y=10,Z=00}, !=1 if -e or e+ or X.  */
+ AVR_INSN (ldd,  "r,b", "10o0oo0dddddbooo", 1, AVR_ISA_2xxx, 0x8000)
diff --git a/306-binutils-bug15573-AVRTC-419.patch b/306-binutils-bug15573-AVRTC-419.patch
new file mode 100644 (file)
index 0000000..939916e
--- /dev/null
@@ -0,0 +1,26 @@
+--- bfd/elf32-avr.c    2011-06-02 19:13:14.000000000 +0530
++++ bfd/elf32-avr.c    2012-02-01 19:09:51.000000000 +0530
+@@ -1506,8 +1506,12 @@
+        shrinked_insn_address = (sec->output_section->vma
+                                 + sec->output_offset + addr - count);
+-       irelend = elf_section_data (isec)->relocs + isec->reloc_count;
+-       for (irel = elf_section_data (isec)->relocs;
++       irel = elf_section_data (isec)->relocs;
++       
++       if (NULL == irel)
++         irel = _bfd_elf_link_read_relocs (abfd, isec, NULL, NULL, FALSE);
++
++       for (irelend = irel + isec->reloc_count;
+             irel < irelend;
+             irel++)
+          {
+@@ -1564,6 +1568,8 @@
+          /* else...Reference symbol is extern.  No need for adjusting
+             the addend.  */
+        }
++       if (NULL == elf_section_data (isec)->relocs)
++         free (irelend - isec->reloc_count);
+      }
+   }
diff --git a/307-binutils-fix-AVRTC-424.patch b/307-binutils-fix-AVRTC-424.patch
new file mode 100644 (file)
index 0000000..1ae373b
--- /dev/null
@@ -0,0 +1,55 @@
+--- bfd/elf32-avr.c    2012-02-02 15:47:48.000000000 +0530
++++ bfd/elf32-avr.c    2012-02-02 15:50:59.000000000 +0530
+@@ -1655,6 +1655,16 @@ elf32_avr_relax_section (bfd *abfd,
+   Elf_Internal_Sym *isymbuf = NULL;
+   struct elf32_avr_link_hash_table *htab;
++  /* If 'shrinkable' is FALSE, do not shrink by deleting bytes while
++     relaxing. Such shrinking can cause issues for the sections such 
++     as .vectors and .jumptables. Instead the unused bytes should be 
++     filled with nop instructions */
++  bfd_boolean shrinkable = TRUE;
++
++  if (!strcmp (sec->name,".vectors")
++      || !strcmp (sec->name,".jumptables"))
++    shrinkable = FALSE;
++
+   if (link_info->relocatable)
+     (*link_info->callbacks->einfo)
+       (_("%P%F: --relax and -r may not be used together\n"));
+@@ -1811,10 +1821,16 @@ elf32_avr_relax_section (bfd *abfd,
+             /* Compute the distance from this insn to the branch target.  */
+             gap = value - dot;
+-            /* If the distance is within -4094..+4098 inclusive, then we can
+-               relax this jump/call.  +4098 because the call/jump target
+-               will be closer after the relaxation.  */
+-            if ((int) gap >= -4094 && (int) gap <= 4098)
++            /* Check if the gap falls in the range that can be accommodated
++               in 13bits signed (It is 12bits when encoded, as we deal with
++               word addressing). */
++            if (!shrinkable && ((int) gap >= -4096 && (int) gap <= 4095))
++              distance_short_enough = 1;
++            /* If shrinkable, then we can check for a range of distance which
++               is two bytes farther on both the directions because the call
++               or jump target will be closer by two bytes after the 
++               relaxation. */
++            else if (shrinkable && ((int) gap >= -4094 && (int) gap <= 4097))
+               distance_short_enough = 1;
+             /* Here we handle the wrap-around case.  E.g. for a 16k device
+@@ -1888,11 +1904,9 @@ elf32_avr_relax_section (bfd *abfd,
+                 irel->r_info = ELF32_R_INFO (ELF32_R_SYM (irel->r_info),
+                                              R_AVR_13_PCREL);
+-                /* Check for the vector section. There we don't want to
+-                   modify the ordering!  */
+-
+-                if (!strcmp (sec->name,".vectors")
+-                    || !strcmp (sec->name,".jumptables"))
++                /* We should not modify the ordering if 'shrinkable' is
++                   FALSE */ 
++                if (!shrinkable)
+                   {
+                     /* Let's insert a nop.  */
+                     bfd_put_8 (abfd, 0x00, contents + irel->r_offset + 2);
diff --git a/400-binutils-2.20.1-xmega.patch b/400-binutils-2.20.1-xmega.patch
deleted file mode 100644 (file)
index 7f6e084..0000000
+++ /dev/null
@@ -1,679 +0,0 @@
-avrxmega1
-avrxmega2
-avrxmega3
-avrxmega4
-avrxmega5
-avrxmega6
-avrxmega7
-atxmega16a4
-atxmega16d4
-atxmega32d4
-atxmega32a4
-atxmega64a3
-atxmega64d3
-atxmega64a1
-atxmega128a3
-atxmega128d3
-atxmega192a3
-atxmega192d3
-atxmega256a3
-atxmega256a3b
-atxmega256d3
-atxmega128a1
-=======================================================
-diff -Naurp bfd/archures.c bfd/archures.c
---- bfd/archures.c     2009-09-10 06:47:11.000000000 -0500
-+++ bfd/archures.c     2011-06-07 11:44:52.000000000 -0500
-@@ -368,6 +368,13 @@ DESCRIPTION
- .#define bfd_mach_avr5                5
- .#define bfd_mach_avr51               51
- .#define bfd_mach_avr6                6
-+.#define bfd_mach_avrxmega1 101
-+.#define bfd_mach_avrxmega2 102
-+.#define bfd_mach_avrxmega3 103
-+.#define bfd_mach_avrxmega4 104
-+.#define bfd_mach_avrxmega5 105
-+.#define bfd_mach_avrxmega6 106
-+.#define bfd_mach_avrxmega7 107
- .  bfd_arch_bfin,        {* ADI Blackfin *}
- .#define bfd_mach_bfin          1
- .  bfd_arch_cr16,       {* National Semiconductor CompactRISC (ie CR16). *}
-diff -Naurp bfd/bfd-in2.h bfd/bfd-in2.h
---- bfd/bfd-in2.h      2010-02-03 07:28:24.000000000 -0600
-+++ bfd/bfd-in2.h      2011-06-07 11:44:52.000000000 -0500
-@@ -2042,6 +2042,13 @@ enum bfd_architecture
- #define bfd_mach_avr5          5
- #define bfd_mach_avr51         51
- #define bfd_mach_avr6          6
-+#define bfd_mach_avrxmega1 101
-+#define bfd_mach_avrxmega2 102
-+#define bfd_mach_avrxmega3 103
-+#define bfd_mach_avrxmega4 104
-+#define bfd_mach_avrxmega5 105
-+#define bfd_mach_avrxmega6 106
-+#define bfd_mach_avrxmega7 107
-   bfd_arch_bfin,        /* ADI Blackfin */
- #define bfd_mach_bfin          1
-   bfd_arch_cr16,       /* National Semiconductor CompactRISC (ie CR16). */
-diff -Naurp bfd/cpu-avr.c bfd/cpu-avr.c
---- bfd/cpu-avr.c      2009-09-02 02:18:36.000000000 -0500
-+++ bfd/cpu-avr.c      2011-06-07 11:44:52.000000000 -0500
-@@ -133,7 +133,29 @@ static const bfd_arch_info_type arch_inf
-   N (22, bfd_mach_avr51, "avr:51", FALSE, & arch_info_struct[9]),
-   /* 3-Byte PC.  */
--  N (22, bfd_mach_avr6, "avr:6", FALSE, NULL)
-+  N (22, bfd_mach_avr6, "avr:6", FALSE, & arch_info_struct[10]),
-+  
-+  /* Xmega 1 */
-+  N (24, bfd_mach_avrxmega1, "avr:101", FALSE, & arch_info_struct[11]),
-+
-+  /* Xmega 2 */
-+  N (24, bfd_mach_avrxmega2, "avr:102", FALSE, & arch_info_struct[12]),
-+  
-+  /* Xmega 3 */
-+  N (24, bfd_mach_avrxmega3, "avr:103", FALSE, & arch_info_struct[13]),
-+  
-+  /* Xmega 4 */
-+  N (24, bfd_mach_avrxmega4, "avr:104", FALSE, & arch_info_struct[14]),
-+  
-+  /* Xmega 5 */
-+  N (24, bfd_mach_avrxmega5, "avr:105", FALSE, & arch_info_struct[15]),
-+  
-+  /* Xmega 6 */
-+  N (24, bfd_mach_avrxmega6, "avr:106", FALSE, & arch_info_struct[16]),
-+  
-+  /* Xmega 7 */
-+  N (24, bfd_mach_avrxmega7, "avr:107", FALSE, NULL)
-+  
- };
- const bfd_arch_info_type bfd_avr_arch =
-diff -Naurp bfd/elf32-avr.c bfd/elf32-avr.c
---- bfd/elf32-avr.c    2009-09-02 02:18:36.000000000 -0500
-+++ bfd/elf32-avr.c    2011-06-07 11:44:52.000000000 -0500
-@@ -1328,6 +1328,34 @@ bfd_elf_avr_final_write_processing (bfd 
-     case bfd_mach_avr6:
-       val = E_AVR_MACH_AVR6;
-       break;
-+
-+    case bfd_mach_avrxmega1:
-+      val = E_AVR_MACH_XMEGA1;
-+      break;
-+
-+    case bfd_mach_avrxmega2:
-+      val = E_AVR_MACH_XMEGA2;
-+      break;
-+
-+    case bfd_mach_avrxmega3:
-+      val = E_AVR_MACH_XMEGA3;
-+      break;
-+
-+    case bfd_mach_avrxmega4:
-+      val = E_AVR_MACH_XMEGA4;
-+      break;
-+
-+    case bfd_mach_avrxmega5:
-+      val = E_AVR_MACH_XMEGA5;
-+      break;
-+
-+    case bfd_mach_avrxmega6:
-+      val = E_AVR_MACH_XMEGA6;
-+      break;
-+
-+    case bfd_mach_avrxmega7:
-+      val = E_AVR_MACH_XMEGA7;
-+      break;
-     }
-   elf_elfheader (abfd)->e_machine = EM_AVR;
-@@ -1390,6 +1418,34 @@ elf32_avr_object_p (bfd *abfd)
-       case E_AVR_MACH_AVR6:
-         e_set = bfd_mach_avr6;
-         break;
-+
-+      case E_AVR_MACH_XMEGA1:
-+        e_set = bfd_mach_avrxmega1;
-+        break;
-+
-+      case E_AVR_MACH_XMEGA2:
-+        e_set = bfd_mach_avrxmega2;
-+        break;
-+
-+      case E_AVR_MACH_XMEGA3:
-+        e_set = bfd_mach_avrxmega3;
-+        break;
-+
-+      case E_AVR_MACH_XMEGA4:
-+        e_set = bfd_mach_avrxmega4;
-+        break;
-+
-+      case E_AVR_MACH_XMEGA5:
-+        e_set = bfd_mach_avrxmega5;
-+        break;
-+
-+      case E_AVR_MACH_XMEGA6:
-+        e_set = bfd_mach_avrxmega6;
-+        break;
-+
-+      case E_AVR_MACH_XMEGA7:
-+        e_set = bfd_mach_avrxmega7;
-+        break;
-       }
-     }
-   return bfd_default_set_arch_mach (abfd, bfd_arch_avr,
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-06-07 11:47:11.000000000 -0500
-+++ gas/config/tc-avr.c        2011-06-07 11:44:52.000000000 -0500
-@@ -30,18 +30,19 @@ struct avr_opcodes_s
- {
-   char *        name;
-   char *        constraints;
-+  char *opcode;
-   int           insn_size;            /* In words.  */
-   int           isa;
-   unsigned int  bin_opcode;
- };
- #define AVR_INSN(NAME, CONSTR, OPCODE, SIZE, ISA, BIN) \
--{#NAME, CONSTR, SIZE, ISA, BIN},
-+{#NAME, CONSTR, OPCODE, SIZE, ISA, BIN},
- struct avr_opcodes_s avr_opcodes[] =
- {
-   #include "opcode/avr.h"
--  {NULL, NULL, 0, 0, 0}
-+  {NULL, NULL, NULL, 0, 0, 0}
- };
- const char comment_chars[] = ";";
-@@ -80,6 +81,13 @@ static struct mcu_type_s mcu_types[] =
-   {"avr5",       AVR_ISA_AVR51,   bfd_mach_avr5},
-   {"avr51",      AVR_ISA_AVR51,   bfd_mach_avr51},
-   {"avr6",       AVR_ISA_AVR6,    bfd_mach_avr6},
-+  {"avrxmega1",  AVR_ISA_XMEGA,   bfd_mach_avrxmega1},
-+  {"avrxmega2",  AVR_ISA_XMEGA,   bfd_mach_avrxmega2},
-+  {"avrxmega3",  AVR_ISA_XMEGA,   bfd_mach_avrxmega3},
-+  {"avrxmega4",  AVR_ISA_XMEGA,   bfd_mach_avrxmega4},
-+  {"avrxmega5",  AVR_ISA_XMEGA,   bfd_mach_avrxmega5},
-+  {"avrxmega6",  AVR_ISA_XMEGA,   bfd_mach_avrxmega6},
-+  {"avrxmega7",  AVR_ISA_XMEGA,   bfd_mach_avrxmega7},
-   {"at90s1200",  AVR_ISA_1200,    bfd_mach_avr1},
-   {"attiny11",   AVR_ISA_AVR1,    bfd_mach_avr1},
-   {"attiny12",   AVR_ISA_AVR1,    bfd_mach_avr1},
-@@ -216,6 +224,21 @@ static struct mcu_type_s mcu_types[] =
-   {"m3001b",     AVR_ISA_AVR51,   bfd_mach_avr51},
-   {"atmega2560", AVR_ISA_AVR6,    bfd_mach_avr6},
-   {"atmega2561", AVR_ISA_AVR6,    bfd_mach_avr6},
-+  {"atxmega16a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega16d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega32a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega32d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-+  {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-+  {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
-+  {"atxmega128a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega128d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega192d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega256a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-   {NULL, 0, 0}
- };
-@@ -393,6 +416,11 @@ md_show_usage (FILE *stream)
-       "                   avr5  - enhanced AVR core with up to 64K program memory\n"
-       "                   avr51 - enhanced AVR core with up to 128K program memory\n"
-       "                   avr6  - enhanced AVR core with up to 256K program memory\n"
-+      "                   avrxmega3 - XMEGA, > 8K, <= 64K FLASH, > 64K RAM\n"
-+      "                   avrxmega4 - XMEGA, > 64K, <= 128K FLASH, <= 64K RAM\n"
-+      "                   avrxmega5 - XMEGA, > 64K, <= 128K FLASH, > 64K RAM\n"
-+      "                   avrxmega6 - XMEGA, > 128K, <= 256K FLASH, <= 64K RAM\n"
-+      "                   avrxmega7 - XMEGA, > 128K, <= 256K FLASH, > 64K RAM\n"
-       "                   or immediate microcontroller name.\n"));
-   fprintf (stream,
-       _("  -mall-opcodes    accept all AVR opcodes, even if not supported by MCU\n"
-@@ -820,7 +848,12 @@ avr_operand (struct avr_opcodes_s *opcod
-       if (*str == '+')
-       {
-         ++str;
--        op_mask |= 1;
-+          char *s;
-+          for (s = opcode->opcode; *s; ++s)
-+            {
-+              if (*s == '+')
-+                op_mask |= (1 << (15 - (s - opcode->opcode)));
-+            }
-       }
-       /* attiny26 can do "lpm" and "lpm r,Z" but not "lpm r,Z+".  */
-@@ -937,6 +970,16 @@ avr_operand (struct avr_opcodes_s *opcod
-       }
-       break;
-+    case 'E':
-+      {
-+      unsigned int x;
-+
-+      x = avr_get_constant (str, 15);
-+      str = input_line_pointer;
-+      op_mask |= (x << 4);
-+      }
-+      break;
-+    
-     case '?':
-       break;
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2009-09-02 02:24:21.000000000 -0500
-+++ gas/doc/c-avr.texi 2011-06-07 11:44:52.000000000 -0500
-@@ -80,6 +80,27 @@ atmega128rfa1, at90can128, at90usb1286, 
- Instruction set avr6 is for the enhanced AVR core with a 3-byte PC (MCU types:
- atmega2560, atmega2561).
-+Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program
-+memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16d4,
-+atxmega32d4).
-+
-+Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program
-+memory space and greater than 64K data space (MCU types: atxmega32a4).
-+
-+Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program
-+memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64d3).
-+
-+Instruction set avrxmega5 is for the XMEGA AVR core with up to 64K program 
-+memory space and greater than 64K data space (MCU types: atxmega64a1).
-+
-+Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
-+memory space and less than 64K data space (MCU types: atxmega128a3,
-+atxmega128d3, atxmega192a3, atxmega192d3, atxmega256a3, atxmega256a3b,
-+atxmega192d3).
-+
-+Instruction set avrxmega7 is for the XMEGA AVR core with up to 256K program
-+memory space and greater than 64K data space (MCU types: atxmega128a1).
-+
- @cindex @code{-mall-opcodes} command line option, AVR
- @item -mall-opcodes
- Accept all AVR opcodes, even if not supported by @code{-mmcu}.
-diff -Naurp include/elf/avr.h include/elf/avr.h
---- include/elf/avr.h  2008-08-09 00:35:13.000000000 -0500
-+++ include/elf/avr.h  2011-06-07 11:44:52.000000000 -0500
-@@ -40,6 +40,13 @@
- #define E_AVR_MACH_AVR5 5
- #define E_AVR_MACH_AVR51 51
- #define E_AVR_MACH_AVR6 6 
-+#define E_AVR_MACH_XMEGA1 101
-+#define E_AVR_MACH_XMEGA2 102
-+#define E_AVR_MACH_XMEGA3 103
-+#define E_AVR_MACH_XMEGA4 104
-+#define E_AVR_MACH_XMEGA5 105
-+#define E_AVR_MACH_XMEGA6 106
-+#define E_AVR_MACH_XMEGA7 107
- /* Relocations.  */
- START_RELOC_NUMBERS (elf_avr_reloc_type)
-diff -Naurp include/opcode/avr.h include/opcode/avr.h
---- include/opcode/avr.h       2008-08-09 00:35:13.000000000 -0500
-+++ include/opcode/avr.h       2011-06-07 11:44:52.000000000 -0500
-@@ -30,6 +30,8 @@
- #define AVR_ISA_BRK   0x0400 /* device has BREAK (on-chip debug) */
- #define AVR_ISA_EIND  0x0800 /* device has >128K program memory (none yet) */
- #define AVR_ISA_MOVW  0x1000 /* device has MOVW */
-+#define AVR_ISA_SPMX  0x2000 /* device has SPM Z[+] */
-+#define AVR_ISA_DES   0x4000 /* device has DES */
- #define AVR_ISA_TINY1 (AVR_ISA_1200 | AVR_ISA_LPM)
- #define AVR_ISA_2xxx  (AVR_ISA_TINY1 | AVR_ISA_SRAM)
-@@ -48,6 +50,8 @@
- #define AVR_ISA_94K   (AVR_ISA_M603 | AVR_ISA_MUL | AVR_ISA_MOVW | AVR_ISA_LPMX)
- #define AVR_ISA_M323  (AVR_ISA_M161 | AVR_ISA_BRK)
- #define AVR_ISA_M128  (AVR_ISA_M323 | AVR_ISA_ELPM | AVR_ISA_ELPMX)
-+#define AVR_ISA_M256  (AVR_ISA_M128 | AVR_ISA_EIND)
-+#define AVR_ISA_XMEGA (AVR_ISA_M256 | AVR_ISA_SPMX | AVR_ISA_DES)
- #define AVR_ISA_AVR1   AVR_ISA_TINY1
- #define AVR_ISA_AVR2   AVR_ISA_2xxx
-@@ -108,6 +112,7 @@
-    L - signed pc relative offset from -2048 to 2047
-    h - absolute code address (call, jmp)
-    S - immediate value from 0 to 7 (S = s << 4)
-+   E - immediate value from 0 to 15, shifted left by 4 (des)
-    ? - use this opcode entry if no parameters, else use next opcode entry
-    Order is important - some binary opcodes have more than one name,
-@@ -168,7 +173,8 @@ AVR_INSN (reti, "",    "1001010100011000
- AVR_INSN (sleep,"",    "1001010110001000", 1, AVR_ISA_1200, 0x9588)
- AVR_INSN (break,"",    "1001010110011000", 1, AVR_ISA_BRK,  0x9598)
- AVR_INSN (wdr,  "",    "1001010110101000", 1, AVR_ISA_1200, 0x95a8)
--AVR_INSN (spm,  "",    "1001010111101000", 1, AVR_ISA_SPM,  0x95e8)
-+AVR_INSN (spm,  "?",   "1001010111101000", 1, AVR_ISA_SPM,  0x95e8)
-+AVR_INSN (spm,  "z",   "10010101111+1000", 1, AVR_ISA_SPMX, 0x95e8)
- AVR_INSN (adc,  "r,r", "000111rdddddrrrr", 1, AVR_ISA_1200, 0x1c00)
- AVR_INSN (add,  "r,r", "000011rdddddrrrr", 1, AVR_ISA_1200, 0x0c00)
-@@ -282,3 +288,6 @@ AVR_INSN (st,   "e,r", "100!001rrrrree-+
- AVR_INSN (eicall, "",  "1001010100011001", 1, AVR_ISA_EIND, 0x9519)
- AVR_INSN (eijmp, "",   "1001010000011001", 1, AVR_ISA_EIND, 0x9419)
-+/* DES instruction for encryption and decryption */
-+AVR_INSN (des,  "E",   "10010100EEEE1011", 1, AVR_ISA_DES,  0x940B)
-+
-diff -Naurp ld/configure.tgt ld/configure.tgt
---- ld/configure.tgt   2009-08-06 12:38:03.000000000 -0500
-+++ ld/configure.tgt   2011-06-07 11:44:52.000000000 -0500
-@@ -110,7 +110,7 @@ xscale-*-coff)             targ_emul=armcoff ;;
- xscale-*-elf)         targ_emul=armelf
-                       ;;
- avr-*-*)              targ_emul=avr2
--                      targ_extra_emuls="avr1 avr25 avr3 avr31 avr35 avr4 avr5 avr51 avr6"
-+                      targ_extra_emuls="avr1 avr25 avr3 avr31 avr35 avr4 avr5 avr51 avr6 avrxmega1 avrxmega2 avrxmega3 avrxmega4 avrxmega5 avrxmega6 avrxmega7"
-                       ;;
- bfin-*-elf)           targ_emul=elf32bfin;
-                       targ_extra_emuls="elf32bfinfd"
-diff -Naurp ld/emulparams/avrxmega1.sh ld/emulparams/avrxmega1.sh
---- ld/emulparams/avrxmega1.sh 1969-12-31 18:00:00.000000000 -0600
-+++ ld/emulparams/avrxmega1.sh 2011-06-07 11:44:52.000000000 -0500
-@@ -0,0 +1,12 @@
-+ARCH=avr:101
-+MACHINE=
-+SCRIPT_NAME=avr
-+OUTPUT_FORMAT="elf32-avr"
-+MAXPAGESIZE=1
-+EMBEDDED=yes
-+TEMPLATE_NAME=elf32
-+
-+TEXT_LENGTH=1024K
-+DATA_ORIGIN=0x802000
-+DATA_LENGTH=0xffa0
-+EXTRA_EM_FILE=avrelf
-diff -Naurp ld/emulparams/avrxmega2.sh ld/emulparams/avrxmega2.sh
---- ld/emulparams/avrxmega2.sh 1969-12-31 18:00:00.000000000 -0600
-+++ ld/emulparams/avrxmega2.sh 2011-06-07 11:44:52.000000000 -0500
-@@ -0,0 +1,12 @@
-+ARCH=avr:102
-+MACHINE=
-+SCRIPT_NAME=avr
-+OUTPUT_FORMAT="elf32-avr"
-+MAXPAGESIZE=1
-+EMBEDDED=yes
-+TEMPLATE_NAME=elf32
-+
-+TEXT_LENGTH=1024K
-+DATA_ORIGIN=0x802000
-+DATA_LENGTH=0xffa0
-+EXTRA_EM_FILE=avrelf
-diff -Naurp ld/emulparams/avrxmega3.sh ld/emulparams/avrxmega3.sh
---- ld/emulparams/avrxmega3.sh 1969-12-31 18:00:00.000000000 -0600
-+++ ld/emulparams/avrxmega3.sh 2011-06-07 11:44:52.000000000 -0500
-@@ -0,0 +1,12 @@
-+ARCH=avr:103
-+MACHINE=
-+SCRIPT_NAME=avr
-+OUTPUT_FORMAT="elf32-avr"
-+MAXPAGESIZE=1
-+EMBEDDED=yes
-+TEMPLATE_NAME=elf32
-+
-+TEXT_LENGTH=1024K
-+DATA_ORIGIN=0x802000
-+DATA_LENGTH=0xffa0
-+EXTRA_EM_FILE=avrelf
-diff -Naurp ld/emulparams/avrxmega4.sh ld/emulparams/avrxmega4.sh
---- ld/emulparams/avrxmega4.sh 1969-12-31 18:00:00.000000000 -0600
-+++ ld/emulparams/avrxmega4.sh 2011-06-07 11:44:52.000000000 -0500
-@@ -0,0 +1,12 @@
-+ARCH=avr:104
-+MACHINE=
-+SCRIPT_NAME=avr
-+OUTPUT_FORMAT="elf32-avr"
-+MAXPAGESIZE=1
-+EMBEDDED=yes
-+TEMPLATE_NAME=elf32
-+
-+TEXT_LENGTH=1024K
-+DATA_ORIGIN=0x802000
-+DATA_LENGTH=0xffa0
-+EXTRA_EM_FILE=avrelf
-diff -Naurp ld/emulparams/avrxmega5.sh ld/emulparams/avrxmega5.sh
---- ld/emulparams/avrxmega5.sh 1969-12-31 18:00:00.000000000 -0600
-+++ ld/emulparams/avrxmega5.sh 2011-06-07 11:44:52.000000000 -0500
-@@ -0,0 +1,12 @@
-+ARCH=avr:105
-+MACHINE=
-+SCRIPT_NAME=avr
-+OUTPUT_FORMAT="elf32-avr"
-+MAXPAGESIZE=1
-+EMBEDDED=yes
-+TEMPLATE_NAME=elf32
-+
-+TEXT_LENGTH=1024K
-+DATA_ORIGIN=0x802000
-+DATA_LENGTH=0xffa0
-+EXTRA_EM_FILE=avrelf
-diff -Naurp ld/emulparams/avrxmega6.sh ld/emulparams/avrxmega6.sh
---- ld/emulparams/avrxmega6.sh 1969-12-31 18:00:00.000000000 -0600
-+++ ld/emulparams/avrxmega6.sh 2011-06-07 11:44:52.000000000 -0500
-@@ -0,0 +1,12 @@
-+ARCH=avr:106
-+MACHINE=
-+SCRIPT_NAME=avr
-+OUTPUT_FORMAT="elf32-avr"
-+MAXPAGESIZE=1
-+EMBEDDED=yes
-+TEMPLATE_NAME=elf32
-+
-+TEXT_LENGTH=1024K
-+DATA_ORIGIN=0x802000
-+DATA_LENGTH=0xffa0
-+EXTRA_EM_FILE=avrelf
-diff -Naurp ld/emulparams/avrxmega7.sh ld/emulparams/avrxmega7.sh
---- ld/emulparams/avrxmega7.sh 1969-12-31 18:00:00.000000000 -0600
-+++ ld/emulparams/avrxmega7.sh 2011-06-07 11:44:52.000000000 -0500
-@@ -0,0 +1,12 @@
-+ARCH=avr:107
-+MACHINE=
-+SCRIPT_NAME=avr
-+OUTPUT_FORMAT="elf32-avr"
-+MAXPAGESIZE=1
-+EMBEDDED=yes
-+TEMPLATE_NAME=elf32
-+
-+TEXT_LENGTH=1024K
-+DATA_ORIGIN=0x802000
-+DATA_LENGTH=0xffa0
-+EXTRA_EM_FILE=avrelf
-diff -Naurp ld/emultempl/avrelf.em ld/emultempl/avrelf.em
---- ld/emultempl/avrelf.em     2009-09-02 02:25:35.000000000 -0500
-+++ ld/emultempl/avrelf.em     2011-06-07 11:44:52.000000000 -0500
-@@ -71,8 +71,10 @@ avr_elf_${EMULATION_NAME}_before_allocat
-   gld${EMULATION_NAME}_before_allocation ();
--  /* We only need stubs for the avr6 family.  */
--  if (strcmp ("${EMULATION_NAME}","avr6"))
-+  /* We only need stubs for avr6, avrxmega6, and avrxmega7. */
-+  if (strcmp ("${EMULATION_NAME}","avr6") 
-+      && strcmp ("${EMULATION_NAME}","avrxmega6")
-+      && strcmp ("${EMULATION_NAME}","avrxmega7") )
-     avr_no_stubs = TRUE;
-   avr_elf_set_global_bfd_parameters ();
-diff -Naurp ld/Makefile.am ld/Makefile.am
---- ld/Makefile.am     2010-02-22 02:07:01.000000000 -0600
-+++ ld/Makefile.am     2011-06-07 11:44:52.000000000 -0500
-@@ -148,6 +148,13 @@ ALL_EMULATIONS = \
-       eavr5.o \
-       eavr51.o \
-       eavr6.o \
-+      eavrxmega1.o \
-+      eavrxmega2.o \
-+      eavrxmega3.o \
-+      eavrxmega4.o \
-+      eavrxmega5.o \
-+      eavrxmega6.o \
-+      eavrxmega7.o \
-       ecoff_i860.o \
-       ecoff_sparc.o \
-       eelf32_spu.o \
-@@ -727,6 +734,34 @@ eavr6.c: $(srcdir)/emulparams/avr6.sh $(
-   $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-   ${GEN_DEPENDS}
-       ${GENSCRIPTS} avr6 "$(tdir_avr2)"
-+eavrxmega1.c: $(srcdir)/emulparams/avrxmega1.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega1 "$(tdir_avr2)"
-+eavrxmega2.c: $(srcdir)/emulparams/avrxmega2.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega2 "$(tdir_avr2)"
-+eavrxmega3.c: $(srcdir)/emulparams/avrxmega3.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega3 "$(tdir_avr2)"
-+eavrxmega4.c: $(srcdir)/emulparams/avrxmega4.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega4 "$(tdir_avr2)"
-+eavrxmega5.c: $(srcdir)/emulparams/avrxmega5.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega5 "$(tdir_avr2)"
-+eavrxmega6.c: $(srcdir)/emulparams/avrxmega6.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega6 "$(tdir_avr2)"
-+eavrxmega7.c: $(srcdir)/emulparams/avrxmega7.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega7 "$(tdir_avr2)"
- ecoff_i860.c: $(srcdir)/emulparams/coff_i860.sh \
-   $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i860coff.sc ${GEN_DEPENDS}
-       ${GENSCRIPTS} coff_i860 "$(tdir_coff_i860)"
-diff -Naurp ld/Makefile.in ld/Makefile.in
---- ld/Makefile.in     2010-03-03 08:06:21.000000000 -0600
-+++ ld/Makefile.in     2011-06-07 11:44:52.000000000 -0500
-@@ -434,6 +434,13 @@ ALL_EMULATIONS = \
-       eavr5.o \
-       eavr51.o \
-       eavr6.o \
-+      eavrxmega1.o \
-+      eavrxmega2.o \
-+      eavrxmega3.o \
-+      eavrxmega4.o \
-+      eavrxmega5.o \
-+      eavrxmega6.o \
-+      eavrxmega7.o \
-       ecoff_i860.o \
-       ecoff_sparc.o \
-       eelf32_spu.o \
-@@ -2069,6 +2076,34 @@ eavr6.c: $(srcdir)/emulparams/avr6.sh $(
-   $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-   ${GEN_DEPENDS}
-       ${GENSCRIPTS} avr6 "$(tdir_avr2)"
-+eavrxmega1.c: $(srcdir)/emulparams/avrxmega1.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega1 "$(tdir_avr2)"
-+eavrxmega2.c: $(srcdir)/emulparams/avrxmega2.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega2 "$(tdir_avr2)"
-+eavrxmega3.c: $(srcdir)/emulparams/avrxmega3.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega3 "$(tdir_avr2)"
-+eavrxmega4.c: $(srcdir)/emulparams/avrxmega4.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega4 "$(tdir_avr2)"
-+eavrxmega5.c: $(srcdir)/emulparams/avrxmega5.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega5 "$(tdir_avr2)"
-+eavrxmega6.c: $(srcdir)/emulparams/avrxmega6.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega6 "$(tdir_avr2)"
-+eavrxmega7.c: $(srcdir)/emulparams/avrxmega7.sh \
-+  $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
-+  ${GEN_DEPENDS}
-+      ${GENSCRIPTS} avrxmega7 "$(tdir_avr2)"
- ecoff_i860.c: $(srcdir)/emulparams/coff_i860.sh \
-   $(srcdir)/emultempl/generic.em $(srcdir)/scripttempl/i860coff.sc ${GEN_DEPENDS}
-       ${GENSCRIPTS} coff_i860 "$(tdir_coff_i860)"
-diff -Naurp opcodes/avr-dis.c opcodes/avr-dis.c
---- opcodes/avr-dis.c  2008-11-06 06:03:24.000000000 -0600
-+++ opcodes/avr-dis.c  2011-06-07 11:44:52.000000000 -0500
-@@ -50,7 +50,7 @@ static const char * comment_start = "0x"
- static int
- avr_operand (unsigned int insn, unsigned int insn2, unsigned int pc, int constraint,
--             char *buf, char *comment, int regs, int *sym, bfd_vma *sym_addr)
-+             char *opcode_str, char *buf, char *comment, int regs, int *sym, bfd_vma *sym_addr)
- {
-   int ok = 1;
-   *sym = 0;
-@@ -118,8 +118,18 @@ avr_operand (unsigned int insn, unsigned
-     case 'z':
-       *buf++ = 'Z';
--      if (insn & 0x1)
-+
-+      /* Check for post-increment. */
-+      char *s;
-+      for (s = opcode_str; *s; ++s)
-+        {
-+          if (*s == '+')
-+            {
-       *buf++ = '+';
-+              break;
-+            }
-+        }
-+
-       *buf = '\0';
-       if (AVR_UNDEF_P (insn))
-       sprintf (comment, _("undefined"));
-@@ -227,6 +237,10 @@ avr_operand (unsigned int insn, unsigned
-       }
-       break;
-       
-+    case 'E':
-+      sprintf (buf, "%d", (insn >> 4) & 15);
-+      break;
-+      
-     case '?':
-       *buf = '\0';
-       break;
-@@ -331,7 +345,8 @@ print_insn_avr (bfd_vma addr, disassembl
-   if (opcode->name)
-     {
--      char *op = opcode->constraints;
-+      char *constraints = opcode->constraints;
-+      char *opcode_str = opcode->opcode;
-       insn2 = 0;
-       ok = 1;
-@@ -342,14 +357,14 @@ print_insn_avr (bfd_vma addr, disassembl
-         cmd_len = 4;
-       }
--      if (*op && *op != '?')
-+      if (*constraints && *constraints != '?')
-       {
--        int regs = REGISTER_P (*op);
-+        int regs = REGISTER_P (*constraints);
--        ok = avr_operand (insn, insn2, addr, *op, op1, comment1, 0, &sym_op1, &sym_addr1);
-+        ok = avr_operand (insn, insn2, addr, *constraints, opcode_str, op1, comment1, 0, &sym_op1, &sym_addr1);
--        if (ok && *(++op) == ',')
--          ok = avr_operand (insn, insn2, addr, *(++op), op2,
-+        if (ok && *(++constraints) == ',')
-+          ok = avr_operand (insn, insn2, addr, *(++constraints), opcode_str, op2,
-                             *comment1 ? comment2 : comment1, regs, &sym_op2, &sym_addr2);
-       }
-     }
diff --git a/400-binutils-xmega.patch b/400-binutils-xmega.patch
new file mode 100644 (file)
index 0000000..8f72370
--- /dev/null
@@ -0,0 +1,90 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2011-12-16 12:43:06.000000000 +0530
++++ binutils/size.c    2011-12-16 12:43:50.000000000 +0530
+@@ -121,6 +121,7 @@ avr_device_t avr[] =
+ {
+       {"atxmega256a3",  AVR264K, AVR16K, AVR4K},
+       {"atxmega256a3b", AVR264K, AVR16K, AVR4K},
++      {"atxmega256a3bu",AVR264K, AVR16K, AVR4K},
+       {"atxmega256d3",  AVR264K, AVR16K, AVR4K},
+       {"atmega2560",    AVR256K, AVR8K,  AVR4K},
+@@ -132,6 +133,7 @@ avr_device_t avr[] =
+       {"atxmega128a1",  AVR136K, AVR8K,  AVR2K},
+       {"atxmega128a1u", AVR136K, AVR8K,  AVR2K},
+       {"atxmega128a3",  AVR136K, AVR8K,  AVR2K},
++      {"atxmega128b1",  AVR136K, AVR8K,  AVR2K},
+       {"atxmega128d3",  AVR136K, AVR8K,  AVR2K},
+       {"at43usb320",    AVR128K, 608UL,  0UL},
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2011-12-16 12:43:06.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 12:43:50.000000000 +0530
+@@ -453,6 +453,7 @@ md_show_usage (FILE *stream)
+       "                   avr5  - enhanced AVR core with up to 64K program memory\n"
+       "                   avr51 - enhanced AVR core with up to 128K program memory\n"
+       "                   avr6  - enhanced AVR core with up to 256K program memory\n"
++      "                   avrxmega2 - XMEGA, > 8K, < 64K FLASH, < 64K RAM\n"
+       "                   avrxmega3 - XMEGA, > 8K, <= 64K FLASH, > 64K RAM\n"
+       "                   avrxmega4 - XMEGA, > 64K, <= 128K FLASH, <= 64K RAM\n"
+       "                   avrxmega5 - XMEGA, > 64K, <= 128K FLASH, > 64K RAM\n"
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2011-03-24 22:33:03.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 12:43:50.000000000 +0530
+@@ -103,7 +103,7 @@ atxmega64a1u).
+ Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
+ memory space and less than 64K data space (MCU types: atxmega128a3,
+ atxmega128d3, atxmega192a3, atxmega128b1, atxmega192d3, atxmega256a3, 
+-atxmega256a3b, atxmega256a3bu, atxmega192d3).
++atxmega256a3b, atxmega256a3bu).
+ Instruction set avrxmega7 is for the XMEGA AVR core with up to 256K program
+ memory space and greater than 64K data space (MCU types: atxmega128a1,
+diff -Naurp ld/Makefile.am ld/Makefile.am
+--- ld/Makefile.am     2011-07-23 01:52:37.000000000 +0530
++++ ld/Makefile.am     2011-12-16 12:43:50.000000000 +0530
+@@ -163,13 +163,13 @@ ALL_EMULATION_SOURCES = \
+       eavr5.c \
+       eavr51.c \
+       eavr6.c \
+-      eavrxmega1.o \
+-      eavrxmega2.o \
+-      eavrxmega3.o \
+-      eavrxmega4.o \
+-      eavrxmega5.o \
+-      eavrxmega6.o \
+-      eavrxmega7.o \
++      eavrxmega1.c \
++      eavrxmega2.c \
++      eavrxmega3.c \
++      eavrxmega4.c \
++      eavrxmega5.c \
++      eavrxmega6.c \
++      eavrxmega7.c \
+       ecoff_i860.c \
+       ecoff_sparc.c \
+       ecrisaout.c \
+diff -Naurp ld/Makefile.in ld/Makefile.in
+--- ld/Makefile.in     2011-07-23 01:52:37.000000000 +0530
++++ ld/Makefile.in     2011-12-16 12:43:50.000000000 +0530
+@@ -469,13 +469,13 @@ ALL_EMULATION_SOURCES = \
+       eavr5.c \
+       eavr51.c \
+       eavr6.c \
+-      eavrxmega1.o \
+-      eavrxmega2.o \
+-      eavrxmega3.o \
+-      eavrxmega4.o \
+-      eavrxmega5.o \
+-      eavrxmega6.o \
+-      eavrxmega7.o \
++      eavrxmega1.c \
++      eavrxmega2.c \
++      eavrxmega3.c \
++      eavrxmega4.c \
++      eavrxmega5.c \
++      eavrxmega6.c \
++      eavrxmega7.c \
+       ecoff_i860.c \
+       ecoff_sparc.c \
+       ecrisaout.c \
diff --git a/401-binutils-2.20.1-new-devices.patch b/401-binutils-2.20.1-new-devices.patch
deleted file mode 100644 (file)
index 34f3a7b..0000000
+++ /dev/null
@@ -1,229 +0,0 @@
-attiny461a
-atmega48a
-atmega88a
-atmega88pa
-atmega16a
-atmega164a
-atmega165a
-atmega168a
-atmega169a
-atmega169pa
-atmega324a
-atmega324pa
-atmega328
-atmega329pa
-atmega644a
-atmega645a
-atmega645p
-atmega649p
-atmega649a
-atmega6450a
-atmega6450p
-atmega6490a
-atmega6490p
-atmega64hve
-atmega16hva2
-attiny84a
-atmega325a
-atmega3250a
-atmega329a
-atmega3290a
-m3000
-Remove: m3000f, m3000s, m3001b, atmega16c1, atmega4hvd, atmega8hvd, atmega8m1,
-atmega8c1, attiny327
-===========================================================
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-01-12 14:20:58.000000000 -0600
-+++ gas/config/tc-avr.c        2011-01-12 14:24:17.000000000 -0600
-@@ -115,12 +115,14 @@ static struct mcu_type_s mcu_types[] =
-   {"attiny44",   AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny44a",  AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny84",   AVR_ISA_AVR25,   bfd_mach_avr25},
-+  {"attiny84a",  AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny25",   AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny45",   AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny85",   AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny261",  AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny261a", AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny461",  AVR_ISA_AVR25,   bfd_mach_avr25},
-+  {"attiny461a", AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny861",  AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny861a", AVR_ISA_AVR25,   bfd_mach_avr25},
-   {"attiny87",   AVR_ISA_AVR25,   bfd_mach_avr25},
-@@ -134,7 +136,6 @@ static struct mcu_type_s mcu_types[] =
-   {"atmega103",  AVR_ISA_AVR31,   bfd_mach_avr31},
-   {"at43usb320", AVR_ISA_AVR31,   bfd_mach_avr31},
-   {"attiny167",  AVR_ISA_AVR35,   bfd_mach_avr35},
--  {"attiny327",  AVR_ISA_AVR35,   bfd_mach_avr35},
-   {"at90usb82",  AVR_ISA_AVR35,   bfd_mach_avr35},
-   {"at90usb162", AVR_ISA_AVR35,   bfd_mach_avr35},
-   {"atmega8u2",  AVR_ISA_AVR35,   bfd_mach_avr35},
-@@ -142,16 +143,15 @@ static struct mcu_type_s mcu_types[] =
-   {"atmega32u2", AVR_ISA_AVR35,   bfd_mach_avr35},
-   {"atmega8",    AVR_ISA_M8,      bfd_mach_avr4},
-   {"atmega48",   AVR_ISA_AVR4,    bfd_mach_avr4},
-+  {"atmega48a",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega48p",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega88",   AVR_ISA_AVR4,    bfd_mach_avr4},
-+  {"atmega88a",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega88p",  AVR_ISA_AVR4,    bfd_mach_avr4},
-+  {"atmega88pa", AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega8515", AVR_ISA_M8,      bfd_mach_avr4},
-   {"atmega8535", AVR_ISA_M8,      bfd_mach_avr4},
-   {"atmega8hva", AVR_ISA_AVR4,    bfd_mach_avr4},
--  {"atmega4hvd", AVR_ISA_AVR4,    bfd_mach_avr4},
--  {"atmega8hvd", AVR_ISA_AVR4,    bfd_mach_avr4},
--  {"atmega8c1",  AVR_ISA_AVR4,    bfd_mach_avr4},
--  {"atmega8m1",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"at90pwm1",   AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"at90pwm2",   AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"at90pwm2b",  AVR_ISA_AVR4,    bfd_mach_avr4},
-@@ -159,40 +159,64 @@ static struct mcu_type_s mcu_types[] =
-   {"at90pwm3b",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"at90pwm81",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega16",   AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega16a",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega161",  AVR_ISA_M161,    bfd_mach_avr5},
-   {"atmega162",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega163",  AVR_ISA_M161,    bfd_mach_avr5},
-+  {"atmega164a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega164p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega165",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega165a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega165p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega168",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega168a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega168p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega169",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega169a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega169p", AVR_ISA_AVR5,    bfd_mach_avr5},
--  {"atmega16c1", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega169pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega32",   AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega323",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega324a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega324p", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega324pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega325",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega325a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega325p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3250", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega3250a",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3250p",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega328",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega328p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega329",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega329a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega329p", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega329pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3290", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega3290a",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3290p",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega406",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega64",   AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega640",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega644",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega644a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega644p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega644pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega645",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega645a", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega645p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega649",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega649p", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega649a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega6450", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega6450a",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega6450p",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega6490", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega6490a",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega6490p",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega64hve",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega16hva",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega16hva2",AVR_ISA_AVR5,   bfd_mach_avr5},
-   {"atmega16hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega32hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at90can32" , AVR_ISA_AVR5,    bfd_mach_avr5},
-@@ -211,6 +235,7 @@ static struct mcu_type_s mcu_types[] =
-   {"at90usb647", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at90scr100", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at94k",      AVR_ISA_94K,     bfd_mach_avr5},
-+  {"m3000",      AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega128",  AVR_ISA_AVR51,   bfd_mach_avr51},
-   {"atmega1280", AVR_ISA_AVR51,   bfd_mach_avr51},
-   {"atmega1281", AVR_ISA_AVR51,   bfd_mach_avr51},
-@@ -219,9 +244,6 @@ static struct mcu_type_s mcu_types[] =
-   {"at90can128", AVR_ISA_AVR51,   bfd_mach_avr51},
-   {"at90usb1286",AVR_ISA_AVR51,   bfd_mach_avr51},
-   {"at90usb1287",AVR_ISA_AVR51,   bfd_mach_avr51},
--  {"m3000f",     AVR_ISA_AVR51,   bfd_mach_avr51},
--  {"m3000s",     AVR_ISA_AVR51,   bfd_mach_avr51},
--  {"m3001b",     AVR_ISA_AVR51,   bfd_mach_avr51},
-   {"atmega2560", AVR_ISA_AVR6,    bfd_mach_avr6},
-   {"atmega2561", AVR_ISA_AVR6,    bfd_mach_avr6},
-   {"atxmega16a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-01-12 14:20:58.000000000 -0600
-+++ gas/doc/c-avr.texi 2011-01-12 14:22:42.000000000 -0600
-@@ -43,9 +43,10 @@ at90s8535).
- Instruction set avr25 is for the classic AVR core with up to 8K program memory
- space plus the MOVW instruction (MCU types: attiny13, attiny13a, attiny2313,
--attiny2313a, attiny24, attiny24a, attiny4313, attiny44, attiny44a, attiny84,
--attiny25, attiny45, attiny85, attiny261, attiny261a, attiny461, attiny861,
--attiny861a, attiny87, attiny43u, attiny48, attiny88, at86rf401, ata6289).
-+attiny2313a, attiny24, attiny24a, attiny4313, attiny43u, attiny44, attiny44a, 
-+attiny84, attiny84a, attiny25, attiny45, attiny85, attiny261, attiny261a,
-+attiny461, attiny461a, attiny861, attiny861a, attiny87, attiny43u, attiny48,
-+attiny88, at86rf401, ata6289).
- Instruction set avr3 is for the classic AVR core with up to 128K program
- memory space (MCU types: at43usb355, at76c711).
-@@ -54,28 +55,33 @@ Instruction set avr31 is for the classic
- memory space (MCU types: atmega103, at43usb320).
- Instruction set avr35 is for classic AVR core plus MOVW, CALL, and JMP
--instructions (MCU types: attiny167, attiny327, at90usb82, at90usb162, atmega8u2,
-+instructions (MCU types: attiny167, at90usb82, at90usb162, atmega8u2,
- atmega16u2, atmega32u2).
- Instruction set avr4 is for the enhanced AVR core with up to 8K program
--memory space (MCU types: atmega48, atmega48p,atmega8, atmega88, atmega88p,
--atmega8515, atmega8535, atmega8hva, atmega4hvd, atmega8hvd, at90pwm1,
--at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81, atmega8m1, atmega8c1).
-+memory space (MCU types: atmega48, atmega48a, atmega48p,atmega8, atmega88, 
-+atmega88a, atmega88p, atmega88pa, atmega8515, atmega8535, atmega8hva, 
-+at90pwm1,at90pwm2, at90pwm2b, at90pwm3, at90pwm3b,
-+at90pwm81).
- Instruction set avr5 is for the enhanced AVR core with up to 128K program
--memory space (MCU types: atmega16, atmega161, atmega162, atmega163, atmega164p,
--atmega165, atmega165p, atmega168, atmega168p, atmega169, atmega169p, atmega16c1,
--atmega32, atmega323, atmega324p, atmega325, atmega325p, atmega3250, atmega3250p,
--atmega328p, atmega329, atmega329p, atmega3290, atmega3290p, atmega406, atmega64,
--atmega640, atmega644, atmega644p, atmega644pa, atmega645, atmega6450, atmega649,
--atmega6490, atmega16hva, atmega16hvb, atmega32hvb, at90can32, at90can64,
--at90pwm216, at90pwm316, atmega32c1, atmega64c1, atmega16m1, atmega32m1,
--atmega64m1, atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647, at94k,
--at90scr100).
-+memory space (MCU types: atmega16, atmega16a, atmega161, atmega162, atmega163,
-+atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
-+atmega168a, atmega168p, atmega169, atmega169p, atmega169pa,
-+atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a,
-+atmega325p, atmega3250, atmega3250a, atmega3250p, atmega328, atmega328p,
-+atmega329, atmega329a, atmega329p, atmega329pa, atmega3290, atmega3290a,
-+atmega3290p, atmega406, atmega64, atmega640, atmega644, atmega644a, atmega644p,
-+atmega644pa, atmega645, atmega645a, atmega645p, atmega6450, atmega6450a,
-+atmega6450p, atmega649, atmega649a, atmega649p, atmega6490, atmega6490a,
-+atmega6490p, atmega64hve, atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb,
-+at90can32, at90can64, at90pwm216, at90pwm316, atmega16u4, atmega32c1,
-+atmega64c1, atmega64m1, atmega16m1, atmega32m1, atmega64m1, atmega16u4,
-+atmega32u4, atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
- Instruction set avr51 is for the enhanced AVR core with exactly 128K program
- memory space (MCU types: atmega128, atmega1280, atmega1281, atmega1284p,
--atmega128rfa1, at90can128, at90usb1286, at90usb1287, m3000f, m3000s, m3001b).
-+atmega128rfa1, at90can128, at90usb1286, at90usb1287, m3000).
- Instruction set avr6 is for the enhanced AVR core with a 3-byte PC (MCU types:
- atmega2560, atmega2561).
similarity index 73%
rename from 402-binutils-2.20.1-avrtiny10.patch
rename to 401-binutils-avrtiny10.patch
index d51aeb5c013123c9e7841f6a637ee99c1f37dc43..472e4aed8a33839e835819d040e40c9bcaa2e44d 100644 (file)
@@ -1,7 +1,7 @@
 diff -Naurp bfd/archures.c bfd/archures.c
---- bfd/archures.c     2011-06-07 11:55:03.000000000 -0500
-+++ bfd/archures.c     2011-06-07 11:56:48.000000000 -0500
-@@ -375,6 +375,7 @@ DESCRIPTION
+--- bfd/archures.c     2011-08-02 04:34:19.000000000 +0530
++++ bfd/archures.c     2011-12-22 12:00:37.000000000 +0530
+@@ -388,6 +388,7 @@ DESCRIPTION
  .#define bfd_mach_avrxmega5 105
  .#define bfd_mach_avrxmega6 106
  .#define bfd_mach_avrxmega7 107
@@ -10,9 +10,9 @@ diff -Naurp bfd/archures.c bfd/archures.c
  .#define bfd_mach_bfin          1
  .  bfd_arch_cr16,       {* National Semiconductor CompactRISC (ie CR16). *}
 diff -Naurp bfd/bfd-in2.h bfd/bfd-in2.h
---- bfd/bfd-in2.h      2011-06-07 11:55:03.000000000 -0500
-+++ bfd/bfd-in2.h      2011-06-07 11:56:48.000000000 -0500
-@@ -2049,6 +2049,7 @@ enum bfd_architecture
+--- bfd/bfd-in2.h      2011-09-16 06:45:18.000000000 +0530
++++ bfd/bfd-in2.h      2011-12-22 12:00:37.000000000 +0530
+@@ -2095,6 +2095,7 @@ enum bfd_architecture
  #define bfd_mach_avrxmega5 105
  #define bfd_mach_avrxmega6 106
  #define bfd_mach_avrxmega7 107
@@ -21,8 +21,8 @@ diff -Naurp bfd/bfd-in2.h bfd/bfd-in2.h
  #define bfd_mach_bfin          1
    bfd_arch_cr16,       /* National Semiconductor CompactRISC (ie CR16). */
 diff -Naurp bfd/cpu-avr.c bfd/cpu-avr.c
---- bfd/cpu-avr.c      2011-06-07 11:55:03.000000000 -0500
-+++ bfd/cpu-avr.c      2011-06-07 11:56:48.000000000 -0500
+--- bfd/cpu-avr.c      2011-03-22 23:40:42.000000000 +0530
++++ bfd/cpu-avr.c      2011-12-22 12:00:37.000000000 +0530
 @@ -154,7 +154,10 @@ static const bfd_arch_info_type arch_inf
    N (24, bfd_mach_avrxmega6, "avr:106", FALSE, & arch_info_struct[16]),
    
@@ -36,9 +36,9 @@ diff -Naurp bfd/cpu-avr.c bfd/cpu-avr.c
  };
  
 diff -Naurp bfd/elf32-avr.c bfd/elf32-avr.c
---- bfd/elf32-avr.c    2011-06-07 11:55:03.000000000 -0500
-+++ bfd/elf32-avr.c    2011-06-07 11:56:48.000000000 -0500
-@@ -1356,6 +1356,10 @@ bfd_elf_avr_final_write_processing (bfd 
+--- bfd/elf32-avr.c    2011-06-02 19:13:14.000000000 +0530
++++ bfd/elf32-avr.c    2011-12-22 12:00:37.000000000 +0530
+@@ -1326,6 +1326,10 @@ bfd_elf_avr_final_write_processing (bfd 
      case bfd_mach_avrxmega7:
        val = E_AVR_MACH_XMEGA7;
        break;
@@ -49,7 +49,7 @@ diff -Naurp bfd/elf32-avr.c bfd/elf32-avr.c
      }
  
    elf_elfheader (abfd)->e_machine = EM_AVR;
-@@ -1446,6 +1450,10 @@ elf32_avr_object_p (bfd *abfd)
+@@ -1416,6 +1420,10 @@ elf32_avr_object_p (bfd *abfd)
        case E_AVR_MACH_XMEGA7:
          e_set = bfd_mach_avrxmega7;
          break;
@@ -61,9 +61,9 @@ diff -Naurp bfd/elf32-avr.c bfd/elf32-avr.c
      }
    return bfd_default_set_arch_mach (abfd, bfd_arch_avr,
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-06-07 11:56:25.000000000 -0500
-+++ gas/config/tc-avr.c        2011-06-07 11:56:48.000000000 -0500
-@@ -88,6 +88,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:02:01.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:00:37.000000000 +0530
+@@ -90,6 +90,7 @@ static struct mcu_type_s mcu_types[] =
    {"avrxmega5",  AVR_ISA_XMEGA,   bfd_mach_avrxmega5},
    {"avrxmega6",  AVR_ISA_XMEGA,   bfd_mach_avrxmega6},
    {"avrxmega7",  AVR_ISA_XMEGA,   bfd_mach_avrxmega7},
@@ -71,10 +71,10 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"at90s1200",  AVR_ISA_1200,    bfd_mach_avr1},
    {"attiny11",   AVR_ISA_AVR1,    bfd_mach_avr1},
    {"attiny12",   AVR_ISA_AVR1,    bfd_mach_avr1},
-@@ -261,6 +262,12 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+@@ -275,6 +276,12 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
+   {"atxmega128a1u", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
 +  {"attiny4",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
 +  {"attiny5",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
 +  {"attiny9",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
@@ -84,15 +84,15 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {NULL, 0, 0}
  };
  
-@@ -443,6 +450,7 @@ md_show_usage (FILE *stream)
+@@ -459,6 +466,7 @@ md_show_usage (FILE *stream)
        "                   avrxmega5 - XMEGA, > 64K, <= 128K FLASH, > 64K RAM\n"
        "                   avrxmega6 - XMEGA, > 128K, <= 256K FLASH, <= 64K RAM\n"
        "                   avrxmega7 - XMEGA, > 128K, <= 256K FLASH, > 64K RAM\n"
 +      "                   avrtiny10 - tiny devices with 16 gp registers\n"
        "                   or immediate microcontroller name.\n"));
    fprintf (stream,
-       _("  -mall-opcodes    accept all AVR opcodes, even if not supported by MCU\n"
-@@ -790,6 +798,17 @@ avr_operand (struct avr_opcodes_s *opcod
+       _("  -mlist-devices   list all supported devices\n"
+@@ -809,6 +817,17 @@ avr_operand (struct avr_opcodes_s *opcod
          op_mask = avr_get_constant (str, 31);
          str = input_line_pointer;
        }
@@ -111,8 +111,8 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
        if (op_mask <= 31)
        {
 diff -Naurp include/elf/avr.h include/elf/avr.h
---- include/elf/avr.h  2011-06-07 11:55:03.000000000 -0500
-+++ include/elf/avr.h  2011-06-07 11:56:48.000000000 -0500
+--- include/elf/avr.h  2011-03-22 23:40:44.000000000 +0530
++++ include/elf/avr.h  2011-12-22 12:00:37.000000000 +0530
 @@ -47,6 +47,7 @@
  #define E_AVR_MACH_XMEGA5 105
  #define E_AVR_MACH_XMEGA6 106
@@ -122,18 +122,18 @@ diff -Naurp include/elf/avr.h include/elf/avr.h
  /* Relocations.  */
  START_RELOC_NUMBERS (elf_avr_reloc_type)
 diff -Naurp include/opcode/avr.h include/opcode/avr.h
---- include/opcode/avr.h       2011-06-07 11:55:03.000000000 -0500
-+++ include/opcode/avr.h       2011-06-07 11:56:48.000000000 -0500
-@@ -69,7 +69,7 @@
+--- include/opcode/avr.h       2011-12-22 11:59:33.000000000 +0530
++++ include/opcode/avr.h       2011-12-22 12:00:37.000000000 +0530
+@@ -72,6 +72,8 @@
                          AVR_ISA_ELPM | AVR_ISA_ELPMX | AVR_ISA_SPM | \
-                         AVR_ISA_SPM | AVR_ISA_BRK | AVR_ISA_EIND | \
-                         AVR_ISA_MOVW)
--
+                         AVR_ISA_BRK | AVR_ISA_EIND | AVR_ISA_MOVW)
 +#define AVR_ISA_AVRTINY10 (AVR_ISA_1200 | AVR_ISA_BRK | AVR_ISA_SRAM)
++
  #define REGISTER_P(x) ((x) == 'r'             \
                       || (x) == 'd'            \
                       || (x) == 'w'            \
-@@ -159,8 +159,8 @@ AVR_INSN (sez,  "",    "1001010000011000
+@@ -161,8 +163,8 @@ AVR_INSN (sez,  "",    "1001010000011000
  AVR_INSN (bclr, "S",   "100101001SSS1000", 1, AVR_ISA_1200, 0x9488)
  AVR_INSN (bset, "S",   "100101000SSS1000", 1, AVR_ISA_1200, 0x9408)
  
@@ -144,7 +144,7 @@ diff -Naurp include/opcode/avr.h include/opcode/avr.h
  
  AVR_INSN (lpm,  "?",   "1001010111001000", 1, AVR_ISA_TINY1,0x95c8)
  AVR_INSN (lpm,  "r,z", "1001000ddddd010+", 1, AVR_ISA_LPMX, 0x9004)
-@@ -260,8 +260,8 @@ AVR_INSN (dec,  "r",   "1001010rrrrr1010
+@@ -262,8 +264,8 @@ AVR_INSN (dec,  "r",   "1001010rrrrr1010
  AVR_INSN (inc,  "r",   "1001010rrrrr0011", 1, AVR_ISA_1200, 0x9403)
  AVR_INSN (lsr,  "r",   "1001010rrrrr0110", 1, AVR_ISA_1200, 0x9406)
  AVR_INSN (neg,  "r",   "1001010rrrrr0001", 1, AVR_ISA_1200, 0x9401)
@@ -155,7 +155,7 @@ diff -Naurp include/opcode/avr.h include/opcode/avr.h
  AVR_INSN (ror,  "r",   "1001010rrrrr0111", 1, AVR_ISA_1200, 0x9407)
  AVR_INSN (swap, "r",   "1001010rrrrr0010", 1, AVR_ISA_1200, 0x9402)
  
-@@ -273,8 +273,8 @@ AVR_INSN (fmul, "a,a", "000000110ddd1rrr
+@@ -275,8 +277,8 @@ AVR_INSN (fmul, "a,a", "000000110ddd1rrr
  AVR_INSN (fmuls,"a,a", "000000111ddd0rrr", 1, AVR_ISA_MUL,  0x0380)
  AVR_INSN (fmulsu,"a,a","000000111ddd1rrr", 1, AVR_ISA_MUL,  0x0388)
  
@@ -164,14 +164,14 @@ diff -Naurp include/opcode/avr.h include/opcode/avr.h
 +AVR_INSN (sts,  "i,r", "1001001ddddd0000", 2, AVR_ISA_SRAM, 0x9200)
 +AVR_INSN (lds,  "r,i", "1001000ddddd0000", 2, AVR_ISA_SRAM, 0x9000)
  
-    /* Special case for b+0, `e' must be next entry after `b',
-       b={Y=1,Z=0}, ee={X=11,Y=10,Z=00}, !=1 if -e or e+ or X.  */
+ AVR_INSN (xch,  "z,r", "1001001rrrrr0100", 1, AVR_ISA_XMEGAU, 0x9204)
+ AVR_INSN (las,  "z,r", "1001001rrrrr0101", 1, AVR_ISA_XMEGAU, 0x9205)
 diff -Naurp ld/configure.tgt ld/configure.tgt
---- ld/configure.tgt   2011-06-07 11:55:03.000000000 -0500
-+++ ld/configure.tgt   2011-06-07 11:56:48.000000000 -0500
-@@ -110,7 +110,7 @@ xscale-*-coff)             targ_emul=armcoff ;;
- xscale-*-elf)         targ_emul=armelf
                      ;;
+--- ld/configure.tgt   2011-11-21 14:59:37.000000000 +0530
++++ ld/configure.tgt   2011-12-22 12:00:37.000000000 +0530
+@@ -98,7 +98,7 @@ arm*-*-uclinux*)     targ_emul=armelf_linux
+ arm-*-vxworks)                targ_emul=armelf_vxworks ;;
arm*-*-conix*)                targ_emul=armelf ;;
  avr-*-*)              targ_emul=avr2
 -                      targ_extra_emuls="avr1 avr25 avr3 avr31 avr35 avr4 avr5 avr51 avr6 avrxmega1 avrxmega2 avrxmega3 avrxmega4 avrxmega5 avrxmega6 avrxmega7"
 +                      targ_extra_emuls="avr1 avr25 avr3 avr31 avr35 avr4 avr5 avr51 avr6 avrxmega1 avrxmega2 avrxmega3 avrxmega4 avrxmega5 avrxmega6 avrxmega7 avrtiny10"
@@ -179,8 +179,8 @@ diff -Naurp ld/configure.tgt ld/configure.tgt
  bfin-*-elf)           targ_emul=elf32bfin;
                        targ_extra_emuls="elf32bfinfd"
 diff -Naurp ld/emulparams/avrtiny10.sh ld/emulparams/avrtiny10.sh
---- ld/emulparams/avrtiny10.sh 1969-12-31 18:00:00.000000000 -0600
-+++ ld/emulparams/avrtiny10.sh 2011-06-07 11:56:48.000000000 -0500
+--- ld/emulparams/avrtiny10.sh 1970-01-01 05:30:00.000000000 +0530
++++ ld/emulparams/avrtiny10.sh 2011-12-22 12:00:37.000000000 +0530
 @@ -0,0 +1,12 @@
 +ARCH=avr:201
 +MACHINE=
@@ -195,17 +195,17 @@ diff -Naurp ld/emulparams/avrtiny10.sh ld/emulparams/avrtiny10.sh
 +DATA_LENGTH=0x140
 +EXTRA_EM_FILE=avrelf
 diff -Naurp ld/Makefile.am ld/Makefile.am
---- ld/Makefile.am     2011-06-07 11:55:03.000000000 -0500
-+++ ld/Makefile.am     2011-06-07 11:56:48.000000000 -0500
-@@ -155,6 +155,7 @@ ALL_EMULATIONS = \
-       eavrxmega5.o \
-       eavrxmega6.o \
-       eavrxmega7.o \
-+      eavrtiny10.o \
-       ecoff_i860.o \
-       ecoff_sparc.o \
-       eelf32_spu.o \
-@@ -762,6 +763,10 @@ eavrxmega7.c: $(srcdir)/emulparams/avrxm
+--- ld/Makefile.am     2011-12-22 12:02:01.000000000 +0530
++++ ld/Makefile.am     2011-12-22 12:00:37.000000000 +0530
+@@ -170,6 +170,7 @@ ALL_EMULATION_SOURCES = \
+       eavrxmega5.c \
+       eavrxmega6.c \
+       eavrxmega7.c \
++      eavrtiny10.c \
+       ecoff_i860.c \
+       ecoff_sparc.c \
+       ecrisaout.c \
+@@ -818,6 +819,10 @@ eavrxmega7.c: $(srcdir)/emulparams/avrxm
    $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
    ${GEN_DEPENDS}
        ${GENSCRIPTS} avrxmega7 "$(tdir_avr2)"
similarity index 69%
rename from 407-binutils-2.20.1-at90pwm161.patch
rename to 402-binutils-at90pwm161.patch
index 2acfbfa555f14515d62f0e9feb0ccbc3c3c85eb1..fce9da23dcd1ccc19bf398cc9a4e81634ffe040e 100644 (file)
@@ -1,7 +1,7 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:47:17.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:47:30.000000000 +0300
-@@ -221,6 +221,7 @@ avr_device_t avr[] =
+--- binutils/size.c    2011-12-16 12:46:47.000000000 +0530
++++ binutils/size.c    2011-12-16 15:05:18.000000000 +0530
+@@ -220,6 +220,7 @@ avr_device_t avr[] =
        {"atxmega16d4",   AVR20K,  AVR2K,  AVR1K},
  
        {"at76c711",      AVR16K,  AVR2K,  0UL},
@@ -10,9 +10,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"at90pwm316",    AVR16K,  AVR1K,  AVR512},
        {"at90usb162",    AVR16K,  AVR512, AVR512},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:47:17.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:47:30.000000000 +0300
-@@ -159,6 +159,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-16 12:46:54.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 15:05:18.000000000 +0530
+@@ -161,6 +161,7 @@ static struct mcu_type_s mcu_types[] =
    {"at90pwm3",   AVR_ISA_AVR4,    bfd_mach_avr4},
    {"at90pwm3b",  AVR_ISA_AVR4,    bfd_mach_avr4},
    {"at90pwm81",  AVR_ISA_AVR4,    bfd_mach_avr4},
@@ -21,31 +21,31 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega16a",  AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega161",  AVR_ISA_M161,    bfd_mach_avr5},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:47:17.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:47:30.000000000 +0300
-@@ -65,8 +65,8 @@ at90pwm1,at90pwm2, at90pwm2b, at90pwm3, 
- at90pwm81).
+--- gas/doc/c-avr.texi 2011-12-16 12:46:47.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 15:05:18.000000000 +0530
+@@ -64,8 +64,8 @@ atmega88a, atmega88p, atmega88pa, atmega
+ at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81).
  
  Instruction set avr5 is for the enhanced AVR core with up to 128K program
 -memory space (MCU types: atmega16, atmega16a, atmega161, atmega162, atmega163,
--atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
+-atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168,
 +memory space (MCU types: at90pwm161, atmega16, atmega16a, atmega161, atmega162,
 +atmega163, atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
- atmega168a, atmega168p, atmega169, atmega169p, atmega169pa,
- atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a,
- atmega325p, atmega3250, atmega3250a, atmega3250p, atmega328, atmega328p,
+ atmega168a, atmega168p, atmega169, atmega169a, atmega169p, atmega169pa,
+ atmega32, atmega323, atmega324a, atmega324p, atmega325, atmega325a, atmega325p,
+ atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, atmega328,
 diff -Naurp ld/Makefile.in ld/Makefile.in
---- ld/Makefile.in     2011-09-05 15:33:12.000000000 +0300
-+++ ld/Makefile.in     2011-09-05 15:47:30.000000000 +0300
-@@ -441,6 +441,7 @@ ALL_EMULATIONS = \
-       eavrxmega5.o \
-       eavrxmega6.o \
-       eavrxmega7.o \
-+      eavrtiny10.o \
-       ecoff_i860.o \
-       ecoff_sparc.o \
-       eelf32_spu.o \
-@@ -952,6 +953,14 @@ distclean-compile:
+--- ld/Makefile.in     2011-12-16 12:46:47.000000000 +0530
++++ ld/Makefile.in     2011-12-16 15:05:18.000000000 +0530
+@@ -476,6 +476,7 @@ ALL_EMULATION_SOURCES = \
+       eavrxmega5.c \
+       eavrxmega6.c \
+       eavrxmega7.c \
++      eavrtiny10.c \
+       ecoff_i860.c \
+       ecoff_sparc.c \
+       ecrisaout.c \
+@@ -1075,6 +1076,14 @@ distclean-compile:
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr5.Po@am__quote@
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr51.Po@am__quote@
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/eavr6.Po@am__quote@
@@ -60,7 +60,7 @@ diff -Naurp ld/Makefile.in ld/Makefile.in
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecoff_i860.Po@am__quote@
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecoff_sparc.Po@am__quote@
  @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ecrisaout.Po@am__quote@
-@@ -2104,6 +2113,10 @@ eavrxmega7.c: $(srcdir)/emulparams/avrxm
+@@ -2271,6 +2280,10 @@ eavrxmega7.c: $(srcdir)/emulparams/avrxm
    $(srcdir)/emultempl/avrelf.em $(ELF_DEPS) $(srcdir)/scripttempl/avr.sc \
    ${GEN_DEPENDS}
        ${GENSCRIPTS} avrxmega7 "$(tdir_avr2)"
diff --git a/403-binutils-2.20.1-xmega128a1u-64a1u.patch b/403-binutils-2.20.1-xmega128a1u-64a1u.patch
deleted file mode 100644 (file)
index 03c651b..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-06-07 12:00:46.000000000 -0500
-+++ gas/config/tc-avr.c        2011-06-07 12:01:05.000000000 -0500
-@@ -254,6 +254,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-   {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-   {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
-+  {"atxmega64a1u",AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
-   {"atxmega128a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega128d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-@@ -262,6 +263,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-+  {"atxmega128a1u",AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-   {"attiny4",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
-   {"attiny5",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
-   {"attiny9",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-06-07 11:56:25.000000000 -0500
-+++ gas/doc/c-avr.texi 2011-06-07 12:01:05.000000000 -0500
-@@ -97,7 +97,8 @@ Instruction set avrxmega4 is for the XME
- memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64d3).
- Instruction set avrxmega5 is for the XMEGA AVR core with up to 64K program 
--memory space and greater than 64K data space (MCU types: atxmega64a1).
-+memory space and greater than 64K data space (MCU types: atxmega64a1,
-+atxmega64a1u).
- Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
- memory space and less than 64K data space (MCU types: atxmega128a3,
-@@ -105,7 +106,8 @@ atxmega128d3, atxmega192a3, atxmega192d3
- atxmega192d3).
- Instruction set avrxmega7 is for the XMEGA AVR core with up to 256K program
--memory space and greater than 64K data space (MCU types: atxmega128a1).
-+memory space and greater than 64K data space (MCU types: atxmega128a1,
-+atxmega128a1u).
- @cindex @code{-mall-opcodes} command line option, AVR
- @item -mall-opcodes
diff --git a/403-binutils-new-devices.patch b/403-binutils-new-devices.patch
new file mode 100644 (file)
index 0000000..4de7af1
--- /dev/null
@@ -0,0 +1,61 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2011-11-29 19:16:45.000000000 +0530
++++ binutils/size.c    2011-11-29 19:20:58.000000000 +0530
+@@ -194,9 +194,11 @@ avr_device_t avr[] =
+       {"atmega325",     AVR32K,  AVR2K,  AVR1K},
+       {"atmega325a",    AVR32K,  AVR2K,  AVR1K},
+       {"atmega325p",    AVR32K,  AVR2K,  AVR1K},
++      {"atmega325pa",   AVR32K,  AVR2K,  AVR1K},
+       {"atmega3250",    AVR32K,  AVR2K,  AVR1K},
+       {"atmega3250a",   AVR32K,  AVR2K,  AVR1K},
+       {"atmega3250p",   AVR32K,  AVR2K,  AVR1K},
++      {"atmega3250pa",  AVR32K,  AVR2K,  AVR1K},
+       {"atmega328",     AVR32K,  AVR2K,  AVR1K},
+       {"atmega328p",    AVR32K,  AVR2K,  AVR1K},
+       {"atmega329",     AVR32K,  AVR2K,  AVR1K},
+@@ -206,9 +208,10 @@ avr_device_t avr[] =
+       {"atmega3290",    AVR32K,  AVR2K,  AVR1K},
+       {"atmega3290a",   AVR32K,  AVR2K,  AVR1K},
+       {"atmega3290p",   AVR32K,  AVR2K,  AVR1K},
++      {"atmega3290pa",  AVR32K,  AVR2K,  AVR1K},
+       {"atmega32hvb",   AVR32K,  AVR2K,  AVR1K},
++      {"atmega32hvbrevb",AVR32K, AVR2K,  AVR1K},
+       {"atmega32c1",    AVR32K,  AVR2K,  AVR1K},
+-   {"atmega32hvb",   AVR32K,  AVR2K,  AVR1K},
+       {"atmega32m1",    AVR32K,  AVR2K,  AVR1K},
+       {"atmega32u2",    AVR32K,  AVR1K,  AVR1K},
+       {"atmega32u4",    AVR32K,  2560UL, AVR1K},
+@@ -244,7 +247,8 @@ avr_device_t avr[] =
+       {"atmega169pa",   AVR16K,  AVR1K,  AVR512},
+       {"atmega16hva",   AVR16K,  768UL,  AVR256},
+       {"atmega16hva2",  AVR16K,  AVR1K,  AVR256},
+-   {"atmega16hvb",   AVR16K,  AVR1K,  AVR512},
++        {"atmega16hvb",   AVR16K,  AVR1K,  AVR512},
++        {"atmega16hvbrevb",AVR16K, AVR1K,  AVR512},
+       {"atmega16m1",    AVR16K,  AVR1K,  AVR512},
+       {"atmega16u2",    AVR16K,  AVR512, AVR512},
+       {"atmega16u4",    AVR16K,  1280UL, AVR512},
+diff -Naurp gas/doc/as.info gas/doc/as.info
+--- gas/doc/as.info    2011-11-29 19:16:25.000000000 +0530
++++ gas/doc/as.info    2011-11-29 19:20:58.000000000 +0530
+@@ -7248,7 +7248,7 @@ File: as.info,  Node: AVR Options,  Next
+      program memory space (MCU types: atmega16, atmega16a, atmega161,
+      atmega162, atmega163, atmega164a, atmega164p, atmega165,
+      atmega165a, atmega165p, atmega168, atmega168a, atmega168p,
+-     atmega169, atmega169a, atmega169p, atmega169pa, atmega32,
++     atmega169, atmega169a, atmega169p, atmega169pa, atmega16c1, atmega32,
+      atmega323, atmega324a, atmega324p, atmega325, atmega325a,
+      atmega325p, atmega325pa, atmega3250, atmega3250a, atmega3250p,
+      atmega3250pa, atmega328, atmega328p, atmega329, atmega329a,
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2011-11-29 19:16:45.000000000 +0530
++++ gas/doc/c-avr.texi 2011-11-29 19:20:43.000000000 +0530
+@@ -67,7 +67,7 @@ Instruction set avr5 is for the enhanced
+ memory space (MCU types: at90pwm161, atmega16, atmega16a, atmega161, atmega162,
+ atmega163, atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
+ atmega168a, atmega168p, atmega169, atmega169a, atmega169p, atmega169pa,
+-atmega32, atmega323, atmega324a, atmega324p, atmega325, atmega325a, atmega325p,
++atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a, atmega325p,
+ atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, atmega328,
+ atmega328p, atmega329, atmega329a, atmega329p, atmega329pa, atmega3290,
+ atmega3290a, atmega3290p, atmega3290pa, atmega406, atmega64, atmega640,
diff --git a/404-binutils-2.20.1-atxmega32x1.patch b/404-binutils-2.20.1-atxmega32x1.patch
deleted file mode 100644 (file)
index dd694cb..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:32:07.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:38:25.000000000 +0300
-@@ -181,6 +181,7 @@ avr_device_t avr[] =
-       {"atxmega32a4",   AVR36K,  AVR4K,  AVR1K},
-       {"atxmega32d4",   AVR36K,  AVR4K,  AVR1K},
-+      {"atxmega32x1",   AVR36K,  AVR2K,  AVR1K},
-       {"at90can32",     AVR32K,  AVR2K,  AVR1K},
-       {"at94k",         AVR32K,  AVR4K,  0UL},
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:33:12.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:35:21.000000000 +0300
-@@ -251,6 +251,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega16d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-   {"atxmega32a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-   {"atxmega32d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega32x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-   {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-   {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-   {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:33:12.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:37:04.000000000 +0300
-@@ -88,10 +88,10 @@ atmega2560, atmega2561).
- Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program
- memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16d4,
--atxmega32d4).
-+atxmega32a4, atxmega32d4, atxmega32x1).
- Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program
--memory space and greater than 64K data space (MCU types: atxmega32a4).
-+memory space and greater than 64K data space (MCU types: none).
- Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program
- memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64d3).
similarity index 71%
rename from 410-binutils-2.20.1-attiny1634.patch
rename to 404-binutils-attiny1634.patch
index 91097893e9261b1e892b731a29d0dcddf929dc23..ce08d472b0fb6ae4d6fafa4faecac7c8f57101f5 100644 (file)
@@ -1,7 +1,7 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:49:15.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:50:47.000000000 +0300
-@@ -251,6 +251,7 @@ avr_device_t avr[] =
+--- binutils/size.c    2011-12-16 15:12:22.000000000 +0530
++++ binutils/size.c    2011-12-16 15:11:54.000000000 +0530
+@@ -250,6 +250,7 @@ avr_device_t avr[] =
          {"atmega16hvb",   AVR16K,  AVR1K,  AVR512},
          {"atmega16hvbrevb",AVR16K, AVR1K,  AVR512},
        {"atmega16m1",    AVR16K,  AVR1K,  AVR512},
@@ -10,9 +10,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega16u4",    AVR16K,  1280UL, AVR512},
        {"attiny167",     AVR16K,  AVR512, AVR512},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:49:15.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:50:47.000000000 +0300
-@@ -142,6 +142,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-16 15:05:18.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 15:11:54.000000000 +0530
+@@ -144,6 +144,7 @@ static struct mcu_type_s mcu_types[] =
    {"atmega8u2",  AVR_ISA_AVR35,   bfd_mach_avr35},
    {"atmega16u2", AVR_ISA_AVR35,   bfd_mach_avr35},
    {"atmega32u2", AVR_ISA_AVR35,   bfd_mach_avr35},
@@ -21,8 +21,8 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega48",   AVR_ISA_AVR4,    bfd_mach_avr4},
    {"atmega48a",  AVR_ISA_AVR4,    bfd_mach_avr4},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:49:15.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:50:47.000000000 +0300
+--- gas/doc/c-avr.texi 2011-12-16 15:12:22.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 15:11:54.000000000 +0530
 @@ -55,8 +55,8 @@ Instruction set avr31 is for the classic
  memory space (MCU types: atmega103, at43usb320).
  
@@ -33,4 +33,4 @@ diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
 +atmega8u2, atmega16u2, atmega32u2).
  
  Instruction set avr4 is for the enhanced AVR core with up to 8K program
- memory space (MCU types: atmega48, atmega48a, atmega48p,atmega8, atmega88, 
+ memory space (MCU types: atmega48, atmega48a, atmega48p, atmega8, atmega88,
diff --git a/405-binutils-2.20.1-atxmega128b1.patch b/405-binutils-2.20.1-atxmega128b1.patch
deleted file mode 100644 (file)
index ff3db65..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:40:59.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:40:03.000000000 +0300
-@@ -132,6 +132,7 @@ avr_device_t avr[] =
-       {"atxmega128a1",  AVR136K, AVR8K,  AVR2K},
-       {"atxmega128a1u", AVR136K, AVR8K,  AVR2K},
-       {"atxmega128a3",  AVR136K, AVR8K,  AVR2K},
-+      {"atxmega128b1",  AVR136K, AVR8K,  AVR2K},
-       {"atxmega128d3",  AVR136K, AVR8K,  AVR2K},
-       {"at43usb320",    AVR128K, 608UL,  0UL},
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:40:59.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:40:03.000000000 +0300
-@@ -257,6 +257,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
-   {"atxmega64a1u",AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
-   {"atxmega128a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega128b1", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega128d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega192d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:40:59.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:40:03.000000000 +0300
-@@ -102,8 +102,8 @@ atxmega64a1u).
- Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
- memory space and less than 64K data space (MCU types: atxmega128a3,
--atxmega128d3, atxmega192a3, atxmega192d3, atxmega256a3, atxmega256a3b,
--atxmega192d3).
-+atxmega128d3, atxmega192a3, atxmega128b1, atxmega192d3, atxmega256a3, 
-+atxmega256a3b, atxmega192d3).
- Instruction set avrxmega7 is for the XMEGA AVR core with up to 256K program
- memory space and greater than 64K data space (MCU types: atxmega128a1,
similarity index 63%
rename from 411-binutils-2.20.1-atmega48pa.patch
rename to 405-binutils-atmega48pa.patch
index 1a9f6c737976b3e1048eaf58390a98b3552dbf74..705491966c676bac414b2a16bf3f426d3788fd43 100644 (file)
@@ -1,7 +1,7 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:50:47.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:53:27.000000000 +0300
-@@ -289,6 +289,7 @@ avr_device_t avr[] =
+--- binutils/size.c    2011-12-16 15:11:54.000000000 +0530
++++ binutils/size.c    2011-12-16 15:16:27.000000000 +0530
+@@ -288,6 +288,7 @@ avr_device_t avr[] =
        {"at90s4434",     AVR4K,   352UL,  AVR256},
        {"atmega48",      AVR4K,   AVR512, AVR256},
        {"atmega48a",     AVR4K,   AVR512, AVR256},
@@ -10,9 +10,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"attiny4313",    AVR4K,   AVR256, AVR256},
        {"attiny43u",     AVR4K,   AVR256, AVR64},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:50:47.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:53:27.000000000 +0300
-@@ -146,6 +146,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-16 15:11:54.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 15:16:27.000000000 +0530
+@@ -148,6 +148,7 @@ static struct mcu_type_s mcu_types[] =
    {"atmega8",    AVR_ISA_M8,      bfd_mach_avr4},
    {"atmega48",   AVR_ISA_AVR4,    bfd_mach_avr4},
    {"atmega48a",  AVR_ISA_AVR4,    bfd_mach_avr4},
@@ -21,19 +21,18 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega88",   AVR_ISA_AVR4,    bfd_mach_avr4},
    {"atmega88a",  AVR_ISA_AVR4,    bfd_mach_avr4},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:50:47.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:53:27.000000000 +0300
-@@ -59,10 +59,9 @@ instructions (MCU types: attiny167, atti
+--- gas/doc/c-avr.texi 2011-12-16 15:11:54.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 15:16:27.000000000 +0530
+@@ -59,9 +59,9 @@ instructions (MCU types: attiny167, atti
  atmega8u2, atmega16u2, atmega32u2).
  
  Instruction set avr4 is for the enhanced AVR core with up to 8K program
--memory space (MCU types: atmega48, atmega48a, atmega48p,atmega8, atmega88, 
--atmega88a, atmega88p, atmega88pa, atmega8515, atmega8535, atmega8hva, 
--at90pwm1,at90pwm2, at90pwm2b, at90pwm3, at90pwm3b,
--at90pwm81).
-+memory space (MCU types: atmega48, atmega48a, atmega48pa, atmega48p,atmega8,
+-memory space (MCU types: atmega48, atmega48a, atmega48p, atmega8, atmega88,
+-atmega88a, atmega88p, atmega88pa, atmega8515, atmega8535, atmega8hva, at90pwm1,
+-at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81).
++memory space (MCU types: atmega48, atmega48a, atmega48pa, atmega48p, atmega8,
 +atmega88, atmega88a, atmega88p, atmega88pa, atmega8515, atmega8535, atmega8hva,
-+at90pwm1,at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81).
++at90pwm1, at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81).
  
  Instruction set avr5 is for the enhanced AVR core with up to 128K program
  memory space (MCU types: at90pwm161, atmega16, atmega16a, atmega161, atmega162,
diff --git a/406-binutils-2.20.1-atxmega256a3bu.patch b/406-binutils-2.20.1-atxmega256a3bu.patch
deleted file mode 100644 (file)
index f6708d6..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:43:49.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:44:57.000000000 +0300
-@@ -121,6 +121,7 @@ avr_device_t avr[] =
- {
-       {"atxmega256a3",  AVR264K, AVR16K, AVR4K},
-       {"atxmega256a3b", AVR264K, AVR16K, AVR4K},
-+      {"atxmega256a3bu",AVR264K, AVR16K, AVR4K},
-       {"atxmega256d3",  AVR264K, AVR16K, AVR4K},
-       {"atmega2560",    AVR256K, AVR8K,  AVR4K},
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:43:49.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:44:57.000000000 +0300
-@@ -263,6 +263,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega192d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega256a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega256a3bu",AVR_ISA_XMEGA,bfd_mach_avrxmega6},
-   {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-   {"atxmega128a1u",AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:43:49.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:44:57.000000000 +0300
-@@ -103,7 +103,7 @@ atxmega64a1u).
- Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
- memory space and less than 64K data space (MCU types: atxmega128a3,
- atxmega128d3, atxmega192a3, atxmega128b1, atxmega192d3, atxmega256a3, 
--atxmega256a3b, atxmega192d3).
-+atxmega256a3b, atxmega256a3bu, atxmega192d3).
- Instruction set avrxmega7 is for the XMEGA AVR core with up to 256K program
- memory space and greater than 64K data space (MCU types: atxmega128a1,
similarity index 75%
rename from 412-binutils-2.20.1-atxmega_16_32_a4u.patch
rename to 406-binutils-atxmega_16_32_a4u.patch
index 25cb8da0c36d65f6c4810d2b8a0aabf6da2a3e3d..62f1ec21a4626c52b1d3f2b5e970989a33b19e27 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:54:26.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:54:34.000000000 +0300
+--- binutils/size.c    2011-12-22 12:06:57.000000000 +0530
++++ binutils/size.c    2011-12-22 12:07:20.000000000 +0530
 @@ -177,11 +177,12 @@ avr_device_t avr[] =
        {"atmega64c1",    AVR64K,  AVR4K,  AVR2K},
        {"atmega64hve",   AVR64K,  AVR4K,  AVR1K},
@@ -13,9 +13,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atxmega32a4",   AVR36K,  AVR4K,  AVR1K},
 +      {"atxmega32a4u",  AVR36K,  AVR4K,  AVR1K},
        {"atxmega32d4",   AVR36K,  AVR4K,  AVR1K},
-       {"atxmega32x1",   AVR36K,  AVR2K,  AVR1K},
  
-@@ -221,6 +222,7 @@ avr_device_t avr[] =
+       {"at90can32",     AVR32K,  AVR2K,  AVR1K},
+@@ -220,6 +221,7 @@ avr_device_t avr[] =
        {"at43usb355",    AVR24K,  1120UL,   0UL},
  
        {"atxmega16a4",   AVR20K,  AVR2K,  AVR1K},
@@ -23,7 +23,7 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atxmega16d4",   AVR20K,  AVR2K,  AVR1K},
  
        {"at76c711",      AVR16K,  AVR2K,  0UL},
-@@ -305,7 +307,7 @@ avr_device_t avr[] =
+@@ -304,7 +306,7 @@ avr_device_t avr[] =
        {"at90s2323",     AVR2K,   AVR128, AVR128},
        {"at90s2333",     AVR2K,   224UL,  AVR128},
        {"at90s2343",     AVR2K,   AVR128, AVR128},
@@ -32,7 +32,7 @@ diff -Naurp binutils/size.c binutils/size.c
        {"attiny22",      AVR2K,   224UL,  AVR128},
        {"attiny2313",    AVR2K,   AVR128, AVR128},
        {"attiny2313a",   AVR2K,   AVR128, AVR128},
-@@ -316,19 +318,19 @@ avr_device_t avr[] =
+@@ -315,19 +317,19 @@ avr_device_t avr[] =
        {"attiny261",     AVR2K,   AVR128, AVR128},
        {"attiny261a",    AVR2K,   AVR128, AVR128},
        {"attiny28",      AVR2K,   0UL,    0UL},
@@ -58,30 +58,31 @@ diff -Naurp binutils/size.c binutils/size.c
  
  static char *avrmcu = NULL;
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:54:26.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:56:53.000000000 +0300
-@@ -256,8 +256,10 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:06:57.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:09:01.000000000 +0530
+@@ -259,9 +259,11 @@ static struct mcu_type_s mcu_types[] =
    {"atmega2560", AVR_ISA_AVR6,    bfd_mach_avr6},
    {"atmega2561", AVR_ISA_AVR6,    bfd_mach_avr6},
    {"atxmega16a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega16a4u",AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
++  {"atxmega16a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega2},
    {"atxmega16d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atxmega16x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega32a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega32a4u",AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
++  {"atxmega32a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega2},
    {"atxmega32d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega32x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:54:26.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:58:33.000000000 +0300
-@@ -86,8 +86,8 @@ Instruction set avr6 is for the enhanced
+--- gas/doc/c-avr.texi 2011-12-22 12:06:57.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:07:20.000000000 +0530
+@@ -87,8 +87,8 @@ Instruction set avr6 is for the enhanced
  atmega2560, atmega2561).
  
  Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program
 -memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16d4,
--atxmega32a4, atxmega32d4, atxmega32x1).
+-atxmega16x1, atxmega32a4, atxmega32d4, atxmega32x1).
 +memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u,
-+atxmega16d4, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1).
++atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1).
  
  Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program
  memory space and greater than 64K data space (MCU types: none).
similarity index 78%
rename from 413-binutils-2.20.1-atxmega64_128_192_256a3u.patch
rename to 407-binutils-atxmega64_128_192_256a3u.patch
index ca338bef001125ec6d6d5940d200c861d97d4a2d..ec062de8706f0dcbb1772ecbd7a7da0bc498f47f 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:59:51.000000000 +0300
-+++ binutils/size.c    2011-09-05 16:03:16.000000000 +0300
+--- binutils/size.c    2011-12-22 12:10:12.000000000 +0530
++++ binutils/size.c    2011-12-22 12:10:24.000000000 +0530
 @@ -120,6 +120,7 @@ typedef struct
  avr_device_t avr[] =
  {
@@ -32,38 +32,37 @@ diff -Naurp binutils/size.c binutils/size.c
  
        {"at90can64",     AVR64K,  AVR4K,  AVR2K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:59:51.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 16:03:16.000000000 +0300
-@@ -263,15 +263,19 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:10:12.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:11:34.000000000 +0530
+@@ -267,15 +267,19 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega32d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega32x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-+  {"atxmega64a3u",AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
++  {"atxmega64a3u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega4},
    {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
    {"atxmega64a1u",AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
    {"atxmega128a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega128a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
++  {"atxmega128a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega128b1", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega128d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega192a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
++  {"atxmega192a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega192d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega256a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega256a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
++  {"atxmega256a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega256a3bu",AVR_ISA_XMEGA,bfd_mach_avrxmega6},
    {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:59:51.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 16:03:16.000000000 +0300
-@@ -93,16 +93,17 @@ Instruction set avrxmega3 is for the XME
+--- gas/doc/c-avr.texi 2011-12-22 12:10:12.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:10:24.000000000 +0530
+@@ -94,16 +94,16 @@ Instruction set avrxmega3 is for the XME
  memory space and greater than 64K data space (MCU types: none).
  
  Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program
 -memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64d3).
-+memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64a3u,
-+atxmega64d3).
++memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64a3u, atxmega64d3).
  
  Instruction set avrxmega5 is for the XMEGA AVR core with up to 64K program 
  memory space and greater than 64K data space (MCU types: atxmega64a1,
@@ -72,10 +71,10 @@ diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
  Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
 -memory space and less than 64K data space (MCU types: atxmega128a3,
 -atxmega128d3, atxmega192a3, atxmega128b1, atxmega192d3, atxmega256a3, 
--atxmega256a3b, atxmega256a3bu, atxmega192d3).
+-atxmega256a3b, atxmega256a3bu).
 +memory space and less than 64K data space (MCU types: atxmega128a3, atxmega128a3u,
 +atxmega128d3, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega192d3, atxmega256a3,
-+atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega192d3).
++atxmega256a3u, atxmega256a3b, atxmega256a3bu).
  
  Instruction set avrxmega7 is for the XMEGA AVR core with up to 256K program
  memory space and greater than 64K data space (MCU types: atxmega128a1,
diff --git a/408-binutils-2.20.1-atmega16hvb-32hvb.patch b/408-binutils-2.20.1-atmega16hvb-32hvb.patch
deleted file mode 100644 (file)
index 61f11de..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:48:20.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:48:28.000000000 +0300
-@@ -208,8 +208,8 @@ avr_device_t avr[] =
-       {"atmega3290a",   AVR32K,  AVR2K,  AVR1K},
-       {"atmega3290p",   AVR32K,  AVR2K,  AVR1K},
-       {"atmega32hvb",   AVR32K,  AVR2K,  AVR1K},
-+      {"atmega32hvbrevb",AVR32K, AVR2K,  AVR1K},
-       {"atmega32c1",    AVR32K,  AVR2K,  AVR1K},
--   {"atmega32hvb",   AVR32K,  AVR2K,  AVR1K},
-       {"atmega32m1",    AVR32K,  AVR2K,  AVR1K},
-       {"atmega32u2",    AVR32K,  AVR1K,  AVR1K},
-       {"atmega32u4",    AVR32K,  2560UL, AVR1K},
-@@ -245,7 +245,8 @@ avr_device_t avr[] =
-       {"atmega169pa",   AVR16K,  AVR1K,  AVR512},
-       {"atmega16hva",   AVR16K,  768UL,  AVR256},
-       {"atmega16hva2",  AVR16K,  AVR1K,  AVR256},
--   {"atmega16hvb",   AVR16K,  AVR1K,  AVR512},
-+        {"atmega16hvb",   AVR16K,  AVR1K,  AVR512},
-+        {"atmega16hvbrevb",AVR16K, AVR1K,  AVR512},
-       {"atmega16m1",    AVR16K,  AVR1K,  AVR512},
-       {"atmega16u2",    AVR16K,  AVR512, AVR512},
-       {"atmega16u4",    AVR16K,  1280UL, AVR512},
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:48:20.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:48:28.000000000 +0300
-@@ -220,7 +220,9 @@ static struct mcu_type_s mcu_types[] =
-   {"atmega16hva",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega16hva2",AVR_ISA_AVR5,   bfd_mach_avr5},
-   {"atmega16hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega16hvbrevb",AVR_ISA_AVR5,bfd_mach_avr5},
-   {"atmega32hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega32hvbrevb",AVR_ISA_AVR5,bfd_mach_avr5},
-   {"at90can32" , AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at90can64" , AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at90pwm216", AVR_ISA_AVR5,    bfd_mach_avr5},
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:48:20.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:48:28.000000000 +0300
-@@ -75,9 +75,9 @@ atmega3290p, atmega406, atmega64, atmega
- atmega644pa, atmega645, atmega645a, atmega645p, atmega6450, atmega6450a,
- atmega6450p, atmega649, atmega649a, atmega649p, atmega6490, atmega6490a,
- atmega6490p, atmega64hve, atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb,
--at90can32, at90can64, at90pwm216, at90pwm316, atmega16u4, atmega32c1,
--atmega64c1, atmega64m1, atmega16m1, atmega32m1, atmega64m1, atmega16u4,
--atmega32u4, atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
-+atmega16hvbrevb, atmega32hvbrevb, at90can32, at90can64, at90pwm216, at90pwm316,
-+atmega16u4, atmega32c1, atmega64c1, atmega64m1, atmega16m1, atmega32m1, atmega64m1,
-+atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
- Instruction set avr51 is for the enhanced AVR core with exactly 128K program
- memory space (MCU types: atmega128, atmega1280, atmega1281, atmega1284p,
similarity index 60%
rename from 414-binutils-2.20.1-atmegarfr2_a2.patch
rename to 408-binutils-atmegarfr2_a2.patch
index 4fc0b784d928a8929ec7948f2bd91f8e7eec417e..0d853e1e5dacb640148b8f5a6775ef89cd1a63b0 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-06-24 16:23:14.000000000 +0530
-+++ binutils/size.c    2011-06-24 10:48:45.000000000 +0530
+--- binutils/size.c    2011-12-22 12:14:48.000000000 +0530
++++ binutils/size.c    2011-12-22 12:12:39.000000000 +0530
 @@ -119,6 +119,9 @@ typedef struct
  
  avr_device_t avr[] =
@@ -32,9 +32,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"at90can64",     AVR64K,  AVR4K,  AVR2K},
        {"at90scr100",    AVR64K,  AVR4K,  AVR2K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-06-24 16:23:14.000000000 +0530
-+++ gas/config/tc-avr.c        2011-06-24 16:08:14.000000000 +0530
-@@ -203,6 +203,8 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:14:48.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:12:39.000000000 +0530
+@@ -205,6 +205,8 @@ static struct mcu_type_s mcu_types[] =
    {"atmega3290p",AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega3290pa",AVR_ISA_AVR5,   bfd_mach_avr5},
    {"atmega406",  AVR_ISA_AVR5,    bfd_mach_avr5},
@@ -43,7 +43,7 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega64",   AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega640",  AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega644",  AVR_ISA_AVR5,    bfd_mach_avr5},
-@@ -250,11 +252,15 @@ static struct mcu_type_s mcu_types[] =
+@@ -253,11 +255,15 @@ static struct mcu_type_s mcu_types[] =
    {"atmega1281", AVR_ISA_AVR51,   bfd_mach_avr51},
    {"atmega1284p",AVR_ISA_AVR51,   bfd_mach_avr51},
    {"atmega128rfa1",AVR_ISA_AVR51, bfd_mach_avr51},
@@ -57,33 +57,27 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
 +  {"atmega256rfa2", AVR_ISA_AVR6, bfd_mach_avr6},
 +  {"atmega256rfr2", AVR_ISA_AVR6, bfd_mach_avr6},
    {"atxmega16a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-   {"atxmega16a4u",AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atxmega16a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega2},
    {"atxmega16d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-06-24 16:23:14.000000000 +0530
-+++ gas/doc/c-avr.texi 2011-06-24 16:19:20.000000000 +0530
-@@ -68,22 +68,23 @@ memory space (MCU types: at90pwm161, atm
- atmega163, atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
- atmega168a, atmega168p, atmega169, atmega169p, atmega169pa,
- atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a,
--atmega325p, atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, atmega328, atmega328p,
--atmega329, atmega329a, atmega329p, atmega329pa, atmega3290, atmega3290a,
--atmega3290p, atmega3290pa, atmega406, atmega64, atmega640, atmega644, atmega644a, atmega644p,
--atmega644pa, atmega645, atmega645a, atmega645p, atmega6450, atmega6450a,
--atmega6450p, atmega649, atmega649a, atmega649p, atmega6490, atmega6490a,
--atmega6490p, atmega64hve, atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb,
--atmega16hvbrevb, atmega32hvbrevb, at90can32, at90can64, at90pwm216, at90pwm316,
--atmega16u4, atmega32c1, atmega64c1, atmega64m1, atmega16m1, atmega32m1, atmega64m1,
-+atmega325p, atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, 
-+atmega328, atmega328p,atmega329, atmega329a, atmega329p, atmega329pa, atmega3290, 
-+atmega3290a, atmega3290p, atmega3290pa, atmega406,  atmega64rfa2, atmega64rfr2, 
-+atmega64, atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645, 
-+atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649, 
-+atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega64hve, 
-+atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb, atmega16hvbrevb, 
-+atmega32hvbrevb, at90can32, at90can64, at90pwm216, at90pwm316, atmega16u4, 
-+atmega32c1, atmega64c1, atmega64m1, atmega16m1, atmega32m1, atmega64m1,
- atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
+--- gas/doc/c-avr.texi 2011-12-22 12:14:48.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:12:39.000000000 +0530
+@@ -70,10 +70,10 @@ atmega168a, atmega168p, atmega169, atmeg
+ atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a, atmega325p,
+ atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, atmega328,
+ atmega328p, atmega329, atmega329a, atmega329p, atmega329pa, atmega3290,
+-atmega3290a, atmega3290p, atmega3290pa, atmega406, atmega64, atmega640,
+-atmega644, atmega644a, atmega644p, atmega644pa, atmega645, atmega645a,
+-atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649, atmega649a,
+-atmega649p, atmega6490, atmega6490a, atmega6490p, atmega16hva, atmega16hva2,
++atmega3290a, atmega3290p, atmega3290pa, atmega406, atmega64, atmega64rfa2,
++atmegarfr2, atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645,
++atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649,
++atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega16hva, atmega16hva2,
+ atmega16hvb, atmega16hvbrevb, atmega32hvb, atmega32hvbrevb, atmega64hve,
+ at90can32, at90can64, at90pwm161, at90pwm216, at90pwm316, atmega32c1,
+ atmega64c1, atmega16m1, atmega32m1, atmega64m1, atmega16u4, atmega32u4,
+@@ -81,10 +81,10 @@ atmega32u6, at90usb646, at90usb647, at94
  
  Instruction set avr51 is for the enhanced AVR core with exactly 128K program
  memory space (MCU types: atmega128, atmega1280, atmega1281, atmega1284p,
diff --git a/409-binutils-2.20.1-atmega32_5_50_90_pa.patch b/409-binutils-2.20.1-atmega32_5_50_90_pa.patch
deleted file mode 100644 (file)
index 33b94ee..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 15:49:06.000000000 +0300
-+++ binutils/size.c    2011-09-05 15:49:15.000000000 +0300
-@@ -195,9 +195,11 @@ avr_device_t avr[] =
-       {"atmega325",     AVR32K,  AVR2K,  AVR1K},
-       {"atmega325a",    AVR32K,  AVR2K,  AVR1K},
-       {"atmega325p",    AVR32K,  AVR2K,  AVR1K},
-+      {"atmega325pa",   AVR32K,  AVR2K,  AVR1K},
-       {"atmega3250",    AVR32K,  AVR2K,  AVR1K},
-       {"atmega3250a",   AVR32K,  AVR2K,  AVR1K},
-       {"atmega3250p",   AVR32K,  AVR2K,  AVR1K},
-+      {"atmega3250pa",  AVR32K,  AVR2K,  AVR1K},
-       {"atmega328",     AVR32K,  AVR2K,  AVR1K},
-       {"atmega328p",    AVR32K,  AVR2K,  AVR1K},
-       {"atmega329",     AVR32K,  AVR2K,  AVR1K},
-@@ -207,6 +209,7 @@ avr_device_t avr[] =
-       {"atmega3290",    AVR32K,  AVR2K,  AVR1K},
-       {"atmega3290a",   AVR32K,  AVR2K,  AVR1K},
-       {"atmega3290p",   AVR32K,  AVR2K,  AVR1K},
-+      {"atmega3290pa",  AVR32K,  AVR2K,  AVR1K},
-       {"atmega32hvb",   AVR32K,  AVR2K,  AVR1K},
-       {"atmega32hvbrevb",AVR32K, AVR2K,  AVR1K},
-       {"atmega32c1",    AVR32K,  AVR2K,  AVR1K},
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 15:49:06.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 15:49:15.000000000 +0300
-@@ -185,9 +185,11 @@ static struct mcu_type_s mcu_types[] =
-   {"atmega325",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega325a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega325p", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega325pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3250", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3250a",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3250p",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega3250pa",AVR_ISA_AVR5,   bfd_mach_avr5},
-   {"atmega328",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega328p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega329",  AVR_ISA_AVR5,    bfd_mach_avr5},
-@@ -197,6 +199,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atmega3290", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3290a",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3290p",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega3290pa",AVR_ISA_AVR5,   bfd_mach_avr5},
-   {"atmega406",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega64",   AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega640",  AVR_ISA_AVR5,    bfd_mach_avr5},
-diff -Naurp gas/doc/as.info gas/doc/as.info
---- gas/doc/as.info    2010-03-01 16:49:55.000000000 +0300
-+++ gas/doc/as.info    2011-09-05 15:49:15.000000000 +0300
-@@ -7097,14 +7097,15 @@ File: as.info,  Node: AVR Options,  Next
-      program memory space (MCU types: atmega16, atmega161, atmega162,
-      atmega163, atmega164p, atmega165, atmega165p, atmega168,
-      atmega168p, atmega169, atmega169p, atmega16c1, atmega32,
--     atmega323, atmega324p, atmega325, atmega325p, atmega3250,
--     atmega3250p, atmega328p, atmega329, atmega329p, atmega3290,
--     atmega3290p, atmega406, atmega64, atmega640, atmega644,
--     atmega644p, atmega644pa, atmega645, atmega6450, atmega649,
--     atmega6490, atmega16hva, atmega16hvb, atmega32hvb, at90can32,
--     at90can64, at90pwm216, at90pwm316, atmega32c1, atmega64c1,
--     atmega16m1, atmega32m1, atmega64m1, atmega16u4, atmega32u4,
--     atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
-+     atmega323, atmega324p, atmega325, atmega325p, atmega325pa,
-+     atmega3250, atmega3250p, atmega3250pa, atmega328p, atmega329,
-+     atmega329p, atmega3290, atmega3290p, atmega3290pa, atmega406, 
-+     atmega64, atmega640, atmega644, atmega644p, atmega644pa, atmega645, 
-+     atmega6450, atmega649, atmega6490, atmega16hva, atmega16hvb,
-+     atmega32hvb, at90can32, at90can64, at90pwm216, at90pwm316,
-+     atmega32c1, atmega64c1, atmega16m1, atmega32m1, atmega64m1, 
-+     atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647,
-+     at94k, at90scr100).
-      Instruction set avr51 is for the enhanced AVR core with exactly
-      128K program memory space (MCU types: atmega128, atmega1280,
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 15:49:06.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 15:49:15.000000000 +0300
-@@ -69,9 +69,9 @@ memory space (MCU types: at90pwm161, atm
- atmega163, atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
- atmega168a, atmega168p, atmega169, atmega169p, atmega169pa,
- atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a,
--atmega325p, atmega3250, atmega3250a, atmega3250p, atmega328, atmega328p,
-+atmega325p, atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, atmega328, atmega328p,
- atmega329, atmega329a, atmega329p, atmega329pa, atmega3290, atmega3290a,
--atmega3290p, atmega406, atmega64, atmega640, atmega644, atmega644a, atmega644p,
-+atmega3290p, atmega3290pa, atmega406, atmega64, atmega640, atmega644, atmega644a, atmega644p,
- atmega644pa, atmega645, atmega645a, atmega645p, atmega6450, atmega6450a,
- atmega6450p, atmega649, atmega649a, atmega649p, atmega6490, atmega6490a,
- atmega6490p, atmega64hve, atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb,
similarity index 64%
rename from 415-binutils-2.20.1-atmega165pa.patch
rename to 409-binutils-atmega165pa.patch
index 57bdc2d0a771cf966ce66dc50329403d9bfcbb55..2993624d265b90237df2e345144867fcd1ea9dcf 100644 (file)
@@ -1,7 +1,7 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 16:07:24.000000000 +0300
-+++ binutils/size.c    2011-09-05 16:07:29.000000000 +0300
-@@ -254,6 +254,7 @@ avr_device_t avr[] =
+--- binutils/size.c    2011-12-16 15:25:58.000000000 +0530
++++ binutils/size.c    2011-12-16 15:28:02.000000000 +0530
+@@ -253,6 +253,7 @@ avr_device_t avr[] =
        {"atmega165a",    AVR16K,  AVR1K,  AVR512},
        {"atmega165",     AVR16K,  AVR1K,  AVR512},
        {"atmega165p",    AVR16K,  AVR1K,  AVR512},
@@ -10,9 +10,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega168a",    AVR16K,  AVR1K,  AVR512},
        {"atmega168p",    AVR16K,  AVR1K,  AVR512},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 16:07:24.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 16:07:29.000000000 +0300
-@@ -172,6 +172,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-16 15:25:58.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 15:28:02.000000000 +0530
+@@ -174,6 +174,7 @@ static struct mcu_type_s mcu_types[] =
    {"atmega165",  AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega165a", AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega165p", AVR_ISA_AVR5,    bfd_mach_avr5},
@@ -21,14 +21,14 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega168a", AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega168p", AVR_ISA_AVR5,    bfd_mach_avr5},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 16:07:24.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 16:07:29.000000000 +0300
-@@ -65,7 +65,7 @@ at90pwm1,at90pwm2, at90pwm2b, at90pwm3, 
+--- gas/doc/c-avr.texi 2011-12-16 15:25:58.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 15:28:02.000000000 +0530
+@@ -65,7 +65,7 @@ at90pwm1, at90pwm2, at90pwm2b, at90pwm3,
  
  Instruction set avr5 is for the enhanced AVR core with up to 128K program
  memory space (MCU types: at90pwm161, atmega16, atmega16a, atmega161, atmega162,
 -atmega163, atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
 +atmega163, atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega165pa, atmega168, 
- atmega168a, atmega168p, atmega169, atmega169p, atmega169pa,
- atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a,
- atmega325p, atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, 
+ atmega168a, atmega168p, atmega169, atmega169a, atmega169p, atmega169pa,
+ atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a, atmega325p,
+ atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, atmega328,
similarity index 65%
rename from 416-binutils-2.20.1-atxmega384c3.patch
rename to 410-binutils-atxmega384c3.patch
index 422ef750a9f101fe2699f1457ad0e4ba7ad9af4c..e91d9f7b7e19566b08a60353bf6369ec76b6a981 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 16:08:16.000000000 +0300
-+++ binutils/size.c    2011-09-05 16:08:24.000000000 +0300
+--- binutils/size.c    2011-12-22 12:16:07.000000000 +0530
++++ binutils/size.c    2011-12-22 12:16:21.000000000 +0530
 @@ -108,6 +108,7 @@ static int return_code = 0;
  #define AVR200K 204800UL
  #define AVR256K 262144UL
@@ -19,25 +19,25 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega256rfr2", AVR256K, AVR32K, AVR8K},
  
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 16:08:16.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 16:08:24.000000000 +0300
-@@ -286,6 +286,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:16:07.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:21:02.000000000 +0530
+@@ -290,6 +290,7 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega256a3bu",AVR_ISA_XMEGA,bfd_mach_avrxmega6},
    {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega384c3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
++  {"atxmega384c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-   {"atxmega128a1u",AVR_ISA_XMEGA, bfd_mach_avrxmega7},
+   {"atxmega128a1u", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
    {"attiny4",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 16:08:16.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 16:08:24.000000000 +0300
-@@ -104,9 +104,9 @@ atxmega64a1u).
+--- gas/doc/c-avr.texi 2011-12-22 12:16:07.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:16:21.000000000 +0530
+@@ -103,9 +103,9 @@ atxmega64a1u).
  Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
  memory space and less than 64K data space (MCU types: atxmega128a3, atxmega128a3u,
  atxmega128d3, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega192d3, atxmega256a3,
--atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega192d3).
-+atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega192d3, atxmega384c3).
+-atxmega256a3u, atxmega256a3b, atxmega256a3bu).
++atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega384c3).
  
 -Instruction set avrxmega7 is for the XMEGA AVR core with up to 256K program
 +Instruction set avrxmega7 is for the XMEGA AVR core with greater than 64K program
similarity index 56%
rename from 417-binutils-2.20.1-attiny80.patch
rename to 411-binutils-attiny80.patch
index 7fbcdf2ba7638c2c6b209e95f2c5a67e22722224..ae803689820cec47df1bc2ae6bf1483896226520 100644 (file)
@@ -1,7 +1,7 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 16:10:37.000000000 +0300
-+++ binutils/size.c    2011-09-05 16:10:56.000000000 +0300
-@@ -318,6 +318,7 @@ avr_device_t avr[] =
+--- binutils/size.c    2011-12-16 15:29:27.000000000 +0530
++++ binutils/size.c    2011-12-16 15:32:13.000000000 +0530
+@@ -317,6 +317,7 @@ avr_device_t avr[] =
        {"attiny461",     AVR4K,   AVR256, AVR256},
        {"attiny461a",    AVR4K,   AVR256, AVR256},
        {"attiny48",      AVR4K,   AVR256, AVR64},
@@ -10,9 +10,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"at86rf401",     AVR2K,   224UL,  AVR128},
        {"at90s2313",     AVR2K,   AVR128, AVR128},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 16:10:37.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 16:10:56.000000000 +0300
-@@ -130,6 +130,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-16 15:29:27.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 15:32:13.000000000 +0530
+@@ -132,6 +132,7 @@ static struct mcu_type_s mcu_types[] =
    {"attiny43u",  AVR_ISA_AVR25,   bfd_mach_avr25},
    {"attiny48",   AVR_ISA_AVR25,   bfd_mach_avr25},
    {"attiny88",   AVR_ISA_AVR25,   bfd_mach_avr25},
@@ -21,14 +21,14 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"ata6289",    AVR_ISA_AVR25,   bfd_mach_avr25},
    {"at43usb355", AVR_ISA_AVR3,    bfd_mach_avr3},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 16:10:37.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 16:10:56.000000000 +0300
+--- gas/doc/c-avr.texi 2011-12-16 15:29:27.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 15:32:13.000000000 +0530
 @@ -46,7 +46,7 @@ space plus the MOVW instruction (MCU typ
- attiny2313a, attiny24, attiny24a, attiny4313, attiny43u, attiny44, attiny44a, 
- attiny84, attiny84a, attiny25, attiny45, attiny85, attiny261, attiny261a,
- attiny461, attiny461a, attiny861, attiny861a, attiny87, attiny43u, attiny48,
--attiny88, at86rf401, ata6289).
-+attiny88, attiny80, at86rf401, ata6289).
+ attiny2313a, attiny24, attiny24a, attiny4313, attiny44, attiny44a, attiny84,
+ attiny84a, attiny25, attiny45, attiny85, attiny261, attiny261a, attiny461,
+ attiny461a, attiny861, attiny861a, attiny87, attiny43u, attiny48, attiny88,
+-at86rf401, ata6289).
++attiny80, at86rf401, ata6289).
  
  Instruction set avr3 is for the classic AVR core with up to 128K program
  memory space (MCU types: at43usb355, at76c711).
similarity index 60%
rename from 418-binutils-2.20.1-atxmega128a4u.patch
rename to 412-binutils-atxmega128a4u.patch
index 9a01eb6e5f8124cbbc3f689764912559c4b76bf4..54f474ecf51230798b748addbfbbaa15f134eda3 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 16:11:30.000000000 +0300
-+++ binutils/size.c    2011-09-05 16:11:38.000000000 +0300
+--- binutils/size.c    2011-12-22 12:22:14.000000000 +0530
++++ binutils/size.c    2011-12-22 12:22:22.000000000 +0530
 @@ -143,6 +143,7 @@ avr_device_t avr[] =
  
        {"atxmega128a1",  AVR136K, AVR8K,  AVR2K},
@@ -10,20 +10,20 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atxmega128a3u", AVR136K, AVR8K,  AVR2K},
        {"atxmega128b1",  AVR136K, AVR8K,  AVR2K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 16:11:30.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 16:11:38.000000000 +0300
-@@ -290,6 +290,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega384c3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+--- gas/config/tc-avr.c        2011-12-22 12:22:14.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:23:13.000000000 +0530
+@@ -294,6 +294,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atxmega384c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-   {"atxmega128a1u",AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-+  {"atxmega128a4u",AVR_ISA_XMEGA, bfd_mach_avrxmega7},
+   {"atxmega128a1u", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
++  {"atxmega128a4u", AVR_ISA_XMEGAU, bfd_mach_avrxmega7},
    {"attiny4",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
    {"attiny5",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
    {"attiny9",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 16:11:30.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 16:11:38.000000000 +0300
-@@ -108,7 +108,7 @@ atxmega256a3u, atxmega256a3b, atxmega256
+--- gas/doc/c-avr.texi 2011-12-22 12:22:14.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:22:22.000000000 +0530
+@@ -107,7 +107,7 @@ atxmega256a3u, atxmega256a3b, atxmega256
  
  Instruction set avrxmega7 is for the XMEGA AVR core with greater than 64K program
  memory space and greater than 64K data space (MCU types: atxmega128a1,
similarity index 58%
rename from 419-binutils-2.20.1-atxmega64d4.patch
rename to 413-binutils-atxmega64d4.patch
index 1097767b25afde990f2b0a5bb0d3e48c9f7180e1..ea0e1624a6d7abe07fe9559192a92ca855f6a27e 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 16:12:22.000000000 +0300
-+++ binutils/size.c    2011-09-05 16:12:30.000000000 +0300
+--- binutils/size.c    2011-12-22 12:27:41.000000000 +0530
++++ binutils/size.c    2011-12-22 12:28:09.000000000 +0530
 @@ -165,7 +165,8 @@ avr_device_t avr[] =
        {"atxmega64a3",   AVR68K,  AVR4K,  AVR2K},
        {"atxmega64a3u",  AVR68K,  AVR4K,  AVR2K},
@@ -12,24 +12,25 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega64rfr2",  AVR64K,  AVR8K,  AVR2K},
  
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 16:12:22.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 16:12:30.000000000 +0300
-@@ -273,6 +273,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:27:41.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:28:09.000000000 +0530
+@@ -277,6 +277,7 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-   {"atxmega64a3u",AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64a3u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega4},
    {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
 +  {"atxmega64d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
    {"atxmega64a1u",AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
    {"atxmega128a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 16:12:22.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 16:12:30.000000000 +0300
-@@ -95,7 +95,7 @@ memory space and greater than 64K data s
+--- gas/doc/c-avr.texi 2011-12-22 12:27:41.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:28:09.000000000 +0530
+@@ -94,7 +94,8 @@ Instruction set avrxmega3 is for the XME
+ memory space and greater than 64K data space (MCU types: none).
  
  Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program
- memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64a3u,
--atxmega64d3).
+-memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64a3u, atxmega64d3).
++memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64a3u,
 +atxmega64d3, atxmega64d4).
  
  Instruction set avrxmega5 is for the XMEGA AVR core with up to 64K program 
similarity index 70%
rename from 420-binutils-2.20.1-atmega164pa_168pa_32a_64a.patch
rename to 414-binutils-atmega164pa_168pa_32a_64a.patch
index 75a09f04fffcd109507dfaa3253092f2333d63ad..f9d7ecb41e3917ec281721659d3767899c899bdf 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-05 16:13:00.000000000 +0300
-+++ binutils/size.c    2011-09-05 16:13:06.000000000 +0300
+--- binutils/size.c    2011-12-16 15:36:12.000000000 +0530
++++ binutils/size.c    2011-12-16 15:38:01.000000000 +0530
 @@ -175,6 +175,7 @@ avr_device_t avr[] =
        {"at90usb646",    AVR64K,  AVR4K,  AVR2K},
        {"at90usb647",    AVR64K,  AVR4K,  AVR2K},
@@ -9,7 +9,7 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega640",     AVR64K,  AVR8K,  AVR4K},
        {"atmega644",     AVR64K,  AVR4K,  AVR2K},
        {"atmega644a",    AVR64K,  AVR4K,  AVR2K},
-@@ -207,6 +208,7 @@ avr_device_t avr[] =
+@@ -206,6 +207,7 @@ avr_device_t avr[] =
        {"at90can32",     AVR32K,  AVR2K,  AVR1K},
        {"at94k",         AVR32K,  AVR4K,  0UL},
        {"atmega32",      AVR32K,  AVR2K,  AVR1K},
@@ -17,7 +17,7 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega323",     AVR32K,  AVR2K,  AVR1K},
        {"atmega324a",    AVR32K,  AVR2K,  AVR1K},
        {"atmega324p",    AVR32K,  AVR2K,  AVR1K},
-@@ -256,6 +258,7 @@ avr_device_t avr[] =
+@@ -255,6 +257,7 @@ avr_device_t avr[] =
        {"atmega164",     AVR16K,  AVR1K,  AVR512},
        {"atmega164a",    AVR16K,  AVR1K,  AVR512},
        {"atmega164p",    AVR16K,  AVR1K,  AVR512},
@@ -25,7 +25,7 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega165a",    AVR16K,  AVR1K,  AVR512},
        {"atmega165",     AVR16K,  AVR1K,  AVR512},
        {"atmega165p",    AVR16K,  AVR1K,  AVR512},
-@@ -263,6 +266,7 @@ avr_device_t avr[] =
+@@ -262,6 +265,7 @@ avr_device_t avr[] =
        {"atmega168",     AVR16K,  AVR1K,  AVR512},
        {"atmega168a",    AVR16K,  AVR1K,  AVR512},
        {"atmega168p",    AVR16K,  AVR1K,  AVR512},
@@ -34,9 +34,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega169a",    AVR16K,  AVR1K,  AVR512},
        {"atmega169p",    AVR16K,  AVR1K,  AVR512},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-05 16:13:00.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-05 16:13:06.000000000 +0300
-@@ -170,6 +170,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-16 15:36:12.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 15:38:01.000000000 +0530
+@@ -172,6 +172,7 @@ static struct mcu_type_s mcu_types[] =
    {"atmega163",  AVR_ISA_M161,    bfd_mach_avr5},
    {"atmega164a", AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega164p", AVR_ISA_AVR5,    bfd_mach_avr5},
@@ -44,7 +44,7 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega165",  AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega165a", AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega165p", AVR_ISA_AVR5,    bfd_mach_avr5},
-@@ -177,11 +178,13 @@ static struct mcu_type_s mcu_types[] =
+@@ -179,11 +180,13 @@ static struct mcu_type_s mcu_types[] =
    {"atmega168",  AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega168a", AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega168p", AVR_ISA_AVR5,    bfd_mach_avr5},
@@ -58,7 +58,7 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega323",  AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega324a", AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega324p", AVR_ISA_AVR5,    bfd_mach_avr5},
-@@ -208,6 +211,7 @@ static struct mcu_type_s mcu_types[] =
+@@ -210,6 +213,7 @@ static struct mcu_type_s mcu_types[] =
    {"atmega64rfa2", AVR_ISA_AVR5,  bfd_mach_avr5},
    {"atmega64rfr2", AVR_ISA_AVR5,  bfd_mach_avr5},
    {"atmega64",   AVR_ISA_AVR5,    bfd_mach_avr5},
@@ -67,23 +67,22 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega644",  AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega644a", AVR_ISA_AVR5,    bfd_mach_avr5},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-05 16:13:00.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-05 16:13:06.000000000 +0300
-@@ -65,13 +65,13 @@ at90pwm1,at90pwm2, at90pwm2b, at90pwm3, 
+--- gas/doc/c-avr.texi 2011-12-16 15:36:12.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 15:38:01.000000000 +0530
+@@ -65,12 +65,12 @@ at90pwm1, at90pwm2, at90pwm2b, at90pwm3,
  
  Instruction set avr5 is for the enhanced AVR core with up to 128K program
  memory space (MCU types: at90pwm161, atmega16, atmega16a, atmega161, atmega162,
 -atmega163, atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega165pa, atmega168, 
--atmega168a, atmega168p, atmega169, atmega169p, atmega169pa,
--atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a,
-+atmega163, atmega164a, atmega164p, atmega164pa, atmega165, atmega165a, atmega165p, atmega165pa,
-+atmega168, atmega168a, atmega168p, atmega168pa, atmega169, atmega169p, atmega169pa, 
-+atmega32, atmega32a, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a,
- atmega325p, atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, 
- atmega328, atmega328p,atmega329, atmega329a, atmega329p, atmega329pa, atmega3290, 
- atmega3290a, atmega3290p, atmega3290pa, atmega406,  atmega64rfa2, atmega64rfr2, 
--atmega64, atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645, 
-+atmega64, atmega64a, atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645, 
- atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649, 
- atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega64hve, 
- atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb, atmega16hvbrevb, 
+-atmega168a, atmega168p, atmega169, atmega169a, atmega169p, atmega169pa,
+-atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a, atmega325p,
++atmega163, atmega164a, atmega164p, atmega164pa, atmega165, atmega165a, atmega165p, atmega165pa, atmega168, 
++atmega168a, atmega168p, atmega168pa, atmega169, atmega169a, atmega169p, atmega169pa,
++atmega32, atmega32a, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, atmega325a, atmega325p,
+ atmega325pa, atmega3250, atmega3250a, atmega3250p, atmega3250pa, atmega328,
+ atmega328p, atmega329, atmega329a, atmega329p, atmega329pa, atmega3290,
+-atmega3290a, atmega3290p, atmega3290pa, atmega406, atmega64, atmega64rfa2,
++atmega3290a, atmega3290p, atmega3290pa, atmega406, atmega64, atmega64a, atmega64rfa2,
+ atmegarfr2, atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645,
+ atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649,
+ atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega16hva, atmega16hva2,
similarity index 70%
rename from 421-binutils-2.20.1-atxmega64_128_b3.patch
rename to 415-binutils-atxmega64_128_b3.patch
index 0397c357d16a0d28fa090065cf61d5fa6b333348..93db106d89167cef4e423ee3c5a86a11580bf238 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-07 14:41:26.000000000 +0300
-+++ binutils/size.c    2011-09-07 14:55:58.000000000 +0300
+--- binutils/size.c    2011-12-22 12:30:35.000000000 +0530
++++ binutils/size.c    2011-12-22 12:30:49.000000000 +0530
 @@ -147,6 +147,7 @@ avr_device_t avr[] =
        {"atxmega128a3",  AVR136K, AVR8K,  AVR2K},
        {"atxmega128a3u", AVR136K, AVR8K,  AVR2K},
@@ -18,27 +18,27 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atxmega64d4",   AVR68K,  AVR4K,  AVR2K},
  
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-07 14:41:26.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-07 14:55:58.000000000 +0300
-@@ -276,6 +276,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:30:35.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:31:58.000000000 +0530
+@@ -280,6 +280,7 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega32x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-   {"atxmega64a3u",AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64a3u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega4},
 +  {"atxmega64b3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
-@@ -283,6 +284,7 @@ static struct mcu_type_s mcu_types[] =
+@@ -287,6 +288,7 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega128a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega128a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega128a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega128b1", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
 +  {"atxmega128b3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega128d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega192a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega192a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-07 14:41:26.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-07 14:55:58.000000000 +0300
+--- gas/doc/c-avr.texi 2011-12-22 12:30:35.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:30:49.000000000 +0530
 @@ -95,7 +95,7 @@ memory space and greater than 64K data s
  
  Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program
@@ -48,14 +48,12 @@ diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
  
  Instruction set avrxmega5 is for the XMEGA AVR core with up to 64K program 
  memory space and greater than 64K data space (MCU types: atxmega64a1,
-@@ -103,8 +103,8 @@ atxmega64a1u).
+@@ -103,7 +103,7 @@ atxmega64a1u).
  
  Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
  memory space and less than 64K data space (MCU types: atxmega128a3, atxmega128a3u,
 -atxmega128d3, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega192d3, atxmega256a3,
--atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega192d3, atxmega384c3).
-+atxmega128d3, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega128b3, atxmega192d3,
-+atxmega256a3,atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega192d3, atxmega384c3).
++atxmega128d3, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega128b3, atxmega192d3, atxmega256a3,
+ atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega384c3).
  
  Instruction set avrxmega7 is for the XMEGA AVR core with greater than 64K program
- memory space and greater than 64K data space (MCU types: atxmega128a1,
similarity index 73%
rename from 422-binutils-2.20.1-atxmega64b1.patch
rename to 416-binutils-atxmega64b1.patch
index a38f871a81c9efb9010ed7fa56a0d3f57283404a..09ee9ecd7f3e008925b1d2d0305d3e8a6412095e 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-07 18:04:50.000000000 +0300
-+++ binutils/size.c    2011-09-07 18:11:50.000000000 +0300
+--- binutils/size.c    2011-12-22 12:33:22.000000000 +0530
++++ binutils/size.c    2011-12-22 12:33:37.000000000 +0530
 @@ -165,6 +165,7 @@ avr_device_t avr[] =
        {"atxmega64a1u",  AVR68K,  AVR4K,  AVR2K},
        {"atxmega64a3",   AVR68K,  AVR4K,  AVR2K},
@@ -10,19 +10,19 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atxmega64d3",   AVR68K,  AVR4K,  AVR2K},
        {"atxmega64d4",   AVR68K,  AVR4K,  AVR2K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-07 18:04:50.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-07 18:10:28.000000000 +0300
-@@ -276,6 +276,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:33:22.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:34:22.000000000 +0530
+@@ -280,6 +280,7 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega32x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-   {"atxmega64a3u",AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64a3u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega4},
 +  {"atxmega64b1", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64b3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-07 18:04:50.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-07 18:12:34.000000000 +0300
+--- gas/doc/c-avr.texi 2011-12-22 12:33:22.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:33:37.000000000 +0530
 @@ -95,7 +95,7 @@ memory space and greater than 64K data s
  
  Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program
similarity index 77%
rename from 423-binutils-2.20.1-atmega_8a_128a_1284.patch
rename to 417-binutils-atmega_8a_128a_1284.patch
index b69e7f00c2a9bd28f3222c496a472f9aaeb2788b..6699131b4f6c4f951b202438efdec07579346e9f 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-08 17:12:34.000000000 +0300
-+++ binutils/size.c    2011-09-08 17:19:37.000000000 +0300
+--- binutils/size.c    2011-12-16 15:50:12.000000000 +0530
++++ binutils/size.c    2011-12-16 15:51:32.000000000 +0530
 @@ -155,8 +155,10 @@ avr_device_t avr[] =
        {"at90usb1286",   AVR128K, AVR8K,  AVR4K},
        {"at90usb1287",   AVR128K, AVR8K,  AVR4K},
@@ -12,7 +12,7 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega1284p",   AVR128K, AVR16K, AVR4K},
        {"atmega128rfa1", AVR128K, AVR16K, AVR4K},
        {"atmega103",     AVR128K, 4000UL, AVR4K},
-@@ -296,6 +298,7 @@ avr_device_t avr[] =
+@@ -295,6 +297,7 @@ avr_device_t avr[] =
        {"at90usb82",     AVR8K,   AVR512, AVR512},
        {"ata6289",       AVR8K,   AVR512, 320UL},
        {"atmega8",       AVR8K,   AVR1K,  AVR512},
@@ -21,9 +21,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega8535",    AVR8K,   AVR512, AVR512},
        {"atmega88",      AVR8K,   AVR1K,  AVR512},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-08 17:12:34.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-08 17:17:16.000000000 +0300
-@@ -145,6 +145,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-16 15:50:12.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 15:51:32.000000000 +0530
+@@ -147,6 +147,7 @@ static struct mcu_type_s mcu_types[] =
    {"atmega32u2", AVR_ISA_AVR35,   bfd_mach_avr35},
    {"attiny1634", AVR_ISA_AVR35,   bfd_mach_avr35},
    {"atmega8",    AVR_ISA_M8,      bfd_mach_avr4},
@@ -31,7 +31,7 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega48",   AVR_ISA_AVR4,    bfd_mach_avr4},
    {"atmega48a",  AVR_ISA_AVR4,    bfd_mach_avr4},
    {"atmega48pa", AVR_ISA_AVR4,    bfd_mach_avr4},
-@@ -254,8 +255,10 @@ static struct mcu_type_s mcu_types[] =
+@@ -257,8 +258,10 @@ static struct mcu_type_s mcu_types[] =
    {"at94k",      AVR_ISA_94K,     bfd_mach_avr5},
    {"m3000",      AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega128",  AVR_ISA_AVR51,   bfd_mach_avr51},
@@ -43,19 +43,19 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega128rfa1",AVR_ISA_AVR51, bfd_mach_avr51},
    {"atmega128rfa2",AVR_ISA_AVR51, bfd_mach_avr51},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-08 17:12:34.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-08 17:23:11.000000000 +0300
+--- gas/doc/c-avr.texi 2011-12-16 15:50:12.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 15:51:32.000000000 +0530
 @@ -59,7 +59,7 @@ instructions (MCU types: attiny167, atti
  atmega8u2, atmega16u2, atmega32u2).
  
  Instruction set avr4 is for the enhanced AVR core with up to 8K program
--memory space (MCU types: atmega48, atmega48a, atmega48pa, atmega48p,atmega8,
-+memory space (MCU types: atmega48, atmega48a, atmega48pa, atmega48p,atmega8, atmega8a,
+-memory space (MCU types: atmega48, atmega48a, atmega48pa, atmega48p, atmega8,
++memory space (MCU types: atmega48, atmega48a, atmega48pa, atmega48p, atmega8, atmega8a
  atmega88, atmega88a, atmega88p, atmega88pa, atmega8515, atmega8535, atmega8hva,
- at90pwm1,at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81).
+ at90pwm1, at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81).
  
-@@ -80,7 +80,7 @@ atmega32c1, atmega64c1, atmega64m1, atme
- atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
+@@ -80,7 +80,7 @@ atmega64c1, atmega16m1, atmega32m1, atme
+ atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
  
  Instruction set avr51 is for the enhanced AVR core with exactly 128K program
 -memory space (MCU types: atmega128, atmega1280, atmega1281, atmega1284p,
similarity index 70%
rename from 424-binutils-2.20.1-atxmega64a4u.patch
rename to 418-binutils-atxmega64a4u.patch
index 9e04ba3377947f68c9cbe79b969dcff643ddb305..8ba4a13df561372abcbe295768b78db611c241d5 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-12 14:15:53.000000000 +0300
-+++ binutils/size.c    2011-09-12 14:24:31.000000000 +0300
+--- binutils/size.c    2011-12-22 12:36:03.000000000 +0530
++++ binutils/size.c    2011-12-22 12:36:08.000000000 +0530
 @@ -167,6 +167,7 @@ avr_device_t avr[] =
        {"atxmega64a1u",  AVR68K,  AVR4K,  AVR2K},
        {"atxmega64a3",   AVR68K,  AVR4K,  AVR2K},
@@ -10,19 +10,19 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atxmega64b3",   AVR68K,  AVR4K,  AVR2K},
        {"atxmega64d3",   AVR68K,  AVR4K,  AVR2K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-12 14:15:53.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-12 14:24:31.000000000 +0300
-@@ -279,6 +279,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:36:03.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:36:51.000000000 +0530
+@@ -283,6 +283,7 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega32x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-   {"atxmega64a3u",AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-+  {"atxmega64a4u",AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64a3u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega4},
++  {"atxmega64a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega4},
    {"atxmega64b1", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64b3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
    {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-12 14:15:53.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-12 14:24:31.000000000 +0300
+--- gas/doc/c-avr.texi 2011-12-22 12:36:03.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:36:08.000000000 +0530
 @@ -95,7 +95,7 @@ memory space and greater than 64K data s
  
  Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program
similarity index 59%
rename from 425-binutils-2.20.1-atxmega128d4.patch
rename to 419-binutils-atxmega128d4.patch
index 970be54ebdbcd2b164acbf83b7c22a3e810ed593..2ba7043d055c1f99026857fe93e9f5b72eb79d30 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-15 11:59:56.000000000 +0300
-+++ binutils/size.c    2011-09-15 12:04:20.000000000 +0300
+--- binutils/size.c    2011-12-22 12:38:05.000000000 +0530
++++ binutils/size.c    2011-12-22 12:38:14.000000000 +0530
 @@ -149,6 +149,7 @@ avr_device_t avr[] =
        {"atxmega128b1",  AVR136K, AVR8K,  AVR2K},
        {"atxmega128b3",  AVR136K, AVR8K,  AVR2K},
@@ -10,28 +10,25 @@ diff -Naurp binutils/size.c binutils/size.c
        {"at43usb320",    AVR128K, 608UL,  0UL},
        {"at90can128",    AVR128K, AVR4K,  AVR4K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-15 11:59:56.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-15 12:04:20.000000000 +0300
-@@ -291,6 +291,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:38:05.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:38:14.000000000 +0530
+@@ -295,6 +295,7 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega128b1", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega128b3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega128d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
 +  {"atxmega128d4", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega192a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega192a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega192d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-15 11:59:56.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-15 12:04:20.000000000 +0300
-@@ -103,8 +103,9 @@ atxmega64a1u).
+--- gas/doc/c-avr.texi 2011-12-22 12:38:05.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:38:14.000000000 +0530
+@@ -103,7 +103,7 @@ atxmega64a1u).
  
  Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
  memory space and less than 64K data space (MCU types: atxmega128a3, atxmega128a3u,
--atxmega128d3, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega128b3, atxmega192d3,
--atxmega256a3,atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega192d3, atxmega384c3).
-+atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega128b3, 
-+atxmega192d3, atxmega256a3,atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega192d3, 
-+atxmega384c3).
+-atxmega128d3, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega128b3, atxmega192d3, atxmega256a3,
++atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega128b3, atxmega192d3, atxmega256a3,
+ atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega384c3).
  
  Instruction set avrxmega7 is for the XMEGA AVR core with greater than 64K program
- memory space and greater than 64K data space (MCU types: atxmega128a1,
similarity index 69%
rename from 426-binutils-2.20.1-atmxt336s.patch
rename to 420-binutils-atmxt336s.patch
index 72c40dee1d5ae9bf87437690b733f859bce7e4e9..21abb68c17667f6396498c2bdb7ef8c302be6acf 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-09-15 16:09:26.000000000 +0300
-+++ binutils/size.c    2011-09-15 16:08:10.000000000 +0300
+--- binutils/size.c    2011-12-22 12:39:06.000000000 +0530
++++ binutils/size.c    2011-12-22 12:39:15.000000000 +0530
 @@ -95,12 +95,14 @@ static int return_code = 0;
  #define AVR2K 2048UL
  #define AVR4K 4096UL
@@ -26,25 +26,25 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega406",     AVR40K,  AVR2K,  AVR512},
  
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-09-15 16:09:26.000000000 +0300
-+++ gas/config/tc-avr.c        2011-09-15 16:08:10.000000000 +0300
-@@ -270,6 +270,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:39:06.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:39:15.000000000 +0530
+@@ -273,6 +273,7 @@ static struct mcu_type_s mcu_types[] =
    {"atmega2561", AVR_ISA_AVR6,    bfd_mach_avr6},
    {"atmega256rfa2", AVR_ISA_AVR6, bfd_mach_avr6},
    {"atmega256rfr2", AVR_ISA_AVR6, bfd_mach_avr6},
 +  {"atmxt336s",   AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega16a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-   {"atxmega16a4u",AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atxmega16a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega2},
    {"atxmega16d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-09-15 16:09:26.000000000 +0300
-+++ gas/doc/c-avr.texi 2011-09-15 16:08:10.000000000 +0300
+--- gas/doc/c-avr.texi 2011-12-22 12:39:06.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:39:15.000000000 +0530
 @@ -88,7 +88,7 @@ atmega2560, atmega2561, atmega256rfa2, a
  
  Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program
  memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u,
--atxmega16d4, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1).
-+atxmega16d4, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1, atmxt336s).
+-atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1).
++atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1, atmxt336s).
  
  Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program
  memory space and greater than 64K data space (MCU types: none).
similarity index 59%
rename from 427-binutils-2.20.1-atxmega16c4_32c4_128c3_256c3.patch
rename to 421-binutils-atxmega16c4_32c4_128c3_256c3.patch
index 6c86c7e975966502c4bb132c431b958f8c715d47..da36513191d4c4b890b8c603799aa19ff13a4f00 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-11-02 17:21:35.000000000 +0530
-+++ binutils/size.c    2011-11-02 17:32:40.000000000 +0530
+--- binutils/size.c    2011-12-22 12:40:00.000000000 +0530
++++ binutils/size.c    2011-12-22 12:40:10.000000000 +0530
 @@ -131,6 +131,7 @@ avr_device_t avr[] =
        {"atxmega256a3u", AVR264K, AVR16K, AVR4K},
        {"atxmega256a3b", AVR264K, AVR16K, AVR4K},
@@ -18,14 +18,14 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atxmega128d4",  AVR136K, AVR8K,  AVR2K},
  
 @@ -213,6 +215,7 @@ avr_device_t avr[] =
-
        {"atxmega32a4",   AVR36K,  AVR4K,  AVR1K},
        {"atxmega32a4u",  AVR36K,  AVR4K,  AVR1K},
 +      {"atxmega32c4",   AVR36K,  AVR4K,  AVR1K},
        {"atxmega32d4",   AVR36K,  AVR4K,  AVR1K},
-       {"atxmega32x1",   AVR36K,  AVR2K,  AVR1K},
  
-@@ -254,6 +257,7 @@ avr_device_t avr[] =
+       {"at90can32",     AVR32K,  AVR2K,  AVR1K},
+@@ -253,6 +256,7 @@ avr_device_t avr[] =
  
        {"atxmega16a4",   AVR20K,  AVR2K,  AVR1K},
          {"atxmega16a4u",  AVR20K,  AVR2K,  AVR1K},
@@ -34,58 +34,60 @@ diff -Naurp binutils/size.c binutils/size.c
  
        {"at76c711",      AVR16K,  AVR2K,  0UL},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-11-02 17:21:35.000000000 +0530
-+++ gas/config/tc-avr.c        2011-11-02 17:25:47.000000000 +0530
-@@ -273,9 +273,11 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2011-12-22 12:40:00.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:44:21.000000000 +0530
+@@ -276,10 +276,12 @@ static struct mcu_type_s mcu_types[] =
    {"atmxt336s",   AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega16a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-   {"atxmega16a4u",AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega16c4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atxmega16a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega2},
++  {"atxmega16c4", AVR_ISA_XMEGAU,  bfd_mach_avrxmega2}, 
    {"atxmega16d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atxmega16x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega32a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-   {"atxmega32a4u",AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-+  {"atxmega32c4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atxmega32a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega2},
++  {"atxmega32c4", AVR_ISA_XMEGAU,  bfd_mach_avrxmega2},
    {"atxmega32d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega32x1", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega64a3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
-@@ -291,6 +293,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega128a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+@@ -295,6 +297,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atxmega128a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega128b1", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega128b3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-+  {"atxmega128c3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
++  {"atxmega128c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega128d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega128d4", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-@@ -300,6 +303,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega256a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+@@ -304,6 +307,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atxmega256a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega256a3bu",AVR_ISA_XMEGA,bfd_mach_avrxmega6},
-+  {"atxmega256c3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
++  {"atxmega256c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega384c3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega384c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-11-02 17:21:35.000000000 +0530
-+++ gas/doc/c-avr.texi 2011-11-02 17:38:30.000000000 +0530
-@@ -88,7 +88,8 @@ atmega2560, atmega2561, atmega256rfa2, a
+--- gas/doc/c-avr.texi 2011-12-22 12:40:00.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:40:10.000000000 +0530
+@@ -87,8 +87,9 @@ Instruction set avr6 is for the enhanced
+ atmega2560, atmega2561, atmega256rfa2, atmega256rfr2).
  
  Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program
- memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u,
--atxmega16d4, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1, atmxt336s).
-+atxmega16c4, atxmega16d4, atxmega32a4, atxmega32a4u, atxmega32c4, atxmega32d4, 
-+atxmega32x1, atmxt336s).
+-memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u,
+-atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, atxmega32d4, atxmega32x1, atmxt336s).
++memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u, atxmega16c4,
++atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, ,atxmega32c4, atxmega32d4, atxmega32x1,
++atmxt336s).
  
  Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program
  memory space and greater than 64K data space (MCU types: none).
-@@ -103,9 +104,9 @@ atxmega64a1u).
+@@ -103,8 +104,9 @@ atxmega64a1u).
  
  Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
  memory space and less than 64K data space (MCU types: atxmega128a3, atxmega128a3u,
--atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega128b3, 
--atxmega192d3, atxmega256a3,atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega192d3, 
--atxmega384c3).
-+atxmega128c3, atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1, 
-+atxmega128b3, atxmega192d3, atxmega256a3,atxmega256a3u, atxmega256a3b, atxmega256a3bu, 
+-atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1, atxmega128b3, atxmega192d3, atxmega256a3,
+-atxmega256a3u, atxmega256a3b, atxmega256a3bu, atxmega384c3).
++atxmega128c3, atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1,
++atxmega128b3, atxmega192d3, atxmega256a3, atxmega256a3u, atxmega256a3b, atxmega256a3bu,
 +atxmega256c3, atxmega256d3, atxmega384c3).
  
  Instruction set avrxmega7 is for the XMEGA AVR core with greater than 64K program
similarity index 62%
rename from 428-binutils-2.20.1-atxmega384d3.patch
rename to 422-binutils-atxmega384d3.patch
index 969482dfd904712c2c0957304926dd606127087a..6c0d0490cd6089eadb6a66509c84b935bf2f5ece 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-11-08 14:48:07.000000000 +0530
-+++ binutils/size.c    2011-11-08 14:50:07.000000000 +0530
+--- binutils/size.c    2011-12-22 12:45:34.000000000 +0530
++++ binutils/size.c    2011-12-22 12:45:45.000000000 +0530
 @@ -110,6 +110,7 @@ static int return_code = 0;
  #define AVR200K 204800UL
  #define AVR256K 262144UL
@@ -19,23 +19,23 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atmega256rfa2", AVR256K, AVR32K, AVR8K},
        {"atmega256rfr2", AVR256K, AVR32K, AVR8K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-11-08 14:48:07.000000000 +0530
-+++ gas/config/tc-avr.c        2011-11-08 14:50:07.000000000 +0530
-@@ -306,6 +306,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atxmega256c3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+--- gas/config/tc-avr.c        2011-12-22 12:45:34.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:46:09.000000000 +0530
+@@ -310,6 +310,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atxmega256c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
    {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega384c3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega384c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
 +  {"atxmega384d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-   {"atxmega128a1u",AVR_ISA_XMEGA, bfd_mach_avrxmega7},
-   {"atxmega128a4u",AVR_ISA_XMEGA, bfd_mach_avrxmega7},
+   {"atxmega128a1u", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
+   {"atxmega128a4u", AVR_ISA_XMEGAU, bfd_mach_avrxmega7},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-11-08 14:48:07.000000000 +0530
-+++ gas/doc/c-avr.texi 2011-11-08 14:55:04.000000000 +0530
+--- gas/doc/c-avr.texi 2011-12-22 12:45:34.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:45:45.000000000 +0530
 @@ -106,7 +106,7 @@ Instruction set avrxmega6 is for the XME
  memory space and less than 64K data space (MCU types: atxmega128a3, atxmega128a3u,
- atxmega128c3, atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1, 
- atxmega128b3, atxmega192d3, atxmega256a3,atxmega256a3u, atxmega256a3b, atxmega256a3bu, 
+ atxmega128c3, atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1,
+ atxmega128b3, atxmega192d3, atxmega256a3, atxmega256a3u, atxmega256a3b, atxmega256a3bu,
 -atxmega256c3, atxmega256d3, atxmega384c3).
 +atxmega256c3, atxmega256d3, atxmega384c3, atxmega384d3).
  
diff --git a/423-binutils-atmega48hvf.patch b/423-binutils-atmega48hvf.patch
new file mode 100644 (file)
index 0000000..9328887
--- /dev/null
@@ -0,0 +1,44 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2011-12-16 16:16:32.000000000 +0530
++++ binutils/size.c    2011-12-16 16:22:02.000000000 +0530
+@@ -102,6 +102,7 @@ static int return_code = 0;
+ #define AVR32K 32768UL
+ #define AVR36K 36864UL
+ #define AVR40K 40960UL
++#define AVR48K 49152UL
+ #define AVR52K 53248UL
+ #define AVR64K 65536UL
+ #define AVR68K 69632UL
+@@ -331,6 +332,7 @@ avr_device_t avr[] =
+       {"at90s4433",     AVR4K,   AVR128, AVR256},
+       {"at90s4434",     AVR4K,   352UL,  AVR256},
+       {"atmega48",      AVR4K,   AVR512, AVR256},
++      {"atmega48hvf",   AVR48K,  AVR2K,  AVR1K},
+       {"atmega48a",     AVR4K,   AVR512, AVR256},
+       {"atmega48pa",    AVR4K,   AVR512, AVR256},
+       {"atmega48p",     AVR4K,   AVR512, AVR256},
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2011-12-16 16:16:32.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-16 16:22:02.000000000 +0530
+@@ -238,6 +238,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atmega16hvbrevb",AVR_ISA_AVR5,bfd_mach_avr5},
+   {"atmega32hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
+   {"atmega32hvbrevb",AVR_ISA_AVR5,bfd_mach_avr5},
++  {"atmega48hvf",AVR_ISA_AVR5,    bfd_mach_avr5},
+   {"atmega64hve",AVR_ISA_AVR5,    bfd_mach_avr5},
+   {"at90can32" , AVR_ISA_AVR5,    bfd_mach_avr5},
+   {"at90can64" , AVR_ISA_AVR5,    bfd_mach_avr5},
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2011-12-16 16:19:33.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-16 16:22:02.000000000 +0530
+@@ -74,8 +74,8 @@ atmega3290a, atmega3290p, atmega3290pa, 
+ atmegarfr2, atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645,
+ atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649,
+ atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega16hva, atmega16hva2,
+-atmega16hvb, atmega16hvbrevb, atmega32hvb, atmega32hvbrevb, atmega64hve,
+-at90can32, at90can64, at90pwm161, at90pwm216, at90pwm316, atmega32c1,
++atmega16hvb, atmega16hvbrevb, atmega32hvb, atmega32hvbrevb, atmega48hvf, atmega64hve,
++at90can32, at90can64, at90pwm216, at90pwm316, atmega32c1,
+ atmega64c1, atmega16m1, atmega32m1, atmega64m1, atmega16u4, atmega32u4,
+ atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
similarity index 51%
rename from 430-binutils-2.20.1-atmega26hvg.patch
rename to 424-binutils-atmega26hvg.patch
index e445de079396b9e5f7365817fa1236a1662962d5..fa61f9a809c6452e59e7e807256203a08a04850d 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-12-08 14:07:10.000000000 +0530
-+++ binutils/size.c    2011-12-14 18:26:08.000000000 +0530
+--- binutils/size.c    2011-12-22 12:53:39.000000000 +0530
++++ binutils/size.c    2011-12-22 12:53:45.000000000 +0530
 @@ -99,6 +99,7 @@ static int return_code = 0;
  #define AVR16K 16384UL
  #define AVR20K 20480UL
@@ -9,7 +9,7 @@ diff -Naurp binutils/size.c binutils/size.c
  #define AVR32K 32768UL
  #define AVR36K 36864UL
  #define AVR40K 40960UL
-@@ -257,6 +258,8 @@ avr_device_t avr[] =
+@@ -256,6 +257,8 @@ avr_device_t avr[] =
        {"atmega32u4",    AVR32K,  2560UL, AVR1K},
        {"atmega32u6",    AVR32K,  2560UL, AVR1K},
  
@@ -19,10 +19,10 @@ diff -Naurp binutils/size.c binutils/size.c
  
        {"atxmega16a4",   AVR20K,  AVR2K,  AVR1K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-12-08 14:07:10.000000000 +0530
-+++ gas/config/tc-avr.c        2011-12-08 14:08:31.000000000 +0530
-@@ -235,6 +235,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atmega16hva2",AVR_ISA_AVR5,   bfd_mach_avr5},
+--- gas/config/tc-avr.c        2011-12-22 12:53:39.000000000 +0530
++++ gas/config/tc-avr.c        2011-12-22 12:53:45.000000000 +0530
+@@ -236,6 +236,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atmega16hva2",AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega16hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
    {"atmega16hvbrevb",AVR_ISA_AVR5,bfd_mach_avr5},
 +  {"atmega26hvg",AVR_ISA_AVR5,    bfd_mach_avr5},
@@ -30,14 +30,14 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
    {"atmega32hvbrevb",AVR_ISA_AVR5,bfd_mach_avr5},
    {"atmega48hvf",AVR_ISA_AVR5,    bfd_mach_avr5},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-12-08 14:07:10.000000000 +0530
-+++ gas/doc/c-avr.texi 2011-12-08 14:13:40.000000000 +0530
+--- gas/doc/c-avr.texi 2011-12-22 12:53:39.000000000 +0530
++++ gas/doc/c-avr.texi 2011-12-22 12:53:45.000000000 +0530
 @@ -74,7 +74,7 @@ atmega3290a, atmega3290p, atmega3290pa, 
- atmega64, atmega64a, atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645, 
- atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649, 
- atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega64hve, 
--atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb, atmega16hvbrevb, 
-+atmega16hva, atmega16hva2, atmega16hvb, atmega26hvg, atmega32hvb, atmega16hvbrevb, 
- atmega32hvbrevb, atmega48hvf, at90can32, at90can64, at90pwm216, at90pwm316, atmega16u4, 
- atmega32c1, atmega64c1, atmega64m1, atmega16m1, atmega32m1, atmega64m1,
- atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
+ atmegarfr2, atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645,
+ atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649,
+ atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega16hva, atmega16hva2,
+-atmega16hvb, atmega16hvbrevb, atmega32hvb, atmega32hvbrevb, atmega48hvf, atmega64hve,
++atmega16hvb, atmega16hvbrevb, atmega26hvg, atmega32hvb, atmega32hvbrevb, atmega48hvf, atmega64hve,
+ at90can32, at90can64, at90pwm216, at90pwm316, atmega32c1,
+ atmega64c1, atmega16m1, atmega32m1, atmega64m1, atmega16u4, atmega32u4,
+ atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
similarity index 68%
rename from 431-binutils-2.20.1-atmxt224_224e.patch
rename to 425-binutils-atmxt224_224e.patch
index 6952bfae7c83686bcf5e9c00188cde97e7bcd783..9c74659791408f0e4084c3309047b4794f59d36d 100644 (file)
@@ -1,6 +1,6 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2012-01-18 12:59:34.000000000 +0530
-+++ binutils/size.c    2012-01-18 12:58:46.000000000 +0530
+--- binutils/size.c    2012-02-10 20:48:10.000000000 +0530
++++ binutils/size.c    2012-02-10 20:49:19.000000000 +0530
 @@ -95,6 +95,7 @@ static int return_code = 0;
  #define AVR2K 2048UL
  #define AVR4K 4096UL
@@ -19,9 +19,9 @@ diff -Naurp binutils/size.c binutils/size.c
        {"atxmega32a4u",  AVR36K,  AVR4K,  AVR1K},
        {"atxmega32c4",   AVR36K,  AVR4K,  AVR1K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2012-01-18 12:59:34.000000000 +0530
-+++ gas/config/tc-avr.c        2012-01-18 12:58:46.000000000 +0530
-@@ -272,6 +272,8 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2012-02-10 20:48:10.000000000 +0530
++++ gas/config/tc-avr.c        2012-02-10 20:49:19.000000000 +0530
+@@ -275,6 +275,8 @@ static struct mcu_type_s mcu_types[] =
    {"atmega2561", AVR_ISA_AVR6,    bfd_mach_avr6},
    {"atmega256rfa2", AVR_ISA_AVR6, bfd_mach_avr6},
    {"atmega256rfr2", AVR_ISA_AVR6, bfd_mach_avr6},
@@ -29,16 +29,16 @@ diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
 +  {"atmxt224e",   AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atmxt336s",   AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
    {"atxmega16a4", AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
-   {"atxmega16a4u",AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atxmega16a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega2},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2012-01-18 12:59:34.000000000 +0530
-+++ gas/doc/c-avr.texi 2012-01-18 13:02:14.000000000 +0530
+--- gas/doc/c-avr.texi 2012-02-10 20:48:10.000000000 +0530
++++ gas/doc/c-avr.texi 2012-02-10 20:52:41.000000000 +0530
 @@ -89,7 +89,7 @@ atmega2560, atmega2561, atmega256rfa2, a
  Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program
- memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u,
- atxmega16c4, atxmega16d4, atxmega32a4, atxmega32a4u, atxmega32c4, atxmega32d4, 
--atxmega32x1, atmxt336s).
-+atxmega32x1, atmxt224, atmxt224e, atmxt336s).
+ memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u, atxmega16c4,
+ atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, ,atxmega32c4, atxmega32d4, atxmega32x1,
+-atmxt336s).
++atmxt224, atmxt224e, atmxt336s).
  
  Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program
  memory space and greater than 64K data space (MCU types: none).
similarity index 57%
rename from 431-binutils-2.20.1-atxmega192c3.patch
rename to 426-binutils-atxmega192c3.patch
index 0095732757d08795f01e752d327bbeab96628b16..7cca67884ae4d5be94193cf290d8198f31da70f0 100644 (file)
@@ -1,7 +1,7 @@
 diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2012-01-18 19:44:42.000000000 +0530
-+++ binutils/size.c    2012-01-23 13:58:59.000000000 +0530
-@@ -144,6 +144,7 @@ avr_device_t avr[] =
+--- binutils/size.c    2012-02-10 20:56:48.000000000 +0530
++++ binutils/size.c    2012-02-10 20:57:23.000000000 +0530
+@@ -145,6 +145,7 @@ avr_device_t avr[] =
  
        {"atxmega192a3",  AVR200K, AVR16K, AVR2K},
        {"atxmega192a3u", AVR200K, AVR16K, AVR2K},
@@ -10,25 +10,25 @@ diff -Naurp binutils/size.c binutils/size.c
  
        {"atmega128rfa2", AVR128K, AVR16K, AVR4K},
 diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2012-01-18 19:44:41.000000000 +0530
-+++ gas/config/tc-avr.c        2012-01-18 18:53:03.000000000 +0530
-@@ -300,6 +300,7 @@ static struct mcu_type_s mcu_types[] =
+--- gas/config/tc-avr.c        2012-02-10 20:56:48.000000000 +0530
++++ gas/config/tc-avr.c        2012-02-10 21:01:00.000000000 +0530
+@@ -306,6 +306,7 @@ static struct mcu_type_s mcu_types[] =
    {"atxmega128d4", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega192a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega192a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega192a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
 +  {"atxmega192c3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega192d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
    {"atxmega256a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
-   {"atxmega256a3u",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega256a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
 diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2012-01-18 19:44:41.000000000 +0530
-+++ gas/doc/c-avr.texi 2012-01-18 18:59:24.000000000 +0530
+--- gas/doc/c-avr.texi 2012-02-10 20:56:48.000000000 +0530
++++ gas/doc/c-avr.texi 2012-02-10 20:59:05.000000000 +0530
 @@ -105,7 +105,7 @@ atxmega64a1u).
  Instruction set avrxmega6 is for the XMEGA AVR core with up to 256K program
  memory space and less than 64K data space (MCU types: atxmega128a3, atxmega128a3u,
- atxmega128c3, atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1, 
--atxmega128b3, atxmega192d3, atxmega256a3,atxmega256a3u, atxmega256a3b, atxmega256a3bu, 
-+atxmega128b3, ,atxmega192c3, atxmega192d3, atxmega256a3,atxmega256a3u, atxmega256a3b, atxmega256a3bu, 
+ atxmega128c3, atxmega128d3, atxmega128d4, atxmega192a3, atxmega192a3u, atxmega128b1,
+-atxmega128b3, atxmega192d3, atxmega256a3, atxmega256a3u, atxmega256a3b, atxmega256a3bu,
++atxmega128b3, atxmega192c3, atxmega192d3, atxmega256a3, atxmega256a3u, atxmega256a3b, atxmega256a3bu,
  atxmega256c3, atxmega256d3, atxmega384c3, atxmega384d3).
  
  Instruction set avrxmega7 is for the XMEGA AVR core with greater than 64K program
diff --git a/427-binutils-atmxt112sl.patch b/427-binutils-atmxt112sl.patch
new file mode 100644 (file)
index 0000000..ca0dfcd
--- /dev/null
@@ -0,0 +1,37 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2012-02-10 21:04:14.000000000 +0530
++++ binutils/size.c    2012-02-10 21:04:48.000000000 +0530
+@@ -218,6 +218,8 @@ avr_device_t avr[] =
+       
+       {"atmxt336s",     AVR52K,  AVR14K, 0UL},
++      {"atmxt112sl",    AVR48K,  AVR8K,  0UL},
++
+       {"atmega406",     AVR40K,  AVR2K,  AVR512},
+       {"atmxt224",      AVR36K,  AVR9K,  0UL},
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2012-02-10 21:04:14.000000000 +0530
++++ gas/config/tc-avr.c        2012-02-10 21:04:48.000000000 +0530
+@@ -275,6 +275,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atmega2561", AVR_ISA_AVR6,    bfd_mach_avr6},
+   {"atmega256rfa2", AVR_ISA_AVR6, bfd_mach_avr6},
+   {"atmega256rfr2", AVR_ISA_AVR6, bfd_mach_avr6},
++  {"atmxt112sl",  AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atmxt224",    AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atmxt224e",   AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+   {"atmxt336s",   AVR_ISA_XMEGA,  bfd_mach_avrxmega2},
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2012-02-10 21:04:14.000000000 +0530
++++ gas/doc/c-avr.texi 2012-02-10 21:06:26.000000000 +0530
+@@ -88,8 +88,8 @@ atmega2560, atmega2561, atmega256rfa2, a
+ Instruction set avrxmega2 is for the XMEGA AVR core with 8K to 64K program
+ memory space and less than 64K data space (MCU types: atxmega16a4, atxmega16a4u, atxmega16c4,
+-atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, ,atxmega32c4, atxmega32d4, atxmega32x1,
+-atmxt224, atmxt224e, atmxt336s).
++atxmega16d4, atxmega16x1, atxmega32a4, atxmega32a4u, ,atxmega32c4, atxmega32d4,
++atxmega32x1, atmxt224, atmxt224e, atmxt336s, atmxt112sl).
+ Instruction set avrxmega3 is for the XMEGA AVR core with 8K to 64K program
+ memory space and greater than 64K data space (MCU types: none).
diff --git a/428-binutils-atxmega64c3.patch b/428-binutils-atxmega64c3.patch
new file mode 100644 (file)
index 0000000..18cd1af
--- /dev/null
@@ -0,0 +1,34 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2012-02-10 21:10:36.000000000 +0530
++++ binutils/size.c    2012-02-10 21:11:04.000000000 +0530
+@@ -182,6 +182,7 @@ avr_device_t avr[] =
+       {"atxmega64a4u",  AVR68K,  AVR4K,  AVR2K},
+       {"atxmega64b1",   AVR68K,  AVR4K,  AVR2K},
+       {"atxmega64b3",   AVR68K,  AVR4K,  AVR2K},
++      {"atxmega64c3",   AVR68K,  AVR4K,  AVR2K},
+       {"atxmega64d3",   AVR68K,  AVR4K,  AVR2K},
+       {"atxmega64d4",   AVR68K,  AVR4K,  AVR2K},
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2012-02-10 21:10:36.000000000 +0530
++++ gas/config/tc-avr.c        2012-02-10 21:11:04.000000000 +0530
+@@ -294,6 +294,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atxmega64a4u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega4},
+   {"atxmega64b1", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64b3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
++  {"atxmega64c3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2012-02-10 21:10:36.000000000 +0530
++++ gas/doc/c-avr.texi 2012-02-10 21:11:04.000000000 +0530
+@@ -96,7 +96,7 @@ memory space and greater than 64K data s
+ Instruction set avrxmega4 is for the XMEGA AVR core with up to 64K program
+ memory space and less than 64K data space (MCU types: atxmega64a3, atxmega64a3u,
+-atxmega64a4u, atxmega64b1, atxmega64b3, atxmega64d3, atxmega64d4).
++atxmega64a4u, atxmega64b1, atxmega64b3, atxmega64c3, atxmega64d3, atxmega64d4).
+ Instruction set avrxmega5 is for the XMEGA AVR core with up to 64K program 
+ memory space and greater than 64K data space (MCU types: atxmega64a1,
diff --git a/429-binutils-2.20.1-atmega48hvf.patch b/429-binutils-2.20.1-atmega48hvf.patch
deleted file mode 100644 (file)
index 63bdb44..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-diff -Naurp binutils/size.c binutils/size.c
---- binutils/size.c    2011-11-16 13:02:43.000000000 +0530
-+++ binutils/size.c    2011-11-16 15:28:08.000000000 +0530
-@@ -102,6 +102,7 @@ static int return_code = 0;
- #define AVR32K 32768UL
- #define AVR36K 36864UL
- #define AVR40K 40960UL
-+#define AVR48K 49152UL
- #define AVR52K 53248UL
- #define AVR64K 65536UL
- #define AVR68K 69632UL
-@@ -332,6 +333,7 @@ avr_device_t avr[] =
-       {"at90s4433",     AVR4K,   AVR128, AVR256},
-       {"at90s4434",     AVR4K,   352UL,  AVR256},
-       {"atmega48",      AVR4K,   AVR512, AVR256},
-+      {"atmega48hvf",   AVR48K,  AVR2K,  AVR1K}, 
-       {"atmega48a",     AVR4K,   AVR512, AVR256},
-       {"atmega48pa",    AVR4K,   AVR512, AVR256},
-       {"atmega48p",     AVR4K,   AVR512, AVR256},
-diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
---- gas/config/tc-avr.c        2011-11-16 13:02:43.000000000 +0530
-+++ gas/config/tc-avr.c        2011-11-16 14:39:15.000000000 +0530
-@@ -237,6 +237,7 @@ static struct mcu_type_s mcu_types[] =
-   {"atmega16hvbrevb",AVR_ISA_AVR5,bfd_mach_avr5},
-   {"atmega32hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega32hvbrevb",AVR_ISA_AVR5,bfd_mach_avr5},
-+  {"atmega48hvf",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at90can32" , AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at90can64" , AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at90pwm216", AVR_ISA_AVR5,    bfd_mach_avr5},
-diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
---- gas/doc/c-avr.texi 2011-11-16 13:02:43.000000000 +0530
-+++ gas/doc/c-avr.texi 2011-11-16 15:31:23.000000000 +0530
-@@ -75,7 +75,7 @@ atmega64, atmega64a, atmega640, atmega64
- atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649, 
- atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega64hve, 
- atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb, atmega16hvbrevb, 
--atmega32hvbrevb, at90can32, at90can64, at90pwm216, at90pwm316, atmega16u4, 
-+atmega32hvbrevb, atmega48hvf, at90can32, at90can64, at90pwm216, at90pwm316, atmega16u4, 
- atmega32c1, atmega64c1, atmega64m1, atmega16m1, atmega32m1, atmega64m1,
- atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
diff --git a/429-binutils-ata6285_6286.patch b/429-binutils-ata6285_6286.patch
new file mode 100644 (file)
index 0000000..1bc67ba
--- /dev/null
@@ -0,0 +1,36 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2012-02-15 13:57:10.000000000 +0530
++++ binutils/size.c    2012-02-16 16:51:58.000000000 +0530
+@@ -319,6 +319,8 @@ avr_device_t avr[] =
+       {"at90s8515",     AVR8K,   AVR512, AVR512},
+       {"at90s8535",     AVR8K,   AVR512, AVR512},
+       {"at90usb82",     AVR8K,   AVR512, AVR512},
++      {"ata6285",       AVR8K,   AVR512, 320UL},
++      {"ata6286",       AVR8K,   AVR512, 320UL},
+       {"ata6289",       AVR8K,   AVR512, 320UL},
+       {"atmega8",       AVR8K,   AVR1K,  AVR512},
+       {"atmega8a",      AVR8K,   AVR1K,  AVR512},
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2012-02-15 13:57:09.000000000 +0530
++++ gas/config/tc-avr.c        2012-02-17 11:06:57.000000000 +0530
+@@ -148,6 +148,8 @@ static struct mcu_type_s mcu_types[] =
+   {"attiny1634", AVR_ISA_AVR35,   bfd_mach_avr35},
+   {"atmega8",    AVR_ISA_M8,      bfd_mach_avr4},
+   {"atmega8a",   AVR_ISA_M8,      bfd_mach_avr4},
++  {"ata6285",    AVR_ISA_AVR4,    bfd_mach_avr4},
++  {"ata6286",    AVR_ISA_AVR4,    bfd_mach_avr4},
+   {"atmega48",   AVR_ISA_AVR4,    bfd_mach_avr4},
+   {"atmega48a",  AVR_ISA_AVR4,    bfd_mach_avr4},
+   {"atmega48pa", AVR_ISA_AVR4,    bfd_mach_avr4},
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2012-02-15 13:57:09.000000000 +0530
++++ gas/doc/c-avr.texi 2012-02-16 16:51:58.000000000 +0530
+@@ -61,7 +61,7 @@ atmega8u2, atmega16u2, atmega32u2).
+ Instruction set avr4 is for the enhanced AVR core with up to 8K program
+ memory space (MCU types: atmega48, atmega48a, atmega48pa, atmega48p, atmega8, atmega8a
+ atmega88, atmega88a, atmega88p, atmega88pa, atmega8515, atmega8535, atmega8hva,
+-at90pwm1, at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81).
++at90pwm1, at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81, ata6285, ata6286).
+ Instruction set avr5 is for the enhanced AVR core with up to 128K program
+ memory space (MCU types: at90pwm161, atmega16, atmega16a, atmega161, atmega162,
diff --git a/430-binutils-attiny828.patch b/430-binutils-attiny828.patch
new file mode 100644 (file)
index 0000000..c7d443b
--- /dev/null
@@ -0,0 +1,34 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2012-02-23 15:24:08.000000000 +0530
++++ binutils/size.c    2012-02-23 15:27:09.000000000 +0530
+@@ -357,6 +357,7 @@ avr_device_t avr[] =
+       {"attiny461a",    AVR4K,   AVR256, AVR256},
+       {"attiny48",      AVR4K,   AVR256, AVR64},
+       {"attiny80",      AVR8K,   AVR512, AVR256},
++      {"attiny828",     AVR8K,   AVR512, AVR256},
+       {"at86rf401",     AVR2K,   224UL,  AVR128},
+       {"at90s2313",     AVR2K,   AVR128, AVR128},
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2012-02-23 15:24:08.000000000 +0530
++++ gas/config/tc-avr.c        2012-02-23 15:26:16.000000000 +0530
+@@ -133,6 +133,7 @@ static struct mcu_type_s mcu_types[] =
+   {"attiny48",   AVR_ISA_AVR25,   bfd_mach_avr25},
+   {"attiny88",   AVR_ISA_AVR25,   bfd_mach_avr25},
+   {"attiny80",   AVR_ISA_AVR25,   bfd_mach_avr25}, 
++  {"attiny828",  AVR_ISA_AVR25,   bfd_mach_avr25}, 
+   {"at86rf401",  AVR_ISA_RF401,   bfd_mach_avr25},
+   {"ata6289",    AVR_ISA_AVR25,   bfd_mach_avr25},
+   {"at43usb355", AVR_ISA_AVR3,    bfd_mach_avr3},
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2012-02-23 15:24:08.000000000 +0530
++++ gas/doc/c-avr.texi 2012-02-23 15:27:30.000000000 +0530
+@@ -46,7 +46,7 @@ space plus the MOVW instruction (MCU typ
+ attiny2313a, attiny24, attiny24a, attiny4313, attiny44, attiny44a, attiny84,
+ attiny84a, attiny25, attiny45, attiny85, attiny261, attiny261a, attiny461,
+ attiny461a, attiny861, attiny861a, attiny87, attiny43u, attiny48, attiny88,
+-attiny80, at86rf401, ata6289).
++attiny80, attiny828, at86rf401, ata6289).
+ Instruction set avr3 is for the classic AVR core with up to 128K program
+ memory space (MCU types: at43usb355, at76c711).
diff --git a/431-binutils-ata5790_5790N_5795.patch b/431-binutils-ata5790_5790N_5795.patch
new file mode 100644 (file)
index 0000000..794a4c8
--- /dev/null
@@ -0,0 +1,47 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2012-02-27 11:45:17.000000000 +0530
++++ binutils/size.c    2012-02-27 11:49:07.000000000 +0530
+@@ -91,6 +91,7 @@ static int return_code = 0;
+ #define AVR128 128UL
+ #define AVR256 256UL
+ #define AVR512 512UL
++#define AVR2112 2112UL
+ #define AVR1K 1024UL
+ #define AVR2K 2048UL
+ #define AVR4K 4096UL
+@@ -193,6 +194,9 @@ avr_device_t avr[] =
+       {"at90scr100",    AVR64K,  AVR4K,  AVR2K},
+       {"at90usb646",    AVR64K,  AVR4K,  AVR2K},
+       {"at90usb647",    AVR64K,  AVR4K,  AVR2K},
++      {"ata5790",       AVR16K,  AVR512, AVR2112},
++      {"ata5790n",      AVR16K,  AVR512, AVR2112},
++      {"ata5795",       AVR8K,   AVR512, AVR2112},
+       {"atmega64",      AVR64K,  AVR4K,  AVR2K},
+       {"atmega64a",     AVR64K,  AVR4K,  AVR2K},
+       {"atmega640",     AVR64K,  AVR8K,  AVR4K},
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2012-02-27 11:45:17.000000000 +0530
++++ gas/config/tc-avr.c        2012-02-27 11:46:30.000000000 +0530
+@@ -169,6 +169,9 @@ static struct mcu_type_s mcu_types[] =
+   {"at90pwm3b",  AVR_ISA_AVR4,    bfd_mach_avr4},
+   {"at90pwm81",  AVR_ISA_AVR4,    bfd_mach_avr4},
+   {"at90pwm161", AVR_ISA_AVR5,    bfd_mach_avr5},
++  {"ata5790",    AVR_ISA_AVR5,    bfd_mach_avr5},
++  {"ata5790n",   AVR_ISA_AVR5,    bfd_mach_avr5},
++  {"ata5795",    AVR_ISA_AVR5,    bfd_mach_avr5},
+   {"atmega16",   AVR_ISA_AVR5,    bfd_mach_avr5},
+   {"atmega16a",  AVR_ISA_AVR5,    bfd_mach_avr5},
+   {"atmega161",  AVR_ISA_M161,    bfd_mach_avr5},
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2012-02-27 11:45:17.000000000 +0530
++++ gas/doc/c-avr.texi 2012-02-27 11:46:30.000000000 +0530
+@@ -77,7 +77,8 @@ atmega649a, atmega649p, atmega6490, atme
+ atmega16hvb, atmega16hvbrevb, atmega26hvg, atmega32hvb, atmega32hvbrevb, atmega48hvf, atmega64hve,
+ at90can32, at90can64, at90pwm216, at90pwm316, atmega32c1,
+ atmega64c1, atmega16m1, atmega32m1, atmega64m1, atmega16u4, atmega32u4,
+-atmega32u6, at90usb646, at90usb647, at94k, at90scr100).
++atmega32u6, at90usb646, at90usb647, at94k, at90scr100,
++ata5790, ata5790n, ata5795).
+ Instruction set avr51 is for the enhanced AVR core with exactly 128K program
+ memory space (MCU types: atmega128, atmega128a, atmega1280, atmega1281, atmega1284, atmega1284p,
diff --git a/432-binutils-ata5272_5505.patch b/432-binutils-ata5272_5505.patch
new file mode 100644 (file)
index 0000000..015a830
--- /dev/null
@@ -0,0 +1,55 @@
+diff -Naurp binutils/size.c binutils/size.c
+--- binutils/size.c    2012-03-27 20:30:42.000000000 +0530
++++ binutils/size.c    2012-03-29 10:32:25.000000000 +0530
+@@ -194,9 +194,11 @@ avr_device_t avr[] =
+       {"at90scr100",    AVR64K,  AVR4K,  AVR2K},
+       {"at90usb646",    AVR64K,  AVR4K,  AVR2K},
+       {"at90usb647",    AVR64K,  AVR4K,  AVR2K},
++      {"ata5505",       AVR16K,  AVR512, AVR512},
+       {"ata5790",       AVR16K,  AVR512, AVR2112},
+       {"ata5790n",      AVR16K,  AVR512, AVR2112},
+       {"ata5795",       AVR8K,   AVR512, AVR2112},
++      {"ata5272",       AVR8K,   AVR512, AVR512},
+       {"atmega64",      AVR64K,  AVR4K,  AVR2K},
+       {"atmega64a",     AVR64K,  AVR4K,  AVR2K},
+       {"atmega640",     AVR64K,  AVR8K,  AVR4K},
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2012-03-27 20:30:42.000000000 +0530
++++ gas/config/tc-avr.c        2012-03-30 13:57:40.000000000 +0530
+@@ -108,6 +108,7 @@ static struct mcu_type_s mcu_types[] =
+   {"at90s8515",  AVR_ISA_AVR2,    bfd_mach_avr2},
+   {"at90c8534",  AVR_ISA_AVR2,    bfd_mach_avr2},
+   {"at90s8535",  AVR_ISA_AVR2,    bfd_mach_avr2},
++  {"ata5272",    AVR_ISA_AVR25,   bfd_mach_avr25},
+   {"attiny13",   AVR_ISA_AVR25,   bfd_mach_avr25},
+   {"attiny13a",  AVR_ISA_AVR25,   bfd_mach_avr25},
+   {"attiny2313", AVR_ISA_AVR25,   bfd_mach_avr25},
+@@ -143,6 +144,7 @@ static struct mcu_type_s mcu_types[] =
+   {"attiny167",  AVR_ISA_AVR35,   bfd_mach_avr35},
+   {"at90usb82",  AVR_ISA_AVR35,   bfd_mach_avr35},
+   {"at90usb162", AVR_ISA_AVR35,   bfd_mach_avr35},
++  {"ata5505",    AVR_ISA_AVR35,   bfd_mach_avr35},
+   {"atmega8u2",  AVR_ISA_AVR35,   bfd_mach_avr35},
+   {"atmega16u2", AVR_ISA_AVR35,   bfd_mach_avr35},
+   {"atmega32u2", AVR_ISA_AVR35,   bfd_mach_avr35},
+diff -Naurp gas/doc/c-avr.texi gas/doc/c-avr.texi
+--- gas/doc/c-avr.texi 2012-03-27 20:30:42.000000000 +0530
++++ gas/doc/c-avr.texi 2012-03-30 13:59:41.000000000 +0530
+@@ -46,7 +46,7 @@ space plus the MOVW instruction (MCU typ
+ attiny2313a, attiny24, attiny24a, attiny4313, attiny44, attiny44a, attiny84,
+ attiny84a, attiny25, attiny45, attiny85, attiny261, attiny261a, attiny461,
+ attiny461a, attiny861, attiny861a, attiny87, attiny43u, attiny48, attiny88,
+-attiny80, attiny828, at86rf401, ata6289).
++attiny80, attiny828, at86rf401, ata6289, ata5272).
+ Instruction set avr3 is for the classic AVR core with up to 128K program
+ memory space (MCU types: at43usb355, at76c711).
+@@ -56,7 +56,7 @@ memory space (MCU types: atmega103, at43
+ Instruction set avr35 is for classic AVR core plus MOVW, CALL, and JMP
+ instructions (MCU types: attiny167, attiny1634, at90usb82, at90usb162,
+-atmega8u2, atmega16u2, atmega32u2).
++atmega8u2, atmega16u2, atmega32u2, ata5505).
+ Instruction set avr4 is for the enhanced AVR core with up to 8K program
+ memory space (MCU types: atmega48, atmega48a, atmega48pa, atmega48p, atmega8, atmega8a
similarity index 88%
rename from 500-binutils-2.20.1-bug13789.patch
rename to 500-binutils-bug13789.patch
index c46fb05bdcc5cb2c09a04b5a4e6509bd44005762..29a34f5547474435c607fa90789cc18536307892 100644 (file)
@@ -1,7 +1,7 @@
-diff -rupN bfd/archures.c bfd/archures.c
---- bfd/archures.c     2011-05-11 20:06:37.000000000 -0500
-+++ bfd/archures.c     2011-05-10 13:35:37.000000000 -0500
-@@ -368,6 +368,7 @@ DESCRIPTION
+diff -Naurp bfd/archures.c bfd/archures.c
+--- bfd/archures.c     2011-11-29 15:45:57.000000000 +0530
++++ bfd/archures.c     2011-11-29 17:31:00.000000000 +0530
+@@ -381,6 +381,7 @@ DESCRIPTION
  .#define bfd_mach_avr5                5
  .#define bfd_mach_avr51               51
  .#define bfd_mach_avr6                6
@@ -9,7 +9,7 @@ diff -rupN bfd/archures.c bfd/archures.c
  .#define bfd_mach_avrxmega1 101
  .#define bfd_mach_avrxmega2 102
  .#define bfd_mach_avrxmega3 103
-@@ -375,7 +376,6 @@ DESCRIPTION
+@@ -388,7 +389,6 @@ DESCRIPTION
  .#define bfd_mach_avrxmega5 105
  .#define bfd_mach_avrxmega6 106
  .#define bfd_mach_avrxmega7 107
@@ -17,10 +17,10 @@ diff -rupN bfd/archures.c bfd/archures.c
  .  bfd_arch_bfin,        {* ADI Blackfin *}
  .#define bfd_mach_bfin          1
  .  bfd_arch_cr16,       {* National Semiconductor CompactRISC (ie CR16). *}
-diff -rupN bfd/bfd-in2.h bfd/bfd-in2.h
---- bfd/bfd-in2.h      2011-05-11 20:06:39.000000000 -0500
-+++ bfd/bfd-in2.h      2011-05-10 13:35:37.000000000 -0500
-@@ -2042,6 +2042,7 @@ enum bfd_architecture
+diff -Naurp bfd/bfd-in2.h bfd/bfd-in2.h
+--- bfd/bfd-in2.h      2011-11-29 15:45:57.000000000 +0530
++++ bfd/bfd-in2.h      2011-11-29 17:31:00.000000000 +0530
+@@ -2088,6 +2088,7 @@ enum bfd_architecture
  #define bfd_mach_avr5          5
  #define bfd_mach_avr51         51
  #define bfd_mach_avr6          6
@@ -28,7 +28,7 @@ diff -rupN bfd/bfd-in2.h bfd/bfd-in2.h
  #define bfd_mach_avrxmega1 101
  #define bfd_mach_avrxmega2 102
  #define bfd_mach_avrxmega3 103
-@@ -2049,7 +2050,6 @@ enum bfd_architecture
+@@ -2095,7 +2096,6 @@ enum bfd_architecture
  #define bfd_mach_avrxmega5 105
  #define bfd_mach_avrxmega6 106
  #define bfd_mach_avrxmega7 107
@@ -36,9 +36,9 @@ diff -rupN bfd/bfd-in2.h bfd/bfd-in2.h
    bfd_arch_bfin,        /* ADI Blackfin */
  #define bfd_mach_bfin          1
    bfd_arch_cr16,       /* National Semiconductor CompactRISC (ie CR16). */
-diff -rupN bfd/cpu-avr.c bfd/cpu-avr.c
---- bfd/cpu-avr.c      2011-05-11 20:06:41.000000000 -0500
-+++ bfd/cpu-avr.c      2011-05-10 13:35:37.000000000 -0500
+diff -Naurp bfd/cpu-avr.c bfd/cpu-avr.c
+--- bfd/cpu-avr.c      2011-11-29 15:45:57.000000000 +0530
++++ bfd/cpu-avr.c      2011-11-29 17:31:00.000000000 +0530
 @@ -135,29 +135,29 @@ static const bfd_arch_info_type arch_inf
    /* 3-Byte PC.  */
    N (22, bfd_mach_avr6, "avr:6", FALSE, & arch_info_struct[10]),
@@ -79,9 +79,9 @@ diff -rupN bfd/cpu-avr.c bfd/cpu-avr.c
    
  };
  
-diff -rupN include/elf/avr.h include/elf/avr.h
---- include/elf/avr.h  2011-05-11 20:06:42.000000000 -0500
-+++ include/elf/avr.h  2011-05-10 13:35:37.000000000 -0500
+diff -Naurp include/elf/avr.h include/elf/avr.h
+--- include/elf/avr.h  2011-11-29 15:45:58.000000000 +0530
++++ include/elf/avr.h  2011-11-29 17:31:00.000000000 +0530
 @@ -40,6 +40,7 @@
  #define E_AVR_MACH_AVR5 5
  #define E_AVR_MACH_AVR51 51
@@ -98,9 +98,9 @@ diff -rupN include/elf/avr.h include/elf/avr.h
  
  /* Relocations.  */
  START_RELOC_NUMBERS (elf_avr_reloc_type)
-diff -rupN ld/emulparams/avrtiny10.sh ld/emulparams/avrtiny10.sh
---- ld/emulparams/avrtiny10.sh 2011-05-11 20:06:44.000000000 -0500
-+++ ld/emulparams/avrtiny10.sh 2011-05-10 13:39:44.000000000 -0500
+diff -Naurp ld/emulparams/avrtiny10.sh ld/emulparams/avrtiny10.sh
+--- ld/emulparams/avrtiny10.sh 2011-11-29 15:45:58.000000000 +0530
++++ ld/emulparams/avrtiny10.sh 2011-11-29 17:31:00.000000000 +0530
 @@ -1,12 +1,13 @@
 -ARCH=avr:201
 +ARCH=avr:100
@@ -119,10 +119,10 @@ diff -rupN ld/emulparams/avrtiny10.sh ld/emulparams/avrtiny10.sh
 +DATA_ORIGIN=0x0800040
 +DATA_LENGTH=0x100
  EXTRA_EM_FILE=avrelf
-diff -rupN ld/Makefile.am ld/Makefile.am
---- ld/Makefile.am     2011-05-11 20:06:47.000000000 -0500
-+++ ld/Makefile.am     2011-05-10 13:35:37.000000000 -0500
-@@ -764,7 +764,7 @@ eavrxmega7.c: $(srcdir)/emulparams/avrxm
+diff -Naurp ld/Makefile.am ld/Makefile.am
+--- ld/Makefile.am     2011-11-29 15:45:58.000000000 +0530
++++ ld/Makefile.am     2011-11-29 17:31:00.000000000 +0530
+@@ -820,7 +820,7 @@ eavrxmega7.c: $(srcdir)/emulparams/avrxm
    ${GEN_DEPENDS}
        ${GENSCRIPTS} avrxmega7 "$(tdir_avr2)"
  eavrtiny10.c: $(srcdir)/emulparams/avrtiny10.sh \
@@ -131,9 +131,9 @@ diff -rupN ld/Makefile.am ld/Makefile.am
    ${GEN_DEPENDS}
        ${GENSCRIPTS} avrtiny10 "$(tdir_avr2)"
  ecoff_i860.c: $(srcdir)/emulparams/coff_i860.sh \
-diff -rupN ld/scripttempl/avrtiny10.sc ld/scripttempl/avrtiny10.sc
---- ld/scripttempl/avrtiny10.sc        1969-12-31 18:00:00.000000000 -0600
-+++ ld/scripttempl/avrtiny10.sc        2011-05-10 13:35:37.000000000 -0500
+diff -Naurp ld/scripttempl/avrtiny10.sc ld/scripttempl/avrtiny10.sc
+--- ld/scripttempl/avrtiny10.sc        1970-01-01 05:30:00.000000000 +0530
++++ ld/scripttempl/avrtiny10.sc        2011-11-29 17:31:00.000000000 +0530
 @@ -0,0 +1,240 @@
 +cat <<EOF
 +OUTPUT_FORMAT("${OUTPUT_FORMAT}","${OUTPUT_FORMAT}","${OUTPUT_FORMAT}")
diff --git a/501-binutils-modify-usb-xmega-isa.patch b/501-binutils-modify-usb-xmega-isa.patch
new file mode 100644 (file)
index 0000000..bd88d99
--- /dev/null
@@ -0,0 +1,28 @@
+diff -Naurp gas/config/tc-avr.c gas/config/tc-avr.c
+--- gas/config/tc-avr.c        2012-03-30 19:35:59.000000000 +0530
++++ gas/config/tc-avr.c        2012-03-30 19:36:31.000000000 +0530
+@@ -306,7 +306,7 @@ static struct mcu_type_s mcu_types[] =
+   {"atxmega64d3", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64d4", AVR_ISA_XMEGA,  bfd_mach_avrxmega4},
+   {"atxmega64a1", AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
+-  {"atxmega64a1u",AVR_ISA_XMEGA,  bfd_mach_avrxmega5},
++  {"atxmega64a1u",AVR_ISA_XMEGAU,  bfd_mach_avrxmega5},
+   {"atxmega128a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega128a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
+   {"atxmega128b1", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+@@ -321,13 +321,13 @@ static struct mcu_type_s mcu_types[] =
+   {"atxmega256a3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega256a3u",AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
+   {"atxmega256a3b",AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+-  {"atxmega256a3bu",AVR_ISA_XMEGA,bfd_mach_avrxmega6},
++  {"atxmega256a3bu",AVR_ISA_XMEGAU,bfd_mach_avrxmega6},
+   {"atxmega256c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
+   {"atxmega256d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega384c3", AVR_ISA_XMEGAU, bfd_mach_avrxmega6},
+   {"atxmega384d3", AVR_ISA_XMEGA, bfd_mach_avrxmega6},
+   {"atxmega128a1", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
+-  {"atxmega128a1u", AVR_ISA_XMEGA, bfd_mach_avrxmega7},
++  {"atxmega128a1u", AVR_ISA_XMEGAU, bfd_mach_avrxmega7},
+   {"atxmega128a4u", AVR_ISA_XMEGAU, bfd_mach_avrxmega7},
+   {"attiny4",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
+   {"attiny5",      AVR_ISA_AVRTINY10, bfd_mach_avrtiny10},
diff --git a/502-binutils-add-config-section-tiny.patch b/502-binutils-add-config-section-tiny.patch
new file mode 100644 (file)
index 0000000..8e96775
--- /dev/null
@@ -0,0 +1,32 @@
+diff -Naurp ld/scripttempl/avrtiny10.sc ld/scripttempl/avrtiny10.sc
+--- ld/scripttempl/avrtiny10.sc        2012-04-03 11:50:08.000000000 +0530
++++ ld/scripttempl/avrtiny10.sc        2012-04-03 11:52:48.000000000 +0530
+@@ -6,9 +6,13 @@ MEMORY
+ {
+   text   (rx)   : ORIGIN = $TEXT_ORIGIN, LENGTH = $TEXT_LENGTH
+   data   (rw!x) : ORIGIN = $DATA_ORIGIN, LENGTH = $DATA_LENGTH
+-  lock      (rw!x) : ORIGIN = 0x3F00, LENGTH = 2
+-  signature (rw!x) : ORIGIN = 0x3FC0, LENGTH = 4
+-/* REVISIT: fuse(rw!x) : */
++
++  /* Provide offsets for config, lock and signature to match
++     production file format. Ignore offsets in datasheet.  */
++
++  config(rw!x)     : ORIGIN = 0x820000, LENGTH = 2
++  lock      (rw!x) : ORIGIN = 0x830000, LENGTH = 2
++  signature (rw!x) : ORIGIN = 0x840000, LENGTH = 4
+ }
+ SECTIONS
+@@ -202,6 +206,11 @@ SECTIONS
+     KEEP(*(.signature*))
+   } ${RELOCATING+ > signature}
++  .config ${RELOCATING-0}:
++  {
++    KEEP(*(.config*))
++  } ${RELOCATING+ > config}
++
+   /* Stabs debugging sections.  */
+   .stab 0 : { *(.stab) }
+   .stabstr 0 : { *(.stabstr) }
diff --git a/503-binutils-avrtc193-tiny.patch b/503-binutils-avrtc193-tiny.patch
new file mode 100644 (file)
index 0000000..7c9661a
--- /dev/null
@@ -0,0 +1,221 @@
+--- bfd/elf32-avr.c    2012-04-19 14:45:03.000000000 +0530
++++ bfd/elf32-avr.c    2012-04-19 12:04:04.000000000 +0530
+@@ -516,6 +516,21 @@ static reloc_howto_type elf_avr_howto_ta
+        0x000000ff,            /* src_mask */
+        0x000000ff,            /* dst_mask */
+        FALSE),                /* pcrel_offset */
++  /* 7 bit immediate for LDS/STS in AVR8L (Tiny architecture) */
++  HOWTO (R_AVR_7_LDS16,         /* type */
++         0,
++         0,
++         8,
++         FALSE,
++         0,
++         complain_overflow_bitfield,
++         bfd_elf_generic_reloc,
++         "R_AVR_7_LDS16",
++         FALSE,
++         0xffff,
++         0xffff,
++         FALSE),
++
+ };
+ /* Map BFD reloc types to AVR ELF reloc types.  */
+@@ -554,7 +569,8 @@ static const struct avr_reloc_map avr_re
+   { BFD_RELOC_AVR_LDI,              R_AVR_LDI  },
+   { BFD_RELOC_AVR_6,                R_AVR_6    },
+   { BFD_RELOC_AVR_6_ADIW,           R_AVR_6_ADIW },
+-  { BFD_RELOC_8,                    R_AVR_8 }
++  { BFD_RELOC_8,                    R_AVR_8 },
++  { BFD_RELOC_AVR_7_LDS16,          R_AVR_7_LDS16 }
+ };
+ /* Meant to be filled one day with the wrap around address for the
+@@ -1085,6 +1101,17 @@ avr_final_link_relocate (reloc_howto_typ
+       bfd_put_16 (input_bfd, (bfd_vma) srel & 0xffff, contents+2);
+       break;
++    case R_AVR_7_LDS16:
++      contents += rel->r_offset;
++      srel = (bfd_signed_vma) relocation + rel->r_addend;
++      if ((srel & 0xFFFF) < 0x40 || (srel & 0xFFFF) > 0xbf)
++        return bfd_reloc_outofrange;
++      srel = srel & 0x7f;
++      x = bfd_get_16 (input_bfd, contents);
++      x |= (srel & 0x0f) | ((srel & 0x30) << 5) | ((srel & 0x40) << 2);
++      bfd_put_16 (input_bfd, x, contents);
++      break;
++
+     case R_AVR_16_PM:
+       use_stubs = (!htab->no_stubs);
+       contents += rel->r_offset;
+--- bfd/reloc.c        2011-07-24 19:50:06.000000000 +0530
++++ bfd/reloc.c        2012-04-19 14:40:17.000000000 +0530
+@@ -4314,6 +4314,11 @@ ENUM
+ ENUMDOC
+   This is a 6 bit reloc for the AVR that stores offset for adiw/sbiw
+   instructions
++ENUM
++  BFD_RELOC_AVR_7_LDS16
++ENUMDOC
++  This is a 7 bit reloc for the AVR that stores offset for 16bit sts/lds
++  instructions meant for tiny parts
+ ENUM
+   BFD_RELOC_RX_NEG8
+--- gas/config/tc-avr.c        2012-04-19 14:45:03.000000000 +0530
++++ gas/config/tc-avr.c        2012-04-19 12:04:04.000000000 +0530
+@@ -870,17 +870,12 @@ avr_operand (struct avr_opcodes_s *opcod
+         op_mask = avr_get_constant (str, 31);
+         str = input_line_pointer;
+       }
+-        if (strcmp(avr_mcu->name, "avrtiny10") == 0 
+-           || strcmp(avr_mcu->name, "attiny10") == 0
+-           || strcmp(avr_mcu->name, "attiny4")  == 0
+-           || strcmp(avr_mcu->name, "attiny5")  == 0
+-           || strcmp(avr_mcu->name, "attiny9")  == 0
+-           || strcmp(avr_mcu->name, "attiny20") == 0
+-           || strcmp(avr_mcu->name, "attiny40") == 0)
+-      {
+-                if(op_mask < 16)
+-                as_bad (_("register number above 15 required"));
+-      }
++
++      if (avr_mcu->mach == bfd_mach_avrtiny10)
++      {
++        if (op_mask < 16 || op_mask > 31)
++           as_bad (_("register not supported"));
++      } 
+       if (op_mask <= 31)
+       {
+@@ -1020,6 +1015,12 @@ avr_operand (struct avr_opcodes_s *opcod
+                  &op_expr, FALSE, BFD_RELOC_16);
+       break;
++    case 'j':
++      str = parse_exp (str, &op_expr);
++      fix_new_exp (frag_now, where, opcode->insn_size * 2,
++                   &op_expr, FALSE, BFD_RELOC_AVR_7_LDS16);
++      break;
++
+     case 'M':
+       {
+       bfd_reloc_code_real_type r_type;
+@@ -1328,6 +1329,16 @@ md_apply_fix (fixS *fixP, valueT * valP,
+         bfd_putl16 ((bfd_vma) insn | LDI_IMMEDIATE (value), where);
+         break;
++        case BFD_RELOC_AVR_7_LDS16:
++          if ((value < 0x40) || (value > 0xBF))
++            as_bad_where (fixP->fx_file, fixP->fx_line,
++                          _("operand out of range: 0x%lx"), (unsigned long)value);   
++          insn |= value & 0xF;
++          insn |= (value & 0x30) << 5;
++          insn |= (value & 0x40) << 2;
++          bfd_putl16 ((bfd_vma) insn, where);
++          break;
++ 
+       case BFD_RELOC_AVR_6:
+         if ((value > 63) || (value < 0))
+           as_bad_where (fixP->fx_file, fixP->fx_line,
+@@ -1513,7 +1524,18 @@ md_assemble (char *str)
+   if (!op[0])
+     as_bad (_("can't find opcode "));
+-  opcode = (struct avr_opcodes_s *) hash_find (avr_hash, op);
++  /* To handle Tiny (AVR8L) architecture peculiarities */
++  if (avr_mcu->isa & AVR_ISA_TINY)
++  {
++    if (*op == 'l' && *(op+1) == 'd' && *(op+2) == 's' && !*(op+3))
++      opcode = (struct avr_opcodes_s *) hash_find (avr_hash, "lds16");
++    else if (*op == 's' && *(op+1) == 't' && *(op+2) == 's' && !*(op+3))
++      opcode = (struct avr_opcodes_s *) hash_find (avr_hash, "sts16"); 
++    else
++      opcode = (struct avr_opcodes_s *) hash_find (avr_hash, op);
++  }
++  else
++    opcode = (struct avr_opcodes_s *) hash_find (avr_hash, op);
+   if (opcode == NULL)
+     {
+--- include/elf/avr.h  2012-04-19 14:45:03.000000000 +0530
++++ include/elf/avr.h  2012-04-19 12:04:04.000000000 +0530
+@@ -78,6 +78,7 @@ START_RELOC_NUMBERS (elf_avr_reloc_type)
+      RELOC_NUMBER (R_AVR_LO8_LDI_GS,         24)
+      RELOC_NUMBER (R_AVR_HI8_LDI_GS,         25)
+      RELOC_NUMBER (R_AVR_8,                  26)
++     RELOC_NUMBER (R_AVR_7_LDS16,              27)
+ END_RELOC_NUMBERS (R_AVR_max)
+ #endif /* _ELF_AVR_H */
+--- include/opcode/avr.h       2012-04-19 14:45:03.000000000 +0530
++++ include/opcode/avr.h       2012-04-19 12:04:04.000000000 +0530
+@@ -22,6 +22,7 @@
+ #define AVR_ISA_LPM   0x0002 /* device has LPM */
+ #define AVR_ISA_LPMX  0x0004 /* device has LPM Rd,Z[+] */
+ #define AVR_ISA_SRAM  0x0008 /* device has SRAM (LD, ST, PUSH, POP, ...) */
++#define AVR_ISA_TINY  0x0010 /* device has AVR8L core specific encodings */
+ #define AVR_ISA_MEGA  0x0020 /* device has >8K program memory (JMP and CALL
+                               supported, no 8K wrap on RJMP and RCALL) */
+ #define AVR_ISA_MUL   0x0040 /* device has new core (MUL, FMUL, ...) */
+@@ -72,7 +73,7 @@
+                         AVR_ISA_ELPM | AVR_ISA_ELPMX | AVR_ISA_SPM | \
+                         AVR_ISA_BRK | AVR_ISA_EIND | AVR_ISA_MOVW)
+-#define AVR_ISA_AVRTINY10 (AVR_ISA_1200 | AVR_ISA_BRK | AVR_ISA_SRAM)
++#define AVR_ISA_AVRTINY10 (AVR_ISA_1200 | AVR_ISA_BRK | AVR_ISA_SRAM | AVR_ISA_TINY)
+ #define REGISTER_P(x) ((x) == 'r'             \
+                      || (x) == 'd'            \
+@@ -279,6 +280,8 @@ AVR_INSN (fmulsu,"a,a","000000111ddd1rrr
+ AVR_INSN (sts,  "i,r", "1001001ddddd0000", 2, AVR_ISA_SRAM, 0x9200)
+ AVR_INSN (lds,  "r,i", "1001000ddddd0000", 2, AVR_ISA_SRAM, 0x9000)
++AVR_INSN (sts16,"j,d", "10101kkkddddkkkk", 1, AVR_ISA_TINY, 0xA800)
++AVR_INSN (lds16,"d,j", "10100kkkddddkkkk", 1, AVR_ISA_TINY, 0xA000)
+ AVR_INSN (xch,  "z,r", "1001001rrrrr0100", 1, AVR_ISA_XMEGAU, 0x9204)
+ AVR_INSN (las,  "z,r", "1001001rrrrr0101", 1, AVR_ISA_XMEGAU, 0x9205)
+--- opcodes/avr-dis.c  2011-07-01 21:41:27.000000000 +0530
++++ opcodes/avr-dis.c  2012-04-19 12:04:04.000000000 +0530
+@@ -187,7 +187,15 @@ avr_operand (unsigned int insn, unsigned
+     case 'i':
+       sprintf (buf, "0x%04X", insn2);
+       break;
+-      
++    case 'j':
++      {
++        unsigned int val = ((insn & 0xf) | ((insn & 0x600) >> 5)
++                                         | ((insn & 0x100) >> 2));
++        if (val > 0 && !(insn & 0x100))
++          val |= 0x80;
++        sprintf (buf, "0x%02x", val);
++      }
++      break;
+     case 'M':
+       sprintf (buf, "0x%02X", ((insn & 0xf00) >> 4) | (insn & 0xf));
+       sprintf (comment, "%d", ((insn & 0xf00) >> 4) | (insn & 0xf));
+@@ -379,8 +387,19 @@ print_insn_avr (bfd_vma addr, disassembl
+       comment2[0] = 0;
+     }
+-  (*prin) (stream, "%s", ok ? opcode->name : ".word");
+-
++  if (ok)
++  {
++    /* In order to print 2byte sts/lds properly */ 
++    if (!strncmp(opcode->name, "sts16", 5))
++      (*prin) (stream, "%s", "sts");
++    else if (!strncmp(opcode->name, "lds16", 5))
++      (*prin) (stream, "%s", "lds");
++    else 
++      (*prin) (stream, "%s", opcode->name);
++  }
++  else
++    (*prin) (stream, "%s", ".word");
++    
+   if (*op1)
+       (*prin) (stream, "\t%s", op1);
diff --git a/crossavr-binutils-new-devices.patch b/crossavr-binutils-new-devices.patch
deleted file mode 100644 (file)
index b268955..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-diff -ruw ggas/config/tc-avr.c gas/config/tc-avr.c
---- ggas/config/tc-avr.c       2009-09-09 13:43:29.000000000 +0530
-+++ gas/config/tc-avr.c        2010-02-12 20:42:30.742688700 +0530
-@@ -133,9 +133,12 @@
-   {"atmega32u2", AVR_ISA_AVR35,   bfd_mach_avr35},
-   {"atmega8",    AVR_ISA_M8,      bfd_mach_avr4},
-   {"atmega48",   AVR_ISA_AVR4,    bfd_mach_avr4},
-+  {"atmega48a",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega48p",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega88",   AVR_ISA_AVR4,    bfd_mach_avr4},
-+  {"atmega88a",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega88p",  AVR_ISA_AVR4,    bfd_mach_avr4},
-+  {"atmega88pa", AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega8515", AVR_ISA_M8,      bfd_mach_avr4},
-   {"atmega8535", AVR_ISA_M8,      bfd_mach_avr4},
-   {"atmega8hva", AVR_ISA_AVR4,    bfd_mach_avr4},
-@@ -150,40 +153,63 @@
-   {"at90pwm3b",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"at90pwm81",  AVR_ISA_AVR4,    bfd_mach_avr4},
-   {"atmega16",   AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega16a",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega161",  AVR_ISA_M161,    bfd_mach_avr5},
-   {"atmega162",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega163",  AVR_ISA_M161,    bfd_mach_avr5},
-+  {"atmega164a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega164p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega165",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega165p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega168",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega168a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega168p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega169",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega169a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega169p", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega169pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega16hva",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega16hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega16c1", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega32",   AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega323",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega324a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega324p", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega324pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega325",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega325p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3250", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3250p",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega328",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega328p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega329",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega329p", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega329pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3290", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega3290p",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega32hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega406",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega64",   AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega640",  AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega644",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega644a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega644p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega644pa",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega645",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega645a", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega645p", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega649",  AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega649p", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega649a", AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega6450", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega6450a",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega6450p",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega6490", AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega6490a",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega6490p",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega64hve",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega16hva",AVR_ISA_AVR5,    bfd_mach_avr5},
-+  {"atmega16hva2",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega16hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"atmega32hvb",AVR_ISA_AVR5,    bfd_mach_avr5},
-   {"at90can32" , AVR_ISA_AVR5,    bfd_mach_avr5},
-diff -ruw ggas/doc/c-avr.texi gas/doc/c-avr.texi
---- ggas/doc/c-avr.texi        2009-09-02 12:54:21.000000000 +0530
-+++ gas/doc/c-avr.texi 2010-02-12 21:31:02.132717100 +0530
-@@ -43,9 +43,10 @@
- Instruction set avr25 is for the classic AVR core with up to 8K program memory
- space plus the MOVW instruction (MCU types: attiny13, attiny13a, attiny2313,
--attiny2313a, attiny24, attiny24a, attiny4313, attiny44, attiny44a, attiny84,
--attiny25, attiny45, attiny85, attiny261, attiny261a, attiny461, attiny861,
--attiny861a, attiny87, attiny43u, attiny48, attiny88, at86rf401, ata6289).
-+attiny2313a, attiny24, attiny24a, attiny4313, attiny43u, attiny44, attiny44a, 
-+attiny84, attiny25, attiny45, attiny85, attiny261, attiny261a, attiny461, 
-+attiny461a, attiny861, attiny861a, attiny87, attiny43u, attiny48, attiny88, 
-+at86rf401, ata6289).
- Instruction set avr3 is for the classic AVR core with up to 128K program
- memory space (MCU types: at43usb355, at76c711).
-@@ -58,20 +59,25 @@
- atmega16u2, atmega32u2).
- Instruction set avr4 is for the enhanced AVR core with up to 8K program
--memory space (MCU types: atmega48, atmega48p,atmega8, atmega88, atmega88p,
--atmega8515, atmega8535, atmega8hva, atmega4hvd, atmega8hvd, at90pwm1,
--at90pwm2, at90pwm2b, at90pwm3, at90pwm3b, at90pwm81, atmega8m1, atmega8c1).
-+memory space (MCU types: atmega48, atmega48a, atmega48p,atmega8, atmega88, 
-+atmega88a, atmega88p, atmega88pa, atmega8515, atmega8535, atmega8hva, 
-+atmega4hvd, atmega8hvd, at90pwm1,at90pwm2, at90pwm2b, at90pwm3, at90pwm3b,
-+at90pwm81, atmega8m1, atmega8c1).
- Instruction set avr5 is for the enhanced AVR core with up to 128K program
--memory space (MCU types: atmega16, atmega161, atmega162, atmega163, atmega164p,
--atmega165, atmega165p, atmega168, atmega168p, atmega169, atmega169p, atmega16c1,
--atmega32, atmega323, atmega324p, atmega325, atmega325p, atmega3250, atmega3250p,
--atmega328p, atmega329, atmega329p, atmega3290, atmega3290p, atmega406, atmega64,
--atmega640, atmega644, atmega644p, atmega644pa, atmega645, atmega6450, atmega649,
--atmega6490, atmega16hva, atmega16hvb, atmega32hvb, at90can32, at90can64,
--at90pwm216, at90pwm316, atmega32c1, atmega64c1, atmega16m1, atmega32m1,
--atmega64m1, atmega16u4, atmega32u4, atmega32u6, at90usb646, at90usb647, at94k,
--at90scr100).
-+memory space (MCU types: atmega16, atmega16a, atmega161, atmega162, atmega163,
-+atmega164a, atmega164p, atmega165, atmega165a, atmega165p, atmega168, 
-+atmega168a, atmega168p, atmega169, atmega169p, atmega169pa, atmega16c1,
-+atmega32, atmega323, atmega324a, atmega324p, atmega324pa, atmega325, 
-+atmega325p, atmega3250, atmega3250p, atmega328, atmega328p, atmega329,
-+atmega329p, atmega329pa, atmega3290, atmega3290p, atmega406, atmega64,
-+atmega640, atmega644, atmega644a, atmega644p, atmega644pa, atmega645, 
-+atmega645a, atmega645p, atmega6450, atmega6450a, atmega6450p, atmega649,
-+atmega649a, atmega649p, atmega6490, atmega6490a, atmega6490p, atmega64hve,
-+atmega16hva, atmega16hva2, atmega16hvb, atmega32hvb, at90can32, at90can64,
-+at90pwm216, at90pwm316, atmega16u4, atmega32c1, atmega64c1, atmega64m1,
-+atmega16m1, atmega32m1, atmega64m1, atmega16u4, atmega32u4, atmega32u6,
-+at90usb646, at90usb647, at94k, at90scr100).
- Instruction set avr51 is for the enhanced AVR core with exactly 128K program
- memory space (MCU types: atmega128, atmega1280, atmega1281, atmega1284p,
index e0ae847e11ebde1d60ad187d4c1e6fae8510c131..36fe6d757304ca48e1574820c6376fdeae68143f 100644 (file)
@@ -5,61 +5,66 @@ Summary(pl.UTF-8):    Skrośne narzędzia programistyczne GNU dla AVR - binutils
 Summary(pt_BR.UTF-8):  Utilitários para desenvolvimento de binários da GNU - AVR binutils
 Summary(tr.UTF-8):     GNU geliştirme araçları - AVR binutils
 Name:          crossavr-binutils
-Version:       2.20.1
+Version:       2.22
 Release:       1
 Epoch:         1
-# Patches 1xx are taken form Atmel official AVR8-GNU toolchain version 3.3.1.481.
-Patch100:      300-binutils-2.20.1-avr-size.patch
-Patch101:      301-binutils-2.20.1-avr-coff.patch
-Patch102:      302-binutils-2.20.1-new-sections.patch
-Patch103:      303-binutils-2.20.1-as-dwarf.patch
-Patch104:      304-binutils-2.20.1-dwarf2-AVRStudio-workaround.patch
-Patch105:      305-binutils-2.20.1-assembler-options.patch
-Patch106:      400-binutils-2.20.1-xmega.patch
-Patch107:      401-binutils-2.20.1-new-devices.patch
-Patch108:      402-binutils-2.20.1-avrtiny10.patch
-Patch109:      403-binutils-2.20.1-xmega128a1u-64a1u.patch
-Patch110:      404-binutils-2.20.1-atxmega32x1.patch
-Patch111:      405-binutils-2.20.1-atxmega128b1.patch
-Patch112:      406-binutils-2.20.1-atxmega256a3bu.patch
-Patch113:      407-binutils-2.20.1-at90pwm161.patch
-Patch114:      408-binutils-2.20.1-atmega16hvb-32hvb.patch
-Patch115:      409-binutils-2.20.1-atmega32_5_50_90_pa.patch
-Patch116:      410-binutils-2.20.1-attiny1634.patch
-Patch117:      411-binutils-2.20.1-atmega48pa.patch
-Patch118:      412-binutils-2.20.1-atxmega_16_32_a4u.patch
-Patch119:      413-binutils-2.20.1-atxmega64_128_192_256a3u.patch
-Patch120:      414-binutils-2.20.1-atmegarfr2_a2.patch
-Patch121:      415-binutils-2.20.1-atmega165pa.patch
-Patch122:      416-binutils-2.20.1-atxmega384c3.patch
-Patch123:      417-binutils-2.20.1-attiny80.patch
-Patch124:      418-binutils-2.20.1-atxmega128a4u.patch
-Patch125:      419-binutils-2.20.1-atxmega64d4.patch
-Patch126:      420-binutils-2.20.1-atmega164pa_168pa_32a_64a.patch
-Patch127:      421-binutils-2.20.1-atxmega64_128_b3.patch
-Patch128:      422-binutils-2.20.1-atxmega64b1.patch
-Patch129:      423-binutils-2.20.1-atmega_8a_128a_1284.patch
-Patch130:      424-binutils-2.20.1-atxmega64a4u.patch
-Patch131:      425-binutils-2.20.1-atxmega128d4.patch
-Patch132:      426-binutils-2.20.1-atmxt336s.patch
-Patch133:      427-binutils-2.20.1-atxmega16c4_32c4_128c3_256c3.patch
-Patch134:      428-binutils-2.20.1-atxmega384d3.patch
-Patch135:      429-binutils-2.20.1-atmega48hvf.patch
-Patch136:      430-binutils-2.20.1-atmega26hvg.patch
-Patch137:      431-binutils-2.20.1-atmxt224_224e.patch
-Patch138:      431-binutils-2.20.1-atxmega192c3.patch
-Patch139:      500-binutils-2.20.1-bug13789.patch
-Patch140:      501-binutils-2.20.1-bug13113.patch
+# Patches 1xx are taken form Atmel official AVR8-GNU toolchain version 3.4.0.633
+Patch100:      300-binutils-avr-size.patch
+Patch101:      301-binutils-avr-coff.patch
+Patch102:      302-binutils-as-dwarf.patch
+Patch103:      303-binutils-dwarf2-AVRStudio-workaround.patch
+Patch104:      304-binutils-bug13113.patch
+Patch105:      305-binutils-new-usb-insns.patch
+Patch106:      306-binutils-bug15573-AVRTC-419.patch
+Patch107:      307-binutils-fix-AVRTC-424.patch
+Patch108:      400-binutils-xmega.patch
+Patch109:      401-binutils-avrtiny10.patch
+Patch110:      402-binutils-at90pwm161.patch
+Patch111:      403-binutils-new-devices.patch
+Patch112:      404-binutils-attiny1634.patch
+Patch113:      405-binutils-atmega48pa.patch
+Patch114:      406-binutils-atxmega_16_32_a4u.patch
+Patch115:      407-binutils-atxmega64_128_192_256a3u.patch
+Patch116:      408-binutils-atmegarfr2_a2.patch
+Patch117:      409-binutils-atmega165pa.patch
+Patch118:      410-binutils-atxmega384c3.patch
+Patch119:      411-binutils-attiny80.patch
+Patch120:      412-binutils-atxmega128a4u.patch
+Patch121:      413-binutils-atxmega64d4.patch
+Patch122:      414-binutils-atmega164pa_168pa_32a_64a.patch
+Patch123:      415-binutils-atxmega64_128_b3.patch
+Patch124:      416-binutils-atxmega64b1.patch
+Patch125:      417-binutils-atmega_8a_128a_1284.patch
+Patch126:      418-binutils-atxmega64a4u.patch
+Patch127:      419-binutils-atxmega128d4.patch
+Patch128:      420-binutils-atmxt336s.patch
+Patch129:      421-binutils-atxmega16c4_32c4_128c3_256c3.patch
+Patch130:      422-binutils-atxmega384d3.patch
+Patch131:      423-binutils-atmega48hvf.patch
+Patch132:      424-binutils-atmega26hvg.patch
+Patch133:      425-binutils-atmxt224_224e.patch
+Patch134:      426-binutils-atxmega192c3.patch
+Patch135:      427-binutils-atmxt112sl.patch
+Patch136:      428-binutils-atxmega64c3.patch
+Patch137:      429-binutils-ata6285_6286.patch
+Patch138:      430-binutils-attiny828.patch
+Patch139:      431-binutils-ata5790_5790N_5795.patch
+Patch140:      432-binutils-ata5272_5505.patch
+Patch141:      500-binutils-bug13789.patch
+Patch142:      501-binutils-modify-usb-xmega-isa.patch
+Patch143:      502-binutils-add-config-section-tiny.patch
+Patch144:      503-binutils-avrtc193-tiny.patch
 License:       GPL
 Group:         Development/Tools
 Source0:       ftp://ftp.gnu.org/gnu/binutils/binutils-%{version}.tar.bz2
-# Source0-md5: 2b9dc8f2b7dbd5ec5992c6e29de0b764
+# Source0-md5: ee0f10756c84979622b992a4a61ea3f5
 URL:           http://sources.redhat.com/binutils/
 BuildRequires: automake
 BuildRequires: bash
 BuildRequires: bison
 BuildRequires: flex
 BuildRequires: gettext-devel
+BuildRequires: gcc-c++
 BuildRequires: perl-tools-pod
 BuildRequires: texinfo
 %ifarch sparc sparc32
@@ -137,6 +142,10 @@ Ten pakiet zawiera wersję skrośną generującą kod dla Atmel AVR.
 %patch138 -p0
 %patch139 -p0
 %patch140 -p0
+%patch141 -p0
+%patch142 -p0
+%patch143 -p0
+%patch144 -p0
 
 %build
 cp /usr/share/automake/config.sub .
@@ -149,6 +158,7 @@ CONFIG_SHELL="/bin/bash" \
 sparc32 \
 %endif
 ./configure \
+       --enable-gold \
        --disable-shared \
        --disable-werror \
        --prefix=%{_prefix} \
This page took 0.453964 seconds and 4 git commands to generate.