and though bugs are the bane of my existence, rest assured the wretched thing will get the best of care here

  1. 23 Dec, 2014 3 commits
    • Tristan Gingold's avatar
      Add generated files. · 68b975af
      Tristan Gingold authored
      68b975af
    • Tristan Gingold's avatar
      Version 2.25 · d9ebca0c
      Tristan Gingold authored
      bfd/
      2014-12-23  Tristan Gingold  <gingold@adacore.com>
      
      	* version.m4: Bump version to 2.25
      	* configure: Regenerate.
      
      binutils/
      2014-12-23  Tristan Gingold  <gingold@adacore.com>
      
      	* configure: Regenerate.
      
      gas/
      2014-12-23  Tristan Gingold  <gingold@adacore.com>
      
      	* configure: Regenerate.
      
      gprof/
      2014-12-23  Tristan Gingold  <gingold@adacore.com>
      
      	* configure: Regenerate.
      
      ld/
      2014-12-23  Tristan Gingold  <gingold@adacore.com>
      
      	* configure: Regenerate.
      
      opcodes/
      2014-12-23  Tristan Gingold  <gingold@adacore.com>
      
      	* configure: Regenerate.
      d9ebca0c
    • GDB Administrator's avatar
      Automatic date update in version.in · e54ff392
      GDB Administrator authored
      e54ff392
  2. 22 Dec, 2014 1 commit
  3. 21 Dec, 2014 1 commit
  4. 20 Dec, 2014 1 commit
  5. 19 Dec, 2014 6 commits
    • Matthew Fortune's avatar
      Rework the alignment check for BFD_RELOC_MIPS_18_PCREL_S3. · 3cbabe78
      Matthew Fortune authored
      gas/
      
      	* config/tc-mips.c (md_apply_fix): Apply alignment check
      	to the symbol and offset rather than *valP for
      	BFD_RELOC_MIPS_18_PCREL_S3.  Also update the error message
      	for BFD_RELOC_MIPS_19_PCREL_S2.
      
      gas/testsuite/
      
      	* gas/mips/r6-64.s: Remove .align directives from LDPC
      	instructions and add further tests for LDPC.
      	* gas/mips/r6-64-n32.d: remove the NOPs from LDPC expected
      	output and update for new tests.
      	* gas/mips/r6-64-n64.d: Likewise.
      	* gas/mips/ldpc-unalign.l: New file.
      	* gas/mips/ldpc-unalign.s: Likewise.
      	* gas/mips/mips.exp: Run ldpc-unalign test.
      3cbabe78
    • Matthew Fortune's avatar
      Fix all failing FPXX tests for tx39-elf. · fab39d55
      Matthew Fortune authored
      ld/testsuite/
      
      	* ld-mips-elf/attr-gnu-4-00.d: Relax check for ISA extension.
      	* ld-mips-elf/attr-gnu-4-01.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-02.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-03.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-08.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-10.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-11.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-18.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-20.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-22.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-28.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-30.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-33.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-38.d: Likewise.
      	* ld-mips-elf/attr-gnu-4-44.d: Likewise.
      fab39d55
    • Matthew Fortune's avatar
      Fix undefined weak symbol reloc tests · e1181b00
      Matthew Fortune authored
      ld/testsuite/
      
      	* ld-mips-elf/mips-elf.exp: Update undefweak-overflow tests.
      	* ld-mips-elf/undefweak-overflow-n32.d: Remove.
      	* ld-mips-elf/undefweak-overflow-n64.d: Likewise.
      	* ld-mips-elf/undefweak-overflow.s: Set mips64r6, noreorder and
      	add a label to mark the micromips region.
      	* ld-mips-elf/undefweak-overflow.d: Update expected output.
      e1181b00
    • Matthew Fortune's avatar
      Add in a JALRC alias and fix the NAL instruction. · df063d3c
      Matthew Fortune authored
      opcodes/
      
      	* mips-opc.c (mips_builtin_opcodes): Add JALRC alias for JIALC.
      	Remove the operand from NAL.
      
      gas/testsuite/
      
      	* gas/mips/r6.s: Test JALRC and NAL
      	* gas/mips/r6-n32.d: Add expected output for JALRC and NAL.
      	* gas/mips/r6-n64.d: Likewise.
      	* gas/mips/r6.d: Likewise.
      df063d3c
    • Andrew Bennett's avatar
      [MIPS] When calculating a relocation using an undefined weak symbol don't check for overflow. · cfd4e875
      Andrew Bennett authored
      In MIPS the relocation calculation only ignores the overflow checks for undefined
      weak symbols on relocations associated with j/jal.   This patch extends this to
      the relocations used by the: b* instructions; pc/gp relative symbol offsets; and the
      lwpc/ldpc MIPS r6 instructions.
      
      bfd/
      	* elfxx-mips.c (mips_elf_calculate_relocation): Only check for overflow
      	on non-weak undefined symbols.
      
      ld/testsuite/
      	* ld-mips-elf/mips-elf.exp: Add in undefined weak overflow tests for
      	o32, n32 and n64.
      	* ld-mips-elf/undefweak-overflow.s: New test.
      	* ld-mips-elf/undefweak-overflow.d: New test.
      	* ld-mips-elf/undefweak-overflow-n32.d: New test.
      	* ld-mips-elf/undefweak-overflow-n64.d: New test.
      cfd4e875
    • GDB Administrator's avatar
      Automatic date update in version.in · 80bfea8a
      GDB Administrator authored
      80bfea8a
  6. 18 Dec, 2014 1 commit
  7. 17 Dec, 2014 1 commit
  8. 16 Dec, 2014 1 commit
  9. 15 Dec, 2014 2 commits
  10. 14 Dec, 2014 2 commits
    • H.J. Lu's avatar
      Handle weak alias for PIE with copy reloc · 3e5d8b05
      H.J. Lu authored
      When there is a weak symbol with a real definition, the processor
      independent code will have arranged for us to see the real definition
      first.  We need to copy the needs_copy bit from the real definition and
      check it when allowing copy reloc in PIE.
      
      bfd/
      
      	PR ld/17689
      	* elf64-x86-64.c (elf_x86_64_link_hash_entry): Add needs_copy.
      	Change has_bnd_reloc to bit field.
      	(elf_x86_64_link_hash_newfunc): Initialize needs_copy and
      	has_bnd_reloc to 0.
      	(elf_x86_64_check_relocs): Set has_bnd_reloc to 1 instead
      	of TRUE.
      	(elf_x86_64_adjust_dynamic_symbol): Copy needs_copy from the
      	real definition to a weak symbol.
      	(elf_x86_64_allocate_dynrelocs): Also check needs_copy of a
      	weak symbol for PIE when discarding space for relocs against
      	symbols which turn out to need copy relocs.
      	(elf_x86_64_relocate_section): Also check needs_copy of a
      	weak symbol for PIE with copy reloc.
      
      ld/testsuite/
      
      	PR ld/17689
      	* ld-x86-64/pr17689.out: New file.
      	* ld-x86-64/pr17689.rd: Likewise.
      	* ld-x86-64/pr17689a.c: Likewise.
      	* ld-x86-64/pr17689b.S: Likewise.
      
      	* ld-x86-64/x86-64.exp: Run PR ld/17689 tests.
      3e5d8b05
    • GDB Administrator's avatar
      Automatic date update in version.in · 27cef631
      GDB Administrator authored
      27cef631
  11. 13 Dec, 2014 1 commit
  12. 12 Dec, 2014 1 commit
  13. 11 Dec, 2014 1 commit
  14. 10 Dec, 2014 2 commits
  15. 09 Dec, 2014 1 commit
  16. 08 Dec, 2014 1 commit
  17. 07 Dec, 2014 1 commit
  18. 06 Dec, 2014 1 commit
  19. 05 Dec, 2014 3 commits
    • H.J. Lu's avatar
      Define bfd_elf32_get_synthetic_symtab for x32 · 14fa0392
      H.J. Lu authored
      	* elf64-x86-64.c (bfd_elf32_get_synthetic_symtab): New.
      14fa0392
    • H.J. Lu's avatar
      Add _bfd_elf_ifunc_get_synthetic_symtab · 875896e3
      H.J. Lu authored
      In i386 and x86-64 binaries with ifunc, relocations against .got.plt
      section may not be in the same order as entries in PLT section.  This
      patch adds _bfd_elf_ifunc_get_synthetic_symtab.  It takes a function
      pointer which returns an array of PLT entry symbol values.  It calls
      the function pointer to get the PLT entry symbol value array indexed
      by relocation index, instead of calling plt_sym_val on each relocation
      index.
      
      	PR binutils/17677
      	* elf-bfd.h (_bfd_elf_ifunc_get_synthetic_symtab): New prototype.
      	* elf-ifunc.c (_bfd_elf_ifunc_get_synthetic_symtab): New
      	function.
      	* elf32-i386.c (elf_i386_plt_sym_val): Removed.
      	(elf_backend_plt_sym_val): Likewise.
      	(elf_i386_get_plt_sym_val): New.
      	(elf_i386_get_synthetic_symtab): Likewise.
      	(bfd_elf32_get_synthetic_symtab): Likewise.
      	* elf64-x86-64.c (elf_x86_64_plt_sym_val): Removed.
      	(elf_x86_64_plt_sym_val_offset_plt_bnd): Likewise.
      	(elf_backend_plt_sym_val): Likewise.
      	(elf_x86_64_get_plt_sym_val): New.
      	(elf_x86_64_get_synthetic_symtab): Use
      	_bfd_elf_ifunc_get_synthetic_symtab.
      	(bfd_elf64_get_synthetic_symtab): Don't undefine for NaCl.
      875896e3
    • GDB Administrator's avatar
      Automatic date update in version.in · f6989d52
      GDB Administrator authored
      f6989d52
  20. 04 Dec, 2014 3 commits
    • Alan Modra's avatar
      PowerPC gold, fix 32-bit branch address arithmetic · 2fb062ba
      Alan Modra authored
      Mixing 64-bit and 32-bit types led to the wrong promotions.  Keep
      calculation in same type.  Also fix a case where PLTREL24 reloc addend
      should be ignored.
      
      	* Powerpc.cc (Target_powerpc::Branch_info::make_stub): Ignore
      	addend of PLTREL24 reloc when not generating a plt stub.  Make
      	max_branch_offset an "Address".
      	(Target_powerpc::Relocate::relocate): Make max_branch_offset
      	an "Address".
      2fb062ba
    • Alan Modra's avatar
      powerpc gold, work around pr17670 · feba9377
      Alan Modra authored
      pr17670 is about an assert triggering on a branch to an undefined
      weak symbol, the symbol being undefined due to dropping its comdat
      group section.  (Well sort of.  The symbol is actually defined in
      an .opd section which isn't part of the group, but the code section
      the opd entry points at is dropped.)  So don't assert.
      Also, don't make long branch stubs to such symbols, and arrange to
      have target-reloc.h code warn when applying relocs that use the sym.
      
      	PR 17670
      	* symtab.cc (Symbol::set_undefined): Remove assertion.
      	* powerpc.cc (Target_powerpc::symval_for_branch): Don't assert
      	on symbols defined in discarded sections, instead return false.
      	Rearrange params, update all callers.
      	(Target_powerpc::Branch_info::make_stub): Don't make stubs for
      	branches to syms in discarded sections.
      	(Global_symbol_visitor_opd::operator()): Set discarded opd syms
      	undefined and flag as discarded.
      	(Target_powerpc::Relocate::relocate): Localize variable.
      feba9377
    • GDB Administrator's avatar
      Automatic date update in version.in · b6cc4445
      GDB Administrator authored
      b6cc4445
  21. 03 Dec, 2014 5 commits
    • H.J. Lu's avatar
      Replace copyreloc-main.c with copyreloc-main.S · c76d88dc
      H.J. Lu authored
      	* ld-x86-64/copyreloc-main.c: Removed.
      	* ld-x86-64/copyreloc-main.S: New.
      	* ld-x86-64/x86-64.exp: Replace copyreloc-main.c with
      	copyreloc-main.S.
      c76d88dc
    • H.J. Lu's avatar
      Reformat elf_x86_64_create_dynamic_sections · 110b5f07
      H.J. Lu authored
      	* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Reformat.
      110b5f07
    • Alan Modra's avatar
      powerpc gold, fix pr17566 · a9c9ac20
      Alan Modra authored
      Code stolen from arm.cc.
      
      	PR 17566
      	* powerpc.cc (Target_powerpc::Scan::local): Use add_local_section
      	when adding dynamic relocations against section symbols.
      a9c9ac20
    • H.J. Lu's avatar
      X86-64: Allow copy relocs for building PIE · 631d040f
      H.J. Lu authored
      This patch allows copy relocs for non-GOT pc-relative relocation in PIE.
      
      bfd/
      
      	* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Always
      	allow copy relocs for building executables.
      	(elf_x86_64_adjust_dynamic_symbol): Allocate copy relocs for
      	PIE.
      	(elf_x86_64_allocate_dynrelocs): For PIE, discard space for
      	relocs against symbols which turn out to need copy relocs.
      	(elf_x86_64_relocate_section): Don't copy a pc-relative
      	relocation into the output file if the symbol needs copy reloc.
      
      ld/testsuite/
      
      	* ld-x86-64/copyreloc-lib.c: New file.
      	* ld-x86-64/copyreloc-main.c: Likewise.
      	* ld-x86-64/copyreloc-main.out: Likewise.
      	* ld-x86-64/copyreloc-main1.rd: Likewise.
      	* ld-x86-64/copyreloc-main2.rd: Likewise.
      
      	* ld-x86-64/x86-64.exp: Run copyreloc tests.
      631d040f
    • GDB Administrator's avatar
      Automatic date update in version.in · 005cb119
      GDB Administrator authored
      005cb119
  22. 02 Dec, 2014 1 commit