diff options
Diffstat (limited to 'source/d/binutils')
-rw-r--r-- | source/d/binutils/binutils-2.21.51.0.6.tar.sign | 8 | ||||
-rw-r--r-- | source/d/binutils/binutils-2.22.52.0.2.tar.sign | bin | 0 -> 543 bytes | |||
-rwxr-xr-x | source/d/binutils/binutils.SlackBuild | 50 | ||||
-rw-r--r-- | source/d/binutils/release.binutils-2.21.51.0.6 | 257 | ||||
-rw-r--r-- | source/d/binutils/release.binutils-2.22.52.0.2 | 508 |
5 files changed, 546 insertions, 277 deletions
diff --git a/source/d/binutils/binutils-2.21.51.0.6.tar.sign b/source/d/binutils/binutils-2.21.51.0.6.tar.sign deleted file mode 100644 index f5824788..00000000 --- a/source/d/binutils/binutils-2.21.51.0.6.tar.sign +++ /dev/null @@ -1,8 +0,0 @@ ------BEGIN PGP SIGNATURE----- -Version: GnuPG v1.4.11 (GNU/Linux) -Comment: See http://www.kernel.org/signature.html for info - -iD8DBQBNNlEFyGugalF9Dw4RAiCTAJ4iU8QPmGnj/bIA+qXwpNK926m3ywCeMEGE -+3QFy1J7SclHy+sNNX0unSA= -=OHU3 ------END PGP SIGNATURE----- diff --git a/source/d/binutils/binutils-2.22.52.0.2.tar.sign b/source/d/binutils/binutils-2.22.52.0.2.tar.sign Binary files differnew file mode 100644 index 00000000..c2bf9930 --- /dev/null +++ b/source/d/binutils/binutils-2.22.52.0.2.tar.sign diff --git a/source/d/binutils/binutils.SlackBuild b/source/d/binutils/binutils.SlackBuild index a5616ea2..02791dc1 100755 --- a/source/d/binutils/binutils.SlackBuild +++ b/source/d/binutils/binutils.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2005-2010 Patrick J. Volkerding, Sebeka, Minnesota, USA +# Copyright 2005-2012 Patrick J. Volkerding, Sebeka, Minnesota, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,18 +20,22 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# Modified 2011 by Eric Hameleers <alien at slackware.com> for ARM port. + PKGNAM=binutils -VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +VERSION=${VERSION:-$(echo $PKGNAM-*.tar.xz | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: +MARCH=$( uname -m ) if [ -z "$ARCH" ]; then - case "$( uname -m )" in - i?86) export ARCH=i486 ;; - arm*) export ARCH=arm ;; + case "$MARCH" in + i?86) export ARCH=i486 ;; + armv7hl) export ARCH=$MARCH ;; + arm*) export ARCH=arm ;; # Unless $ARCH is already set, use uname -m for all other archs: - *) export ARCH=$( uname -m ) ;; + *) export ARCH=$MARCH ;; esac fi @@ -59,14 +63,30 @@ if [ "$ARCH" = "i486" ]; then # The config option below is currently needed to compile on x86: WERROR="--enable-werror=no" LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + # The config option below is currently needed to compile on x86: + WERROR="--enable-werror=no" + LIBDIRSUFFIX="" elif [ "$ARCH" = "s390" ]; then SLKCFLAGS="-O2" LIBDIRSUFFIX="" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" +elif [ "$ARCH" = "armv7hl" ]; then + SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" fi +case "$ARCH" in + arm*) TARGET=$ARCH-slackware-linux-gnueabi ;; + *) TARGET=$ARCH-slackware-linux ;; +esac + CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-binutils @@ -76,7 +96,8 @@ mkdir -p $TMP $PKG cd $TMP rm -rf binutils-$VERSION -tar xvf $CWD/binutils-$VERSION.tar.?z* || exit 1 +tar xvf $CWD/binutils-$VERSION.tar.xz || \ + tar xvf $CWD/binutils-$VERSION.tar.bz2 || exit 1 cd binutils-$VERSION chown -R root:root . @@ -86,6 +107,11 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; +# End of preparations +if echo "$*" | grep -qw -- --prep ; then + exit 0 +fi + # Build for an x86 glibc2-based Linux system: CFLAGS="$SLKCFLAGS" \ ./configure \ @@ -99,11 +125,11 @@ CFLAGS="$SLKCFLAGS" \ --enable-64-bit-bfd \ --enable-plugins \ --enable-threads \ - --enable-targets=$ARCH-slackware-linux \ + --enable-targets=i386-efi-pe,${TARGET} \ $GOLD \ $NO_INITFINI \ $WERROR \ - --build=$ARCH-slackware-linux \ + --build=$TARGET \ || exit 1 make clean || exit 1 @@ -118,8 +144,8 @@ cp -a include/libiberty.h $PKG/usr/include/libiberty.h ( cd $PKG/usr/man/man1 ; mv strings.1 strings-GNU.1 ) # Move ldscripts to /usr/lib${LIBDIRSUFFIX}, and then put symlinks in place -mv $PKG/usr/${ARCH}-slackware-linux/lib/ldscripts $PKG/usr/lib${LIBDIRSUFFIX} -( cd $PKG/usr/${ARCH}-slackware-linux +mv $PKG/usr/${TARGET}/lib/ldscripts $PKG/usr/lib${LIBDIRSUFFIX} +( cd $PKG/usr/${TARGET} ln -s /usr/lib${LIBDIRSUFFIX}/ldscripts lib/ldscripts for FILE in ar as ld ld.bfd ld.gold nm objcopy objdump ranlib strip ; do if [ -r "/usr/bin/$FILE" ]; then diff --git a/source/d/binutils/release.binutils-2.21.51.0.6 b/source/d/binutils/release.binutils-2.21.51.0.6 deleted file mode 100644 index 38a38474..00000000 --- a/source/d/binutils/release.binutils-2.21.51.0.6 +++ /dev/null @@ -1,257 +0,0 @@ -This is the beta release of binutils 2.21.51.0.6 for Linux, which is -based on binutils 2011 0118 in CVS on sourceware.org plus various -changes. It is purely for Linux. - -All relevant patches in patches have been applied to the source tree. -You can take a look at patches/README to see what have been applied and -in what order they have been applied. - -Starting from the 2.21.51.0.3 release, you must remove .ctors/.dtors -section sentinels when building glibc or other C run-time libraries. -Otherwise, you will run into: - -http://sourceware.org/bugzilla/show_bug.cgi?id=12343 - -Starting from the 2.21.51.0.2 release, BFD linker has the working LTO -plugin support. It can be used with GCC 4.5 and above. For GCC 4.5, you -need to configure GCC with --enable-gold to enable LTO plugin support. - -Starting from the 2.21.51.0.2 release, binutils fully supports compressed -debug sections. However, compressed debug section isn't turned on by -default in assembler. I am planning to turn it on for x86 assembler in -the future release, which may lead to the Linux kernel bug messages like - -WARNING: lib/ts_kmp.o (.zdebug_aranges): unexpected non-allocatable section. - -But the resulting kernel works fine. - -Starting from the 2.20.51.0.4 release, no diffs against the previous -release will be provided. - -You can enable both gold and bfd ld with --enable-gold=both. Gold will -be installed as ld.gold and bfd ld will be installed as ld.bfd. By -default, ld.bfd will be installed as ld. You can use the configure -option, --enable-gold=both/gold to choose gold as the default linker, -ld. IA-32 binary and X64_64 binary tar balls are configured with ---enable-gold=both/ld --enable-plugins --enable-threads. - -Starting from the 2.18.50.0.4 release, the x86 assembler no longer -accepts - - fnstsw %eax - -fnstsw stores 16bit into %ax and the upper 16bit of %eax is unchanged. -Please use - - fnstsw %ax - -Starting from the 2.17.50.0.4 release, the default output section LMA -(load memory address) has changed for allocatable sections from being -equal to VMA (virtual memory address), to keeping the difference between -LMA and VMA the same as the previous output section in the same region. - -For - -.data.init_task : { *(.data.init_task) } - -LMA of .data.init_task section is equal to its VMA with the old linker. -With the new linker, it depends on the previous output section. You -can use - -.data.init_task : AT (ADDR(.data.init_task)) { *(.data.init_task) } - -to ensure that LMA of .data.init_task section is always equal to its -VMA. The linker script in the older 2.6 x86-64 kernel depends on the -old behavior. You can add AT (ADDR(section)) to force LMA of -.data.init_task section equal to its VMA. It will work with both old -and new linkers. The x86-64 kernel linker script in kernel 2.6.13 and -above is OK. - -The new x86_64 assembler no longer accepts - - monitor %eax,%ecx,%edx - -You should use - - monitor %rax,%ecx,%edx - -or - monitor - -which works with both old and new x86_64 assemblers. They should -generate the same opcode. - -The new i386/x86_64 assemblers no longer accept instructions for moving -between a segment register and a 32bit memory location, i.e., - - movl (%eax),%ds - movl %ds,(%eax) - -To generate instructions for moving between a segment register and a -16bit memory location without the 16bit operand size prefix, 0x66, - - mov (%eax),%ds - mov %ds,(%eax) - -should be used. It will work with both new and old assemblers. The -assembler starting from 2.16.90.0.1 will also support - - movw (%eax),%ds - movw %ds,(%eax) - -without the 0x66 prefix. Patches for 2.4 and 2.6 Linux kernels are -available at - -http://www.kernel.org/pub/linux/devel/binutils/linux-2.4-seg-4.patch -http://www.kernel.org/pub/linux/devel/binutils/linux-2.6-seg-5.patch - -The ia64 assembler is now defaulted to tune for Itanium 2 processors. -To build a kernel for Itanium 1 processors, you will need to add - -ifeq ($(CONFIG_ITANIUM),y) - CFLAGS += -Wa,-mtune=itanium1 - AFLAGS += -Wa,-mtune=itanium1 -endif - -to arch/ia64/Makefile in your kernel source tree. - -Please report any bugs related to binutils 2.21.51.0.6 to -hjl.tools@gmail.com - -and - -http://www.sourceware.org/bugzilla/ - -Changes from binutils 2.21.51.0.5: - -1. Update from binutils 2011 0118. -2. Fix x32 (ILP32) support. Renamed assembler option to --x32. It -can create working static and dynamic x32 executables. -3. Add BMI and TBM new instruction support. -4. Fix x86 disassembler to properly display sign-extended byte. -5. Improve IFUNC linker support. PRs 12366/12371. -6. Fix readelf bug on archive. PR 12408. -7. Fix a assembler when compressing empty debug sections. PR 12409. -8. Fix a warning symbol linker bug. PR 12339. -9. Fix a duplicated assert message linker bug. PR 12380. -10. Fix plugin linker build. PR 12391. -11. Fix a plugin linker crash. PR 12364. -12. Improve plugin linker. -13. Improve gold. -14. Improve arm support. -15. Improve mips support. -16. Improve rx support. - -Changes from binutils 2.21.51.0.4: - -1. Update from binutils 2011 0104. -2. Add ILP32 support: - -http://www.kernel.org/pub/linux/devel/binutils/ilp32/abi.pdf - -to Linux/x86-64. -3. Prevent the Linux x86-64 kernel build failure and remove -__ld_compatibility support. PR 12356. -4. Improve gold. -5. Improve Windows support. -6. Improve hppa support. -7. Improve mips support. - -Changes from binutils 2.21.51.0.3: - -1. Update from binutils 2010 1217. -2. Fix the Linux relocatable kernel build. PR 12327. -3. Improve mips support. - -Changes from binutils 2.21.51.0.2: - -1. Update from binutils 2010 1215. -2. Add BFD linker support for placing input .ctors/.dtors sections in -output .init_array/.fini_array section. Add SORT_BY_INIT_PRIORITY. The -benefits are - a. Avoid output .ctors/.dtors section in executables and shared - libraries. - b. Allow mixing input .ctors/.dtors sections with input - .init_array/.fini_array sectiobs. GCC PR 46770. -3. Add BFD linker support for "ld -r" on mixed IR/non-IR objects. Add -the new ELF section type SHT_GNU_OBJECT_ONLY (0x6ffffff8). See - -http://sourceware.org/bugzilla/show_bug.cgi?id=12291 - -4. Update BFD linker to accept -flto and -flto-partition= for GCC LTO -option compatibility. -5. Fix BFD linker to avoid touching uncompressed section content when -relocating DWARF debug sections for errror reporting. -6. Mark .gnu.lto_* sections with SHF_EXCLUDE. -7. Add --target option to ar. -8. Improve gold. -9. Improve AIX support. -10. Improve Windows support. -11. Improve mips support. - -Changes from binutils 2.21.51.0.1: - -1. Update from binutils 2010 1206. -2. Fix BFD and GOLD linker for compressed debug section support. -3. Fix BFD linker plugin support. PR ld/12246, ld/12247, ld/12248, -ld/12277, ld/12288 and ld/12289. -4. Update BFD linker to group .text.exit, text.startup and .text.hot -sections. -5. Fix linker for W_EH_PE_datarel handling. PR ld/12253. -6. Fix array access bug in readelf/elfedit. PR binutils/11742 and -binutils/12235. -7. Support dumping GDB .gdb_index section. -8. Install plugin-api.h. -9. Improve gold. -10. Improve Solaris support. -11. Improve VMS support. -12. Improve Windows support. -13. Improve arm support. -14. Improve bfin support. -15. Improve mips support. -16. Improve s390 support. -17. Improve z80 support. - -Changes from binutils 2.20.51.0.12: - -1. Update from binutils 2010 1110. -2. Fix ld plugin support. PRs lto/46291 and lto/46319. -3. Fix x86 assembler to properly fold _GLOBAL_OFFSET_TABLE_ in Intel -syntax. PR 12186. -4. Update assembler to ensure that group signature symbols have the name -of the group. -5. Avoid unnecessary relaxation in assembler. PR 12049. -6. Update linker NOLOAD processing. -7. Update linker not to include archive members when symbols therein have -already been defined. PR 12001. -8. Change objdump to display compressed section names without 'z'. -9. Improve gold. -10. Improve Solaris support. -11. Improve VMS support. -12. Improve Windows support. -13. Improve arm support. -14. Improve cr16 support. -15. Improve mips support. -16. Improve ppc support. -17. Improve tic6x support. - -The file list: - -1. binutils-2.21.51.0.6.tar.bz2. Source code. -2. binutils-2.21.51.0.6.i686.tar.bz2. IA-32 binary tar ball for RedHat - EL 5. -3. binutils-2.21.51.0.6.ia64.tar.bz2. IA-64 binary tar ball for RedHat - EL 5. -4. binutils-2.21.51.0.6.x86_64.tar.bz2. X64_64 binary tar ball for RedHat - EL 5. - -The primary sites for the beta Linux binutils are: - -1. http://www.kernel.org/pub/linux/devel/binutils/ - -Thanks. - - -H.J. Lu -hjl.tools@gmail.com -01/18/2011 diff --git a/source/d/binutils/release.binutils-2.22.52.0.2 b/source/d/binutils/release.binutils-2.22.52.0.2 new file mode 100644 index 00000000..a02ee03e --- /dev/null +++ b/source/d/binutils/release.binutils-2.22.52.0.2 @@ -0,0 +1,508 @@ +This is the beta release of binutils 2.22.52.0.2 for Linux, which is +based on binutils 2012 0424 in CVS on sourceware.org plus various +changes. It is purely for Linux. + +All relevant patches in patches have been applied to the source tree. +You can take a look at patches/README to see what have been applied and +in what order they have been applied. + +Starting from the 2.21.51.0.3 release, you must remove .ctors/.dtors +section sentinels when building glibc or other C run-time libraries. +Otherwise, you will run into: + +http://sourceware.org/bugzilla/show_bug.cgi?id=12343 + +Starting from the 2.21.51.0.2 release, BFD linker has the working LTO +plugin support. It can be used with GCC 4.5 and above. For GCC 4.5, you +need to configure GCC with --enable-gold to enable LTO plugin support. + +Starting from the 2.21.51.0.2 release, binutils fully supports compressed +debug sections. However, compressed debug section isn't turned on by +default in assembler. I am planning to turn it on for x86 assembler in +the future release, which may lead to the Linux kernel bug messages like + +WARNING: lib/ts_kmp.o (.zdebug_aranges): unexpected non-allocatable section. + +But the resulting kernel works fine. + +Starting from the 2.20.51.0.4 release, no diffs against the previous +release will be provided. + +You can enable both gold and bfd ld with --enable-gold=both. Gold will +be installed as ld.gold and bfd ld will be installed as ld.bfd. By +default, ld.bfd will be installed as ld. You can use the configure +option, --enable-gold=both/gold to choose gold as the default linker, +ld. IA-32 binary and X64_64 binary tar balls are configured with +--enable-gold=both/ld --enable-plugins --enable-threads. + +Starting from the 2.18.50.0.4 release, the x86 assembler no longer +accepts + + fnstsw %eax + +fnstsw stores 16bit into %ax and the upper 16bit of %eax is unchanged. +Please use + + fnstsw %ax + +Starting from the 2.17.50.0.4 release, the default output section LMA +(load memory address) has changed for allocatable sections from being +equal to VMA (virtual memory address), to keeping the difference between +LMA and VMA the same as the previous output section in the same region. + +For + +.data.init_task : { *(.data.init_task) } + +LMA of .data.init_task section is equal to its VMA with the old linker. +With the new linker, it depends on the previous output section. You +can use + +.data.init_task : AT (ADDR(.data.init_task)) { *(.data.init_task) } + +to ensure that LMA of .data.init_task section is always equal to its +VMA. The linker script in the older 2.6 x86-64 kernel depends on the +old behavior. You can add AT (ADDR(section)) to force LMA of +.data.init_task section equal to its VMA. It will work with both old +and new linkers. The x86-64 kernel linker script in kernel 2.6.13 and +above is OK. + +The new x86_64 assembler no longer accepts + + monitor %eax,%ecx,%edx + +You should use + + monitor %rax,%ecx,%edx + +or + monitor + +which works with both old and new x86_64 assemblers. They should +generate the same opcode. + +The new i386/x86_64 assemblers no longer accept instructions for moving +between a segment register and a 32bit memory location, i.e., + + movl (%eax),%ds + movl %ds,(%eax) + +To generate instructions for moving between a segment register and a +16bit memory location without the 16bit operand size prefix, 0x66, + + mov (%eax),%ds + mov %ds,(%eax) + +should be used. It will work with both new and old assemblers. The +assembler starting from 2.16.90.0.1 will also support + + movw (%eax),%ds + movw %ds,(%eax) + +without the 0x66 prefix. Patches for 2.4 and 2.6 Linux kernels are +available at + +http://www.kernel.org/pub/linux/devel/binutils/linux-2.4-seg-4.patch +http://www.kernel.org/pub/linux/devel/binutils/linux-2.6-seg-5.patch + +The ia64 assembler is now defaulted to tune for Itanium 2 processors. +To build a kernel for Itanium 1 processors, you will need to add + +ifeq ($(CONFIG_ITANIUM),y) + CFLAGS += -Wa,-mtune=itanium1 + AFLAGS += -Wa,-mtune=itanium1 +endif + +to arch/ia64/Makefile in your kernel source tree. + +Please report any bugs related to binutils 2.22.52.0.2 to +hjl.tools@gmail.com + +and + +http://www.sourceware.org/bugzilla/ + +Changes from binutils 2.22.52.0.1: + +1. Update from binutils 2012 0424. +2. Support Intel HLE and RTM extension. +3. Add NACL support. +4. Fix -Bsymbolic with protected function pointer. PR 13880. +5. Fix an IFUNC regression. PR 13817. +6. Fix x86 NOP fill regression. PR 13675. +7. Fix a linker regression. PR 13991. +8. Fix dangling global hidden symbol in symtab. PR 13621. +9. Fix objcopy, strip and ld for --emit-relocs. PR 13947. +10. Improve gold. +11. Improve mach support. +12. Improve vms support. +13. Improve windows support. +14. Improve arm support. +15. Improve avr support. +16. Improve mips support. +17. Improve ppc support. +18. Improve rx support. +19. Improve s390 support. +20. Improve sh support. +21. Improve sparc support. +22. Improve tile support. + +Changes from binutils 2.22.51.0.1: + +1. Update from binutils 2012 0131. +2. Add x32 support to gold. +3. Support linker arch-depedent fill. PR 13616. +4. Add i386 NACL support to x86 assembler. +5. Add fake zero displacement for .d8 and .d32 suffixes to x86 assembler. +6. Add vmfunc support to x86 assembler/disassembler. +7. Support >2GB archive member. PR 13534. +8. Support R_X86_64_PC32 relocation for PIC on x32. PR 13581. +9. Fix LTO linker with --start-group and archive. PR 12758. +10. Fix linker with --build-id. PR 12451. +11. Improve linker dead code dependency removal on DSO. PR 12772. +12. Improve demangler. +13. Fix elf64-x86-64.c build with GCC 4.7. +14. Avoid linker -z text crash. PR 13468. +15. Avoid readelf crash. PR 13622. +16. Avoid nm crash on --size-sort --no-sort. PR 13593. +17. Fix linker COFF SECREL32 relocation support. PR 13491. +18. Improve gold. +19. Improve mach support. +20. Improve arm support. +21. Improve avr support. +22. Improve hppa support. +23. Improve m68k support. +24. Improve mips support. +25. Improve ppc support. +26. Improve rl78 support. +27. Improve rx support. + +Changes from binutils 2.21.53.0.2: + +1. Update from binutils 2011 1118. +2. Fix ar --plugin on archive with mixed IR/non-IR objects. PR 13298. +3. Preserve the maximum alignment and size for common symbols. PR 13250. +4. Fix LTO linker with -as-needed. PR 13287. +5. Fix --plugin support on thin archive. PR 13257. +6. Fix LTO linker on thin archive. PR 13183. +7. Fix --plugin slim object support on archive. PR 13278. +8. Support LDPR_PREVAILING_DEF_IRONLY_EXP in linker plugin. PR 13229. +9. Don't make make IR symbols dynamic. PR 13244. +10. Fix LTO linker with --as-needed. PR 13201. +11. Properly handle 2 IR symbols with the same comdat key. PR 13066. +12. Keep .debug_types sections with linker garbage collection. PR 13233. +13. Fix -ffunction-sections -Wl,--gc-sections failure with symbol +versioning. PR 13195. +14. Improve linker garbage collection support. PR 13177. +15. Remove symbols hidden by version scripts with --gc-sections. PR 12975. +16. Remove unnecessary GOT relocation created for IFUNC. PR 13178. +17. Move IRELATIVE relocations to the end. PR 13302. +18. Avoid readelf core dump. PR 13219. +19. Check zero address size when dumping DWARF sections. PR 13196. +20. Remove the group section if all members are removed. PR 13180. +21. Support R_X86_64_64 and R_X86_64_RELATIVE64 relocations for x32. +PR 13082. +22. Add Adapteva Epiphany support. +23. Add Renesas RL78 support. +24. Improve gold. +25. Improve mach-o support. +26. Improve alpha support. +27. Improve arm support. +28. Improve hppa support. +29. Improve mips support. +30. Improve ppc support. +31. Improve rx support. +32. Improve sparc support. + +Changes from binutils 2.21.53.0.1: + +1. Update from binutils 2011 0804. +2. Add Intel K1OM support. +3. Allow R_X86_64_64 relocation for x32 and check x32 relocation overflow. +PR ld/13048. +4. Support direct call in x86-64 assembly code. PR gas/13046. +5. Add ia32 Google Native Client support. +6. Add .debug_macro section support. +7. Improve gold. +8. Improve VMS support. +9. Improve arm support. +10. Improve hppa support. +11. Improve mips support. +12. Improve mmix support. +13. Improve ppc support. + +Changes from binutils 2.21.52.0.2: + +1. Update from binutils 2011 0716. +2. Fix LTO linker bugs. PRs 12982/12942. +3. Fix rorx support in x86 assembler/disassembler for AVX Programming +Reference (June, 2011). +4. Fix an x86-64 ELFOSABI linker regression. +5. Update ELFOSABI_GNU support. PR 12913. +6. Fix a linker regression with prelink support. PR 12921. +7. Add unwind info to x86 PLT section. PR 12570. +8. Support x32 core files. +9. Support native x32 linker. +10. Fix linker --gc-sections on note sections. PR 12851. +11. Avoid linker crash on bad input. PR 12887. +12. Add section flags in linker script. +13. Improve elf linker -z option support. +14. Fix nm on compressed debug sections. PR 12983. +15. Fix an ar bug. PR 12558. +16. Fix an ia64 linker regression. PR 12978. +17. Improve gold. +18. Improve VMS support. +19. Add TILE-Gx/TILEPro support. +20. Improve alpha support. +21. Improve avr support. +22. Improve mips support. +23. Improve arm support. +24. Improve ppc support. +25. Improve sh support. +26. Improve TIC6X support. + +Changes from binutils 2.21.52.0.1: + +1. Update from binutils 2011 0610. +2. Support AVX Programming Reference (June, 2011) +3. Allow R_X86_64_64 relocations in SEC_DEBUGGING sections when building +x32 shared libraries. Used to build kernel x32 vDSO. +4. Fix linker --gc-sections on note sections. PR 12851. +5. Update readelf to handle binaries containing corrupt version +information. PR 12855. +6. Improve gold. +7. Improve VMS support. +8. Improve mips support. + +Changes from binutils 2.21.51.0.9: + +1. Update from binutils 2011 0608. +2. Fix an x86 linker regression. PRs 12833/12837/12859. +3. Fix an x86-64 large model TLS linker bug. PR 12809. +4. Fix LTO bugs. PRs 12758/12760. +5. Add a new linker switch, -plugin-save-temps. +6. Fix an linker bug for warning on common symbol in archive. +7. Fix warning support when building shared library. PR 12761. +8. Reduce linker memory usage when linking many small object files. +PR 12682. +9. Fix a thin archive bug. PR 12710. +10. Fix a TLS linker bug. PR 12763. +11. Improve gold. +12. Improve DWARF dump support. +13. Improve XCOFF support. +14. Improve arm support. +15. Improve cris support. +16. Improve ia64 ILP32 support. +17. Improve mips support. +18. Improve ppc support. +19. Improve rx support. +20. Improve s390 support. +21. Improve tic30 support. +22. Improve tic6x support. +23. Improve v850 support. + +Changes from binutils 2.21.51.0.8: + +1. Update from binutils 2011 0507. +2. Improve LTO bfd linker. PRs 12365/12696/12672 +3. Fix a linker regression with constructor attribute in C++. PR 12730. +4. Warn relocation in readonly section when creating a shared object. +5. Remove empty output sections. PR 12718. +6. Remove DT_TEXTREL with local IFUNC symbols. PR 12694. +7. Properly set ELFOSABI_LINUX for STB_GNU_UNIQUE. PR 10549. +8. Fix objcopy on unusual input. PR 12632. +9. Fix an ar regression. PR 12720. +10 Avoid linker crash on bad linker input. +11. Fix a linker script regression. PR 12726. +12. Support new GNU DWARF extensions. +13. Initial support for SystemTap note sections. +14. Add --dwarf-start and --dwarf-end to readelf and objdump. +15. Disable 3dnow and 3dnowa for bdver1 in x86 assembler. +16. Improve gold. +17. Improve VMS support. +18. Improve arm support. +19. Improve mips support. +20. Improve ppc support. +21. Improve s390 support. +22. Improve tic6x support. + +Changes from binutils 2.21.51.0.7: + +1. Update from binutils 2011 0408. +2. Fix x32 TLS linker bug. +3. Enable .quad directive in x32 assembler. +4. Fix an assembler regression. PRs 12569/12589. +5. Add --size-check= assembler option to issue a warning, instead of an +error, on bad ELF .size directive. +6. Fix an ia32 linker bug with TLS/PIE. PR 12654. +7. Fix Intel L1OM linker library search path. +8. Fix a linker buffer overflow on malformed inputs. PR 12613. +9. Check corrupted symtab in nm/readelf. PR 12639. +10. Avoid objcopy crash on archive with unknown objects. PR 12632. +11. Fix "ar -t". PR 12590. +12. Fix many memory leaks. +13. Improve DWARF support. +14. Improve gold. +15. Improve VMS support. +16. Improve Windows support. +17. Improve alpha support. +18. Improve arm support. +19. Improve avr support. +20. Improve ppc support. +21. Improve sparc support. +22. Improve tic6x support. + +Changes from binutils 2.21.51.0.6: + +1. Update from binutils 2011 0306. +2. Supprt x32 TLS IE->LE transition. +3. Change x32 library directory from /lib32 to /libx32. +4. Improve LTO linker support. Fix PRs 12439/12314/12248/12430. +5. Improve linker plugin support. +6. Fix an ar bug. PR 12513. +7. Properly generate nops for ia32. PR 6957. +8. Improve readelf DT_GNU_HASH support. PR 12523. +9. Improve readelf on invalid input. PR 12467. +10. Update ELF assembler to issue an error on invalid .size directive. +PR 12519, +11. Properly handle PT_DYNAMIC segment with zero size sections. PR 12516. +12. Add a new linker option, --verbose=2, to report plugin symbol +status. +13. Properly handle entry symbols in linker LTO support. PR 12507. +14. Improve gold. +15. Improve arm support. +16. Improve bfin support. +17. Improve mips support. +18. Improve ppc support. + +Changes from binutils 2.21.51.0.5: + +1. Update from binutils 2011 0118. +2. Fix x32 (ILP32) support. Renamed assembler option to --x32. It +can create working static and dynamic x32 executables. +3. Add BMI and TBM new instruction support. +4. Fix x86 disassembler to properly display sign-extended byte. +5. Improve IFUNC linker support. PRs 12366/12371. +6. Fix readelf bug on archive. PR 12408. +7. Fix a assembler when compressing empty debug sections. PR 12409. +8. Fix a warning symbol linker bug. PR 12339. +9. Fix a duplicated assert message linker bug. PR 12380. +10. Fix plugin linker build. PR 12391. +11. Fix a plugin linker crash. PR 12364. +12. Improve plugin linker. +13. Improve gold. +14. Improve arm support. +15. Improve mips support. +16. Improve rx support. + +Changes from binutils 2.21.51.0.4: + +1. Update from binutils 2011 0104. +2. Add ILP32 support: + +http://www.kernel.org/pub/linux/devel/binutils/ilp32/abi.pdf + +to Linux/x86-64. +3. Prevent the Linux x86-64 kernel build failure and remove +__ld_compatibility support. PR 12356. +4. Improve gold. +5. Improve Windows support. +6. Improve hppa support. +7. Improve mips support. + +Changes from binutils 2.21.51.0.3: + +1. Update from binutils 2010 1217. +2. Fix the Linux relocatable kernel build. PR 12327. +3. Improve mips support. + +Changes from binutils 2.21.51.0.2: + +1. Update from binutils 2010 1215. +2. Add BFD linker support for placing input .ctors/.dtors sections in +output .init_array/.fini_array section. Add SORT_BY_INIT_PRIORITY. The +benefits are + a. Avoid output .ctors/.dtors section in executables and shared + libraries. + b. Allow mixing input .ctors/.dtors sections with input + .init_array/.fini_array sectiobs. GCC PR 46770. +3. Add BFD linker support for "ld -r" on mixed IR/non-IR objects. Add +the new ELF section type SHT_GNU_OBJECT_ONLY (0x6ffffff8). See + +http://sourceware.org/bugzilla/show_bug.cgi?id=12291 + +4. Update BFD linker to accept -flto and -flto-partition= for GCC LTO +option compatibility. +5. Fix BFD linker to avoid touching uncompressed section content when +relocating DWARF debug sections for errror reporting. +6. Mark .gnu.lto_* sections with SHF_EXCLUDE. +7. Add --target option to ar. +8. Improve gold. +9. Improve AIX support. +10. Improve Windows support. +11. Improve mips support. + +Changes from binutils 2.21.51.0.1: + +1. Update from binutils 2010 1206. +2. Fix BFD and GOLD linker for compressed debug section support. +3. Fix BFD linker plugin support. PR ld/12246, ld/12247, ld/12248, +ld/12277, ld/12288 and ld/12289. +4. Update BFD linker to group .text.exit, text.startup and .text.hot +sections. +5. Fix linker for W_EH_PE_datarel handling. PR ld/12253. +6. Fix array access bug in readelf/elfedit. PR binutils/11742 and +binutils/12235. +7. Support dumping GDB .gdb_index section. +8. Install plugin-api.h. +9. Improve gold. +10. Improve Solaris support. +11. Improve VMS support. +12. Improve Windows support. +13. Improve arm support. +14. Improve bfin support. +15. Improve mips support. +16. Improve s390 support. +17. Improve z80 support. + +Changes from binutils 2.20.51.0.12: + +1. Update from binutils 2010 1110. +2. Fix ld plugin support. PRs lto/46291 and lto/46319. +3. Fix x86 assembler to properly fold _GLOBAL_OFFSET_TABLE_ in Intel +syntax. PR 12186. +4. Update assembler to ensure that group signature symbols have the name +of the group. +5. Avoid unnecessary relaxation in assembler. PR 12049. +6. Update linker NOLOAD processing. +7. Update linker not to include archive members when symbols therein have +already been defined. PR 12001. +8. Change objdump to display compressed section names without 'z'. +9. Improve gold. +10. Improve Solaris support. +11. Improve VMS support. +12. Improve Windows support. +13. Improve arm support. +14. Improve cr16 support. +15. Improve mips support. +16. Improve ppc support. +17. Improve tic6x support. + +The file list: + +1. binutils-2.22.52.0.2.tar.bz2. Source code. + +The primary sites for the beta Linux binutils are: + +1. http://www.kernel.org/pub/linux/devel/binutils/ + +It is also available on linux/release/2.22.52.0.2 branch at + +http://git.kernel.org/?p=linux/kernel/git/hjl/binutils.git;a=summary + +Thanks. + + +H.J. Lu +hjl.tools@gmail.com +04/25/2012 |