]> git.ipfire.org Git - thirdparty/binutils-gdb.git/log
thirdparty/binutils-gdb.git
5 years agoAutomatic date update in version.in
GDB Administrator [Mon, 24 Feb 2020 00:01:50 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Sun, 23 Feb 2020 00:02:32 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoPR25585, PHDR segment not covered by LOAD segment
Alan Modra [Sat, 22 Feb 2020 02:16:33 +0000 (12:46 +1030)] 
PR25585, PHDR segment not covered by LOAD segment

I closed this bug as invalid, but I think it is worth mentioning in NEWS
that older linkers didn't check PT_PHDR very well.  The patch also allows
people to force an output file with --noinhibit-exec after the error.

bfd/
PR 25585
* elf.c (assign_file_positions_for_load_sections): Continue linking
on "PHDR segment not covered by LOAD segment" errors.
ld/
PR 25585
* NEWS: Mention better "PHDR segment not covered by LOAD segment"
checking.

(cherry picked from commit 7b3c27152b5695177a2cd5adc0d7b0255f99aca0)

5 years agoAutomatic date update in version.in
GDB Administrator [Sat, 22 Feb 2020 00:01:31 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Fri, 21 Feb 2020 00:02:59 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Thu, 20 Feb 2020 00:01:35 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoplugin: Call dlclose before return in try_load_plugin
H.J. Lu [Wed, 19 Feb 2020 11:29:51 +0000 (03:29 -0800)] 
plugin: Call dlclose before return in try_load_plugin

Since plugin can be used only once in try_load_plugin, call dlclose
before return.

PR binutils/25355
* plugin.c (plugin_list_entry): Remove handle.
(try_load_plugin): Call dlclose before return.

(cherry picked from commit dcf06b89b9129da6988878a77afdd02d3acc2e30)

5 years agoAutomatic date update in version.in
GDB Administrator [Wed, 19 Feb 2020 00:01:47 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Tue, 18 Feb 2020 00:01:47 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Mon, 17 Feb 2020 00:01:50 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoImport fixes for using the LTO plugin with nm.
Nick Clifton [Sun, 16 Feb 2020 11:33:15 +0000 (11:33 +0000)] 
Import fixes for using the LTO plugin with nm.

  PR 25355

bfd:
 2020-02-13  H.J. Lu  <hongjiu.lu@intel.com>

 * plugin.c (try_load_plugin): Make plugin_list_iter an argument
 and use it if it isn't NULL.  Remove has_plugin_p argument.  Add
 a build_list_p argument.  Don't search plugin_list.  Short circuit
 when building the plugin list.
 (has_plugin): Renamed to has_plugin_list.
 (bfd_plugin_set_plugin): Don't set has_plugin.
 (bfd_plugin_specified_p): Check plugin_list instead.
 (build_plugin_list): New function.
 (load_plugin): Call build_plugin_list and use plugin_list.

 2020-02-11  H.J. Lu  <hongjiu.lu@intel.com>

 PR binutils/25355
 * plugin.c (try_claim): Always clean up for LTO wrapper.
 (try_load_plugin): Treat each object as independent.  Create a
 copy for plugin name.

 2020-02-11  H.J. Lu  <hongjiu.lu@intel.com>

 * plugin.c (add_symbols): Clear plugin_data memory.

 2020-02-10  H.J. Lu  <hongjiu.lu@intel.com>

 PR binutils/25355
 * configure.ac (HAVE_EXECUTABLE_SUFFIX): New AC_DEFINE.
 (EXECUTABLE_SUFFIX): Likewise.
 * config.in: Regenerated.
 * configure: Likewise.
 * plugin.c (bfd_plugin_close_and_cleanup): Removed.
 (plugin_list_entry): Add all_symbols_read, cleanup_handler,
 gcc, lto_wrapper, resolution_file, resolution_option, gcc_env,
 real_bfd, real_nsyms, real_syms, lto_nsyms and lto_syms.
 (get_lto_wrapper): New.
 (setup_lto_wrapper_env): Likewise.
 (current_plugin): Likewise.
 (register_all_symbols_read): Likewise.
 (register_cleanup): Likewise.
 (get_symbols): Likewise.
 (add_input_file): Likewise.
 (bfd_plugin_close_and_cleanup): Likewise.
 (claim_file): Removed.
 (register_claim_file): Set current_plugin->claim_file.
 (add_symbols): Make a copy of LTO symbols.  Set lto_nsyms and
 lto_syms in current_plugin.
 (try_claim): Use current_plugin->claim_file.  Call LTO plugin
 all_symbols_read handler.  Copy real symbols to plugin_data.
 Call LTO plugin cleanup handler.  Clean up for LTO wrapper.
 (try_load_plugin): Don't reuse the previous plugin for LTO
 wrapper.  Set up GCC LTO wrapper if possible.  Don't set
 plugin_list_iter->claim_file.
 (bfd_plugin_canonicalize_symtab): Use real LTO symbols if
 possible.
 * plugin.h (plugin_data_struct): Add real_bfd, real_nsyms and
 real_syms.

ld:
 2020-02-10  H.J. Lu  <hongjiu.lu@intel.com>

 PR binutils/25355
 * testsuite/ld-plugin/lto.exp: Run PR binutils/25355 test.
 * testsuite/ld-plugin/pr25355.c: New file.
 * testsuite/ld-plugin/pr25355.d: Likewise.
 * testsuite/lib/ld-lib.exp (run_cc_link_tests): Support compile
 only dump.

5 years agoAutomatic date update in version.in
GDB Administrator [Sun, 16 Feb 2020 00:02:45 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Sat, 15 Feb 2020 00:01:39 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Fri, 14 Feb 2020 00:02:06 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Thu, 13 Feb 2020 00:01:45 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Wed, 12 Feb 2020 00:02:01 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoImport a fix from the mainline sources that prevents a potential illegal memory acces...
Nick Clifton [Tue, 11 Feb 2020 15:55:25 +0000 (15:55 +0000)] 
Import a fix from the mainline sources that prevents a potential illegal memory access when parsing PE binaries.

PR 25447
* coffgen.c (_bfd_coff_close_and_cleanup): Do not clear the keep
syms and keep strings flags as these may have been set in order to
prevent a bogus call to free.

5 years agoFix building elf43-msp430.c on a 32-bit host.
Nick Clifton [Tue, 11 Feb 2020 12:43:41 +0000 (12:43 +0000)] 
Fix building elf43-msp430.c on a 32-bit host.

* elf32-msp430.c (msp430_final_link_relocate): Always use longs
for addresses in print statements.
(msp430_elf_relax_delete_bytes): Likewise.
(msp430_elf_relax_add_words): Likewise.
(msp430_elf_relax_section): Likewise.

5 years agoAutomatic date update in version.in
GDB Administrator [Tue, 11 Feb 2020 00:01:58 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoMSP430: Enable relaxation of jump instructions to hard-coded pcrel offsets
Jozef Lawrynowicz [Mon, 10 Feb 2020 20:37:57 +0000 (20:37 +0000)] 
MSP430: Enable relaxation of jump instructions to hard-coded pcrel offsets

This patch fixes execution failures which occur when the BR in a
sequence such as:
  J<cond> 1f
  BR
  1:
is relaxed to a JMP, and the pc-relative offset for the destination of
the J<cond> instruction is hard-coded to be 2 words ahead of the
instruction.
The hard-coded offset will cause execution to jump 1 word ahead of where
it should actually go.

Instead we now detect the hard-coded offset is one we inserted earlier,
and invert the condition, allowing us to remove the BR entirely.

bfd/ChangeLog:

2020-02-10  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* elf32-msp430.c (msp430_elf_relax_section): Before relaxing a branch,
check if previous instruction matches a conditional jump inserted
earlier. Invert conditional jump and delete branch in this case.

(cherry picked from commit ac4280dad035bb98fba999c174314435aefdf1a0)

5 years agoMSP430: Enable relaxation of relocs in JMP instructions
Jozef Lawrynowicz [Mon, 10 Feb 2020 20:33:21 +0000 (20:33 +0000)] 
MSP430: Enable relaxation of relocs in JMP instructions

This patch fixes relocation overflows caused by an inability to relax
unconditional JMP instructions to BR instructions.

bfd/ChangeLog:

2020-02-10  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* elf32-msp430.c (msp430_elf_relax_add_two_words): Rename to
msp430_elf_relax_add_words. Support insertion of either one or two
words.
(msp430_elf_relax_section): Catch opcode of 0x3c00 when relocation
needs to be grown. Handle insertion of branch instruction to replace
jump.

(cherry picked from commit 8d6cb116f47b5edb2a7c2fa540fcb9dbcd3effc2)

5 years agoMSP430: Add printf statements to assist with debugging during relaxation
Jozef Lawrynowicz [Mon, 10 Feb 2020 20:27:36 +0000 (20:27 +0000)] 
MSP430: Add printf statements to assist with debugging during relaxation

bfd/ChangeLog:

2020-02-10  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* elf32-msp430.c (msp430_final_link_relocate): Add printf statements for
debugging relocations.
(msp430_elf_relax_delete_bytes): Likewise.
(msp430_elf_relax_add_two_words): Likewise.
(msp430_elf_relax_section): Likewise.

(cherry picked from commit d60f54486a99e6b702cccdb16b3429f3524021fd)

5 years agox86: Accept Intel64 only instruction by default
H.J. Lu [Mon, 10 Feb 2020 16:37:22 +0000 (08:37 -0800)] 
x86: Accept Intel64 only instruction by default

Commit d835a58baae720 disabled sysenter/sysenter in 64-bit mode by
default.  By default, assembler should accept common, Intel64 only
and AMD64 ISAs since there are no conflicts.

gas/

PR gas/25516
* config/tc-i386.c (intel64): Renamed to ...
(isa64): This.
(match_template): Accept Intel64 only instruction by default.
(i386_displacement): Updated.
(md_parse_option): Updated.
* c-i386.texi: Update -mamd64/-mintel64 documentation.
* testsuite/gas/i386/i386.exp: Run x86-64-sysenter.  Pass
-mamd64 to x86-64-sysenter-amd.
* testsuite/gas/i386/x86-64-sysenter.d: New file.

opcodes/

PR gas/25516
* i386-gen.c (opcode_modifiers): Replace AMD64 and Intel64
with ISA64.
* i386-opc.h (AMD64): Removed.
(Intel64): Likewose.
(AMD64): New.
(INTEL64): Likewise.
(INTEL64ONLY): Likewise.
(i386_opcode_modifier): Replace amd64 and intel64 with isa64.
* i386-opc.tbl (Amd64): New.
(Intel64): Likewise.
(Intel64Only): Likewise.
Replace AMD64 with Amd64.  Update sysenter/sysenter with
Cpu64 and Intel64Only.  Remove AMD64 from sysenter/sysenter.
* i386-tbl.h: Regenerated.

(cherry picked from commit 4b5aaf5f6992319c2c72e080a1a55842640b8732)

5 years agoaarch64: Fix MOVPRFX markup for bf16 conversions
Richard Sandiford [Fri, 31 Jan 2020 08:03:56 +0000 (08:03 +0000)] 
aarch64: Fix MOVPRFX markup for bf16 conversions

bfcvt converts a .S input to a .H output, so any predicated movprfx
needs to operate on .S rather than .H.  In common with SVE2 narrowing
top operations, bfcvtnt doesn't accept movprfx.

2020-02-10  Richard Sandiford  <richard.sandiford@arm.com>

opcodes/
* aarch64-tbl.h (aarch64_opcode): Set C_MAX_ELEM for SVE bfcvt.
Remove C_SCAN_MOVPRFX for SVE bfcvtnt.

gas/
* testsuite/gas/aarch64/sve-bfloat-movprfx.s: Use .h rather than
.s for the movprfx.
* testsuite/gas/aarch64/sve-bfloat-movprfx.d: Update accordingly.
* testsuite/gas/aarch64/sve-movprfx_28.d,
* testsuite/gas/aarch64/sve-movprfx_28.l,
* testsuite/gas/aarch64/sve-movprfx_28.s: New test.

5 years agoAutomatic date update in version.in
GDB Administrator [Mon, 10 Feb 2020 00:02:02 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Sun, 9 Feb 2020 00:02:37 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Sat, 8 Feb 2020 00:01:55 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Fri, 7 Feb 2020 00:02:24 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years ago[2.34] Mention x86 assembler options to align branches
H.J. Lu [Thu, 6 Feb 2020 15:50:16 +0000 (07:50 -0800)] 
[2.34] Mention x86 assembler options to align branches

* NEWS: Mention x86 assembler options to align branches for
binutils 2.34.

(cherry picked from commit 5eb617a71463fa6810cd14f57adfe7a1efc93a96)

5 years agoAutomatic date update in version.in
GDB Administrator [Thu, 6 Feb 2020 00:01:49 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Wed, 5 Feb 2020 00:01:44 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Tue, 4 Feb 2020 00:02:15 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Mon, 3 Feb 2020 00:02:12 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Sun, 2 Feb 2020 00:01:50 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoRe-enable development.
Nick Clifton [Sat, 1 Feb 2020 13:02:47 +0000 (13:02 +0000)] 
Re-enable development.

5 years agoSet version to 2.34, turn off development, add changelog entries binutils-2_34
Nick Clifton [Sat, 1 Feb 2020 11:58:46 +0000 (11:58 +0000)] 
Set version to 2.34, turn off development, add changelog entries

5 years agoAutomatic date update in version.in
GDB Administrator [Sat, 1 Feb 2020 00:02:01 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoarm: PR gas/25472 Enable DSP instructions with +mve
Andre Vieira [Fri, 31 Jan 2020 17:09:27 +0000 (17:09 +0000)] 
arm: PR gas/25472 Enable DSP instructions with +mve

We noticed +mve was not enabling DSP instructions as it should, reported in PR
25472.
The MVE architecture extension for Armv8.1-M Mainline implies DSP extensions.
This patch reflects that in the '+mve' command line option.

gas/ChangeLog:
2020-01-31  Andre Vieira  <andre.simoesdiasvieira@arm.com>

Backport from mainline.
2020-01-31  Andre Vieira  <andre.simoesdiasvieira@arm.com>

PR gas/25472
* config/tc-arm.c (armv8m_main_ext_table): Refactored +dsp adding.
(armv8_1m_main_ext_table): Refactored +dsp adding and enabled dsp for
+mve.
* testsuite/gas/arm/mve_dsp.d: New test.

5 years agoFix compile time build problem building the s390 assembler.
Nick Clifton [Fri, 31 Jan 2020 16:45:04 +0000 (16:45 +0000)] 
Fix compile time build problem building the s390 assembler.

* config/tc-s390.c (s390_elf_suffix): Return ELF_SUFFIX_NONE
rather than BFD_RELOC_NONE.

5 years ago[ARM]: Add support for vldmia/vldmdb/vstmia/vstmdb instructions in MVE.
Srinath Parvathaneni [Fri, 31 Jan 2020 16:16:19 +0000 (16:16 +0000)] 
[ARM]: Add support for vldmia/vldmdb/vstmia/vstmdb instructions in MVE.

This patch adds support for assembly instructions vldmia, vldmdb, vstmia
and vstmdb in MVE.  This instructions are already supported for Armv8-M
Floating-point Extension.

gas/ChangeLog:

2020-01-31  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>

* config/tc-arm.c (fldmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2"
to support VLDMIA instruction for MVE.
(fldmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VLDMDB
instruction for MVE.
(fstmias): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMIA
instruction for MVE.
(fstmdbs): Moved inside "THUMB_VARIANT & arm_ext_v6t2" to support VSTMDB
instruction for MVE.
* testsuite/gas/arm/mve-ldst.d: New test.
* testsuite/gas/arm/mve-ldst.s: Likewise.

5 years agoUpdated translations for some of the binutils sub-directories
Nick Clifton [Fri, 31 Jan 2020 14:42:42 +0000 (14:42 +0000)] 
Updated translations for some of the binutils sub-directories

5 years agoAutomatic date update in version.in
GDB Administrator [Fri, 31 Jan 2020 00:02:14 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Thu, 30 Jan 2020 00:02:03 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoPR25477, ld 2.34 tries to load ${prefix}/etc/ld.so.conf
Alan Modra [Tue, 28 Jan 2020 23:55:58 +0000 (10:25 +1030)] 
PR25477, ld 2.34 tries to load ${prefix}/etc/ld.so.conf

PR 25477
* ldelf.c (ldelf_check_ld_so_conf): Add prefix parameter and
correct concat.
(ldelf_after_open): Add prefix parameter.
* ldelf.h (ldelf_after_open): Update prototype.
* emultempl/elf.em (gld${EMULATION_NAME}_after_open): Pass $prefix
to ldelf_after_open.
* Makefile.am: Correct z80 dependencies.
* Makefile.in: Regenerate.

(cherry picked from commit ef8f08ca13f6c111cc549a3e13be5c5e2d95ca82)

5 years agoDon't report symbol lookup failure in first phase of linking
Alan Modra [Mon, 27 Jan 2020 23:37:46 +0000 (10:07 +1030)] 
Don't report symbol lookup failure in first phase of linking

Until the symbol table is created, symbols can't be created.

* ldexp.c (fold_name): Don't print bfd_link_hash_lookup failed
in first phase.

(cherry picked from commit 738174e17e539937a6d773d7dfd501241a882b0b)

5 years agoMark all weak aliases for copy relocations
Alan Modra [Sun, 26 Jan 2020 23:57:42 +0000 (10:27 +1030)] 
Mark all weak aliases for copy relocations

bfd/
PR ld/25458
* elflink.c (_bfd_elf_gc_mark_rsec): Mark all weak aliases.
ld/
PR ld/25458
* testsuite/ld-elf/pr25458.map: New file.
* testsuite/ld-elf/pr25458.rd: Likewise.
* testsuite/ld-elf/pr25458a.s: Likewise.
* testsuite/ld-elf/pr25458b.s: Likewise.
* testsuite/ld-elf/shared.exp: Run PR ld/25458 test.

(cherry picked from commit 3024a17ae029ec7f55b498e99ddd6238e22fe565)

5 years agoPR25444, Floating point exception in _bfd_elf_compute_section_file_positions
Alan Modra [Thu, 23 Jan 2020 01:05:51 +0000 (11:35 +1030)] 
PR25444, Floating point exception in _bfd_elf_compute_section_file_positions

PR 25444
* elf.c (assign_file_positions_for_load_sections): Avoid divide
by zero when p_align is zero.

(cherry picked from commit 67641dd326e026b84d0e4ce47f32f71132449e27)

5 years agoPowerPC64 TLS optimization fix
Alan Modra [Wed, 22 Jan 2020 02:32:11 +0000 (13:02 +1030)] 
PowerPC64 TLS optimization fix

When linking with --no-tls-optimize the linker doesn't generate a call
or long branch stub to __tls_get_addr in some circumstances, giving:

relocation truncated to fit: R_PPC64_REL24 against symbol `__tls_get_addr'

* elf64-ppc.c (ppc64_elf_size_stubs): Correct condition under
which __tls_get_addr calls will be eliminated.

(cherry picked from commit abc489c64a3137f3751797e8ce60d53a2c432e1d)

5 years agoAutomatic date update in version.in
GDB Administrator [Wed, 29 Jan 2020 00:01:48 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Tue, 28 Jan 2020 00:03:14 +0000 (00:03 +0000)] 
Automatic date update in version.in

5 years agoFix objcopy --merge-notes dependency on qsort implementation behavior. users/roland/2.34/objcopy-merge-notes-qsort
Roland McGrath [Mon, 27 Jan 2020 19:14:33 +0000 (11:14 -0800)] 
Fix objcopy --merge-notes dependency on qsort implementation behavior.

binutils/
* objcopy.c (compare_gnu_build_notes): Fix comparison results
for overlapping ranges so that (A == B) == (B == A) holds.

(cherry picked from commit 82ef9cad78b74ee9176e059e8c8dec1bdb4a1efe)

5 years agoAArch64: Fix cfinv disassembly issues
Tamar Christina [Mon, 27 Jan 2020 10:40:02 +0000 (10:40 +0000)] 
AArch64: Fix cfinv disassembly issues

This fixes the preferred disassembly for cfinv.  The Armv8.4-a instruction
overlaps with the possible encoding space for msr.  This because msr allows you
to use unallocated encoding space using the general sA_B_cC_cD_E form.

However when an encoding does become allocated then we need to ensure that it's
used as the preferred disassembly.  The problem with cfinv is that its mask has
all bits sets because it has no arguments.

This causes issues for the Alias resolver in gas as it uses the mask to build
alias graph.  In this case it can't do it since it thinks almost everything
would alias with cfinv.  So instead we can only fix this by moving cfinv before
msr.

gas/ChangeLog:

PR 25403
* testsuite/gas/aarch64/armv8_4-a.d: Add cfinv.
* testsuite/gas/aarch64/armv8_4-a.s: Likewise.

opcodes/ChangeLog:

PR 25403
* aarch64-tbl.h (struct aarch64_opcode): Re-order cfinv.
* aarch64-asm-2.c: Regenerate
* aarch64-dis-2.c: Likewise.
* aarch64-opc-2.c: Likewise.

(cherry picked from commit 7568c93bf95a518797dfb2987b04911164c14a36)

5 years agoAutomatic date update in version.in
GDB Administrator [Mon, 27 Jan 2020 00:02:25 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Sun, 26 Jan 2020 00:02:00 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Sat, 25 Jan 2020 00:01:14 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Fri, 24 Jan 2020 00:01:23 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoMore updated translation
Nick Clifton [Thu, 23 Jan 2020 14:30:17 +0000 (14:30 +0000)] 
More updated translation

5 years agoAutomatic date update in version.in
GDB Administrator [Thu, 23 Jan 2020 00:01:43 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoAutomatic date update in version.in
GDB Administrator [Wed, 22 Jan 2020 00:01:47 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agox86: VCVTNEPS2BF16{X,Y} should permit broadcasting
Jan Beulich [Tue, 21 Jan 2020 07:25:31 +0000 (08:25 +0100)] 
x86: VCVTNEPS2BF16{X,Y} should permit broadcasting

Just like other VCVT*{X,Y} templates do, and to allow the programmer
flexibility (might be relevant in particular when heavily macro-izing
code), the two templates should also have Broadcast set, just like their
X/Y-suffix-less counterparts. This in turn requires them to also have
* Dword set on their memory operands, to cover the logic added to
  i386gen by 4a1b91eabbe7 ("x86: Expand Broadcast to 3 bits"),
* RegXMM/RegYMM set on their source operands, to satisfy broadcast
  sizing logic in gas itself.
Otherwise ATTSyntax templates wouldn't need such operand size attributes.

While extending the test cases, also add Intel syntax broadcast forms
without explicit size specifiers.

5 years agoAutomatic date update in version.in
GDB Administrator [Tue, 21 Jan 2020 00:02:14 +0000 (00:02 +0000)] 
Automatic date update in version.in

5 years agoUpdated translations for various binutils sub-directories
Nick Clifton [Mon, 20 Jan 2020 15:05:09 +0000 (15:05 +0000)] 
Updated translations for various binutils sub-directories

5 years agoAutomatic date update in version.in
GDB Administrator [Mon, 20 Jan 2020 00:01:22 +0000 (00:01 +0000)] 
Automatic date update in version.in

5 years agoFix ld-x86-64/align-branch-1 test failure on --target=x86_64-elf
Roland McGrath [Sat, 18 Jan 2020 22:42:24 +0000 (14:42 -0800)] 
Fix ld-x86-64/align-branch-1 test failure on --target=x86_64-elf

ld/ChangeLog
* testsuite/ld-x86-64/align-branch-1.d: Loosen instruction regexps
to admit whatever absolute address.  The label-relative address is
what the test needs to verify.

5 years agoSet BFD_VERSION to 2.33.90. Regenerate configure and pot files.
Nick Clifton [Sat, 18 Jan 2020 14:15:48 +0000 (14:15 +0000)] 
Set BFD_VERSION to 2.33.90.  Regenerate configure and pot files.

5 years agoAdd markers for 2.34 branch to the NEWS files and ChangeLogs.
Nick Clifton [Sat, 18 Jan 2020 13:50:25 +0000 (13:50 +0000)] 
Add markers for 2.34 branch to the NEWS files and ChangeLogs.

5 years agoUpdate top level config files with copies from the official repository.
Nick Clifton [Sat, 18 Jan 2020 13:43:19 +0000 (13:43 +0000)] 
Update top level config files with copies from the official repository.

2020-01-01  Ben Elliston  <bje@gnu.org>

* config.guess: Update copyright years.
* config.sub: Likewise.

2019-12-21  Ben Elliston  <bje@gnu.org>

* config.guess (set_cc_for_build): Prevent multiple calls by
checking if $tmp is already set. We can't check CC_FOR_BUILD as
the user may set it externally. Thanks to Torbj?rn Granlund for
the bug report.

2019-12-21  Torbj?rn Granlund  <tg@gmplib.org>

* config.guess (alpha:Linux:*:*): Guard against missing
/proc/cpuinfo by redirecting standard error to /dev/null.

2019-09-12  Daniel Bittman  <danielbittman1@gmail.com>

* config.guess (*:Twizzler:*:*): New.
* config.sub (-twizzler*): New.

2019-07-24  Ben Elliston  <bje@gnu.org>

* config.guess (mips:OSF1:*.*): Whitespace cleanup.

2019-06-30  Ben Elliston  <bje@gnu.org>

* config.sub (case $os): Match nsk* and powerunix. Don't later
match nsk* and set os=nsk which removes the OS version number.

2019-06-30  Ben Elliston  <bje@gnu.org>

* config.sub: Recognise os108*.

2019-06-26  Ben Elliston  <bje@gnu.org>

* config.sub (hp300): Set $os to hpux.

2019-06-26  Ben Elliston  <bje@gnu.org>

* config.sub (vsta): Move into alphabetical order.

2019-06-10  Ben Elliston  <bje@gnu.org>

* config.guess (*:OS108:*:*): Recognise new OS.

2019-05-28  Ben Elliston  <bje@gnu.org>

* config.guess (*:Darwin:*:*): Run xcode-select to determine if a
system compiler is installed. If not, do not run set_cc_for_build,
as the default cc will open a dialog box asking to install
Xcode. If no C compiler is available, guess based on uname -p and
uname -m.

2019-05-28  Ben Elliston  <bje@gnu.org>

* config.guess (*:Darwin:*:*): Simplify UNAME_PROCESSOR.

5 years agoAutomatic date update in version.in
GDB Administrator [Sat, 18 Jan 2020 00:00:28 +0000 (00:00 +0000)] 
Automatic date update in version.in

5 years agoMake all-gdbsupport depend on all-bfd
Simon Marchi [Fri, 17 Jan 2020 18:40:10 +0000 (13:40 -0500)] 
Make all-gdbsupport depend on all-bfd

Trying to run "make all-gdbsupport" at the top-level in a build from scratch
results in:

make[2]: Entering directory '/home/smarchi/build/binutils-gdb/gdbsupport'
  CC       agent.o
In file included from /home/smarchi/src/binutils-gdb/gdbsupport/common-defs.h:133,
                 from /home/smarchi/src/binutils-gdb/gdbsupport/agent.c:20:
/home/smarchi/src/binutils-gdb/gdbsupport/common-types.h:35:10: fatal error: bfd.h: No such file or directory
   35 | #include "bfd.h"
      |          ^~~~~~~

Before building all-gdbsupport, we need all-bfd to run, so that bfd.h is
generated.

(Once this patch is merged in the binutils-gdb repo, I'll send it to gcc
to keep the files in sync.)

ChangeLog:

* Makefile.def: Add dependencies of all-gdbsupport on all-bfd.
* Makefile.in: Re-generate.

5 years agoFix spelling errors
Christian Biesinger [Fri, 17 Jan 2020 18:34:03 +0000 (12:34 -0600)] 
Fix spelling errors

seperate -> separate

bfd/ChangeLog:

2020-01-17  Christian Biesinger  <cbiesinger@google.com>

* coff-arm.c: Fix spelling error (seperate).
* elfxx-riscv.c (riscv_parse_sv_or_non_std_ext): Fix spelling
error (seperate).
* sysdep.h (strnlen): Fix spelling error (seperate).

opcodes/ChangeLog:

2020-01-17  Christian Biesinger  <cbiesinger@google.com>

* opintl.h: Fix spelling error (seperate).

sim/arm/ChangeLog:

2020-01-17  Christian Biesinger  <cbiesinger@google.com>

* iwmmxt.c: Fix spelling error (seperate).

Change-Id: I55e5f47bcf3cf3533d2acb7ad338f1be0d5f30f9

5 years agoFix a libiberty testsuite failure.
Nick Clifton [Fri, 17 Jan 2020 15:56:55 +0000 (15:56 +0000)] 
Fix a libiberty testsuite failure.

* testsuite/demangle-expected: Update expected demangling of
enable_if pattern.

5 years agoImprove the performance of the ascii art jump visualizer.
Thomas Troeger [Fri, 17 Jan 2020 15:27:31 +0000 (15:27 +0000)] 
Improve the performance of the ascii art jump visualizer.

* objdump.c (jump_info_visualize_address): Discard jumps that are
no longer needed.
(disassemble_bytes): Only compute the maximum level if jumps were
detected.

5 years agoFix gdbsupport build on compilers that don't default to C++11 or above
Pedro Alves [Wed, 15 Jan 2020 21:55:29 +0000 (21:55 +0000)] 
Fix gdbsupport build on compilers that don't default to C++11 or above

gdbsupport fails to build with compilers that don't default to C++11
or above.  gdbsupport's configure.ac is already using
AX_CXX_COMPILE_STDCXX, which sets CXX_DIALECT to the -std=gnu++11
switch if necessary, but the problem is that nowhere are we using
CXX_DIALECT.  This fixes it.

gdbsupport/ChangeLog:
2020-01-17   Pedro Alves  <palves@redhat.com>

* Makefile.am: Append CXX_DIALECT to CXX.
* Makefile.in: Regenerate.

5 years agoFix gdbsupport build
Pedro Alves [Fri, 17 Jan 2020 15:14:56 +0000 (15:14 +0000)] 
Fix gdbsupport build

I'm seeing this on F27 (a clean build from scratch):

~~~~~~~~~~~~~~~~~~~~~~~~~~~
 make[3]: Entering directory '/home/pedro/brno/pedro/gdb/binutils-gdb/build/gdbsupport'
   CC       gdb_tilde_expand.o
 In file included from /home/pedro/gdb/binutils-gdb/src/gdbsupport/../gnulib/import/libc-config.h:33:0,
                  from ../gnulib/import/glob.h:544,
                  from /home/pedro/gdb/binutils-gdb/src/gdbsupport/gdb_tilde_expand.c:22:
 ../bfd/config.h:7:4: error: #error config.h must be #included before system headers
  #  error config.h must be #included before system headers
     ^~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~

libc-config.h, where it includes config.h, says:

~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /* This is intended to be a good-enough substitute for glibc system
    macros like those defined in <sys/cdefs.h>, so that Gnulib code
    shared with glibc can do this as the first #include:

      #ifndef _LIBC
      # include <libc-config.h>
      #endif

    When compiled as part of glibc this is a no-op; when compiled as
    part of Gnulib this includes Gnulib's <config.h> and defines macros
    that glibc library code would normally assume.  */

 #include <config.h>
~~~~~~~~~~~~~~~~~~~~~~~~~~~

The issue is that that '#include <config.h>' picks up bfd's config.h
instead of gnulib's.

This problem doesn't trigger in the gdb dir because there we generate
config.h under that exact name so gnulib's libc-config.h ends up
picking gdb's config.h instead of gnulib.c and that ends up harmless.

In gdbsupport, the config.h file is really named support-config.h, so
that '#include <config.h>' in libc-config.h doesn't pick it like it
would if it had the conventional config.h name.

This patch fixes it by simply renaming gdbserver's support-config.h to
config.h.

gdbsupport/ChangeLog:
2020-01-17  Pedro Alves  <palves@redhat.com>

* configure.ac: Generate config.h instead of support-config.h.
* common-defs.h: Include <gdbsupport/config.h> instead of
<gdbsupport/support-config.h>.
* Makefile.in: Regenerate.
* configure: Regenerate.

5 years agox86: Add {vex} pseudo prefix
H.J. Lu [Fri, 17 Jan 2020 15:07:55 +0000 (07:07 -0800)] 
x86: Add {vex} pseudo prefix

There are 2-byte VEX prefix and 3-byte VEX prefix.  2-byte VEX prefix
can't encode all operands.  By default, assembler tries 2-byte VEX prefix
first.  {vex3} can be used to force 3-byte VEX prefix.  This patch adds
{vex} pseudo prefix and keeps {vex2} for backward compatibility.

gas/

* config/tc-i386.c (_i386_insn): Replace vex_encoding_vex2
with vex_encoding_vex.
(parse_insn): Likewise.
* doc/c-i386.texi: Replace {vex2} with {vex}.  Update {vex}
and {vex3} documentation.
* testsuite/gas/i386/pseudos.s: Replace 3 {vex2} tests with
{vex}.
* testsuite/gas/i386/x86-64-pseudos.s: Likewise.

opcodes/

* i386-opc.tbl: Add {vex} pseudo prefix.
* i386-tbl.h: Regenerated.

5 years agogdb: remove uses of iterate_over_inferiors in top.c
Simon Marchi [Fri, 17 Jan 2020 14:58:57 +0000 (09:58 -0500)] 
gdb: remove uses of iterate_over_inferiors in top.c

Replace with range-based for loops.

gdb/ChangeLog:

* top.c (struct qt_args): Remove.
(kill_or_detach): Change return type to void, replace `void *`
parameter with a proper one.
(print_inferior_quit_action):  Likewise.
(quit_confirm): Use range-based for loop to iterate over inferiors.
(quit_force): Likewise.

5 years agogdb: remove uses of iterate_over_inferiors in mi/mi-main.c
Simon Marchi [Fri, 17 Jan 2020 14:57:58 +0000 (09:57 -0500)] 
gdb: remove uses of iterate_over_inferiors in mi/mi-main.c

Replace with range-based loops.

gdb/ChangeLog:

* mi/mi-main.c (run_one_inferior): Change return type to void, replace
`void *` parameter with proper parameters.
(mi_cmd_exec_run): Use range-based loop to iterate over inferiors.
(print_one_inferior): Change return type to void, replace `void *`
parameter with proper parameters.
(mi_cmd_list_thread_groups): Use range-based loop to iterate over
inferiors.
(get_other_inferior): Remove.
(mi_cmd_remove_inferior): Use range-based loop to iterate over
inferiors.

5 years agogdb: remove use of iterate_over_inferiors in mi/mi-interp.c
Simon Marchi [Fri, 17 Jan 2020 14:57:07 +0000 (09:57 -0500)] 
gdb: remove use of iterate_over_inferiors in mi/mi-interp.c

Replace it with a range-based for.  I've updated the comment in
mi_interp::init, which was a bit stale.

gdb/ChangeLog:

* mi/mi-interp.c (report_initial_inferior): Remove.
(mi_interp::init): Use range-based for to iterate over inferiors.

5 years agogdb: remove use of iterate_over_inferiors in py-inferior.c
Simon Marchi [Fri, 17 Jan 2020 14:51:10 +0000 (09:51 -0500)] 
gdb: remove use of iterate_over_inferiors in py-inferior.c

Use range-based for instead of iterate_over_inferiors in one spot in the Python
code.

gdb/ChangeLog:

* python/py-inferior.c (build_inferior_list): Remove.
(gdbpy_ref): Use range-based for loop to iterate over inferiors.

5 years agoForgot to add testcases to commit for [binutils][arm] PR25376 Change MVE ...
Andre Vieira [Fri, 17 Jan 2020 14:19:35 +0000 (14:19 +0000)] 
Forgot to add testcases to commit for [binutils][arm] PR25376 Change MVE ...

The original commit was 2da2eaf4ce299c84c5a1f1bc6f7944266cb36d6e

5 years agoUpdate libiberty sources with changes in the gcc mainline.
Nick Clifton [Fri, 17 Jan 2020 14:13:22 +0000 (14:13 +0000)] 
Update libiberty sources with changes in the gcc mainline.

+2020-01-01  Jakub Jelinek  <jakub@redhat.com>
+
+ Update copyright years.
+
+2019-12-06  Tim Ruehsen  <tim.ruehsen@gmx.de>
+
+ * make-relative-prefix.c (split_directories):
+ Return early on empty 'name'
+
+2019-11-16  Tim Ruehsen  <tim.ruehsen@gmx.de>
+
+ * cp-demangle.c (d_print_init): Remove const from 4th param.
+ (cplus_demangle_fill_name): Initialize d->d_counting.
+ (cplus_demangle_fill_extended_operator): Likewise.
+ (cplus_demangle_fill_ctor): Likewise.
+ (cplus_demangle_fill_dtor): Likewise.
+ (d_make_empty): Likewise.
+ (d_count_templates_scopes): Remobe const from 3rd param,
+ Return on dc->d_counting > 1,
+ Increment dc->d_counting.
+        * cp-demint.c (cplus_demangle_fill_component): Initialize d->d_counting.
+ (cplus_demangle_fill_builtin_type): Likewise.
+ (cplus_demangle_fill_operator): Likewise.
+
+2019-11-16  Eduard-Mihai Burtescu  <eddyb@lyken.rs>
+
+ * cplus-dem.c (cplus_demangle): Use rust_demangle directly.
+ (rust_demangle): Remove.
+ * rust-demangle.c (is_prefixed_hash): Rename to is_legacy_prefixed_hash.
+ (parse_lower_hex_nibble): Rename to decode_lower_hex_nibble.
+ (parse_legacy_escape): Rename to decode_legacy_escape.
+ (rust_is_mangled): Remove.
+ (struct rust_demangler): Add.
+ (peek): Add.
+ (next): Add.
+ (struct rust_mangled_ident): Add.
+ (parse_ident): Add.
+ (rust_demangle_sym): Remove.
+ (print_str): Add.
+ (PRINT): Add.
+ (print_ident): Add.
+ (rust_demangle_callback): Add.
+ (struct str_buf): Add.
+ (str_buf_reserve): Add.
+ (str_buf_append): Add.
+ (str_buf_demangle_callback): Add.
+ (rust_demangle): Add.
+ * rust-demangle.h: Remove.
+
+2019-11-15  Miguel Saldivar  <saldivarcher@gmail.com>
+
+ * testsuite/demangle-expected: Fix test.
+
+2019-11-04  Kamlesh Kumar  <kamleshbhalui@gmail.com>
+
+ * cp-demangle.c (d_expr_primary): Handle
+ nullptr demangling.
+ * testsuite/demangle-expected: Added test.
+
+2019-10-29 Paul Pluzhnikov  <ppluzhnikov@google.com>
+
+ * cp-demangle.c (d_number): Avoid signed int overflow.
+
+2019-10-28  Miguel Saldivar  <saldivarcher@gmail.com>
+
+ * cp-demangle.c (d_print_mod): Add a space before printing `complex`
+ and `imaginary`, as opposed to after.
+ * testsuite/demangle-expected: Adjust test.
+
+2019-10-03  Eduard-Mihai Burtescu  <eddyb@lyken.rs>
+
+ * rust-demangle.c (looks_like_rust): Remove.
+ (rust_is_mangled): Don't check escapes.
+ (is_prefixed_hash): Allow 0-9a-f permutations.
+ (rust_demangle_sym): Don't bail on unknown escapes.
+ * testsuite/rust-demangle-expected: Update 'main::$99$' test.
+
+2019-09-03  Eduard-Mihai Burtescu  <eddyb@lyken.rs>
+
+ * rust-demangle.c (unescape): Remove.
+ (parse_lower_hex_nibble): New function.
+ (parse_legacy_escape): New function.
+ (is_prefixed_hash): Use parse_lower_hex_nibble.
+ (looks_like_rust): Use parse_legacy_escape.
+ (rust_demangle_sym): Use parse_legacy_escape.
+ * testsuite/rust-demangle-expected: Add 'llv$u6d$' test.
+
+2019-08-27  Martin Liska  <mliska@suse.cz>
+
+ PR lto/91478
+ * simple-object-elf.c (simple_object_elf_copy_lto_debug_sections):
+ First find a WEAK HIDDEN symbol in symbol table that will be
+ preserved.  Later, use the symbol name for all removed symbols.
+
+2019-08-12  Martin Liska  <mliska@suse.cz>
+
+ * Makefile.in: Add filedescriptor.c.
+ * filedescriptor.c: New file.
+ * lrealpath.c (is_valid_fd): Remove.

diff --git a/libiberty/Makefile.in b/libiberty/Makefile.in
index 0be45b4ae8..fe738d0db4 100644
--- a/libiberty/Makefile.in
+++ b/libiberty/Makefile.in
@@ -1,7 +1,7 @@
 # Makefile for the libiberty library.
 # Originally written by K. Richard Pixley <rich@cygnus.com>.
 #
-# Copyright (C) 1990-2019 Free Software Foundation, Inc.
+# Copyright (C) 1990-2020 Free Software Foundation, Inc.
 #
 # This file is part of the libiberty library.
 # Libiberty is free software; you can redistribute it and/or
@@ -127,7 +127,7 @@ CFILES = alloca.c argv.c asprintf.c atexit.c \
  calloc.c choose-temp.c clock.c concat.c cp-demangle.c \
   cp-demint.c cplus-dem.c crc32.c \
  d-demangle.c dwarfnames.c dyn-string.c \
- fdmatch.c ffs.c fibheap.c filename_cmp.c floatformat.c \
+ fdmatch.c ffs.c fibheap.c filedescriptor.c filename_cmp.c floatformat.c \
  fnmatch.c fopen_unlocked.c \
  getcwd.c getopt.c getopt1.c getpagesize.c getpwd.c getruntime.c \
          gettimeofday.c                                                 \
@@ -171,6 +171,7 @@ REQUIRED_OFILES = \
  ./cp-demint.$(objext) ./crc32.$(objext) ./d-demangle.$(objext) \
  ./dwarfnames.$(objext) ./dyn-string.$(objext) \
  ./fdmatch.$(objext) ./fibheap.$(objext) \
+ ./filedescriptor.$(objext) \
  ./filename_cmp.$(objext) ./floatformat.$(objext) \
  ./fnmatch.$(objext) ./fopen_unlocked.$(objext) \
  ./getopt.$(objext) ./getopt1.$(objext) ./getpwd.$(objext) \
@@ -756,6 +757,17 @@ $(CONFIGURED_OFILES): stamp-picdir stamp-noasandir
  else true; fi
  $(COMPILE.c) $(srcdir)/fibheap.c $(OUTPUT_OPTION)

+./filedescriptor.$(objext): $(srcdir)/filedescriptor.c config.h $(INCDIR)/ansidecl.h \
+ $(INCDIR)/libiberty.h
+ if [ x"$(PICFLAG)" != x ]; then \
+   $(COMPILE.c) $(PICFLAG) $(srcdir)/filedescriptor.c -o pic/$@; \
+ else true; fi
+ if [ x"$(NOASANFLAG)" != x ]; then \
+   $(COMPILE.c) $(PICFLAG) $(NOASANFLAG) $(srcdir)/filedescriptor.c -o noasan/$@; \
+ else true; fi
+ $(COMPILE.c) $(srcdir)/filedescriptor.c $(OUTPUT_OPTION)
+
+
 ./filename_cmp.$(objext): $(srcdir)/filename_cmp.c config.h $(INCDIR)/ansidecl.h \
  $(INCDIR)/filenames.h $(INCDIR)/hashtab.h \
  $(INCDIR)/safe-ctype.h
diff --git a/libiberty/_doprnt.c b/libiberty/_doprnt.c
index d44dc415ed..a739f4304f 100644
--- a/libiberty/_doprnt.c
+++ b/libiberty/_doprnt.c
@@ -1,5 +1,5 @@
 /* Provide a version of _doprnt in terms of fprintf.
-   Copyright (C) 1998-2019 Free Software Foundation, Inc.
+   Copyright (C) 1998-2020 Free Software Foundation, Inc.
    Contributed by Kaveh Ghazi  (ghazi@caip.rutgers.edu)  3/29/98

 This program is free software; you can redistribute it and/or modify it
diff --git a/libiberty/argv.c b/libiberty/argv.c
index 6444896f99..8c9794db6a 100644
--- a/libiberty/argv.c
+++ b/libiberty/argv.c
@@ -1,5 +1,5 @@
 /* Create and destroy argument vectors (argv's)
-   Copyright (C) 1992-2019 Free Software Foundation, Inc.
+   Copyright (C) 1992-2020 Free Software Foundation, Inc.
    Written by Fred Fish @ Cygnus Support

 This file is part of the libiberty library.
diff --git a/libiberty/asprintf.c b/libiberty/asprintf.c
index 5718682f69..6e38e2234d 100644
--- a/libiberty/asprintf.c
+++ b/libiberty/asprintf.c
@@ -1,6 +1,6 @@
 /* Like sprintf but provides a pointer to malloc'd storage, which must
    be freed by the caller.
-   Copyright (C) 1997-2019 Free Software Foundation, Inc.
+   Copyright (C) 1997-2020 Free Software Foundation, Inc.
    Contributed by Cygnus Solutions.

 This file is part of the libiberty library.
diff --git a/libiberty/choose-temp.c b/libiberty/choose-temp.c
index 72c1b710bd..49a2faaa51 100644
--- a/libiberty/choose-temp.c
+++ b/libiberty/choose-temp.c
@@ -1,5 +1,5 @@
 /* Utility to pick a temporary filename prefix.
-   Copyright (C) 1996-2019 Free Software Foundation, Inc.
+   Copyright (C) 1996-2020 Free Software Foundation, Inc.

 This file is part of the libiberty library.
 Libiberty is free software; you can redistribute it and/or
diff --git a/libiberty/clock.c b/libiberty/clock.c
index a3730714bd..0de74657d0 100644
--- a/libiberty/clock.c
+++ b/libiberty/clock.c
@@ -1,5 +1,5 @@
 /* ANSI-compatible clock function.
-   Copyright (C) 1994-2019 Free Software Foundation, Inc.
+   Copyright (C) 1994-2020 Free Software Foundation, Inc.

 This file is part of the libiberty library.  This library is free
 software; you can redistribute it and/or modify it under the
diff --git

5 years agoAutomatic date update in version.in
GDB Administrator [Fri, 17 Jan 2020 00:00:32 +0000 (00:00 +0000)] 
Automatic date update in version.in

5 years agoFix some spelling errors.
Christian Biesinger [Thu, 16 Jan 2020 22:41:53 +0000 (16:41 -0600)] 
Fix some spelling errors.

I noticed those from a lintian run:
https://salsa.debian.org/cbiesinger-guest/gdb/-/jobs/514119

gdb/ChangeLog:

2020-01-16  Christian Biesinger  <cbiesinger@google.com>

        * btrace.c (btrace_compute_ftrace_1): Fix spelling error (Unkown).
        (btrace_stitch_trace): Likewise.
        * charset.c (intermediate_encoding): Likewise (vaild).
        * nat/linux-btrace.c (linux_read_pt): Likewise (Unkown).
        * python/py-record-btrace.c (struct PyMethodDef): Likewise (occurences).
        * record-btrace.c (record_btrace_print_conf): Likewise (unkown).

gdb/testsuite/ChangeLog:

2020-01-16  Christian Biesinger  <cbiesinger@google.com>

        * lib/gdb.exp: Fix spelling error (seperatelly).

Change-Id: I2a44936bac295020f217fb6c78b99b0a8d09cf9a

5 years agoAdd type for $_tlb->process_environment_block->process_parameters
Hannes Domani [Mon, 23 Dec 2019 15:38:13 +0000 (16:38 +0100)] 
Add type for $_tlb->process_environment_block->process_parameters

The type then looks like this:

(gdb) pt $_tlb->process_environment_block->process_parameters
type = struct rtl_user_process_parameters {
    DWORD32 maximum_length;
    DWORD32 length;
    DWORD32 flags;
    DWORD32 debug_flags;
    void *console_handle;
    DWORD32 console_flags;
    void *standard_input;
    void *standard_output;
    void *standard_error;
    unicode_string current_directory;
    void *current_directory_handle;
    unicode_string dll_path;
    unicode_string image_path_name;
    unicode_string command_line;
    void *environment;
    DWORD32 starting_x;
    DWORD32 starting_y;
    DWORD32 count_x;
    DWORD32 count_y;
    DWORD32 count_chars_x;
    DWORD32 count_chars_y;
    DWORD32 fill_attribute;
    DWORD32 window_flags;
    DWORD32 show_window_flags;
    unicode_string window_title;
    unicode_string desktop_info;
    unicode_string shell_info;
    unicode_string runtime_data;
} *

It's mainly useful to get the current directory, or the full command line:

(gdb) p $_tlb->process_environment_block->process_parameters->current_directory
$1 = {
  length = 26,
  maximum_length = 520,
  buffer = 0xe36c8 L"C:\\src\\tests\\"
}
(gdb) p $_tlb->process_environment_block->process_parameters->command_line
$2 = {
  length = 94,
  maximum_length = 96,
  buffer = 0xe32aa L"\"C:\\gdb\\build64\\gdb-git\\gdb\\gdb.exe\" access.exe"
}

The type names are all lowercase because the existing types created
by windows_get_tlb_type are also lowercase.

Type unicode_string is documented at [1].
The official documentation [2] for rtl_user_process_parameters is limited,
so I've used this other page [3].

[1] https://docs.microsoft.com/en-us/windows/win32/api/ntdef/ns-ntdef-_unicode_string
[2] https://docs.microsoft.com/en-us/windows/win32/api/winternl/ns-winternl-rtl_user_process_parameters
[3] https://www.nirsoft.net/kernel_struct/vista/RTL_USER_PROCESS_PARAMETERS.html

gdb/ChangeLog:

2020-01-16  Hannes Domani  <ssbssa@yahoo.de>

* windows-tdep.c (windows_get_tlb_type):
Add rtl_user_process_parameters type.

5 years agoEnsure proc-service symbols have default visibility (PR build/24805)
Pedro Alves [Thu, 16 Jan 2020 18:35:30 +0000 (18:35 +0000)] 
Ensure proc-service symbols have default visibility (PR build/24805)

Compiling GDB with '-fvisibility=hidden' removes the symbols that
should be exported.

This patch explicitly marks them as visible.

gdb/ChangeLog:
2020-01-16  Pedro Alves  <palves@redhat.com>
            Norbert Lange  <nolange79@gmail.com>

PR build/24805
* gdbsupport/gdb_proc_service.h (PS_EXPORT): New.
(ps_get_thread_area, ps_getpid, ps_lcontinue, ps_lgetfpregs)
(ps_lgetregs, ps_lsetfpregs, ps_lsetregs, ps_lstop, ps_pcontinue)
(ps_pdread, ps_pdwrite, ps_pglobal_lookup, ps_pstop, ps_ptread)
(ps_ptwrite, ps_lgetxregs, ps_lgetxregsize, ps_lsetxregs)
(ps_plog): Redeclare exported functions with default visibility.

5 years ago[gdb] Move ChangeLog entries to their right files
Pedro Alves [Thu, 16 Jan 2020 18:11:06 +0000 (18:11 +0000)] 
[gdb] Move ChangeLog entries to their right files

I spotted a few misplaced entries in the ChangeLog-2019 entries, and
went on to fix them.

Looking around I saw a good number of other entries in other years.
Then OCD got the best of me and I fixed them all.

Also fixes cases of wrong paths in entries, like "* gdb/foo.c" instead
of "* foo.c".

5 years agoSupport for DWARF5 location lists entries
Nitika Achra [Thu, 16 Jan 2020 16:51:06 +0000 (11:51 -0500)] 
Support for DWARF5 location lists entries

This patch handles DW_LLE_base_addressx, DW_LLE_startx_length and
DW_LLE_start_length.

Tested by running the testsuite before and after the patch and there is
no increase in the number of test cases that fails. Tested with both
-gdwarf-4 and -gdwarf-5 flags. Also tested -gslit-dwarf along with
-gdwarf-4 as well as -gdwarf5 flags.

This is an effort to support DWARF5 in gdb.

gdb/ChangeLog:

* dwarf2loc.c (decode_debug_loclists_addresses): Handle
DW_LLE_base_addressx, DW_LLE_startx_length, DW_LLE_start_length.

5 years ago[binutils][arm] PR25376 Change MVE into a CORE_HIGH feature
Andre Vieira [Thu, 16 Jan 2020 13:50:52 +0000 (13:50 +0000)] 
[binutils][arm] PR25376 Change MVE into a CORE_HIGH feature

This patch moves MVE feature bits into the CORE_HIGH section.  This makes sure
.fpu and -mfpu does not reset the bits set by MVE. This is important because
.fpu has no option to "set" these same bits and thus, mimic'ing GCC, we choose
to define MVE as an architecture extension rather than put it together with
other the legacy fpu features.

This will enable the following behavior:
.arch armv8.1-m.main
.arch mve
.fpu fpv5-sp-d16               #does not disable mve.
vadd.i32 q0, q1, q2

This patch also makes sure MVE is not taken into account during auto-detect.
This was already the case, but because we moved the MVE bits to the
architecture feature space we must make sure ARM_ANY does not include MVE.

gas/ChangeLog:
2020-01-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>

PR 25376
* config/tc-arm.c (mve_ext, mve_fp_ext): Use CORE_HIGH.
(armv8_1m_main_ext_table): Use CORE_HIGH for mve.
* testsuite/arm/armv8_1-m-fpu-mve-1.s: New.
* testsuite/arm/armv8_1-m-fpu-mve-1.d: New.
* testsuite/arm/armv8_1-m-fpu-mve-2.s: New.
* testsuite/arm/armv8_1-m-fpu-mve-2.d: New.

include/ChangeLog:
2020-01-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>

PR 25376
* opcodes/arm.h (FPU_MVE, FPU_MVE_FPU): Move these features to...
(ARM_EXT2_MVE, ARM_EXT2_MVE_FP): ... the CORE_HIGH space.
(ARM_ANY): Redefine to not include any MVE bits.
(ARM_FEATURE_ALL): Removed.

opcodes/ChangeLog:
2020-01-16  Andre Vieira  <andre.simoesdiasvieira@arm.com>

PR 25376
* opcodes/arm-dis.c (coprocessor_opcodes): Use CORE_HIGH for MVE bits.
(neon_opcodes): Likewise.
(select_arm_features): Make sure we enable MVE bits when selecting
armv8.1-m.main.  Make sure we do not enable MVE bits when not selecting
any architecture.

5 years agoMSP430: Remove unused linker script template elf32msp430_3.sc
Jozef Lawrynowicz [Thu, 16 Jan 2020 13:44:21 +0000 (13:44 +0000)] 
MSP430: Remove unused linker script template elf32msp430_3.sc

ld/ChangeLog:

2020-01-16  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* scripttempl/elf32msp430_3.sc: Remove.

5 years agoMSP430: Add input section rules for .upper sections to default linker script
Jozef Lawrynowicz [Thu, 16 Jan 2020 11:32:23 +0000 (11:32 +0000)] 
MSP430: Add input section rules for .upper sections to default linker script

ld/ChangeLog:

2020-01-16  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* scripttempl/elf32msp430.sc: Add input section rules for
.upper.{text,data,rodata,bss}.
* testsuite/ld-msp430-elf/msp430-elf.exp: Run new test.
* testsuite/ld-msp430-elf/upper-input-sections.s: New test.

5 years agox86: drop found_cpu_match local variable
Jan Beulich [Thu, 16 Jan 2020 09:07:36 +0000 (10:07 +0100)] 
x86: drop found_cpu_match local variable

50aecf8c5f could have done so right away; perhaps the variable shouldn't
have been introduced in the first place.

5 years agox86: drop stale Vec_Imm4 related comment
Jan Beulich [Thu, 16 Jan 2020 09:07:05 +0000 (10:07 +0100)] 
x86: drop stale Vec_Imm4 related comment

I overlooked this in commit 9d3bf266fd ("x86: drop Vec_Imm4"), presumably
because of the mis-spelling.

5 years agox86: add a few more missing VexWIG
Jan Beulich [Thu, 16 Jan 2020 09:06:21 +0000 (10:06 +0100)] 
x86: add a few more missing VexWIG

Alternatively it could also be VexW0 (to match other SSE2AVX), but the
VexW attribute shouldn't be left unset.

5 years agox86: VPEXTRQ/VPINSRQ are unavailable outside of 64-bit mode
Jan Beulich [Thu, 16 Jan 2020 09:05:35 +0000 (10:05 +0100)] 
x86: VPEXTRQ/VPINSRQ are unavailable outside of 64-bit mode

The AVX512DQ patterns lacking a Cpu64 attribute made the memory operand
forms accepted even outside of 64-bit mode, and this even without any
{evex} pseudo-prefix (otherwise one could argue that this is an attempt
to follow one possible, albeit somewhat odd, interpretation of the SDM
wording to this effect).

For consistency between the various involved templates drop the
* (now) unnecessary IgnoreSize attributes
* unnecessary (due to VexW1) Size64 attributes from VEX encoded forms
* redundant (with Reg64) Qword operand attributes
uniformly.

5 years agoAutomatic date update in version.in
GDB Administrator [Thu, 16 Jan 2020 00:00:34 +0000 (00:00 +0000)] 
Automatic date update in version.in

5 years agotexi2pod.pl: import support for @t{...} from gcc
Simon Marchi [Wed, 15 Jan 2020 17:58:08 +0000 (12:58 -0500)] 
texi2pod.pl: import support for @t{...} from gcc

GDB's man page source (in gdb.texinfo) contains:

    @t{++}

The @t{...} part is supposed to display the wrapped text with a
fixed-width font.  The texi2pod.pl script currently doesn't handle
@t{...}, so it appears as-is in the man page:

    You can use GDB to debug programs written in C, C@t{++}, Fortran and Modula-2.

gcc's version of texi2pod.pl (at contrib/texi2pod.pl in gcc's repo)
replaces @t{...} with the wrapped text as-is, which I think is an
acceptable behavior.  The fixed-width font distinction is not really
important for a man page, where the text will be displayed with whatever
font the user is using.

Import the line that does that from gcc's version.

I have verified that there is no other, unwanted change in man pages
generated in binutils' and GDB's doc, with this patch applied.

etc/ChangeLog:

* texi2pod.pl: Handle @t{...} tags.

5 years agoUse get_thread_regcache instead of get_current_regcache in post_create_inferior
Simon Marchi [Wed, 15 Jan 2020 17:47:44 +0000 (12:47 -0500)] 
Use get_thread_regcache instead of get_current_regcache in post_create_inferior

In post_create_inferior, we get the current thread using the
inferior_thread function and store it in `thr`.  We then call
get_current_regcache immediately after, which does:

  return get_thread_regcache (inferior_thread ());

This patch makes post_create_inferior use get_thread_regcache, passing
`thr`, saving an unnecessary inferior_thread call.

gdb/ChangeLog:

* infcmd.c (post_create_inferior): Use get_thread_regcache
instead of get_current_regcache.

5 years agoSet the default page size of the PDP11 target to 8192 bytes.
Lars Brinkhoff [Wed, 15 Jan 2020 14:18:54 +0000 (14:18 +0000)] 
Set the default page size of the PDP11 target to 8192 bytes.

PR 20694
bfd * pdp11.c (TARGET_PAGE_SIZE): Set to 8192.

ld * temulparams/pdp11.sh (TARGET_PAGE_SIZE): Set to 8192.

5 years agotic4x disassembly static variables
Alan Modra [Wed, 15 Jan 2020 05:37:16 +0000 (16:07 +1030)] 
tic4x disassembly static variables

tic4x uses a number of static variables for tables that are generated
depending on the current machine (tic4x vs. tic3x).  However, it is
possible to change the machine from one invocation of print_insn_tic4x
to the next.  This patch throws away the old state if that happens,
and uses a relatively small known size array of register names rather
than a malloc'd table.

* tic4x-dis.c (tic4x_version): Make unsigned long.
(optab, optab_special, registernames): New file scope vars.
(tic4x_print_register): Set up registernames rather than
malloc'd registertable.
(tic4x_disassemble): Delete optable and optable_special.  Use
optab and optab_special instead.  Throw away old optab,
optab_special and registernames when info->mach changes.

5 years agoMSP430: Fix relocation overflow when using #lo(EXP) macro
Jozef Lawrynowicz [Wed, 15 Jan 2020 13:17:27 +0000 (13:17 +0000)] 
MSP430: Fix relocation overflow when using #lo(EXP) macro

gas/ChangeLog:

2020-01-15  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* config/tc-msp430.c (CHECK_RELOC_MSP430): Always generate 430X
relocations when the target is 430X, except when extracting part of an
expression.
(msp430_srcoperand): Adjust comment.
Initialize the expp member of the msp430_operand_s struct as
appropriate.
(msp430_dstoperand): Likewise.
* testsuite/gas/msp430/msp430.exp: Run new test.
* testsuite/gas/msp430/reloc-lo-430x.d: New test.
* testsuite/gas/msp430/reloc-lo-430x.s: New test.

include/ChangeLog:

2020-01-15  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* opcode/msp430.h (enum msp430_expp_e): New.
(struct msp430_operand_s): Add expp member to struct.

ld/ChangeLog:

2020-01-15  Jozef Lawrynowicz  <jozef.l@mittosystems.com>

* testsuite/ld-msp430-elf/msp430-elf.exp: Run new test.
* testsuite/ld-msp430-elf/reloc-lo-430x.s: New test.