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

  1. 15 Feb, 2017 1 commit
  2. 14 Feb, 2017 3 commits
  3. 13 Feb, 2017 6 commits
    • Palmer Dabbelt's avatar
      Don't use "_gp" on RISC-V, use "_global_pointer$" instead · 3877052c
      Palmer Dabbelt authored
      "_gp" could conflict with ABI-complient code.  While it's probably OK
      because MIPS uses this name, we figured it'd be good to clean this up
      before a release with RISC-V in it.
      
      ld/ChangeLog:
      
      2017-02-13  Palmer Dabbelt  <palmer@dabbelt.com>
      
              * emulparams/elf32lriscv-defs.sh (SDATA_START_SYMBOLS): Change
              _gp to __global_pointer$.
      
      bfd/ChangeLog:
      
      2017-02-13  Palmer Dabbelt  <palmer@dabbelt.com>
      
              * elfnn-riscv.c (riscv_global_pointer_value): Change _gp to
              __global_pointer$.
      3877052c
    • Maciej W. Rozycki's avatar
      MIPS/BFD: Respect the ELF gABI dynamic symbol table sort requirement · e7ec0c47
      Maciej W. Rozycki authored
      Ensure all local symbols precede external symbols in the dynamic symbol
      table.
      
      No local symbols are expected to make it to the dynamic symbol table
      except for section symbols already taken care of, so this is really a
      safeguard only against a potential BFD bug otherwise not so harmful,
      which may become a grave one due to a symbol table sorting requirement
      violation (see PR ld/20828 for an example).  This means however that no
      test suite coverage is possible for this change as code introduced here
      is not normally expected to trigger.
      
      Logically split then the part of the dynamic symbol table which is not
      global offset table mapped, into a local area at the beginning and an
      external area following.  By the time `mips_elf_sort_hash_table' is
      called we have the number of local dynamic symbol table entries (section
      and non-section) already counted in `local_dynsymcount', so use it to
      offset the external area from the beginning.
      
      	bfd/
      	* elfxx-mips.c (mips_elf_hash_sort_data): Add
      	`max_local_dynindx'.
      	(mips_elf_sort_hash_table): Handle it.
      	(mips_elf_sort_hash_table_f) <GGA_NONE>: For forced local
      	symbols bump up `max_local_dynindx' rather than
      	`max_non_got_dynindx'.
      
      (cherry picked from commit e17b0c35)
      e7ec0c47
    • Maciej W. Rozycki's avatar
      MIPS/BFD: Use `bfd_size_type' for dynamic symbol table indices · 0e3f75f5
      Maciej W. Rozycki authored
      Use the `bfd_size_type' data type for dynamic symbol table indices in
      the MIPS backend, in line with generic code and removing the need to use
      a cast.
      
      	bfd/
      	* elfxx-mips.c (mips_elf_hash_sort_data): Convert the
      	`min_got_dynindx', `max_unref_got_dynindx' and
      	`max_non_got_dynindx' members to the `bfd_size_type' data type.
      	(mips_elf_sort_hash_table): Adjust accordingly.
      
      (cherry picked from commit 55f8b9d2)
      0e3f75f5
    • Maciej W. Rozycki's avatar
      MIPS/BFD: Streamline hash table references in `mips_elf_sort_hash_table' · aa00db4a
      Maciej W. Rozycki authored
      Make all hash table references throughout `mips_elf_sort_hash_table' use
      `htab', simplifying code and improving readability.
      
      	bfd/
      	* elfxx-mips.c (mips_elf_sort_hash_table): Use `htab' throughout
      	to access the hash table.
      
      (cherry picked from commit 0f8c4b60)
      aa00db4a
    • Maciej W. Rozycki's avatar
      MIPS/BFD: Fix assertion in `mips_elf_sort_hash_table' · 6f9b4383
      Maciej W. Rozycki authored
      Move the assertion on non-NULL `htab' in `mips_elf_sort_hash_table' to
      the beginning, before the pointer is dereferenced (`mips_elf_hash_table
      (info)' and `elf_hash_table (info)' both point to the same memory
      location, differently typed).
      
      	bfd/
      	* elfxx-mips.c (mips_elf_sort_hash_table): Move assertion on
      	non-NULL `htab' to the beginning.
      
      (cherry picked from commit 17a80fa8)
      6f9b4383
    • GDB Administrator's avatar
      Automatic date update in version.in · 53e0feae
      GDB Administrator authored
      53e0feae
  4. 12 Feb, 2017 1 commit
  5. 11 Feb, 2017 3 commits
  6. 10 Feb, 2017 1 commit
  7. 09 Feb, 2017 1 commit
  8. 08 Feb, 2017 1 commit
  9. 07 Feb, 2017 1 commit
  10. 06 Feb, 2017 1 commit
  11. 05 Feb, 2017 1 commit
  12. 04 Feb, 2017 1 commit
  13. 03 Feb, 2017 7 commits
    • Alan Modra's avatar
      [GOLD] PowerPC64 TOC indirect to TOC relative segfault · 2e5c40b6
      Alan Modra authored
      	* powerpc.cc (Powerpc_relobj::make_toc_relative): Don't crash
      	when no .toc section exists.
      2e5c40b6
    • Alan Modra's avatar
      Support -z relro on hppa · fcbac04d
      Alan Modra authored
      	PR ld/21000
      	* emulparams/hppalinux.sh (DATA_ADDR, SHLIB_DATA_ADDR): Don't define.
      	(DATA_SEGMENT_ALIGN, DATA_SEGMENT_END, DATA_SEGMENT_RELRO_END): Define.
      	* scripttempl/elf.sc: Don't define the above if DATA_SEGMENT_ALIGN
      	is already defined.
      fcbac04d
    • Alan Modra's avatar
      Don't make symbols dynamic other than undef weak · 24054c37
      Alan Modra authored
      Fixes: tmpdir/pr14525: symbol lookup error: tmpdir/pr14525: undefined
      symbol: __executable_start
      FAIL: PIE PR ld/14525
      
      	* elf32-hppa.c (ensure_undef_weak_dynamic): New function.
      	(allocate_plt_static, allocate_dynrelocs): Use it.
      24054c37
    • Alan Modra's avatar
      Set SHF_INFO_LINK for .PARISC.unwind · b9d4e9fd
      Alan Modra authored
      This flag should be set for any section header using sh_info to
      point to another section.
      
      Fixes a readelf warning about an unexpected value in info field,
      resulting in FAIL: Build warn libbar.so
      
      	* elf-hppa.h (elf_hppa_fake_sections): Set SHF_INFO_LINK for
      	.PARISC.unwind section.
      b9d4e9fd
    • Hans-Peter Nilsson's avatar
      Fix PR ld/20995 for cris-linux · 4f732932
      Hans-Peter Nilsson authored
      	* elf32-cris.c (elf_cris_finish_dynamic_symbol): Remove now unused
      	local variable dynobj.
      
      	PR ld/20995
      	* elf32-cris.c (elf_cris_size_dynamic_sections): Handle sdynrelro.
      	(elf_cris_adjust_dynamic_symbol): Place variables copied into the
      	executable from read-only sections into sdynrelro.
      	(elf_cris_finish_dynamic_symbol): Select sreldynrelro for
      	dynamic relocs in sdynrelro.
      	(elf_backend_want_dynrelro): Define.
      4f732932
    • Hans-Peter Nilsson's avatar
      PR binutils/19935: Fix fallout from now-default initfini-array. · 013ba182
      Hans-Peter Nilsson authored
      	* emulparams/criself.sh (USER_LABEL_PREFIX): Define.
      	(OTHER_END_SYMBOLS, ENTRY): Delete now-redundant defines.
      013ba182
    • GDB Administrator's avatar
      Automatic date update in version.in · 01e16c36
      GDB Administrator authored
      01e16c36
  14. 02 Feb, 2017 1 commit
  15. 01 Feb, 2017 4 commits
  16. 31 Jan, 2017 1 commit
  17. 30 Jan, 2017 3 commits
    • Maciej W. Rozycki's avatar
      MIPS: Add options to control branch ISA checks · e1df6767
      Maciej W. Rozycki authored
      Complement commit 9d862524 ("MIPS: Verify the ISA mode and alignment
      of branch and jump targets") and add GAS and LD options to control the
      checks for invalid branches between ISA modes introduced there, to help
      with some handwritten code lacking `.insn' annotation for labels used as
      branch targets and code produced by older versions of GCC which suffers
      from the issue with branches to code that has been optimized away,
      addressed with GCC commit 242424 ("MIPS/GCC: Mark trailing labels with
      `.insn'"), <https://gcc.gnu.org/ml/gcc-patches/2016-11/msg01061.html>.
      
      	bfd/
      	* elfxx-mips.h (_bfd_mips_elf_insn32): Rename prototype to...
      	(_bfd_mips_elf_linker_flags): ... this.  Add another parameter.
      	* elfxx-mips.c (mips_elf_link_hash_table): Add
      	`ignore_branch_isa' member.
      	(mips_elf_perform_relocation): Do not treat an ISA mode mismatch
      	in branch relocation calculation as an error if
      	`ignore_branch_isa' has been set.
      	(_bfd_mips_elf_insn32): Rename to...
      	(_bfd_mips_elf_linker_flags): ... this.  Rename the `on'
      	parameter to `insn32' and add an `ignore_branch_isa' parameter.
      	Handle the new parameter.
      
      	gas/
      	* config/tc-mips.c (mips_ignore_branch_isa): New variable.
      	(options): Add OPTION_IGNORE_BRANCH_ISA and
      	OPTION_NO_IGNORE_BRANCH_ISA enum values.
      	(md_longopts): Add "mignore-branch-isa" and
      	"mno-ignore-branch-isa" options.
      	(md_parse_option): Handle OPTION_IGNORE_BRANCH_ISA and
      	OPTION_NO_IGNORE_BRANCH_ISA.
      	(fix_bad_cross_mode_branch_p): Return FALSE if
      	`mips_ignore_branch_isa' has been set.
      	(md_show_usage): Add `-mignore-branch-isa' and
      	`-mno-ignore-branch-isa'.
      
      	* doc/as.texinfo (Target MIPS options): Add
      	`-mignore-branch-isa' and `-mno-ignore-branch-isa' options.
      	(-mignore-branch-isa, -mno-ignore-branch-isa): New options.
      	* doc/c-mips.texi (MIPS Options): Add `-mignore-branch-isa' and
      	`-mno-ignore-branch-isa' options.
      
      	* testsuite/gas/mips/branch-local-ignore-2.d: New test.
      	* testsuite/gas/mips/branch-local-ignore-3.d: New test.
      	* testsuite/gas/mips/branch-local-ignore-n32-2.d: New test.
      	* testsuite/gas/mips/branch-local-ignore-n32-3.d: New test.
      	* testsuite/gas/mips/branch-local-ignore-n64-2.d: New test.
      	* testsuite/gas/mips/branch-local-ignore-n64-3.d: New test.
      	* testsuite/gas/mips/mips.exp: Run the new tests.
      
      	ld/
      	* emultempl/mipself.em (ignore_branch_isa): New variable.
      	(mips_create_output_section_statements): Rename
      	`_bfd_mips_elf_insn32' called to `_bfd_mips_elf_linker_flags',
      	add `ignore_branch_isa' argument.
      	(PARSE_AND_LIST_PROLOGUE): Add OPTION_IGNORE_BRANCH_ISA and
      	OPTION_NO_IGNORE_BRANCH_ISA enum values.
      	(PARSE_AND_LIST_LONGOPTS): Add "ignore-branch-isa" and
      	"no-ignore-branch-isa" options.
      	(PARSE_AND_LIST_OPTIONS): Add `--ignore-branch-isa' and
      	`--no-ignore-branch-isa'.
      	(PARSE_AND_LIST_ARGS_CASES): Handle OPTION_IGNORE_BRANCH_ISA and
      	OPTION_NO_IGNORE_BRANCH_ISA.
      
      	* ld.texinfo (Options specific to MIPS targets): Add
      	`--ignore-branch-isa' and `--no-ignore-branch-isa' options.
      	(ld and the MIPS family): Likewise.
      
      	* testsuite/ld-mips-elf/bal-jalx-pic-ignore.d: New test.
      	* testsuite/ld-mips-elf/bal-jalx-pic-ignore-n32.d: New test.
      	* testsuite/ld-mips-elf/bal-jalx-pic-ignore-n64.d: New test.
      	* testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: New test.
      	* testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1: New test.
      	* testsuite/ld-mips-elf/unaligned-branch-ignore-mips16: New
      	test.
      	* testsuite/ld-mips-elf/unaligned-branch-ignore-micromips: New
      	test.
      	* testsuite/ld-mips-elf/mips-elf.exp: Run the new tests.
      
      (cherry picked from commit 8b10b0b3)
      e1df6767
    • Maciej W. Rozycki's avatar
      MIPS/GAS/testsuite: Convert branch local list tests to dump tests · 47003d3a
      Maciej W. Rozycki authored
      	gas/
      	* testsuite/gas/mips/branch-local-2.d: New test.
      	* testsuite/gas/mips/branch-local-3.d: New test.
      	* testsuite/gas/mips/branch-local-n32-2.d: New test.
      	* testsuite/gas/mips/branch-local-n32-3.d: New test.
      	* testsuite/gas/mips/branch-local-n64-2.d: New test.
      	* testsuite/gas/mips/branch-local-n64-3.d: New test.
      	* testsuite/gas/mips/mips.exp: Fold corresponding list tests
      	into the new tests.
      
      (cherry picked from commit 7795a8f8)
      47003d3a
    • GDB Administrator's avatar
      Automatic date update in version.in · 39d44c60
      GDB Administrator authored
      39d44c60
  18. 29 Jan, 2017 1 commit
  19. 28 Jan, 2017 1 commit
  20. 27 Jan, 2017 1 commit