1. Jan 12, 2022
    • H.J. Lu's avatar
      elf: Add .relr.dyn to special_sections_r · fc07cf22
      H.J. Lu authored
      	* elf.c (special_sections_r): Add .relr.dyn.
      fc07cf22
    • Andrew Burgess's avatar
      gdb: add 'maint set/show gnu-source-highlight enabled' command · 643b1268
      Andrew Burgess authored
      In a later commit I want to address an issue with the Python pygments
      based code styling solution.  As this approach is only used when the
      GNU Source Highlight library is not available, testing bugs in this
      area can be annoying, as it requires GDB to be rebuilt with use of GNU
      Source Highlight disabled.
      
      This commit adds a pair of new maintenance commands:
      
        maintenance set gnu-source-highlight enabled on|off
        maintenance show gnu-source-highlight enabled
      
      these commands can be used to disable use of the GNU Source Highlight
      library, allowing me, in a later commit, to easily test bugs that
      would otherwise be masked by GNU Source Highlight being used.
      
      I made this a maintenance command, rather than a general purpose
      command, as it didn't seem like this was something a general user
      would need to adjust.  We can always convert the maintenance command
      to a general command later if needed.
      
      There's no test for this here, but this feature will be used in a
      later commit.
      643b1268
    • Andrew Burgess's avatar
      gdb: erase items from the source_cache::m_offset_cache · 0e42221a
      Andrew Burgess authored
      The source_cache class has two member variables m_source_map, which
      stores the file contents, and m_offset_cache, which stores offsets
      into the file contents.
      
      As source files are read the contents of the file, as well as the
      offset data, are stored in the cache using these two member variables.
      
      Whenever GDB needs either the files contents, or the offset data,
      source_cache::ensure is called.  This function looks for the file in
      m_source_map, and if it's found then this implies the file is also in
      m_offset_cache, and we're done.
      
      If the file is not in m_source_map then GDB calls
      source_cache::get_plain_source_lines to open the file and read its
      contents.  ::get_plain_source_lines also calculates the offset data,
      which is then inserted into m_offset_cache.
      
      Back in ::ensure, the file contents are added into m_source_map.  And
      finally, if m_source_map contains more than MAX_ENTRIES, an entry is
      removed from m_source_map.
      
      The problem is entries are not removed from m_offset_cache at the same
      time.
      
      This means that if a program contains enough source files, GDB will
      hold at most MAX_ENTRIES cached source file contents, but can contain
      offsets data for every source file.
      
      Now, the offsets data is going to be smaller than the cached file
      contents, so maybe there's no harm here.  But, when we reload the file
      contents we always recalculate the offsets data.  And, when we
      ::get_line_charpos asking for offset data we still call ::ensure which
      will ends up loading and caching the file contents.
      
      So, given the current code does the work of reloading the offset data
      anyway, we may as well save memory by capping m_offset_cache to
      MAX_ENTRIES just like we do m_source_map.
      
      That's what this commit does.
      
      There should be no user visible changes after this commit, except for
      ever so slightly lower memory usage in some cases.
      0e42221a
    • Andrew Burgess's avatar
      gdb: new 'maint flush source-cache' command · 39370778
      Andrew Burgess authored
      This commit adds a new 'maint flush source-cache' command, this
      flushes the cache of source file contents.
      
      After flushing GDB is forced to reread source files the next time any
      source lines are to be displayed.
      
      I've added a test for this new feature.  The test is a little weird,
      in that it modifies a source file after compilation, and makes use of
      the cache flush so that the changes show up when listing the source
      file.  I'm not sure when such a situation would ever crop up in real
      life, but maybe we can imagine such cases.
      
      In reality, this command is useful for testing the syntax highlighting
      within GDB, we can adjust the syntax highlighting settings, flush the
      cache, and then get the file contents re-highlighted using the new
      settings.
      39370778
    • Andrew Burgess's avatar
      gdb: rename lin-lwp to linux-nat in set/show debug · 8864ef42
      Andrew Burgess authored
      Rename 'set debug lin-lwp' to 'set debug linux-nat' and 'show debug
      lin-lwp' to 'show debug linux-nat'.
      
      I've updated the documentation and help text to match, as well as
      making it clear that the debug that is coming out relates to all
      aspects of Linux native inferior support, not just the LWP aspect of
      it.
      
      The boundary between general "native" target debug, and the lwp
      specific part of that debug was always a little blurry, but the actual
      debug variable inside GDB is debug_linux_nat, and the print routine
      linux_nat_debug_printf, is used throughout the linux-nat.c file, not
      just for lwp related debug, so the new name seems to make more sense.
      8864ef42
    • Clément Chigot's avatar
      ld: add hidden and internal visibility support for XCOFF · a8bc481f
      Clément Chigot authored
      This patch adds a primary support for hidden and internal visibility in
      GNU linker for XCOFF format.
      The protected visibility isn't yet supported.
      
      PR 22085
      
      bfd/ChangeLog:
      
      	* xcofflink.c (xcoff_dynamic_definition_p): Add hidden
      	  and internal visibility support.
      	(xcoff_link_add_symbols): Likewise.
      	(xcoff_auto_export_p): Likewise.
      	(bfd_xcoff_export_symbol): Likewise.
      	(xcoff_link_input_bfd): Likewise.
      
      ld/ChangeLog:
      
      	* testsuite/ld-vsb/main.c: Adapt for XCOFF.
      	* testsuite/ld-vsb/sh1.c: Likewse.
      	* testsuite/ld-vsb/vsb.exp: Likewise.
      	* testsuite/ld-vsb/visibility-1-xcoff-32.d: New test.
      	* testsuite/ld-vsb/visibility-1-xcoff-64.d: New test.
      	* testsuite/ld-vsb/visibility-2-xcoff-32.d: New test.
      	* testsuite/ld-vsb/visibility-2-xcoff-64.d: New test.
      	* testsuite/ld-vsb/xcoffvsb.dat: New test.
      a8bc481f
    • Clément Chigot's avatar
      ld/testsuite: prepare ld-elfvsb to support XCOFF · 59e31fd7
      Clément Chigot authored
      A following patch will add visibility support in ld for XCOFF. Thus,
      ld-elfvsb is renamed ld-vsb and a suffix is added to files targeting only
      ELF format.
      
      ld/ChangeLog:
      
      	* testsuite/ld-elfvsb: rename as ld-vsb.
      	* testsuite/ld-elfvsb/hidden0.d: move to ld-vsb and rename with
      	  suffix -elf.d.
      	* testsuite/ld-elfvsb/hidden1.d: Likewise.
      	* testsuite/ld-elfvsb/hidden2.d: Likewise.
      	* testsuite/ld-elfvsb/internal0.d: Likewise.
      	* testsuite/ld-elfvsb/internal1.d: Likewise.
      	* testsuite/ld-elfvsb/protected0.d: Likewise.
      	* testsuite/ld-elfvsb/protected1.d: Likewise.
      59e31fd7
    • Clément Chigot's avatar
      gas: add visibility support using GNU syntax on XCOFF · 09d4578f
      Clément Chigot authored
      In order to ease port of GNU assembly code and especially ld testsuite,
      this patch allows XCOFF to accept the usual GNU syntax for visibility.
      
      PR 22085
      
      gas/ChangeLog:
      
      	* config/tc-ppc.c (ppc_GNU_visibility): New function.
      	* testsuite/gas/ppc/aix.exp: Add new tests.
      	* testsuite/gas/ppc/xcoff-visibility-2-32.d: New test.
      	* testsuite/gas/ppc/xcoff-visibility-2-64.d: New test.
      	* testsuite/gas/ppc/xcoff-visibility-2.s: New test.
      09d4578f
    • Clément Chigot's avatar
      gas: add visibility support for XCOFF · add588a8
      Clément Chigot authored
      XCOFF assembly defines the visibility using an additional argument
      on several pseudo-ops: .globl, .weak, .extern and .comm.
      This implies that .globl and .weak syntax is different than the
      usual GNU syntax. But we want to provide compatibility with AIX
      assembler, especially because GCC is generating the visibility
      using this XCOFF syntax.
      
      PR 22085
      
      bfd/ChangeLog:
      
              * coffcode.h (coff_write_object_contents): Change XCOFF header
              vstamp field to 2.
              * coffgen.c (coff_print_symbol): Increase the size for n_type.
      
      gas/ChangeLog:
      
              * config/tc-ppc.c (ppc_xcoff_get_visibility): New function.
              (ppc_globl): New function.
              (ppc_weak): New function.
              (ppc_comm): Add visibility field support.
              (ppc_extern): Likewise.
              * testsuite/gas/all/cofftag.d: Adjust to new n_type size
              providing by objdump.
              * testsuite/gas/ppc/test1xcoff32.d: Likewise.
              * testsuite/gas/ppc/aix.exp: Add new tests.
              * testsuite/gas/ppc/xcoff-visibility-1-32.d: New test.
              * testsuite/gas/ppc/xcoff-visibility-1-64.d: New test.
              * testsuite/gas/ppc/xcoff-visibility-1.s: New test.
      
      include/ChangeLog:
      
              * coff/internal.h (SYM_V_INTERNAL, SYM_V_HIDDEN,
              SYM_V_PROTECTED, SYM_V_EXPORTED, SYM_V_MASK): New defines.
              * coff/xcoff.h (struct xcoff_link_hash_entry): Add visibility
              field.
      
      ld/ChangeLog:
      
              * testsuite/ld-pe/pr19803.d: Adjust to new n_type size
              providing by objdump.
      add588a8
    • Hans-Peter Nilsson's avatar
      objdump, readelf: Emit "CU:" format only when wide output is requested · c4f58714
      Hans-Peter Nilsson authored
      As pre-approved by Alan in
      https://sourceware.org/pipermail/binutils/2021-September/118019.html
      and I believe people have run into getting testsuite failures for
      test-environments with "long" directory names, at least once more
      since that time.  Enough.  I grepped the gas, binutils and ld
      testsuites for "CU:" to catch target-specific occurrences, but I
      noticed none.  I chose to remove "CU:" on the objdump tests instead of
      changing options to get the wide format, so as to keep the name of the
      test consistent with actual options; but added it to the readelf
      options for the gas test as I believe the "CU:" format is preferable.
      
      Tested for cris-elf and native x86_64-pc-linux-gnu.
      
      binutils:
      	* dwarf.c (display_debug_lines_decoded): Don't check the
      	string length of the directory, instead emit the "CU: dir/name"
      	format only if wide output is requested.
      	* testsuite/binutils-all/dw5.W, testsuite/binutils-all/objdump.WL:
      	Adjust accordingly.
      
      gas:
      	* testsuite/gas/elf/dwarf-5-loc0.d: Add -W to readelf options.
      c4f58714
    • Alan Modra's avatar
      Set SEC_ELF_REVERSE_COPY earlier · b02db378
      Alan Modra authored
      For the sake of DT_RELR.
      
      bfd/
      	* elflink.c (elf_link_input_bfd): Don't set SEC_ELF_REVERSE_COPY
      	here.  Move sanity checks to reverse copying code.
      ld/
      	* ldlang.c (lang_add_section): Set SEC_ELF_REVERSE_COPY for
      	.ctors/.dtors in .init_array/.fini_array.
      b02db378
    • Tiezhu Yang's avatar
      gdb: testsuite: fix wrong comment in gdb.base/charset.c · 295114a6
      Tiezhu Yang authored
      
      
      In gdb/testsuite/gdb.base/charset.c, use "IBM1047" instead of "EBCDIC"
      to fix the wrong comment.
      
      Signed-off-by: default avatarTiezhu Yang <yangtiezhu@loongson.cn>
      295114a6
    • Tiezhu Yang's avatar
      gdb: testsuite: fix failed testcases in gdb.base/charset.exp · ff656e2e
      Tiezhu Yang authored
      
      
      In gdb/testsuite/gdb.base/charset.c, the last argument is greater than 127
      when call fill_run() in EBCDIC-US and IBM1047, but the type of string[] is
      char, this will change the value due to sign extension.
      
      For example, ebcdic_us_string[7] will be -63 instead of the original 193 in
      EBCDIC-US.
      
      Make the type of string[] as unsigned char to fix the following six failed
      testcases:
      
        $ grep FAIL gdb/testsuite/gdb.sum
        FAIL: gdb.base/charset.exp: check value of parsed character literal in EBCDIC-US
        FAIL: gdb.base/charset.exp: check value of parsed string literal in EBCDIC-US
        FAIL: gdb.base/charset.exp: check value of escape that doesn't exist in EBCDIC-US
        FAIL: gdb.base/charset.exp: check value of parsed character literal in IBM1047
        FAIL: gdb.base/charset.exp: check value of parsed string literal in IBM1047
        FAIL: gdb.base/charset.exp: check value of escape that doesn't exist in IBM1047
      
      Signed-off-by: default avatarTiezhu Yang <yangtiezhu@loongson.cn>
      ff656e2e
    • GDB Administrator's avatar
      Automatic date update in version.in · e66b7536
      GDB Administrator authored
      e66b7536
    • Fangrui Song's avatar
      ar: Add --thin for creating thin archives · d1b69c50
      Fangrui Song authored
      In many ar implementations (FreeBSD, elfutils, etc), -T has the X/Open
      System Interface specified semantics. Therefore -T for thin archives is
      not recommended for portability. -T is deprecated without diagnostics.
      
          PR binutils/28759
          * ar.c (long_options): Add --thin.
          (usage) Add --thin. Deprecate -T without diagnostics.
          * doc/binutils.texi: Add doc.
          * NEWS: Mention --thin.
          * binutils/testsuite/binutils-all/ar.exp: Add tests.
      d1b69c50
  2. Jan 11, 2022
    • Martin Storsj's avatar
      Fix multiple problems with DLL generation. · c4a8df19
      Martin Storsj authored
      ld	* pe-dll.c (make_head): Prefix the symbol name with the dll name.
      	(make_tail, make_one, make_singleton_name_thunk): Likewise.
      	(make_import_fixup_entry, make_runtime_pseudo_reloc): Likewise.
      	(pe_create_runtime_relocator_reference): Likewise.
      	(pe_dll_generate_implib): Set dll_symname_len.
      	(pe_process_import_defs): Likewise.
      
      binutils
      	* dlltool.c (main): If a prefix has not been provided, attempt to
      	use a deterministic one based upon the dll name.
      c4a8df19
    • Jan Beulich's avatar
      gas/doc: mention quoted symbol names · d02f2788
      Jan Beulich authored
      d02f2788
    • Andrew Burgess's avatar
      gdbsupport: regenerate Makefile.in · 9ed5be56
      Andrew Burgess authored
      I had cause to regenerate gdbsupport/Makefile.in, and noticed some
      unexpected changes in the copyright header dates.
      
      I suspect that this was caused by the end of year date range update
      process.
      
      The Makefile.in contains two date ranges.  The first range appears to
      be the date range for the version of automake being used, that is the
      range runs up to 2017 only, when automake 1.15.1 was released.
      
      The second date range in Makefile.in represents the date range for the
      generated file, and so, now runs up to 2022.
      
      Anyway, this is the result of running autoreconf (using automake
      1.15.1) in the gdbsupport directory.
      9ed5be56
    • GDB Administrator's avatar
      Automatic date update in version.in · 892c10d3
      GDB Administrator authored
      892c10d3
  3. Jan 10, 2022
    • Clément Chigot's avatar
      XCOFF: add support for TLS relocations on hidden symbols · 3c503824
      Clément Chigot authored
      This patch adds support for TLS relocation targeting C_HIDEXT symbols.
      In gas, TLS relocations, except R_TLSM and R_TLMSL, must keep the value
      of their target symbol.
      In ld, it simply ensures that internal TLS symbols are added to the
      linker hash table for xcoff_reloc_type_tls.
      
      It also improves the tests made by both.
      
      bfd/ChangeLog:
      
      	* coff-rs6000.c (xcoff_howto_table): Fix name of R_TLSML.
      	(xcoff_reloc_type_tls): Replace the error when h is NULL by
      	an assert.
      	(xcoff_complain_overflow_unsigned_func): Adjust comments.
      	* coff64-rs6000.c (xcoff64_howto_table): Fix name of R_TLSML.
      	* xcofflink.c (xcoff_link_add_symbols_to_hash_table): New
      	function.
      	(xcoff_link_add_symbols): Add C_HIDEXT TLS symbols to the linker
      	hash table.
      
      gas/ChangeLog:
      
      	* config/tc-ppc.c (md_apply_fix): Enable support for TLS
      	relocation over internal symbols.
      	* testsuite/gas/ppc/aix.exp: Replace xcoff-tlms by xcoff-tls.
      	* testsuite/gas/ppc/xcoff-tlsm-32.d: Removed.
      	* testsuite/gas/ppc/xcoff-tlsm-64.d: Removed.
      	* testsuite/gas/ppc/xcoff-tlsm.s: Removed.
      	* testsuite/gas/ppc/xcoff-tls-32.d: New test.
      	* testsuite/gas/ppc/xcoff-tls-64.d: New test.
      	* testsuite/gas/ppc/xcoff-tls.s: New test.
      
      ld/ChangeLog:
      
      	* testsuite/ld-powerpc/aix52.exp: Improve aix-tls-reloc test.
      	* testsuite/ld-powerpc/aix-tls-reloc.s: Likewise.
      	* testsuite/ld-powerpc/aix-tls-reloc-32.d: Removed.
      	* testsuite/ld-powerpc/aix-tls-reloc-64.d: Removed.
      	* testsuite/ld-powerpc/aix-tls-reloc-32.dd: New test.
      	* testsuite/ld-powerpc/aix-tls-reloc-32.dt: New test.
      	* testsuite/ld-powerpc/aix-tls-reloc-64.dd: New test.
      	* testsuite/ld-powerpc/aix-tls-reloc-64.dt: New test.
      3c503824
    • Tiezhu Yang's avatar
      gdb: add Tiezhu Yang to MAINTAINERS · 4cfa9e3f
      Tiezhu Yang authored
      
      
      Signed-off-by: default avatarTiezhu Yang <yangtiezhu@loongson.cn>
      4cfa9e3f
    • Tom Tromey's avatar
      Reduce use of unfiltered output in Darwin code · a42a7433
      Tom Tromey authored
      The Darwin code uses unfiltered output liberally.  This patch changes
      this code to send some output to gdb_stdlog (in some cases via the use
      of debug_prefixed_printf_cond_nofunc), or to gdb_stderr, or to simply
      switch to filtered output.
      
      Note that I didn't switch inferior_debug to use
      debug_prefixed_printf_cond_nofunc, because that would affect the
      output by removing the information about the inferior.  I wasn't sure
      if this was important or not, so I left it in.
      
      v2 of this patch uses warning rather than prints to gdb_stderr, and
      removes some trailing whitespace.
      
      I can't compile this patch, so it's "best effort".
      
      a42a7433
    • GDB Administrator's avatar
      Automatic date update in version.in · 4bb12b29
      GDB Administrator authored
      4bb12b29
  4. Jan 09, 2022
    • GDB Administrator's avatar
      Automatic date update in version.in · 9ef77629
      GDB Administrator authored
      9ef77629
    • Andrew Burgess's avatar
      gdb/hurd: handle inferiors exiting · 038d8b46
      Andrew Burgess authored
      While testing on GNU/Hurd (i386) I noticed that GDB crashes when an
      inferior exits, with this error:
      
        inferior.c:293: internal-error: inferior* find_inferior_pid(process_stratum_target*, int): Assertion `pid != 0' failed.
      
      The problem appears to be in gnu_nat_target::wait.
      
      We always set inferior_ptid to null_ptid before calling target_wait,
      this has been the case since the multi-target changes were made to GDB
      in commit:
      
        commit 5b6d1e4f
        Date:   Fri Jan 10 20:06:08 2020 +0000
      
            Multi-target support
      
      With follow up changes in commit:
      
        commit 24ed6739
        Date:   Thu Jan 30 14:35:40 2020 +0000
      
            gdb/remote: Restore support for 'S' stop reply packet
      
      Unfortunately, the GNU/Hurd target is still relying on the value of
      inferior_ptid in the case where an inferior exits - we return the
      value of inferior_ptid as the pid of the process that exited.  This
      was fine in the single target world, where inferior_ptid identified
      the one running inferior, but this is no longer good enough.
      
      Instead, we should return a ptid containing the pid of the process
      that exited, as obtained from the wait event, and this is what this
      commit does.
      
      I've not run the full testsuite on GNU/Hurd as there appear to be lots
      of other issues with this target that makes running the full testsuite
      very painful, but I think this looks like a small easy improvement.
      038d8b46
    • Tom Tromey's avatar
      Add explicit check for nullptr to target_announce_attach · 249f1cf8
      Tom Tromey authored
      Lancelot pointed out that target_announce_attach was missing an
      explicit check against nullptr.  This patch adds it.
      249f1cf8
  5. Jan 08, 2022
    • Hannes Domani's avatar
      Add _sigsys info to siginfo struct · 24fe764c
      Hannes Domani authored
      This patch adds information about _sigsys structure from newer
      kernels, so that $_siginfo decoding can show information about
      _sigsys, making it easier for developers to debug seccomp failures.
      Requested in PR gdb/24283.
      
      Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=24283
      24fe764c
    • Tiezhu Yang's avatar
      gdb: testsuite: show print array-indexes after set in arrayidx.exp · bc2e7c7d
      Tiezhu Yang authored
      
      
      Add "show print array-indexes" testcases after set print array-indexes
      to off or on.
      
      Without this patch:
      
          PASS: gdb.base/arrayidx.exp: set print array-indexes to off
          PASS: gdb.base/arrayidx.exp: print array with array-indexes off
          PASS: gdb.base/arrayidx.exp: set print array-indexes to on
          PASS: gdb.base/arrayidx.exp: print array with array-indexes on
      
      With this patch:
      
          PASS: gdb.base/arrayidx.exp: set print array-indexes to off
          PASS: gdb.base/arrayidx.exp: show print array-indexes is off
          PASS: gdb.base/arrayidx.exp: print array with array-indexes off
          PASS: gdb.base/arrayidx.exp: set print array-indexes to on
          PASS: gdb.base/arrayidx.exp: show print array-indexes is on
          PASS: gdb.base/arrayidx.exp: print array with array-indexes on
      
      Signed-off-by: default avatarTiezhu Yang <yangtiezhu@loongson.cn>
      bc2e7c7d
    • H.J. Lu's avatar
      ld: Extract _bfd_elf_link_iterate_on_relocs · 3747999c
      H.J. Lu authored
      DT_RELR encodes consecutive R_*_RELATIVE relocations in GOT (the global
      offset table) and data sections in a compact format:
      
      https://groups.google.com/g/generic-abi/c/bX460iggiKg
      
      On some targets, R_*_RELATIVE relocations are counted and the GOT offsets
      are allocated when setting the dynamic section sizes after seeing all
      relocations.  R_*_RELATIVE relocations are generated while relocating
      sections after section layout has been finalized.
      
      To prepare for DT_RELR implementation on these targets, extract
      _bfd_elf_link_iterate_on_relocs from _bfd_elf_link_check_relocs so
      that a backend can scan relocations in elf_backend_always_size_sections
      
      For x86 targets, the old check_relocs is renamed to scan_relocs and a
      new check_relocs is added to chek input sections and create dynamic
      relocation sections so that they will be mapped to output sections.
      scan_relocs is now called from elf_backend_always_size_sections.
      
      Since relocations are scanned after __start, __stop, .startof. and
      .sizeof. symbols have been finalized on x86, __[start|stop]_SECNAME for
      --gc-sections -z start-stop-gc are now zero when all SECNAME sections
      been garbage collected.  This is no need for elf_x86_start_stop_gc_p.
      
      bfd/
      
      	* elf-bfd.h (_bfd_elf_link_iterate_on_relocs): New.
      	* elf32-i386.c (elf_i386_convert_load_reloc): Don't call
      	elf_x86_start_stop_gc_p.
      	(elf_i386_check_relocs): Renamed to ...
      	(elf_i386_scan_relocs): This.  Don't call
      	_bfd_elf_make_dynamic_reloc_section.
      	(elf_i386_always_size_sections): New.
      	(elf_backend_check_relocs): Removed.
      	(elf_backend_always_size_sections): New.
      	* elf64-x86-64.c (elf_x86_64_convert_load_reloc): Don't call
      	elf_x86_start_stop_gc_p.
      	(elf_x86_64_check_relocs): Renamed to ...
      	(elf_x86_64_scan_relocs): This.  Don't call
      	_bfd_elf_make_dynamic_reloc_section.
      	(elf_x86_64_always_size_sections): New.
      	(elf_backend_check_relocs): Removed.
      	(elf_backend_always_size_sections): New.
      	* elflink.c (elf_link_check_or_scan_relocs):
      	New.  Extracted from _bfd_elf_link_check_relocs.
      	(_bfd_elf_link_check_relocs): Call elf_link_check_or_scan_relocs.
      	* elfxx-x86.c (_bfd_x86_elf_check_relocs): New.
      	* elfxx-x86.h (X86_64_NEED_DYNAMIC_RELOC_TYPE_P): New.
      	(I386_NEED_DYNAMIC_RELOC_TYPE_P): Likewise.
      	(X86_NEED_DYNAMIC_RELOC_TYPE_P): Likewise.
      	(_bfd_x86_elf_check_relocs): Likewise.
      	(elf_backend_check_relocs): Likewise.
      	(elf_backend_always_size_sections): Removed.
      	(elf_x86_start_stop_gc_p): Likewise.
      
      ld/
      
      	* testsuite/ld-i386/pr27491-1a.d: Updated.
      	* testsuite/ld-x86-64/pr27491-1a.d: Likewise.
      3747999c
    • GDB Administrator's avatar
      Automatic date update in version.in · ce230579
      GDB Administrator authored
      ce230579
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.mi/mi-catch-load.exp · 202fb840
      Lancelot SIX authored
      When I run the testsuite, I have:
      
          Running .../gdb/testsuite/gdb.mi/mi-catch-load.exp ...
          DUPLICATE: gdb.mi/mi-catch-load.exp: breakpoint at main
          DUPLICATE: gdb.mi/mi-catch-load.exp: mi runto main
      
      Fix by grouping the various phases in with_test_prefix blocks.  Since
      the tests now have a prefix, remove the manually written prefixes in
      testnames.
      
      Also change some messages with the pattern "(timeout) $testname" into
      "$estname (timeout)" since tools will handle this as $testname[1] (which
      is what we want in this particular scenario).
      
      Tested on x86_64-linux.
      
      [1] https://sourceware.org/gdb/wiki/GDBTestcaseCookbook#Do_not_use_.22tail_parentheses.22_on_test_messages
      202fb840
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.threads/staticthreads.ex · 4df98d9d
      Lancelot SIX authored
      When running the testsuite, I have:
      
          Running .../gdb/testsuite/gdb.threads/staticthreads.exp ...
          DUPLICATE: gdb.threads/staticthreads.exp: couldn't compile staticthreads.c: unrecognized error
      
      Fix by using foreach_with_prefix instead of foreach when preparing the
      test case.
      
      Testeed on x86_64-linux both in a setup where the test fails to prepare
      and in a setup where the test fails to setup.
      4df98d9d
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.mi/mi-language.exp · 0b6180fe
      Lancelot SIX authored
      When running the testsuite, I have:
      
          Running .../gdb/testsuite/gdb.mi/mi-language.exp ...
          DUPLICATE: gdb.mi/mi-language.exp: set lang ada
      
      This is due to an erroneous explicit test name.  This explicit test name
      also happens to be useless (at least it would have been if it was
      correct) since it only repeats the command, so just remove the explicit
      test name and let the command be used as default test name.  Also remove
      explicit test name at another location in the file since it also just
      repeat the command.
      
      Tested on x86_64-linux.
      0b6180fe
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.mi/mi-nonstop-exit.exp · dd1655df
      Lancelot SIX authored
      When running the testsuite, I have:
      
          Running .../gdb/testsuite/gdb.mi/mi-nonstop-exit.exp ...
          DUPLICATE: gdb.mi/mi-nonstop-exit.exp: breakpoint at main
          DUPLICATE: gdb.mi/mi-nonstop-exit.exp: mi runto main
      
      This test runs the same sequence of operations twice.  Refactor the code
      by running both of those sequences within a foreach_with_prefix block to
      ensure that the commands have unique test names.
      
      Tested on x86_64-linux.
      dd1655df
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.mi/mi-nonstop.exp · 94e3acde
      Lancelot SIX authored
      When running the testsuite, I have:
      
          Running .../gdb/testsuite/gdb.mi/mi-nonstop.exp ...
          DUPLICATE: gdb.mi/mi-nonstop.exp: check varobj, w1, 1
          DUPLICATE: gdb.mi/mi-nonstop.exp: stacktrace of stopped thread
      
      Fix by adjusting the problematic test names.
      
      Tested on x86_64-linux.
      94e3acde
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.mi/mi-nsthrexec.exp · b4130189
      Lancelot SIX authored
      When running the testsuite, I have:
      
          Running .../gdb/testsuite/gdb.mi/mi-nsthrexec.exp ...
          DUPLICATE: gdb.mi/mi-nsthrexec.exp: breakpoint at main
      
      Fix by adjusting the duplicated test name.
      
      Tested on x86_64-linux.
      b4130189
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.base/watchpoints.exp · b64f5c88
      Lancelot SIX authored
      When running the testsuite, I have:
      
          Running ../gdb/testsuite/gdb.base/watchpoints.exp ...
          DUPLICATE: gdb.base/watchpoints.exp: watchpoint hit, first time
      
      Fix by adjusting the test names where appropriate.
      
      Tested on x86_64-linux.
      b64f5c88
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.base/nested-subp2.exp · c6336a6d
      Lancelot SIX authored
      When running the testsuite, I have:
      
          Running .../gdb/testsuite/gdb.base/nested-subp2.exp ...
          DUPLICATE: gdb.base/nested-subp2.exp: continue to the STOP marker
          DUPLICATE: gdb.base/nested-subp2.exp: print c
          DUPLICATE: gdb.base/nested-subp2.exp: print count
      
      Fix by using with_test_prefix to differentiate the test that are
      performed at different points during the execution of the debuggee.
      
      Tested on x86_64-linux.
      c6336a6d
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.base/call-signal-resume.exp · 8cc261b7
      Lancelot SIX authored
      When running the testsuite, I have:
      
          Running .../gdb/testsuite/gdb.base/call-signal-resume.exp ...
          DUPLICATE: gdb.base/call-signal-resume.exp: dummy stack frame number
          DUPLICATE: gdb.base/call-signal-resume.exp: set confirm off
          DUPLICATE: gdb.base/call-signal-resume.exp: return
      
      This is due to the fact that a pattern was probably copy/pasted to
      re-use the logic while not adjusting the test names to avoid the
      duplication.
      
      Fix by removing the redundant tests ('set confirm off' only needs to be
      used once) and adjusting the test names where appropriate.
      
      Tested on x86_64-linux.
      8cc261b7
    • Lancelot SIX's avatar
      gdb/testsuite: Remove duplicates from gdb.base/pointers.exp · 148ac50e
      Lancelot SIX authored
      
      
      When I run the testsuite, I have :
      
          Running .../gdb/testsuite/gdb.base/pointers.exp ...
          DUPLICATE: gdb.base/pointers.exp: pointer assignment
      
      Fix by placing the sections with duplication in with_test_prefix blocks.
      This removes the duplication and gives a better organization the file.
      
      Tested on x86_64-linux.
      Co-Authored-By: default avatarPedro Alves <pedro@palves.net>
      148ac50e