summaryrefslogtreecommitdiff
path: root/source/d/binutils
diff options
context:
space:
mode:
authorPatrick J Volkerding <volkerdi@slackware.com>2012-09-26 01:10:42 +0000
committerEric Hameleers <alien@slackware.com>2018-05-31 22:51:55 +0200
commit9664bee729d487bcc0a0bc35859f8e13d5421c75 (patch)
treeb428a16618e36ed864a8d76ea3435e19a452bf90 /source/d/binutils
parent75a4a592e5ccda30715f93563d741b83e0dcf39e (diff)
downloadcurrent-9664bee729d487bcc0a0bc35859f8e13d5421c75.tar.gz
Slackware 14.0slackware-14.0
Wed Sep 26 01:10:42 UTC 2012 Slackware 14.0 x86_64 stable is released! We're perfectionists here at Slackware, so this release has been a long time a-brewing. But we think you'll agree that it was worth the wait. Slackware 14.0 combines modern components, ease of use, and flexible configuration... our "KISS" philosophy demands it. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Thanks to everyone who helped make this happen. The Slackware team, the upstream developers, and (of course) the awesome Slackware user community. Have fun! :-)
Diffstat (limited to 'source/d/binutils')
-rw-r--r--source/d/binutils/binutils-2.21.51.0.6.tar.sign8
-rw-r--r--source/d/binutils/binutils-2.22.52.0.2.tar.signbin0 -> 543 bytes
-rwxr-xr-xsource/d/binutils/binutils.SlackBuild50
-rw-r--r--source/d/binutils/release.binutils-2.21.51.0.6257
-rw-r--r--source/d/binutils/release.binutils-2.22.52.0.2508
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
new file mode 100644
index 00000000..c2bf9930
--- /dev/null
+++ b/source/d/binutils/binutils-2.22.52.0.2.tar.sign
Binary files differ
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