summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2014-12-24 16:41:09 -0800
committerH.J. Lu <hjl.tools@gmail.com>2014-12-24 16:41:09 -0800
commita0890eb04228a6b921697b1192285b57e5f46e97 (patch)
tree8ff254c069ca661c514dc277988c143f937af64e /release.binutils-2.25.51.0.1
parentFix ld/emultempl/avrelf.em and ld/emultempl/ppc32elf.em (diff)
downloadbinutils-gdb-02458b5b7894e10794a1e1b87e4f8e36b3198b10.tar.gz
binutils-gdb-02458b5b7894e10794a1e1b87e4f8e36b3198b10.tar.bz2
binutils-gdb-02458b5b7894e10794a1e1b87e4f8e36b3198b10.zip
Update release note for 2.25.51.0.1hjl/linux/release/2.25.51.0.1
Diffstat (limited to 'release.binutils-2.25.51.0.1')
-rw-r--r--release.binutils-2.25.51.0.11014
1 files changed, 1014 insertions, 0 deletions
diff --git a/release.binutils-2.25.51.0.1 b/release.binutils-2.25.51.0.1
new file mode 100644
index 00000000000..85e9e1cbb5b
--- /dev/null
+++ b/release.binutils-2.25.51.0.1
@@ -0,0 +1,1014 @@
+This is the beta release of binutils 2.25.51.0.1 for Linux, which is
+based on binutils 2014 1224 master branch 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.23.52.0.2 release, when creating executables, BFD
+linker will issue an error for undefined weak reference which is
+defined in a shared library from DT_NEEDED. Previously BFD linker
+will silently include the shared library from DT_NEEDED.
+
+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.25.51.0.1 to
+hjl.tools@gmail.com
+
+and
+
+http://www.sourceware.org/bugzilla/
+
+Changes from binutils 2.24.51.0.4:
+
+1. Update from binutils 2014 1224.
+2. Update Intel instruction extension support to October, 2014,
+including AVX512VBMI, AVX512IFMA, PCOMMIT and CLWB.
+3. --compress-debug-sections is turned on for Linux/x86 assembler by
+default.
+4. Deprecate R_X86_64_PC32_BND and R_X86_64_PLT32_BND support. Add
+-z bndplt linker option to enable MPX PLT.
+5. Support copy relocations in x86-64 PIE.
+6. Don't output symbol version definitions for non-DT_NEEDED libs.
+PR ld/16452, ld/16457.
+7. Optimize out i386/x86-64 JUMP_SLOT relocation.
+8. Check PC-relative offset overflow in x86-64 PLT entry. PR ld/17618.
+9. Check branch displacement overflow in x86-64 PLT entry.
+10. Fix many memory access issues. PRs ld/17453, binutils/17510,
+binutils/17512, binutils/17531, binutils/17533, binutils/17597,
+PR binutuls/17605, PR ld/17713.
+11. Disallow copy relocations against protected symbols. PR ld/15228.
+12. Fix an x86 assembler crash on invalid input. PR gas/17493.
+12. Fix an addr2line bug. PR binutils/17541.
+14. Sort relocs output by ld -r. PR ld/17666.
+15. Speed up x86 PLT dump. PR binutils/17677.
+16. Update x86 assembler to add REX prefix to encode R_X86_64_GOTTPOFF
+for x32. PR ld/17482.
+17. Run eh_frame optimisation for relocatable link. PR ld/17467.
+18. Discard zero address range eh_frame FDEs. PR ld/17447.
+19. Add support for more than one plugin in lib/bfd-plugins. PR ld/17422.
+20. Add -D/-U options to objcopy/strip. PR binutils/17671.
+21. Don't check shared libraries for .eh_frame sections nor --build-id.
+PR ld/17742.
+22. Fix exception frame section with static link for gold. PR gold/14675.
+23. Handle stack split for x32 in gold. PR gold/17729.
+24. Initial visium support.
+25. Improve gold support.
+26. Improve COFF support.
+27. Improve aarch64 support.
+28. Improve arm support.
+29. Improve avr support.
+30. Improve mips support.
+31. Improve moxie support.
+32. Improve msp430 support.
+33. Improve nios2 support.
+34. Improve ppc/ppc64 support.
+35. Improve sparc support.
+36. Improve spu support.
+
+Changes from binutils 2.24.51.0.3:
+
+1. Update from binutils 2014 0923.
+2. Update Intel AVX-512 instruction support to July, 2014.
+3. Support Intel secure enclave instruction.
+4. Support Intel clflushopt instruction.
+5. Support Intel xsavec/xrstors instructions.
+6. Fix an x86 linker crash with --just-symbols. PR ld/17306.
+7. Improve x86 PLT entry matching. PR binutils/17154.
+8. Fix an x86 GNU2 TLS linker bug. PR ld/17057.
+9. Update x86-64 linker to create alternate PLT entries for MPX.
+10. Update x86 assembler to disallow VEX/EVEX encoded instructions in
+16-bit mode. PR gas/17421.
+11. Improve prefix handling in x86 disassembler. PR binutils/16893.
+12. Update x86 disassembler to properly handle suffix for iret and sysret
+in Intel mode.
+13. Update x86 disassembler to properly handle prefixes before fwait.
+PR binutils/16891.
+14. Fix an AVX512 gather/scatter x86 disassembler bug. PR
+binutils/16490.
+15. Add -momit-lock-prefix option to x86 assembler.
+16. Fix nm on mixed IR/non-IR input objects.
+17. Fix a --just-symbols linker bug. PR ld/17313.
+18. Fix a bad .eh-frame section bug with LTO and non-LTO objects. PR
+ld/16563.
+19. Improve linker EH frame support
+20. Fix a linker .gnu.warning bug with LTO objects. PR ld/16746.
+21. Improve support for slim LTO objects. PR ld/13227.
+22. Fix a linker crash when MALLOC_PERTURB_ is set. PR ld/17047.
+23. Fix a wrapped symbol linker bug. PR ld/16910.
+24. Fix a linker bug on object with separate debug file. PR ld/16867.
+25. Fix an incorrect error message linker bug. PR ld/16787.
+26. Fix an incorrect warning message linker bug. PR ld/16756.
+27. Fix a linker bug on LTO objects with TLS. PR ld/16846.
+28. Fix the 32-bit linker on large file (~2 Gb). PR ld/16803.
+29. Fix a garbage collection linker bug. PR ld/16643.
+30. Fix a garbage collection linker bug with --dynamic-list. PR
+gold/16530.
+31. Properly handle DW_CFA_restore_state in DWARF dumper. PR
+binutils/16252.
+32. Fix a strip bug. PR binutils/16811.
+33. Update ar/nm to load liblto_plugin.so automatically if available. PR
+binutils/14698.
+34. Check corrupt section names in readelf. PR binutils/16664.a
+35. Add NT_GNU_GOLD_VERSION support to readelf. PR binutils/16444.
+36. Update assembler to honour #line directives inside macros. PR
+gas/16908.
+37. Improve linker supprot for --as-needed and --start-group/--end-group.
+PR ld/17068.
+38. Honor "-z noexecstack" for "ld -r". PR ld/16744.
+39. Honor --no-demangle for "ld --cref". PR ld/16569.
+40. Improve gold.
+41. Improve Windows support.
+42. Improve MacOS support.
+43. Improve aarch64 support.
+44. Improve alpha support.
+45. Improve arm support.
+46. Improve avr support.
+47. Improve cris support.
+48. Improve m68k support.
+49. Improve metag support.
+50. Improve mips support.
+51. Improve mmix support.
+52. Improve msp430 support.
+53. Improve nds32 support.
+54. Improve nios2 support.
+55. Improve or1k support.
+56. Improve ppc/ppc64 support.
+57. Improve rl78 support.
+58. Improve rx support.
+59. Improve s390 support.
+60. Improve sh support.
+61. Improve sparc support.
+62. Improve v850 support.
+63. Improve xtensa support.
+
+Changes from binutils 2.24.51.0.2:
+
+1. Update from binutils 2014 0127.
+2. Fix a linker crash with mixed IR/non-IR input objects.
+3. Update readelf/objdump to display versioned symbol names when dumping
+dynamic relocations. PR 16496.
+4. Update linker to improve orphaned TLS section handling. PR 16498.
+5. Update linker to check incompatible existing default symbol definition.
+PR 16467.
+6. Update linker to properly handle non-PIC references to __ehdr_start in
+pie and shared object. PR 16428.
+7. Update bfd to properly generate PT_GNU_RELRO segment for ld and
+objcopy. PRs 14207/16322/16323.
+8. Update x86 assembler to check for invalid register set in AVX512 gather
+instructions. PR 16489.
+9. Update empty section handling in linker.
+10. Avoid invalid directory in linker library search. PR 16456.
+11. Improve x86 disassembler.
+12. Improve gold.
+13. Improve COFF support.
+14. Add nds32 support.
+15. Improve aarch64 support.
+16. Improve arm support.
+17. Improve mips support.
+18. Improve msp430 support.
+19. Improve ppc support.
+20. Improve rl78 support.
+21. Improve z80 support.
+
+Changes from binutils 2.24.51.0.1:
+
+1. Update from binutils 2013 1213.
+2. Fix ld and objcopy to set the SHF_INFO_LINK bit for SHT_REL/SHT_RELA
+sections. PR 16317.
+3. Fix ld and objcopy to properly generate PT_GNU_RELRO segment. PRs
+14207/16322/16323.
+4. Fix objcopy to copy EI_OSABI field. PR 16318.
+5. Change ld to set e_type in ELF header to ET_EXEC for -pie
+-Ttext-segment=.
+6. Fix a ld bug for --as-needed with symbol versioning.
+7. Add gas/ld/gold support for R_X86_64_PC32_BND and R_X86_64_PLT32_BND
+relocations.
+8. Fix an assembler line listing bug. PR 16109.
+9. Improve gold.
+10. Improve nacl support.
+11. Improve COFF support.
+12. Improve aarch64 support.
+13. Improve arm support.
+14. Improve hppa support.
+15. Improve mips support.
+16. Improve ppc support.
+
+Changes from binutils 2.23.52.0.2:
+
+1. Update from binutils 2013 1106.
+2. Add Intel AVX-512 new instruction support.
+3. Add Intel MPX new instruction support.
+4. Update ld to support x86-64 large PIC model with TLS GD and LD sequences.
+5. Fix ld to properly handle R_X86_64_DTPOFF64. PR 15685.
+6. Fix x86 assembler to properly check 64-bit register.
+7. Update x86 assembler not to align text/data/bss sections for ELF.
+8. Fix x86 assembler to properly support cvttps2pi. PR 13572.
+9. Fix ld to generate warning sections in glibc. PR 15762.
+10. Avoid corrupted binary generated by objcopy/strip. PR 16056.
+11. Improve ld hash. PR 15657.
+12. Fix objdump on /proc/kcore. PR 15818.
+13. Improve DWARF support.
+14. Improve addr2line. PR 15994.
+15. Improve readelf. PR 15745.
+16. Improve gold.
+17. Improve nacl support.
+18. Improve aarch64 support.
+19. Improve arm support.
+20. Improve cris support.
+21. Improve hppa support.
+22. Improve m32c support.
+23. Improve m68k support.
+24. Improve mips support.
+25. Improve msp430 support.
+26. Improve nios2 support.
+27. Improve ppc support.
+28. Improve rl78 support.
+29. Improve rx support.
+30. Improve rs6000 support.
+31. Improve s390 support.
+32. Improve sparc support.
+33. Improve tile support.
+34. Improve vax support.
+
+Changes from binutils 2.23.52.0.1:
+
+1. Update from binutils 2013 0426.
+2. Add x32 support to embedded x86_64 ELF target.
+3. Fix an x86 IFUNC linker regression. PR 15371.
+4. Fix an LTO linker weak definition bug. PR 15323.
+5. Remove stale dynamic table entries for symbols optimized out by LTO.
+PR 15270.
+6. Revert the fix for PR 15149. When creating executables, BFD linker
+won't issue an error for undefined weak reference which is defined in
+7 shared library from DT_NEEDED.
+8. Ignore weak reference which is is defined in a shared library from
+DT_NEEDED. This may change the behavior of resulting binaries with
+undefined weak reference. List libraries needed on command-line as work
+around. PR 12549.
+9. Fix a MIPS ELF linker crash. PR 15382.
+10. Align LMA per VMA alignment only if needed. PR 15222.
+11. Fix a BFD decompress memory leak. PR 15356.
+12. Properly check SIB byte in x86 disassembler.
+13, Fix invalid memory access in readelf. PR 15191.
+14, Fix invalid memory access in DWARF dumper. PRs 15206/15202/15201.
+15. Improve gold.
+16. Improve aarch64 support.
+17. Improve arm support.
+18. Improve avr support.
+19. Improve h8300 support.
+20. Improve mips support.
+21. Improve nios2 support.
+22. Improve ppc support.
+23. Improve rl78 support.
+24. Improve sh support.
+25. Improve sparc support.
+26. Improve tic6x support.
+27. Improve v850 support.
+
+Changes from binutils 2.23.51.0.9:
+
+1. Update from binutils 2013 0226.
+2. Add Intel SAMP new instruction support.
+3. Allow dynamic R_386_SIZE32, R_X86_64_SIZE32 and R_X86_64_SIZE64
+relocations agaist TLS symbols.
+4. Fix BFD linker to set STB_GNU_UNIQUE only for definition. PR 15167.
+5. Fix BFD linker to set STB_GNU_UNIQUE only if symbol is defined in
+regular object. PR 15107.
+6. Don't add DT_NEEDED for references from the LTO IR input. PR 15146.
+7. When creating executables, BFD linker will issue an error for undefined
+weak reference which is defined in a shared library from DT_NEEDED.
+PR 15149.
+8. Also trace symbol from the LTO IR input. PR 15141.
+9. Support stripping LTO IR sections. PR 15033.
+10. Don't allow a nested archive pointing to itself and don't generate
+bad archive. PR 15140.
+11. Fix objcopy segfault on non-ELF input. PR 14873.
+12. Update DWARF dump support.
+13. Improve gold.
+14. Add nios2 support.
+15. Improve mach support.
+16. Improve aarch64 support.
+17. Improve arm support.
+18. Improve avr support.
+19. Improve h8300 support.
+20. Improve meta support.
+21. Improve mips support.
+22. Improve ppc support.
+23. Improve rl78 support.
+24. Improve sparc support.
+25. Improve v850 support.
+
+Changes from binutils 2.23.51.0.8:
+
+1. Update from binutils 2013 0118.
+2. Support R_386_SIZE32, R_X86_64_SIZE32 and R_X86_64_SIZE64
+relocations.
+3. Fix x86 assembler for "xtrn@got -1". PR 15019.
+4. Don't generate old dtags with --enable-new-dtags.
+5. Add Meta support.
+6. Improve gold.
+7. Improve aarch64 support.
+8. Improve arm support.
+9. Improve cr16 support.
+10. Improve mips support.
+11. Improve ppc support.
+12. Improve v850 support.
+13. Improve xgate support.
+
+Changes from binutils 2.23.51.0.7:
+
+1. Properly adjust h->plt.refcount. PR 14980.
+
+Changes from binutils 2.23.51.0.6:
+
+1. Update from binutils 2012 1218.
+2. Add missing R_*_IRELATIVE relocations. PR 14968.
+3. Remove unnecessary R_*_NONE relocations. PR 14956.
+4. Fix ar/ranlib on 32-bit filesystems. PR 14933.
+5. Fix a "Not enough room for program headers" linker bug. PR 14926.
+6. Support self-assignment in a linker script to convert symbols to
+absolute. PR 14962.
+7. Support --copy-dt-needed-entries when creating DSO. PR 14915.
+8. Improve linker plugin DSO error handling. PR 14904.
+9. Issue warning for plugin dummy. PR 12760.
+10. Add -fuse-ld=bfd|gold support to ld and gold.
+11. Fix gold configure. PR 14897.
+12. Correct gas dependency. PR 14899.
+13. Add rdos support.
+14. Improve gold.
+15. Improve nacl support.
+16. Improve aarch64 support.
+17. Improve arm support.
+18. Improve microblaze support.
+19. Improve mips support.
+20. Improve ppc support.
+21. Improve tile support.
+
+Changes from binutils 2.23.51.0.5:
+
+1. Update from binutils 2012 1123.
+2. Fix 64-bit jecxz encoding regression in x86 assembler. PR 14859.
+3. Revert an accidental linker change. PR 14862.
+4. Fix x32 TLS LD to LE optimization in gold. PR 14858.
+5. Add "-z global" option to set DF_1_GLOBAL to ld.
+6. Improve ld plugin error handling.
+7. Port ld lib32 arrangement from Debian.
+8. Properly set the output maxpagesize when rewriting program header.
+PR 14493.
+9. Add additional DF_1_XXX support to readelf.
+10. Improve nacl support with separate code segments.
+11. Improve macos support.
+12. Improve arm support.
+13. Improve microblaze support.
+14. Improve mips support.
+15. Improve ppc support.
+16. Improve sparc support.
+
+Changes from binutils 2.23.51.0.4:
+
+1. Update from binutils 2012 1110.
+2. Support new Linux NOTE sections.
+3. Add -z stacksize=SIZE option to ld to set size of stack segment.
+4. Fix a BFD IOVEC close bug. PR 14813.
+5. Fix a BFD IOVEC on archive bug. PR 14567.
+6. Fix archive support for non-ELF targets. PR 14481.
+7. Improve gold.
+8. Improve COFF support.
+9. Improve arm support.
+10. Improve microblaze support.
+11. Improve mips support.
+12. Improve ppc support.
+13. Improve rx support.
+14. Improve s390 support.
+15. Improve v850 support.
+16. Improve xgate support.
+
+Changes from binutils 2.23.51.0.3:
+
+1. Update from binutils 2012 1026.
+2. Fix an LTO linker bug. PR 14747.
+3. Add cx16 arch feature to x86 assembler.
+4. Add -march=bdver3 option to x86 assembler.
+5. Properly handle ignored REX prefix with fwait in x86 disassembler.
+6. Fix x32 register names in objdump DWARF output.
+7. Add NT_SIGINFO/NT_FILE support to readelf.
+8. Add linker --ignore-unresolved-symbol option from NetBSD.
+9. Treat .gdb_index section as debug section. PR 14662.
+10. Add --debug-dump=addr, --debug_dump=cu_index options to readelf and
+objdump.
+11. Add dwp, DWARF packaging utility.
+12. Add compressed debug section support to Windows. PR 14067.
+13. Improve gold.
+14. Improve aarch64 support.
+15. Improve arm support.
+16. Improve hppa support.
+17. Improve mips support.
+18. Improve s390 support.
+19. Improve tile support.
+20. Improve v850 support.
+
+Changes from binutils 2.23.51.0.2:
+
+1. Update from binutils 2012 0918.
+2. Properly handle versioned STB_SECONDARY symbols.
+3. Fix wrong symbol type with common symbol and weak function. PR 14591.
+4. Ignore discarded sections when converting mov to lea.
+5. Improve gold.
+6. Improve avr support.
+7. Improve aarch64 support.
+8. Improve moxie support.
+9. Improve ppc support.
+10. Improve tile support.
+
+Changes from binutils 2.23.51.0.1:
+
+1. Update from binutils 2012 0908.
+2. Fix STB_SECONDARY support:
+ a. Generate STB_SECONDARY symbols in DSO by default.
+ b. Properly handle STB_SECONDAY symbols when linking with archive.
+ c. Don't allow .weak directive to override .secondary directive.
+3. Optimize i386/x86-64 linker to convert GOT load (MOV) to LEA.
+4. Clarify x86 assembler error messages. PR 14457.
+5. Improve NOP/prefetch support in x86 disassembler.
+6. Improve Intel syntax support in x86 assembler.
+7. Add -march={btver1, btver2} options to x86 assembler.
+8. Fix binutils build with --enable-shared. PR 4970.
+9. Also provide __executable_start for PIE. PR 14525.
+10. Use xmalloc to allocate memory for argument list file. PR 14526.
+11. Add Intel Itanium Series 9500 support to assembler/diassembler.
+12. Ignore section symbols without a BFD section when outputing symbols
+and check bad section index. PR 14493.
+13. Improve archive reader. PR 14475.
+14. Support DW_OP_GNU_const_index reader.
+15. Improve handling of imput files with empty ELF group sections.
+PR 14444.
+16. Fix IFUNC support in s390 linker.
+17. Improve gold.
+18. Add aarch64 support.
+19. Improve arm support.
+20. Improve mips support.
+21. Improve mmix support.
+22. Improve moxie support.
+23. Improve ppc support.
+24. Improve s390 support.
+25. Improve tile support.
+
+Changes from binutils 2.22.52.0.4:
+
+1. Update from binutils 2012 0806.
+2. Add Intel ADX, RDSEED and PRFCHW new instruction support.
+3. Support 'rep bsf', 'rep bsr', and 'rep ret' syntax in x86 assembler.
+4. Mark 256-bit vmovntdqa as AVX2 instruction for x86 assembler.
+5. Improve x86 assembler error handling.
+6. Improve the repeat directive support in assembler. PR 14201.
+7. Improve x86-64 disassembler on superfluous prefixes.
+8. Fix x86 disassembler crash on bad XOP instructions. PR 14355.
+9. Support STB_SECONDARY:
+
+https://groups.google.com/forum/?hl=en&fromgroups#!forum/generic-abi
+
+10. Added SORT_NONE to the linker script language to disable section
+sorting and properly handle .init/.fini sections. PR 14156.
+11. Fix a weak alias linker bug. PR 14323.
+12. Fix the NULL GNU_RELRO segment linker bug. PR 14207.
+13. Fix the bad GNU_RELRO segment linker bug. PR 14215.
+14. Add linker support of __ehdr_start symbol for the ELF file header.
+15. Add IFUNC support to s390 linker.
+16. Fix ar for >4GB member. PR 14302.
+17. Fix objcopy --compress-debug-sections on empty debug section. PR
+14319.
+18. Fix readelf/objdup to display null bytes in DWARF debug info. PR
+14420.
+19. Improve gold.
+20. Improve arm support.
+21. Improve avr support.
+22. Improve cris support.
+23. Improve m68k support.
+24. Improve mips support.
+25. Improve ppc support.
+26. Improve vax support.
+27. Improve xgate support.
+
+Changes from binutils 2.22.52.0.3:
+
+1. Update from binutils 2012 0604.
+2. Check addend overflow for R_X86_64_RELATIVE64.
+3. Fix ar/nm/ranlib with --plugin.
+4. Create .eh_frame_hdr section only if needed. PR 13909.
+5. Properly create .eh_frame section for PLT. PR 14105.
+6. Fix a linker crash. PR 14170.
+7. Fix readelf to properly display addend.
+8. Don't make _DYNAMIC/_GLOBAL_OFFSET_TABLE_/_PROCEDURE_LINKAGE_TABLE_
+symbols absolute for x86 and ppc.
+9. Properly handle shared libraries with zero dynamic symbols. PRs
+7023/13962.
+10. Update readelf/assembler to support multibyte characters in symbol
+names.
+11. Add --strip-dwo/--extract-dwo options to objcopy/strip.
+12. Add R_X86_64_RELATIVE64 support to gold.
+13. Improve gold.
+14. Improve NACL support.
+15. Improve alpha support.
+16. Improve avr support.
+17. Improve m68k support.
+18. Improve mips support.
+19. Improve ppc support.
+20. Improve vax support.
+
+Changes from binutils 2.22.52.0.2:
+
+1. Update from binutils 2012 0507.
+2. Fix Linux kernel build by reverting the PR 13621 fix. PR 14052.
+3. Add support for x86_64-*-linux-gnux32 target.
+4. Improve x86 assembler.
+5. Improve DWARF support.
+6. Improve gold.
+7. Improve rx support.
+8. Improve sparc support.
+9. Add xgate support.
+
+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.
+
+It is available as hjl/linux/release/2.25.51.0.1 tag at
+
+https://sourceware.org/git/?p=binutils-gdb.git;a=summary
+
+Thanks.
+
+
+H.J. Lu
+hjl.tools@gmail.com
+12/24/2014