* [binutils-gdb/binutils-2_40-branch] Set development and experimental to false. Update version number to 2.40. Add release markers. Re
@ 2023-01-14 13:42 Nick Clifton
0 siblings, 0 replies; only message in thread
From: Nick Clifton @ 2023-01-14 13:42 UTC (permalink / raw)
To: bfd-cvs, gdb-cvs
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=c203a2e3a814782ea3a83a6eb60c3a58e6725eba
commit c203a2e3a814782ea3a83a6eb60c3a58e6725eba
Author: Nick Clifton <nickc@redhat.com>
Date: Sat Jan 14 13:42:32 2023 +0000
Set development and experimental to false. Update version number to 2.40. Add release markers. Regenerate files
Diff:
---
ChangeLog.git | 102236 ++++++++++++++++++++++++++++++++++++++
bfd/ChangeLog | 4 +
bfd/configure | 20 +-
bfd/development.sh | 4 +-
bfd/po/bfd.pot | 38 +-
bfd/version.m4 | 2 +-
binutils/ChangeLog | 4 +
binutils/configure | 20 +-
binutils/po/binutils.pot | 6 +-
gas/ChangeLog | 4 +
gas/configure | 20 +-
gas/doc/.dirstamp | 0
gas/po/gas.pot | 64 +-
gold/ChangeLog | 4 +
gold/po/gold.pot | 4 +-
gprof/ChangeLog | 4 +
gprof/configure | 20 +-
gprof/po/gprof.pot | 2 +-
gprofng/configure | 20 +-
gprofng/doc/version.texi | 8 +-
gprofng/libcollector/configure | 20 +-
ld/ChangeLog | 4 +
ld/configure | 20 +-
ld/po/ld.pot | 867 +-
opcodes/ChangeLog | 4 +
opcodes/configure | 20 +-
opcodes/po/opcodes.pot | 2 +-
27 files changed, 102845 insertions(+), 576 deletions(-)
diff --git a/ChangeLog.git b/ChangeLog.git
new file mode 100644
index 00000000000..28cfcc13313
--- /dev/null
+++ b/ChangeLog.git
@@ -0,0 +1,102236 @@
+2023-01-14 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-13 Nick Clifton <nickc@redhat.com>
+
+ Updated Romainian translation for the bfd sub-directory
+
+2023-01-13 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-12 Hans-Peter Nilsson <hp@axis.com>
+
+ ARM: Fix ld bloat introduced between binutils-2.38 and 2.39
+ Since commit 9833b7757d24, "PR28824, relro security issues",
+ ELF_MAXPAGESIZE matters much more, with regards to layout of
+ the linked file. That commit fixed an actual bug, but also
+ exposes a problem for targets were that value is too high.
+
+ For example, for ARM(32, a.k.a. "Aarch32") specifically
+ bfd_arch_arm, it's set to 64 KiB, making all Linux(/GNU)
+ targets pay an extra amount of up to 60 KiB of bloat in
+ DSO:s and executables. This matters when there are many
+ such files, and where storage is expensive.
+
+ It's *mostly* bloat when using a Linux kernel, as ARM(32) is
+ a good example of an target where ELF_MAXPAGESIZE is set to
+ an extreme value for an obscure corner-case. The ARM
+ (32-bit) kernel has 4 KiB pages, has had that value forever,
+ and can't be configured to any other value. The use-case is
+ IIUC "Aarch32" emulation on an "Aarch64" (arm64) kernel, but
+ not just that, but a setup where the Linux page-size is
+ configured to something other than the *default* 4 KiB. Not
+ sure there actually any such systems in use, again with
+ both Aarch32 compatibility support and a non-4KiB pagesize,
+ with all the warnings in the kernel config and requiring the
+ "EXPERT" level set on.
+
+ So, let's do like x86-64 in a2267dbfc9e1 "x86-64: Use only
+ one default max-page-size" and set ELF_MAXPAGESIZE to 4096.
+
+ bfd:
+ * elf32-arm.c (ELF_MAXPAGESIZE): Always set to 0x1000.
+ (cherry picked from commit 1a26a53a0dee39106ba58fcb15496c5f13074652)
+
+2023-01-12 Hans-Peter Nilsson <hp@axis.com>
+
+ ld/testsuite: Adjust for ELF_MAXPAGESIZE 0x1000
+ Many tests reflect a setting of ELF_MAXPAGESIZE to 64 KiB.
+ With ELF_MAXPAGESIZE changed to 4 KiB, layout is sometimes
+ different and symbols end up in other places. Avoid churn
+ and regexpification of old test patterns by passing the
+ max-page-size setting active at the time.
+
+ ld/testsuite:
+
+ * testsuite/ld-arm/arm-elf.exp,
+ testsuite/ld-arm/non-contiguous-arm2.d,
+ testsuite/ld-arm/non-contiguous-arm3.d,
+ testsuite/ld-arm/non-contiguous-arm5.d,
+ testsuite/ld-arm/non-contiguous-arm6.d,
+ testsuite/ld-arm/thumb-plt-got.d, testsuite/ld-arm/thumb-plt.d:
+ Pass -z max-page-size=0x10000 explicitly to test that rely on
+ that value in output-matching patterns.
+ (cherry picked from commit b305015577bb92d3041e55a72ca8cd43f7c05748)
+
+2023-01-12 Nick Alcock <nick.alcock@oracle.com>
+
+ libctf: ctf-link outdated input check faulty
+ This check has a pair of faults which, combined, can lead to memory
+ corruption. Firstly, it assumes that the values of the ctf_link_inputs
+ hash are ctf_dict_t's: they are not, they are ctf_link_input_t's, a much
+ shorter structure. So the flags check which is the core of this is
+ faulty (but happens, by chance, to give the right output on most
+ architectures, since usually we happen to get a 0 here, so the test that
+ checks this usually passes). Worse, the warning that is emitted when
+ the test fails is added to the wrong dict -- it's added to the input
+ dict, whose warning list is never consumed, rendering the whole check
+ useless. But the dict it adds to is still the wrong type, so we end up
+ overwriting something deep in memory (or, much more likely,
+ dereferencing a garbage pointer and crashing).
+
+ Fixing both reveals another problem: the link input is an *archive*
+ consisting of multiple members, so we have to consider whether to check
+ all of them for the outdated-func-info thing we are checking here.
+ However, no compiler exists that emits a mixture of members with this
+ flag on and members with it off, and the linker always reserializes (and
+ upgrades) such things when it sees them: so all members in a given
+ archive must have the same value of the flag, so we only need to check
+ one member per input archive.
+
+ libctf/
+ PR libctf/29983
+ * ctf-link.c (ctf_link_warn_outdated_inputs): Get the types of
+ members of ctf_link_inputs right, fixing a possible spurious
+ tesst failure / wild pointer deref / overwrite. Emit the
+ warning message into the right dict.
+
+2023-01-12 Nick Clifton <nickc@redhat.com>
+
+ Ensure that libbacktrace/allocfail.sh is not deleted when creating release tarballs.
+ * Makefile.am (CLEANFILES): Import patch from upstream to prevent
+ allocafail.sh from being removed when running 'make clean'.
+
+2023-01-12 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-11 Nick Clifton <nickc@redhat.com>
+
+ Fix a potential illegal memory access in the BFD library when parsing a corrupt DWARF file.
+ PR 29988
+ * dwarf2.c (read_indexed_address): Fix check for an out of range
+ offset.
+
+2023-01-11 Jan Beulich <jbeulich@suse.com>
+
+ gas/RISC-V: adjust assembler for opcode table re-ordering
+ PR gas/29940
+
+ With the single-operand JAL entry now sitting ahead of the two-operand
+ one, the parsing of a two-operand insn would first try to parse an 'a'-
+ style operand, resulting in the insertion of bogus (and otherwise
+ unused) undefined symbols in the symbol table, having register names.
+ Since 'a' is used as 1st operand only with J and JAL, and since JAL is
+ the only insn _also_ allowing for a register as 1st operand (and then
+ there being a 2nd one), special case this parsing aspect right there.
+
+ Reviewed-by: Palmer Dabbelt <palmer@rivosinc.com>
+
+2023-01-11 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-10 Stefan Schulze Frielinghaus <stefansf@linux.ibm.com>
+
+ IBM zSystems: Fix offset relative to static TLS
+ For local exec TLS relocations of the form foo@NTPOFF+x the addend was
+ ignored.
+
+ bfd/ChangeLog:
+
+ * elf32-s390.c (elf_s390_relocate_section): Honor addend for
+ R_390_TLS_LE32.
+ * elf64-s390.c (elf_s390_relocate_section): Honor addend for
+ R_390_TLS_LE64.
+
+ ld/ChangeLog:
+
+ * testsuite/ld-s390/reloctlsle-1.d: New test.
+ * testsuite/ld-s390/reloctlsle-1.s: New test.
+
+ (cherry picked from commit aefebe82dc89711384b85329daa48d04c1d3a45b)
+
+2023-01-10 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-09 Indu Bhagat <indu.bhagat@oracle.com>
+
+ sframe: fix the defined SFRAME_FRE_TYPE_*_LIMIT constants
+ An earlier commit 3f107464 defined the SFRAME_FRE_TYPE_*_LIMIT
+ constants. These constants are used (by gas and libsframe) to pick an
+ SFrame FRE type based on the function size. Those constants, however,
+ were buggy, causing the generated SFrame sections to be bloated as
+ SFRAME_FRE_TYPE_ADDR2/SFRAME_FRE_TYPE_ADDR4 got chosen more often than
+ necessary.
+
+ gas/
+ * sframe-opt.c (sframe_estimate_size_before_relax): Use
+ typecast.
+ (sframe_convert_frag): Likewise.
+
+ libsframe/
+ * sframe.c (sframe_calc_fre_type): Use a more appropriate type
+ for argument. Adjust the check for SFRAME_FRE_TYPE_ADDR4_LIMIT
+ to keep it warning-free but meaningful.
+
+ include/
+ * sframe-api.h (sframe_calc_fre_type): Use a more appropriate
+ type for the argument.
+ * sframe.h (SFRAME_FRE_TYPE_ADDR1_LIMIT): Correct the constant.
+ (SFRAME_FRE_TYPE_ADDR2_LIMIT): Likewise.
+ (SFRAME_FRE_TYPE_ADDR4_LIMIT): Likewise.
+
+ (cherry picked from commit 725a19bfd142c845bf76ae28f6289972fd1cf5db)
+
+2023-01-09 Indu Bhagat <indu.bhagat@oracle.com>
+
+ libsframe: adjust an incorrect check in flip_sframe
+ When sframe_encoder_write needs to flip the buffer containing the SFrame
+ section before writing, it is not necessary that the SFrame FDES are in
+ the order of their sfde_func_start_fre_off. On the contrary, SFrame
+ FDEs will be sorted in the order of their start address. So, remove
+ this incorrect assumption which is basically assuming that the last
+ sfde_func_start_fre_off seen will help determine the end of the flipped
+ buffer.
+
+ The function now keeps track of the bytes_flipped and then compares it with
+ the expected value. Also, added two more checks at appropriate places:
+ - check that the SFrame FDE read is within bounds
+ - check that the SFrame FRE read is within bounds
+
+ libsframe/
+
+ * sframe.c (flip_sframe): Adjust an incorrect check.
+ Add other checks to ensure reads are within the buffer size.
+
+ (cherry picked from commit cd9aea32cffd8089f6f63f4eb86d4dccfc0b3850)
+
+2023-01-09 Christophe Lyon <christophe.lyon@arm.com>
+
+ Skip ld/pr23169 test on arm.
+ The test is already skipped on several targets (including AArch64)
+ because it's invalid.
+
+ * testsuite/ld-ifunc/ifunc.exp: Skip pr23169 on arm.
+
+2023-01-09 Christophe Lyon <christophe.lyon@arm.com>
+
+ Fix PR18841 ifunc relocation ordering
+ In order to get the ifunc relocs properly sorted the correct class
+ needs to be returned. The code mimics what has been done for AArch64.
+
+ Fixes:
+ FAIL: Run pr18841 with libpr18841b.so
+ FAIL: Run pr18841 with libpr18841c.so
+ FAIL: Run pr18841 with libpr18841bn.so (-z now)
+ FAIL: Run pr18841 with libpr18841cn.so (-z now)
+
+ bfd/
+ PR ld/18841
+ * elf32-arm.c (elf32_arm_reloc_type_class): Return
+ reloc_class_ifunc for ifunc symbols.
+
+ ld/testsuite/
+ * ld-arm/ifunc-12.rd: Update relocations order.
+ * ld-arm/ifunc-3.rd: Likewise.
+ * ld-arm/ifunc-4.rd: Likewise.
+
+2023-01-09 Nick Clifton <nickc@redhat.com>
+
+ Updated transaltions for the gprof and binutils sub-directories
+
+2023-01-09 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-08 Alan Modra <amodra@gmail.com>
+
+ PR29972, inconsistent format specification in singular form
+ PR 29972
+ * readelf.c (process_dynamic_section): Correct format string.
+
+ (cherry picked from commit 02da71ee20ec71f7b3be85cf2266e09c124983bf)
+
+2023-01-08 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-07 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-06 Jan Beulich <jbeulich@suse.com>
+
+ ld: yet another PDB build fix (or workaround)
+ Older bash looks to improperly deal with backslashes in here-documents,
+ leaving them in place on the escaped double quotes inside the parameter
+ expansion. Convert to a model without using such a construct, by simply
+ splitting the here-documents into three ones.
+
+2023-01-06 Nick Clifton <nickc@redhat.com>
+
+ Updated Bulgarian and Russian translations for LD and BFD respectively
+
+2023-01-06 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-05 Nick Clifton <nickc@redhat.com>
+
+ Avoid unaligned pointer reads in PEP idata section
+
+ Updated Bulgarian and Russian translations for the gprof subdirectory
+
+2023-01-05 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-04 Alan Modra <amodra@gmail.com>
+
+ Merge config/picflag.m4 from gcc
+
+ Update some more copyright year ranges
+ These files disappear in commit 3002e78a7d3d but are still on the branch.
+
+ Update year range in gprofng copyright notices
+ This adds 'Innovative Computing Labs' as an external author to
+ update-copyright.py, to cover the copyright notice in
+ gprofng/common/opteron_pcbe.c, and uses that plus another external
+ author 'Oracle and' to update gprofng copyright dates. I'm not going
+ to commit 'Oracle and' as an accepted author, but that covers the
+ string "Copyright (c) 2006, 2012, Oracle and/or its affiliates. All
+ rights reserved." found in gprofng/testsuite/gprofng.display/jsynprog
+ files.
+
+ Update year range in copyright notice of binutils files
+ The newer update-copyright.py fixes file encoding too, removing cr/lf
+ on binutils/bfdtest2.c and ld/testsuite/ld-cygwin/exe-export.exp, and
+ embedded cr in binutils/testsuite/binutils-all/ar.exp string match.
+
+2023-01-04 Alan Modra <amodra@gmail.com>
+
+ Update etc/update-copyright.py
+ This picks up some improvements from gcc/contrib. exceptions must
+ derive from BaseException, port to python3, retain original file mode,
+ fix name of script in examples.
+
+ Adds libsframe to list of default dirs. I would have added gprofng
+ too but there are some files claiming copyright by authors other than
+ the Free Software Foundation.
+
+2023-01-04 Andreas K. Huettel <dilfridge@gentoo.org>
+
+ Fix AArch64 linker testsuite failures triggered by differences in build environments.
+ PR 29843
+ * testsuite/ld-aarch64/bti-plt-5.d: Relax regxps slightly to allow
+ for differences in build environments.
+ * testsuite/ld-aarch64/tls-relax-gdesc-le-now.d: Likewise.
+
+2023-01-04 Mark Harmstone <mark@harmstone.com>
+
+ Avoid unaligned pointer reads in PEP .idata section
+ This is something I discovered when working on aarch64, though it's
+ relevant to x86_64 too.
+
+ The PE32+ imports are located in the .idata section, which starts off
+ with a 20-byte structure for each DLL, containing offsets into the rest
+ of the section. This is the Import Directory Table in
+ https://learn.microsoft.com/en-us/windows/win32/debug/pe-format, which
+ is a concatenation of the .idata$2 sections. This is then followed by an
+ 20 zero bytes generated by the linker script, which calls this .idata$3.
+
+ After this comes the .idata$4 entries for each function, which the
+ loader overwrites with the function pointers. Because there's no padding
+ between .idata$3 and .idata$4, this means that if there's an even number
+ of DLLs, the function pointers won't be aligned on an 8-byte boundary.
+
+ Misaligned reads are slower on x86_64, but this is more important on
+ aarch64, as the e.g. `ldr x0, [x0, :lo12:__imp__func]` the compiler
+ might generate requires __imp__func (the .idata$4 entry) to be aligned
+ to 8 bytes. Without this you get IMAGE_REL_ARM64_PAGEOFFSET_12L overflow
+ errors.
+
+2023-01-04 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-03 Nick Clifton <nickc@redhat.com>
+
+ Updated translations for various languages and sub-directories
+
+2023-01-03 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2023-01-02 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-31 Nick Clifton <nickc@redhat.com>
+
+ Update version number and regenerate files
+
+ Add markers for 2.40 branch
+
+ sync libiberty sources with gcc mainline
+
+2022-12-31 Tom de Vries <tdevries@suse.de>
+
+ [gdb/cli] Add maintenance ignore-probes
+ There's a command "disable probes", but SystemTap probes, for instance
+ libc:longjmp cannot be disabled:
+ ...
+ $ gdb -q -batch a.out -ex start -ex "disable probes libc ^longjmp$"
+ ...
+ Probe libc:longjmp cannot be disabled.
+ Probe libc:longjmp cannot be disabled.
+ Probe libc:longjmp cannot be disabled.
+ ...
+
+ Add a command "maintenance ignore-probes" that ignores probes during
+ get_probes, such that we can easily pretend to use a libc without the
+ libc:longjmp probe:
+ ...
+ (gdb) maint ignore-probes -verbose libc ^longjmp$
+ ignore-probes filter has been set to:
+ PROVIDER: 'libc'
+ PROBE_NAME: '^longjmp$'
+ OBJNAME: ''
+ (gdb) start ^M
+ ...
+ Ignoring SystemTap probe libc longjmp in /lib64/libc.so.6.^M
+ Ignoring SystemTap probe libc longjmp in /lib64/libc.so.6.^M
+ Ignoring SystemTap probe libc longjmp in /lib64/libc.so.6.^M
+ ...
+
+ The "Ignoring ..." messages can be suppressed by not using -verbose.
+
+ Note that as with "disable probes", running simply "maint ignore-probes"
+ ignores all probes.
+
+ The ignore-probes filter can be reset by using:
+ ...
+ (gdb) maint ignore-probes -reset
+ ignore-probes filter has been reset
+ ...
+
+ For now, the command is only supported for SystemTap probes.
+
+ PR cli/27159
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=27159
+
+2022-12-31 Mark Harmstone <mark@harmstone.com>
+
+ ld/testsuite: Don't add index to sizes in pdb.exp
+
+ ld: Handle LF_VFTABLE types in PDBs
+
+2022-12-31 Mark Harmstone <mark@harmstone.com>
+
+ ld: Handle extended-length data structures in PDB types
+ A few fixes to minor issues I've discovered in my PDB patches.
+
+ * If sizes or offsets are greater than 0x8000, they get encoded as
+ extended values in the same way as for enum values - e.g. a LF_ULONG
+ .short followed by a .long.
+
+ * I've managed to coax MSVC to produce another type, LF_VFTABLE, which
+ is seen when dealing with COM. I don't think LLVM emits this. Note that
+ we can't just implement everything in Microsoft's header files, as most
+ of it is obsolete.
+
+ * Fixes a stupid bug in the test program, where I was adding an index to
+ a size. The index was hard-coded to 0, so this didn't cause any actual
+ issues.
+
+2022-12-31 Nick Clifton <nickc@redhat.com>
+
+ Updated Romanian translation for the binutils sub-directory
+
+2022-12-31 Tom de Vries <tdevries@suse.de>
+
+ [gdb/python] Fix gdb.python/py-finish-breakpoint2.exp for -m32
+ [ Partial resubmission of an earlier submission by Andrew (
+ https://sourceware.org/pipermail/gdb-patches/2012-September/096347.html ), so
+ listing him as co-author. ]
+
+ With x86_64-linux and target board unix/-m32, we have:
+ ...
+ (gdb) continue^M
+ Continuing.^M
+ Exception #10^M
+ ^M
+ Breakpoint 3, throw_exception_1 (e=10) at py-finish-breakpoint2.cc:23^M
+ 23 throw new int (e);^M
+ (gdb) FAIL: gdb.python/py-finish-breakpoint2.exp: \
+ check FinishBreakpoint in catch()
+ ...
+
+ The following scenario happens:
+ - set breakpoint in throw_exception_1, a function that throws an exception
+ - continue
+ - hit breakpoint, with call stack main.c:38 -> throw_exception_1
+ - set a finish breakpoint
+ - continue
+ - hit the breakpoint again, with call stack main.c:48 -> throw_exception
+ -> throw_exception_1
+
+ Due to the exception, the function call did not properly terminate, and the
+ finish breakpoint didn't trigger. This is expected behaviour.
+
+ However, the intention is that gdb detects this situation at the next stop
+ and calls the out_of_scope callback, which would result here in this test-case
+ in a rather confusing "exception did not finish" message. So the problem is
+ that this message doesn't show up, in other words, the out_of_scope callback
+ is not called.
+
+ [ Note that the fact that the situation is detected only at the next stop
+ (wherever that happens to be) could be improved upon, and the earlier
+ submission did that by setting a longjmp breakpoint. But I'm considering this
+ problem out-of-scope for this patch. ]
+
+ Note that the message does show up later, at thread exit:
+ ...
+ [Inferior 1 (process 20046) exited with code 0236]^M
+ exception did not finish ...^M
+ ...
+
+ The decision on whether to call the out_of_scope call back is taken in
+ bpfinishpy_detect_out_scope_cb, and the interesting bit is here:
+ ...
+ if (b->pspace == current_inferior ()->pspace
+ && (!target_has_registers ()
+ || frame_find_by_id (b->frame_id) == NULL))
+ bpfinishpy_out_of_scope (finish_bp);
+ ...
+
+ In the case of the thread exit, the callback triggers because
+ target_has_registers () == 0.
+
+ So why doesn't the callback trigger in the case of the breakpoint?
+
+ Well, the b->frame_id is the frame_id of the frame of main (the frame
+ in which the finish breakpoint is supposed to trigger), so AFAIU
+ frame_find_by_id (b->frame_id) == NULL will only be true once we've
+ left main, at which point I guess we don't stop till thread exit.
+
+ Fix this by saving the frame in which the finish breakpoint was created, and
+ using frame_find_by_id () == NULL on that frame instead, such that we have:
+ ...
+ (gdb) continue^M
+ Continuing.^M
+ Exception #10^M
+ ^M
+ Breakpoint 3, throw_exception_1 (e=10) at py-finish-breakpoint2.cc:23^M
+ 23 throw new int (e);^M
+ exception did not finish ...^M
+ (gdb) FAIL: gdb.python/py-finish-breakpoint2.exp: \
+ check FinishBreakpoint in catch()
+ ...
+
+ Still, the test-case is failing because it's setup to match the behaviour that
+ we get on x86_64-linux with target board unix/-m64:
+ ...
+ (gdb) continue^M
+ Continuing.^M
+ Exception #10^M
+ stopped at ExceptionFinishBreakpoint^M
+ (gdb) PASS: gdb.python/py-finish-breakpoint2.exp: \
+ check FinishBreakpoint in catch()
+ ...
+
+ So what happens here? Again, due to the exception, the function call did not
+ properly terminate, but the finish breakpoint still triggers. This is somewhat
+ unexpected. This happens because it just so happens to be that the frame
+ return address at which the breakpoint is set, is also the first instruction
+ after the exception has been handled. This is a know problem, filed as
+ PR29909, so KFAIL it, and modify the test-case to expect the out_of_scope
+ callback.
+
+ Also add a breakpoint after setting the finish breakpoint but before throwing
+ the exception, to check that we don't call the out_of_scope callback too early.
+
+ Tested on x86_64-linux, with target boards unix/-m32.
+
+ Co-Authored-By: Andrew Burgess <aburgess@redhat.com>
+ PR python/27247
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=27247
+
+2022-12-31 Tom de Vries <tdevries@suse.de>
+
+ [gdb/testsuite] Fix gdb.base/print-symbol-loading.exp on ubuntu 22.04.1
+ On ubuntu 22.04.1 x86_64, I run into:
+ ...
+ (gdb) PASS: gdb.base/print-symbol-loading.exp: shlib off: \
+ set print symbol-loading off
+ sharedlibrary .*^M
+ Symbols already loaded for /lib/x86_64-linux-gnu/libc.so.6^M
+ Symbols already loaded for /lib/x86_64-linux-gnu/libpthread.so.0^M
+ (gdb) FAIL: gdb.base/print-symbol-loading.exp: shlib off: load shared-lib
+ ...
+
+ The test-case expects the libc.so line, but not the libpthread.so line.
+
+ However, we have:
+ ...
+ $ ldd /lib/x86_64-linux-gnu/libc.so.6
+ linux-vdso.so.1 (0x00007ffd7f7e7000)
+ libgtk3-nocsd.so.0 => /lib/x86_64-linux-gnu/libgtk3-nocsd.so.0 (0x00007f4468c00000)
+ /lib64/ld-linux-x86-64.so.2 (0x00007f4469193000)
+ libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f4468f3e000)
+ libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f4468f39000)
+ ...
+ so it's not unexpected that libpthread.so is loaded if libc.so is loaded.
+
+ Fix this by accepting the libpthread.so line.
+
+ Tested on x86_64-linux.
+
+ PR testsuite/29919
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29919
+
+2022-12-31 Tom de Vries <tdevries@suse.de>
+
+ [gdb/testsuite] Replace deprecated pthread_yield in gdb.threads/watchpoint-fork.exp
+ On Ubuntu 22.04.1 x86_64, with glibc 2.35 I run into:
+ ...
+ watchpoint-fork-mt.c: In function 'start':^M
+ watchpoint-fork-mt.c:67:7: warning: 'pthread_yield' is deprecated: \
+ pthread_yield is deprecated, use sched_yield instead \
+ [-Wdeprecated-declarations]^M
+ 67 | i = pthread_yield ();^M
+ | ^^M
+ ...
+
+ Fix this as suggested, by using sched_yield instead.
+
+ Tested on x86_64-linux.
+
+2022-12-31 Tom de Vries <tdevries@suse.de>
+
+ [gdb/testsuite] Fix gdb.base/corefile.exp with glibc 2.35
+ On Ubuntu 22.04.1 x86_64 (with glibc 2.35), I run into:
+ ...
+ (gdb) PASS: gdb.base/corefile.exp: $_exitcode is void
+ bt^M
+ #0 __pthread_kill_implementation (...) at ./nptl/pthread_kill.c:44^M
+ #1 __pthread_kill_internal (...) at ./nptl/pthread_kill.c:78^M
+ #2 __GI___pthread_kill (...) at ./nptl/pthread_kill.c:89^M
+ #3 0x00007f4985e1a476 in __GI_raise (...) at ../sysdeps/posix/raise.c:26^M
+ #4 0x00007f4985e007f3 in __GI_abort () at ./stdlib/abort.c:79^M
+ #5 0x0000556b4ea4b504 in func2 () at gdb.base/coremaker.c:153^M
+ #6 0x0000556b4ea4b516 in func1 () at gdb.base/coremaker.c:159^M
+ #7 0x0000556b4ea4b578 in main (...) at gdb.base/coremaker.c:171^M
+ (gdb) PASS: gdb.base/corefile.exp: backtrace
+ up^M
+ #1 __pthread_kill_internal (...) at ./nptl/pthread_kill.c:78^M
+ 78 in ./nptl/pthread_kill.c^M
+ (gdb) FAIL: gdb.base/corefile.exp: up
+ ...
+
+ The problem is that the regexp used here:
+ ...
+ gdb_test "up" "#\[0-9\]* *\[0-9xa-fH'\]* in .* \\(.*\\).*" "up"
+ ...
+ does not fit the __pthread_kill_internal line which lacks the instruction
+ address due to inlining.
+
+ Fix this by making the regexp less strict.
+
+ Tested on x86_64-linux.
+
+2022-12-31 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-30 Tom de Vries <tdevries@suse.de>
+
+ [gdb/testsuite] Fix gdb.threads/dlopen-libpthread.exp for upstream glibc
+ On ubuntu 22.04.1 x86_64, I run into:
+ ...
+ (gdb) info probes all rtld rtld_map_complete^M
+ No probes matched.^M
+ (gdb) XFAIL: gdb.threads/dlopen-libpthread.exp: info probes all rtld rtld_map_complete
+ UNTESTED: gdb.threads/dlopen-libpthread.exp: no matching probes
+ ...
+ This has been filed as PR testsuite/17016.
+
+ The problem is that the name rtld_map_complete is used, which was only
+ available in Fedora 17, and upstream the name map_complete was used.
+
+ In the email thread discussing a proposed patch (
+ https://sourceware.org/legacy-ml/gdb-patches/2014-09/msg00712.html ) it was
+ suggested to make the test-case handle both names.
+
+ So, handle both names: map_complete and rtld_map_complete.
+
+ This exposes the following FAIL:
+ ...
+ (gdb) info sharedlibrary^M
+ From To Syms Read Shared Object Library^M
+ $hex $hex Yes /lib64/ld-linux-x86-64.so.2^M
+ $hex $hex Yes (*) /lib/x86_64-linux-gnu/libgtk3-nocsd.so.0^M
+ $hex $hex Yes /lib/x86_64-linux-gnu/libc.so.6^M
+ $hex $hex Yes /lib/x86_64-linux-gnu/libdl.so.2^M
+ $hex $hex Yes /lib/x86_64-linux-gnu/libpthread.so.0^M
+ (*): Shared library is missing debugging information.^M
+ (gdb) FAIL: gdb.threads/dlopen-libpthread.exp: libpthread.so not found
+ ...
+ due to using a glibc (v2.35) that has libpthread integrated into libc.
+
+ Fix this by changing the FAIL into UNSUPPORTED.
+
+ Tested on x86_64-linux.
+
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=17016
+
+2022-12-30 Tom de Vries <tdevries@suse.de>
+
+ [gdb/testsuite] Fix gdb.reverse/step-indirect-call-thunk.exp with -fcf-protection
+ On Ubuntu 22.04.1 x86_64, I run into:
+ ...
+ gdb.reverse/step-indirect-call-thunk.c: In function 'inc':^M
+ gdb.reverse/step-indirect-call-thunk.c:22:1: error: '-mindirect-branch' and \
+ '-fcf-protection' are not compatible^M
+ 22 | { /* inc.1 */^M
+ | ^^M
+ ...
+
+ Fix this by forcing -fcf-protection=none, if supported.
+
+ Tested on x86_64-linux.
+
+2022-12-30 Tom de Vries <tdevries@suse.de>
+
+ [gdb/testsuite] Fix gdb.cp/step-and-next-inline.exp with -fcf-protection
+ On Ubuntu 22.04.1 x86_64, I run into:
+ ...
+ (gdb) PASS: gdb.cp/step-and-next-inline.exp: no_header: not in inline 1
+ next^M
+ 51 if (t != NULL^M
+ (gdb) FAIL: gdb.cp/step-and-next-inline.exp: no_header: next step 1
+ ...
+
+ This is due to -fcf-protection, which adds the endbr64 at the start of get_alias_set:
+ ...
+ 0000000000001180 <_Z13get_alias_setP4tree>:
+ 1180: f3 0f 1e fa endbr64
+ 1184: 48 85 ff test %rdi,%rdi
+ ...
+ so the extra insn gets an is-stmt line number entry:
+ ...
+ INDEX LINE ADDRESS IS-STMT PROLOGUE-END
+ ...
+ 11 50 0x0000000000001180 Y
+ 12 50 0x0000000000001180
+ 13 51 0x0000000000001184 Y
+ 14 54 0x0000000000001184
+ ...
+ and when stepping into get_alias_set we step to line 50:
+ ...
+ (gdb) PASS: gdb.cp/step-and-next-inline.exp: no_header: in main
+ step^M
+ get_alias_set (t=t@entry=0x555555558018 <xx>) at step-and-next-inline.cc:50^M
+ 50 {^M
+ ...
+
+ In contrast, with -fcf-protection=none, we get:
+ ...
+ 0000000000001170 <_Z13get_alias_setP4tree>:
+ 1170: 48 85 ff test %rdi,%rdi
+ ...
+ and:
+ ...
+ INDEX LINE ADDRESS IS-STMT PROLOGUE-END
+ ...
+ 11 50 0x0000000000001170 Y
+ 12 51 0x0000000000001170 Y
+ 13 54 0x0000000000001170
+ ...
+ so when stepping into get_alias_set we step to line 51:
+ ...
+ (gdb) PASS: gdb.cp/step-and-next-inline.exp: no_header: in main
+ step^M
+ get_alias_set (t=t@entry=0x555555558018 <xx>) at step-and-next-inline.cc:51^M
+ 51 if (t != NULL^M
+ ...
+
+ Fix this by rewriting the gdb_test issuing the step command to check which
+ line the step lands on, and issuing an extra next if needed.
+
+ Tested on x86_64-linux, both with and without -fcf-protection=none.
+
+ PR testsuite/29920
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29920
+
+2022-12-30 Tom de Vries <tdevries@suse.de>
+
+ [gdb/symtab] Make comp_unit_head.length private
+ Make comp_unit_head.length private, to enforce using accessor functions.
+
+ Replace accessor function get_length with get_length_with_initial and
+ get_length_without_initial, to make it explicit which variant we're using.
+
+ Tested on x86_64-linux.
+
+ PR symtab/29343
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29343
+
+2022-12-30 Alan Modra <amodra@gmail.com>
+
+ PR29948, heap-buffer-overflow in display_debug_lines_decoded
+ This fixes a couple of places in display_debug_lines_decoded that were
+ off by one in checking DWARF5 .debug_line directory indices. It also
+ displays the DWARF5 entry 0 for the program current directory rather
+ than "." as is done for pre-DWARF5. I decided against displaying
+ DW_AT_comp_dir for pre-DWARF5 since I figure it is better for readelf
+ to minimally interpret debug info.
+
+ binutils/
+ PR 29948
+ * dwarf.c (display_debug_lines_decoded): Display the given
+ directory entry 0 for DWARF5. Properly check directory index
+ against number of entries in the table. Revert to using
+ unsigned int for n_directories and associated variables.
+ Correct warning messages.
+ gas/
+ * testsuite/gas/elf/dwarf-5-loc0.d: Update.
+
+2022-12-30 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-29 Tsukasa OI <research_trasio@irq.a4lg.com>
+
+ RISC-V: Simplify riscv_csr_address logic on state enable extensions
+ This commit makes CSR class handling for 'Smstateen' and 'Ssstateen'
+ extensions simpler using fall-throughs (as used in CSR_CLASS_I{,_32}).
+
+ gas/ChangeLog:
+
+ * config/tc-riscv.c (riscv_csr_address): Simplify the logic for
+ 'Smstateen' and 'Ssstateen' extensions.
+
+2022-12-29 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-28 Tom Tromey <tom@tromey.com>
+
+ Use $decimal in timestamp.exp
+ This patch fixes a review comment by Tom de Vries. He pointed out
+ that the new timestamp.exp should use the $decimal convenience regexp.
+
+2022-12-28 Tom Tromey <tom@tromey.com>
+
+ Fix "set debug timestamp"
+ PR cli/29945 points out that "set debug timestamp 1" stopped working
+ -- this is a regression due to commit b8043d27 ("Remove a ui-related
+ memory leak").
+
+ This patch fixes the bug and adds a regression test.
+
+ I think this should probably be backported to the gdb 13 branch.
+
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29945
+
+2022-12-28 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-27 H.J. Lu <hjl.tools@gmail.com>
+
+ x86-64: Allocate input section memory if needed
+ When --no-keep-memory is used, the input section memory may not be cached.
+ Allocate input section memory for -z pack-relative-relocs if needed.
+
+ bfd/
+
+ PR ld/29939
+ * elfxx-x86.c (elf_x86_size_or_finish_relative_reloc): Allocate
+ input section memory if needed.
+
+ ld/
+
+ PR ld/29939
+ * testsuite/ld-elf/dt-relr-2i.d: New test.
+
+2022-12-27 Christoph Müllner <christoph.muellner@vrull.eu>
+
+ RISC-V: Fix T-Head Fmv vendor extension encoding
+ A recent change in the XTheadFmv spec fixed an encoding bug in the
+ document. This patch changes the code to follow this bugfix.
+
+ Spec patch can be found here:
+ https://github.com/T-head-Semi/thead-extension-spec/pull/11
+
+2022-12-27 Tom Tromey <tromey@adacore.com>
+
+ Handle SIGSEGV in gdb selftests
+ The gdb.gdb self-tests were timing out for me, which turned out to be
+ PR testsuite/29325. Looking into it, the problem is that the version
+ of the Boehm GC that is used by Guile on my machine causes a SEGV
+ during stack probing. This unexpected stop confuses the tests and
+ causes repeated timeouts.
+
+ This patch adapts the two failing tests. This makes them work for me,
+ and reduces the running time of gdb.gdb from 20 minutes to about 11
+ seconds.
+
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29325
+
+2022-12-27 Mike Frysinger <vapier@gentoo.org>
+
+ sim: build: clean up unused codegen logic
+ Now that all igen ports are in the top-level makefile, we don't need
+ this logic in any subdirs anymore, so clean it up.
+
+ sim: mips: hoist "multi" igen rules up to common builds
+ Since these are the last mips igen rules, we can clean up a number of
+ bits in the local Makefile.in.
+
+ sim: mips: hoist "m16" igen rules up to common builds
+
+ sim: mips: hoist "single" igen rules up to common builds
+
+ sim: mips: rename "igen" generation mode to "single"
+ The naming in here has grown organically and is confusing to follow.
+ Originally there was only one set of rules for generating code from
+ the igen sources, so calling it "tmp-igen" and such made sense. But
+ when other multigen modes were added ("m16" & "multi") which also
+ used igen, it's not clear what's common igen and what's specific to
+ this generation mode. So rename the set of rules from "igen" to
+ "single" so it's easier to follow.
+
+ sim: mips: hoist itable igen rules up to common builds
+ Since this rule is pretty simple, hoist it up to the common build.
+
+2022-12-27 Mike Frysinger <vapier@gentoo.org>
+
+ sim: mips: unify itable generation (a bit)
+ The m16 & multi targets generate itable once even when all the other
+ modules are generated multiple times. The default igen target will
+ generate itable with everything else out of convenience. This means
+ flags are passed which don't affect the generated itable there.
+
+ We can unify the itable generation by making sure the right -F/-M
+ filter variables are passed down. Since there's already a dedicated
+ rule & variable in the multi build mode, generalize that and switch
+ the m16 & igen builds over too.
+
+ I spent a lot of time staring at this code, building for diff mips
+ targets, and exploring all the shell code paths. I think this is
+ safe, but only time (and users) will really tell.
+
+2022-12-27 Mike Frysinger <vapier@gentoo.org>
+
+ sim: mips: rename multi_flags to igen_itable_flags
+ This variable is only used to generate the itable files. In preparation
+ for merging the itable logic among all ports, rename "multi_flags" to a
+ more appropriate "igen_itable_flags" variable. There should be no real
+ chagnes here otherwise.
+
+ sim: mips: drop unused micromips igen logic
+ This code appears to be unused since it was first merged. When
+ micromips was enabled, it was via the "MULTI" config, not the
+ "MICROMIPS" config, and the multi configs have sep vars. Since
+ nothing sets SIM_MIPS_GEN=MICROMIPS in the config, all of this
+ should be unreachable, so punt it to simplify. Further, the
+ SIM_MIPS_MICROMIPS16_FLAGS & SIM_MIPS_MICROMIPS_FLAGS settings
+ rely on sim_mips_micromips{,16}_{filter,machine} variables that
+ are never set in the configure script.
+
+2022-12-27 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-26 Tom Tromey <tom@tromey.com>
+
+ Add initializers to comp_unit_head
+ PR symtab/29343 points out that it would be beneficial if
+ comp_unit_head had a constructor and used initializers. This patch
+ implements this. I'm unsure if this is sufficient to close the bug,
+ but at least it's a step.
+
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29343
+
+2022-12-26 Alan Modra <amodra@gmail.com>
+
+ bfd/dwarf2.c: allow use of DWARF5 directory entry 0
+ I think the test for table->files[file].dir being non-zero is wrong
+ for DWARF5 where index zero is allowed and is the current directory of
+ the compilation. Most times this will be covered by the use of
+ table->comp_dir (from DW_AT_comp_dir) in concat_filename but the point
+ of putting the current dir in .debug_line was so the section could
+ stand alone without .debug_info.
+
+ Also, there is no need to check for table->dirs non-NULL, the
+ table->num_dirs test is sufficient.
+
+ * dwarf2.c (concat_filename): Correct and simplify tests of
+ directory index.
+
+2022-12-26 Flavio Cruz <flaviocruz@gmail.com>
+
+ Add support for x86_64-*-gnu-* targets to build x86_64 gnumach/hurd
+
+2022-12-26 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-25 Mike Frysinger <vapier@gentoo.org>
+
+ sim: build: drop support for subdir distclean
+ All ports that need to clean things up at distclean time have moved
+ to the top-level build, so we can drop support for this hook.
+
+ sim: mips: move distclean settings to common build
+ This was missed when mips/configure was merged into the top-level.
+
+2022-12-25 Indu Bhagat <indu.bhagat@oracle.com>
+
+ libsframe: write out SFrame FRE start address correctly
+ The following test was failing on ppc64 and s390x:
+ "FAIL: encode-1: Encode buffer match"
+
+ The offending stub was how we memcpy the FRE start address to the buffer
+ (on-disk format). When the host is big-endian, the address of the
+ source buffer for the memcpy needs to point to the uint8_t/uint16_t sized
+ value of the FRE start addr, not uint32_t sized value; we intend to copy
+ out only the fre_start_addr_sz number of bytes.
+
+ ChangeLog:
+
+ * libsframe/sframe.c (sframe_encoder_write_fre_start_addr): New
+ function.
+ (sframe_encoder_write_fre): Use it instead of memcpy.
+
+2022-12-25 Mike Frysinger <vapier@gentoo.org>
+
+ sim: smp: plumb igen flag down to all users
+ While mips has respected sim_igen_smp at configure time (which was
+ always empty since it defaulted smp to off), no other igen port did.
+ Move this to a makefile variable and plumb it through the common
+ IGEN_RUN variable instead so everyone gets it by default. We also
+ clean up some redundant -N0 setting with multirun mips.
+
+ sim: smp: make option available again
+ At some point we want this to work, but it's not easy to test if
+ the configure option isn't available. Restore it, but keep the
+ default off.
+
+ sim: cpu: change default init to handle all cpus
+ All the runtimes were only initializing a single CPU. When SMP is
+ enabled, things quickly crash as none of the other CPU structs are
+ setup. Change the default from 0 to the compile time value.
+
+ sim: msp430: add basic SMP cpu init
+ There's no need to assert there's only 1 CPU when setting them all
+ up here is trivial.
+
+ sim: m32r: fix iterator typo when setting up cpus
+ This code loops over available cpus with "c", but then looks up the
+ cpu with "i". Fix the typo so the code works correctly with smp.
+
+ sim: v850: fix SMP compile
+ The igen tool sets up the SD & CPU defines for code fragments to use,
+ but v850 was expecting "sd". Change all the igen related code to use
+ SD so it actually compiles, and fix a few places to use "CPU" instead
+ of hardcoding cpu0.
+
+ sim: or1k: fix iterator typo when setting up cpus
+ This code loops over available cpus with "c", but then looks up the
+ cpu with "i". Fix the typo so the code works correctly with smp.
+
+ sim: mn10300: fix SMP compile
+ The igen tool sets up the SD define for code fragments to use, but
+ mn10300 was expecting "sd". Change all the igen related code to use
+ SD so it actually compiles.
+
+ sim: cpu: fix SMP msg prefix helper
+ This code fails to compile when SMP is enabled due to some obvious
+ errors. Fix those and change the logic to avoid CPP to prevent any
+ future rot from creeping back in.
+
+ sim: mips: clean up a bit after mips/configure removal
+ Now that there is no subdir configure script, we can clean up some
+ logic that was spread between the files.
+
+ sim: mips: move igen settings to top-level configure
+ This is the last bit of logic that exists in the mips configure
+ script, so move it to the top-level configure to kill it off.
+ We still have to move the Makefile.in igen logic to local.mk,
+ but this is a required first step for that.
+
+ sim: mips: namespace igen configure vars
+ To prepare moving this logic to the top-level configure, the vars
+ need to be namespaced. Do that here to make it easier to review.
+ Basically sim_xxx -> SIM_MIPS_XXX when a var is exported from the
+ configure script to the Makefile, and sim_xxx -> sim_mips_xxx when
+ the var is internal in the configure script.
+
+ sim: mips: add igen recursive dep
+ Make sure the igen tool exists before trying to compile the mips
+ subdir. This happens to work when mips has a subconfigure, but
+ hits a race condition when that is removed.
+
+ sim: mips: drop unused ENGINE_ISSUE_POSTFIX_HOOK
+ Nothing defines this, and it isn't called in all the engine runtimes,
+ so drop it entirely to avoid confusion.
+
+ sim: igen: drop move-if-changed usage
+ Now that igen itself has this logic, drop these custom build rules
+ to greatly simplify.
+
+ sim: igen: support in-place updates ourself
+ Every file that igen outputs is then processed with the move-if-changed
+ shell script. This creates a lot of boilerplate in the build and not an
+ insignificant amount of build-time overhead. Move the simple "is the file
+ changed" logic into igen itself.
+
+ sim: igen: constify itable data structures
+ These are const data arrays of strings and numbers. We don't want
+ or need them to be writable, so mark them all const.
+
+2022-12-25 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-24 Andrew Burgess <aburgess@redhat.com>
+
+ gdb/testsuite: fix buffer overflow in gdb.base/signed-builtin-types.exp
+ In commit:
+
+ commit 9f50fe0835850645bd8ea9bb1efe1fe6c48dfb12
+ Date: Wed Dec 7 15:55:25 2022 +0000
+
+ gdb/testsuite: new test for recent dwarf reader issue
+
+ A new test (gdb.base/signed-builtin-types.exp) was added that made use
+ of 'info sources' to figure out if the debug information for a
+ particular object file had been fully expanded or not. Unfortunately
+ some lines of the 'info sources' output can be very long, this was
+ observed on some systems where the debug information for the
+ dynamic-linker was installed, in this case, the list of source files
+ associated with the dynamic linker was so long it would cause expect's
+ internal buffer to overflow.
+
+ This commit switches from using 'info sources' to 'maint print
+ objfile', the output from the latter command is more compact, but
+ also, can be restricted to a single named object file.
+
+ With this change in place I am no longer seeing buffer overflow errors
+ from expect when running gdb.base/signed-builtin-types.exp.
+
+2022-12-24 Mike Frysinger <vapier@gentoo.org>
+
+ sim: or1k: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to the existing or1k-sim.h.
+ Unfortunately, we can't yet drop the or1k-sim.h include from sim-main.h
+ as many of the generated CGEN files refer only to sim-main.h. We'll
+ have to improve the CGEN interface before we can make more progress,
+ but this is at least a minor improvement.
+
+2022-12-24 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-23 Tom Tromey <tom@tromey.com>
+
+ Use bool for dwarf2_has_info
+ This changes dwarf2_has_info to return bool.
+
+2022-12-23 Indu Bhagat <indu.bhagat@oracle.com>
+
+ libsframe: testsuite: fix memory leaks in testcases
+ ChangeLog:
+
+ * libsframe/testsuite/libsframe.decode/be-flipping.c: Free
+ SFrame buffer.
+ * libsframe/testsuite/libsframe.decode/frecnt-1.c: Likewise.
+ * libsframe/testsuite/libsframe.decode/frecnt-2.c: Likewise.
+
+2022-12-23 Indu Bhagat <indu.bhagat@oracle.com>
+
+ libsframe: fix a memory leak in sframe_decode
+ sframe_decode () needs to malloc a temporary buffer of the same size as
+ the input buffer (containing the SFrame section bytes) when endian
+ flipping is needed. The decoder keeps the endian flipped contents in
+ this buffer for its usage. This code is necessary when the target
+ endianneess is not the same as host endianness.
+
+ The malloc'd buffer needs to be kept track of, so that it can freed up in
+ sframe_decoder_free () later.
+
+ ChangeLog:
+
+ * libsframe/sframe-impl.h (struct sframe_decoder_ctx): Add new
+ member to keep track of the internally malloc'd buffer.
+ * libsframe/sframe.c (sframe_decoder_free): Free it up.
+ (sframe_decode): Update the reference to the buffer.
+
+2022-12-23 Simon Marchi <simon.marchi@polymtl.ca>
+
+ gdb/testsuite: remove MPFR detection in gdb.base/float128.exp
+ I see this fail since commit 991180627851 ("Use toplevel configure for
+ GMP and MPFR for gdb"):
+
+ FAIL: gdb.base/float128.exp: show configuration
+
+ The test fails to find --with-mpfr or --without-mpfr in the "show
+ configuration" output. Since MPFR has become mandatory, we can just
+ remove that check and simplify the test to assume MPFR support is there.
+
+ Change-Id: I4f3458470db0029705b390dfefed3a66dfc0633a
+ Approved-By: Tom de Vries <tdevries@suse.de>
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: m32r: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to the existing m32r-sim.h.
+ Unfortunately, we can't yet drop the m32r-sim.h include from sim-main.h
+ as many of the generated CGEN files refer only to sim-main.h. We'll
+ have to improve the CGEN interface before we can make more progress,
+ but this is at least a minor improvement.
+
+ sim: bfin: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so drop the bfin.h include and move the remaining
+ bfin-specific settings into it.
+
+ sim: m68hc11: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ sim: sh: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ sim: mcore: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ sim: h8300: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ sim: pru: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so drop the pru.h include and move the remaining
+ pru-specific settings into it.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: mn10300: standardize the arch-specific settings a little
+ Rename mn10300_sim.h to mn10300-sim.h to match other ports, and move most
+ of the arch-specific content out of sim-main.h to it. This isn't a big
+ win though as we still have to include the header in sim-main.h due to the
+ igen interface: it hardcodes including sim-main.h in its files. So until
+ we can fix that, we have to keep bleeding these settings into the common
+ codes.
+
+ Also take the opportunity to purge a lot of unused headers from these.
+ The local modules should already include the right headers, so there's
+ no need to force everyone to pull them in. A lot of this is a hold over
+ from the pre-igen days of this port.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: microblaze: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ sim: example-synacor: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ sim: moxie: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: riscv: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ We can also move the machs.h include out since the model logic was all
+ generalized from compile-time to runtime last year.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: v850: standardize the arch-specific settings a little
+ Rename v850_sim.h to v850-sim.h to match other ports, and move most
+ of the arch-specific content out of sim-main.h to it. This isn't a
+ big win though as we still have to include the header in sim-main.h
+ due to the igen interface: it hardcodes including sim-main.h in its
+ files. So until we can fix that, we have to keep bleeding these
+ settings into the common codes.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: msp430: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so drop the msp430-sim.h include and move it to
+ the few files that actually need it.
+
+ While we're here, drop redundant includes from sim-main.h:
+ * sim-config.h & sim-types.h included by sim-basics.h already
+ * sim-engine.h included by sim-base.h already
+ And move sim-options.h to the one file that needs it.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: ft32: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so drop the ft32-sim.h include and move it to
+ the few files that actually need it.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: d10v: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so drop the d10v_sim.h include and move it to
+ the few files that actually need it.
+
+ Also rename the file to standardize it a bit better with other ports.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: cr16: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so drop the cr16_sim.h include and move it to
+ the few files that actually need it.
+
+ Also rename the file to standardize it a bit better with other ports.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: arm: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ The BIT override would be better in the place where it's redefined, so
+ move it to armdefs.h instead.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: aarch64: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+ While we're here, drop redundant includes from sim-main.h:
+ * sim-types.h is included by sim-base.h already
+ * sim-base.h is included twice
+ * sim-io.h is included by sim-base.h already
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: avr: move arch-specific settings to internal header
+ There's no need for these settings to be in sim-main.h which is shared
+ with common/ sim code, so move it all out to a new header which only
+ this port will include.
+
+2022-12-23 Nick Clifton <nickc@redhat.com>
+
+ Fix illegal memory access parsing corrupt DWARF information.
+ PR 29936
+ * dwarf2.c (concat_filename): Fix check for a directory index off
+ the end of the directory table.
+
+2022-12-23 Eli Zaretskii <eliz@gnu.org>
+
+ Fix MinGW build using mingw.org's MinGW
+ This allows to build GDB even though the default value of
+ _WIN32_WINNT is lower than the one needed to expose some
+ new APIs used here, and leave the test for their actual
+ support to run time.
+ * gdb/nat/windows-nat.c (EXTENDED_STARTUPINFO_PRESENT): Define if
+ not defined.
+ (create_process_wrapper): Use 'gdb_lpproc_thread_attribute_list'
+ instead of 'PPROC_THREAD_ATTRIBUTE_LIST' (which might not be defined
+ at compile time). This fixes compilation error using mingw.org's
+ MinGW.
+
+2022-12-23 Mark Harmstone <mark@harmstone.com>
+
+ ld: Write linker symbols in PDB
+
+ ld: Copy other symbols into PDB file
+
+ ld: Write globals stream in PDB
+
+ ld: Parse LF_UDT_SRC_LINE records when creating PDB file
+
+ ld: Write types into IPI stream of PDB
+
+ ld: Write types into TPI stream of PDB
+
+ ld: Write DEBUG_S_LINES entries in PDB file
+
+ ld: Fix segfault in populate_publics_stream
+
+ ld: Write DEBUG_S_FILECHKSMS entries in PDBs
+
+ ld: Generate PDB string table
+
+2022-12-23 Alan Modra <amodra@gmail.com>
+
+ pdb build fixes
+ Enable compilation of ld/pdb.c just for x86, as is done for bfd/pdb.c.
+ This reduces the size of ld and is necessary with the following
+ patches that call a COFF-only bfd function from ld/pdb.c. Without it
+ we'd break every non-COFF target build.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: lm32/m32r: drop redundant opcode/cgen.h include
+ The xxx-desc.h header file already includes this, and it's how the
+ other cgen ports are getting it, so drop it from these two.
+
+ sim: ppc: drop unused types from sim-main.h
+ The common sim headers should define these for us already, so there's
+ no need for the ppc header to set them up.
+
+ sim: cgen: move symcat.h include to where it's used
+ Move this out of the global sim-main.h and to the few files that
+ actually use functions from it. Only the cgen ports were pulling
+ this, so this makes cgen & non-cgen behave more the same.
+
+ sim: cgen: move cgen-types.h include to cgen-defs.h
+ The cgen-types.h header sets up types that are needed by cgen-defs.h,
+ so move the include out of sim-main.h and to that header. It might
+ be needed in other specific modules, but for now let's kick it out of
+ sim-main.h to make some progress. Things still build with just this.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ Revert "sim: mn10300: drop unused sim-main.c"
+ This reverts commit 681a422b855e4b20086554b170dae051361f00c7.
+
+ I missed that this was included via common/sim-inline.c. I thought
+ I had grepped the top of the tree, but I must have only done mn10300.
+
+ Add a comment to make it clear where/how this file is used.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: mn10300: drop unused sim-main.c
+ Nothing compiles or references this, so punt it.
+
+ sim: endian: move bfd.h from header to source
+ The bfd APIs are used only by sim-n-endian.h which is only included by
+ sim-endian.c, so move the bfd.h include there and out of sim-endian.h
+ which is included by many other modules.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: move bfd.h include out of sim-main.h
+ Not all arches include this in sim-main.h, and the ones that do don't
+ actually use bfd defines in the sim-main.h header. Prune it to make
+ sim-main.h simpler so we can kill it off entirely in the future.
+
+ We add the include to the files that utilize e.g. bfd_vma though.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: mcore: replace custom "word" type with int32_t
+ This is a 32-bit architecture with 32-bit registers, so replace the
+ custom "word" long int typedef with an explicit int32_t. This is
+ a correctness fix since long will be 64-bits on most 64-bit hosts.
+
+ sim: moxie: replace custom "word" type with int32_t
+ This is a 32-bit architecture with 32-bit registers, so replace the
+ custom "word" int typedef with an explicit int32_t. Practically
+ speaking, this produces the same code, but it should hopefully make
+ it easier to merge common code in the future.
+
+ sim: cr16/d10v/mcore/moxie: clean up unused word & uword types
+ Nothing actually uses these, so punt them. Some of the ports are
+ using local "word" types, but we'll clean those up in a follow up.
+
+ sim: mips: trim redundant igen settings
+ These variables are setting the same value as the defaults. Trim
+ this redundant logic to make it easier to see the real differences
+ so we can try to keep unifying cases.
+
+ sim: mips: merge mips64* with existing multi-run build
+ Change the default (unhandled) mips64* targets to use the existing
+ mips64 multi-run build. It already handles the formats, we just
+ have to list the mips8000 bfd for it.
+
+ sim: mips: merge mips64vr5000 with existing multi-run build
+ The existing mips64vr-* multi-run build already handles mips5000
+ targets, so reuse that for mips64vr5* targets too. This moves
+ more logic from build-time to runtime so we can have a single
+ binary that supports many targets.
+
+2022-12-23 Nelson Chu <nelson@rivosinc.com>
+
+ RISC-V: Relax the order checking for the architecture string
+ * riscv-toolchain-conventions,
+ PR, https://github.com/riscv-non-isa/riscv-toolchain-conventions/pull/14
+ Issue, https://github.com/riscv-non-isa/riscv-toolchain-conventions/issues/11
+
+ * Refer to the commit afc41ffb,
+ RISC-V: Reorder the prefixed extensions which are out of order.
+
+ In the past we only allow to reorder the prefixed extensions. But according
+ to the PR 14 in the riscv-toolchain-convention, we can also relax the order
+ checking to allow the whole extensions be written out of orders, including
+ the single standard extensions and the prefixed multi-letter extensions.
+ Just that we still need to follow the following rules as usual,
+
+ 1. prefixed extensions need to be seperated with `_'.
+ 2. prefixed extensions need complete <major>.<minor> version if set.
+
+ Please see the details in the march-ok-reorder gas testcase.
+
+ Passed the riscv-gnu-toolchain regressions.
+
+ bfd/
+ * elfxx-riscv.c (enum riscv_prefix_ext_class): Changed RV_ISA_CLASS_UNKNOWN
+ to RV_ISA_CLASS_SINGLE, since everything that does not belong to the
+ multi-keyword will possible be a single extension for the current parser.
+ (parse_config): Likewise.
+ (riscv_get_prefix_class): Likewise.
+ (riscv_compare_subsets): Likewise.
+ (riscv_parse_std_ext): Removed, and merged with riscv_parse_prefixed_ext
+ into riscv_parse_extensions.
+ (riscv_parse_prefixed_ext): Likewise.
+ (riscv_parse_subset): Only need to call riscv_parse_extensions to parse
+ both single standard and prefixed extensions.
+ gas/
+ * testsuite/gas/riscv/march-fail-order-std.d: Removed since the relaxed
+ order checking.
+ * testsuite/gas/riscv/march-fail-order-std.l: Likewise.
+ * testsuite/gas/riscv/march-fail-order-x-std.d: Likewise.
+ * testsuite/gas/riscv/march-fail-order-z-std.d: Likewise.
+ * testsuite/gas/riscv/march-fail-order-zx-std.l: Likewise.
+ * testsuite/gas/riscv/march-fail-unknown-std.l: Updated.
+ * testsuite/gas/riscv/march-ok-reorder.d: New testcase.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: drop unused SIM_ADDR type [PR sim/7504]
+ Now that sim APIs either use 64-bit addresses all the time, or more
+ appropriate target-specific types, drop this now-unused 32-bit-only
+ address type.
+
+ Bug: https://sourceware.org/PR7504
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: mips: switch from SIM_ADDR to address_word
+ The latter type matches the address size configured for this sim.
+
+ Also take the opportunity to simplify printf logic by leveraging
+ PRI* macros.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: v850: switch from SIM_ADDR to address_word
+ The latter type matches the address size configured for this sim.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: switch sim_{read,write} APIs to 64-bit all the time [PR sim/7504]
+ We've been using SIM_ADDR which has always been 32-bit. This means
+ the upper 32-bit address range in 64-bit sims is inaccessible. Use
+ 64-bit addresses all the time since we want the APIs to be stable
+ regardless of the active arch backend (which can be 32 or 64-bit).
+
+ The length is also 64-bit because it's completely feasible to have
+ a program that is larger than 4 GiB in size/image/runtime. Forcing
+ the caller to manually chunk those accesses up into 4 GiB at a time
+ doesn't seem useful to anyone.
+
+ Bug: https://sourceware.org/PR7504
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: use bfd_vma when reading start addr from bfd info
+ Since SIM_ADDR is always 32-bit, it might truncate the address with
+ 64-bit ELFs. Since we load that addr from the bfd, use the bfd_vma
+ type which matches the bfd_get_start_address API.
+
+ sim: m32r: include sim-hw.h for sim_hw_parse
+
+2022-12-23 Alan Modra <amodra@gmail.com>
+
+ COFF build-id writes uninitialised data to file
+ 1) The first write in write_build_id wrote rubbish past the struct
+ external_IMAGE_DEBUG_DIRECTORY, which was later overwritten with
+ correct data. No user visible problem there, except that tools like
+ valgrind complain.
+ 2) The size for the pdb name was incorrectly calculated.
+
+ * emultempl/pe.em (write_build_id): Write the debug directory,
+ not the entire section contents.
+ (setup_build_id): Add size for the base name of pdb_name, not
+ the full path.
+ * emultempl/pep.em: Likewise.
+ * testsuite/ld-pe/pdb2-section-contrib.d: Update.
+
+2022-12-23 Mike Frysinger <vapier@gentoo.org>
+
+ sim: mips: merge mips64vr4300 with existing multi-run build
+ The existing mips64vr-* multi-run build already handles mips4300
+ targets, so reuse that for mips64vr43* targets too. This moves
+ more logic from build-time to runtime so we can have a single
+ binary that supports many targets.
+
+2022-12-23 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-22 Indu Bhagat <indu.bhagat@oracle.com>
+
+ sframe: doc: update documentation for pauth key in SFrame FDE
+ ChangeLog:
+
+ * libsframe/doc/sframe-spec.texi
+
+2022-12-22 Indu Bhagat <indu.bhagat@oracle.com>
+
+ gas: sframe: testsuite: add testcase for .cfi_b_key_frame
+ This is actually a composite test that checks SFrame unwind information
+ generation for both the .cfi_negate_ra_state and .cfi_b_key_frame
+ directives on aarch64.
+
+ ChangeLog:
+
+ * testsuite/gas/cfi-sframe/cfi-sframe-aarch64-pac-ab-key-1.d:
+ New test.
+ * testsuite/gas/cfi-sframe/cfi-sframe-aarch64-pac-ab-key-1.s:
+ Likewise.
+ * testsuite/gas/cfi-sframe/cfi-sframe.exp: Run new test.
+
+2022-12-22 Indu Bhagat <indu.bhagat@oracle.com>
+
+ objdump/readelf: sframe: emit marker for SFrame FDE with B key
+ ChangeLog:
+
+ * libsframe/sframe-dump.c (is_sframe_abi_arch_aarch64): New
+ definition.
+ (dump_sframe_func_with_fres): Emit a string if B key is used.
+
+2022-12-22 Indu Bhagat <indu.bhagat@oracle.com>
+
+ gas: sframe: add support for .cfi_b_key_frame
+ Gather the information from the DWARF FDE on whether frame's return
+ addresses are signed using the B key or A key. Reflect the information in
+ the SFrame counterpart data structure, the SFrame FDE.
+
+ ChangeLog:
+
+ * gas/gen-sframe.c (get_dw_fde_pauth_b_key_p): New definition.
+ (sframe_v1_set_func_info): Add new argument for pauth_key.
+ (sframe_set_func_info): Likewise.
+ (output_sframe_funcdesc): Likewise.
+ * gas/gen-sframe.h (struct sframe_version_ops): Add new argument
+ to the function pointer declaration.
+ * gas/sframe-opt.c (sframe_convert_frag): Handle pauth_key.
+
+2022-12-22 Indu Bhagat <indu.bhagat@oracle.com>
+
+ sframe.h: add support for .cfi_b_key_frame
+ ARM 8.3 provides five separate keys that can be used to authenticate
+ pointers. There are two key for executable (instruction) pointers. The
+ enum pointer_auth_key in gas/config/tc-aarch64.h currently holds two keys:
+ enum pointer_auth_key {
+ AARCH64_PAUTH_KEY_A,
+ AARCH64_PAUTH_KEY_B
+ };
+
+ Analogous to the above, in SFrame format V1, a bit is reserved in the SFrame
+ FDE to indicate which key is used for signing the frame's return addresses:
+ - SFRAME_AARCH64_PAUTH_KEY_A has a value of 0
+ - SFRAME_AARCH64_PAUTH_KEY_B has a value of 1
+
+ Note that the information in this bit will always be used along with the
+ mangled_ra_p bit, the latter indicates whether the return addresses are
+ mangled/contain PAC auth bits.
+
+ include/ChangeLog:
+
+ * sframe.h (SFRAME_AARCH64_PAUTH_KEY_A): New definition.
+ (SFRAME_AARCH64_PAUTH_KEY_B): Likewise.
+ (SFRAME_V1_FUNC_INFO): Adjust to accommodate pauth_key.
+ (SFRAME_V1_FUNC_PAUTH_KEY): New macro.
+ (SFRAME_V1_FUNC_INFO_UPDATE_PAUTH_KEY): Likewise.
+
+2022-12-22 Jan Beulich <jbeulich@suse.com>
+
+ gas: re-arrange listing output for .irp and alike
+ It is kind of odd to have the expansions of such constructs ahead of
+ their definition in listings with macro expansion enabled. Adjust this
+ by pulling ahead the output of the definition lines, taking care to
+ avoid producing a listing line for (non-existing) line 0 when the source
+ is stdin.
+
+ Note that with the code movement the conditional operator isn't
+ necessary anymore - list->line now match up.
+
+2022-12-22 Jan Beulich <jbeulich@suse.com>
+
+ x86: correct/improve TSX controls
+ TSXLDTRK takes RTM as a prereq. Additionally introduce an umbrella "tsx"
+ extension option covering both RTM and HLE, paralleling the "abm" one we
+ already have.
+
+2022-12-22 Jan Beulich <jbeulich@suse.com>
+
+ x86: add dependencies on SVME
+ SEV-ES is an extension to SVME. SNP in turn is an extension to SEV-ES,
+ and yet in turn RMPQUERY is a SNP extension.
+
+ Note that cpu_arch[] has no SNP entry, so CPU_ANY_SNP_FLAGS remains
+ unused (just like CPU_SNP_FLAGS already is).
+
+2022-12-22 Jan Beulich <jbeulich@suse.com>
+
+ x86: add dependencies on VMX
+ Both EPT and VMFUNC are extensions to VMX.
+
+2022-12-22 Jan Beulich <jbeulich@suse.com>
+
+ x86: correct XSAVE* dependencies
+ Like various other features AMX-TILE takes XSAVE as a prereq.
+
+ XSAVES, unconditionally using compacted format, in turn effectively
+ takes XSAVEC as a prereq (an SDM clarification to this effect is in the
+ works).
+
+2022-12-22 Jan Beulich <jbeulich@suse.com>
+
+ x86: correct dependencies of a few AVX512 sub-features
+ Like AVX512-FP16, several other extensions require wider than 16-bit
+ mask registers. As a result they take AVX512BW as a prereq, not (just)
+ AVX512F. Which in turn points out wrong expectations in the noavx512-1
+ testcase.
+
+ x86: rework noavx512-1 testcase
+ So far the set of ".noavx512*" has been accumulating, which isn't ideal.
+ In particular this hides issues with dependencies between features.
+ Switch back to the default ISA before disabling a particular subset.
+ Furthermore limit redundancy by wrapping the repeated block of insns in
+ an .irp.
+
+ x86: add dependencies on AVX2
+ Like AVX-VNNI both VAES and VPCLMUL take AVX2 as a prereq, for operating
+ on up to 256-bit packed integer vectors.
+
+ x86: correct SSE dependencies
+ SSE itself takes FXSR as a prereq. Like AES, PCLMUL, and SHA both GFNI
+ and KL take SSE2 as a prereq, for operating on packed integers. And
+ while correcting KL also record it as a prereq to WIDEKL.
+
+2022-12-22 Jan Beulich <jbeulich@suse.com>
+
+ x86: correct what gets disabled by certain ".arch .no*"
+ Features with prereqs as well as features with dependents cannot re-use
+ CPU_*_MASK for the 3rd argument of SUBARCH() - they need to use
+ CPU_ANY_*_MASK in order to avoid disabling too many (when there are
+ prereqs) and/or too few (when there are dependents) features.
+
+ Generally any CPU_ANY_*_MASK which exist should not remain unused.
+ Exceptions are
+ - FISTTP which has no corresponding entry in cpu_arch[],
+ - IAMCU which is a base architecture and hence uses ARCH(), not
+ SUBARCH() (only extensions can be disabled, but unlike for Cpu*86 it
+ would be a little more clumsy to suppress generating of the #define).
+
+2022-12-22 Jan Beulich <jbeulich@suse.com>
+
+ x86: re-work ISA extension dependency handling
+ Getting both forward and reverse ISA dependencies right / consistent has
+ been a permanent source of mistakes. Reduce what needs specifying
+ manually to just the direct forward dependencies. Transitive forward
+ dependencies as well as reverse ones are now derived and hence cannot go
+ out of sync anymore (at least in the vast majority of cases; there are a
+ few special cases to still take care of manually). In the course of this
+ several CPU_ANY_*_FLAGS disappear, requiring adjustment to the
+ assembler's cpu_arch[].
+
+ Note that to retain the correct reverse dependency of AVX512F wrt
+ AVX512-VP2INTERSECT, the latter has the previously missing AVX512F
+ prereq added.
+
+ Note further that to avoid adding the following undue prereqs:
+ * ATHLON, K8, and AMDFAM10 gain CMOV and FXSR,
+ * IAMCU gains 387,
+ auxiliary table entries (including a colon-separated modifier) are
+ introduced in addition to the ones representing from converting the old
+ table.
+
+ To maintain forward-only dependencies between AVX (XOP) and SSE* (SSE4a)
+ (i.e. "nosse" not disabling AVX), reverse dependency tracking is
+ artifically suppressed.
+
+ As a side effect disabling of SSE or SSE2 will now also disable AES,
+ PCLMUL, and SHA (respective elements were missing from
+ CPU_ANY_SSE2_FLAGS).
+
+2022-12-22 Mike Frysinger <vapier@gentoo.org>
+
+ sim: mips: match target on cpu settings
+ We don't need to enforce larger target settings when the only thing
+ the sim should care about is the CPU target. So reduce most of the
+ target matches to only check the CPU.
+
+ sim: mips: move fpu bitsize defines to top-level configure
+ This drops support for the --enable-sim-float configure option,
+ but it's not clear anyone ever actually used that. Eventually
+ we'll want this to be a runtime option anyways.
+
+ sim: mips: move bitsize defines to top-level configure
+ Since the msb value is always defined as the wordsize-1, stop
+ hardcoding that value directly, and use a CPP value instead.
+
+ sim: mips: move subtarget defines to top-level configure
+ We want to kill off mips/configure entirely. Move this small part
+ out now to get started.
+
+ sim: mips: always resolve active bfd mach dynamically
+ Don't assume that the default bfd that we configured for is the one
+ that is always active when running a program. We already have access
+ to the real runtime value, so use it directly. This simplifies the
+ code quite a bit, and will make it easier to support multiple mach's
+ in a single binary.
+
+ sim: hw-config.h: move generation to top-level
+ In order to compile arch objects from the top-level, we need to
+ generate the hw-config.h header, so move that logic up to the top
+ level first.
+
+ sim: build: hoist lists of hw devices up
+ We need these in the top-level to generate libsim.a, but also in the
+ subdirs to generate hw-config.h. Move it to the local.mk, and pass
+ it down when running recursive make. This avoids duplication, and
+ makes it available to both. We can simplify this once we move the
+ various steps up to the top-level too.
+
+ sim: build: hoist lists of common objects up
+ In order to create libsim.a in the common dir, we need the list of
+ objects for each target. To avoid duplicating the list with the
+ recursive make in each port, pass it down as a variable. This is
+ a temporary hack until the top-level creates libsim.a for ports.
+
+2022-12-22 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-21 Alan Modra <amodra@gmail.com>
+
+ PR29925, Memory leak in find_abstract_instance
+ The testcase in the PR had a variable with both DW_AT_decl_file and
+ DW_AT_specification, where the DW_AT_specification also specified
+ DW_AT_decl_file. This leads to a memory leak as the file name is
+ malloced and duplicates are not expected.
+
+ I've also changed find_abstract_instance to not use a temp for "name",
+ because that can result in a change in behaviour from the usual last
+ of duplicate attributes wins.
+
+ PR 29925
+ * dwarf2.c (find_abstract_instance): Delete "name" variable.
+ Free *filename_ptr before assigning new file name.
+ (scan_unit_for_symbols): Similarly free func->file and
+ var->file before assigning.
+
+2022-12-21 Andrew Pinski <apinski@marvell.com>
+
+ Fix compiling of top.c
+ When I moved my last patch forward, somehow I missed removing
+ the #endif for the HAVE_LIBMPFR case.
+
+ Committed as obvious after a quick build.
+
+ gdb/ChangeLog:
+ * top.c: Remove the extra #endif which was missed.
+
+2022-12-21 Andrew Pinski <apinski@marvell.com>
+
+ Use toplevel configure for GMP and MPFR for gdb
+ This patch uses the toplevel configure parts for GMP/MPFR for
+ gdb. The only thing is that gdb now requires MPFR for building.
+ Before it was a recommended but not required library.
+ Also this allows building of GMP and MPFR with the toplevel
+ directory just like how it is done for GCC.
+ We now error out in the toplevel configure of the version
+ of GMP and MPFR that is wrong.
+
+ OK after GDB 13 branches? Build gdb 3 ways:
+ with GMP and MPFR in the toplevel (static library used at that point for both)
+ With only MPFR in the toplevel (GMP distro library used and MPFR built from source)
+ With neither GMP and MPFR in the toplevel (distro libraries used)
+
+ Changes from v1:
+ * Updated gdb/README and gdb/doc/gdb.texinfo.
+ * Regenerated using unmodified autoconf-2.69
+
+ Thanks,
+ Andrew Pinski
+
+ ChangeLog:
+ * Makefile.def: Add configure-gdb dependencies
+ on all-gmp and all-mpfr.
+ * configure.ac: Split out MPC checking from MPFR.
+ Require GMP and MPFR if the gdb directory exist.
+ * Makefile.in: Regenerate.
+ * configure: Regenerate.
+
+ gdb/ChangeLog:
+
+ PR bug/28500
+ * configure.ac: Remove AC_LIB_HAVE_LINKFLAGS
+ for gmp and mpfr.
+ Use GMPLIBS and GMPINC which is provided by the
+ toplevel configure.
+ * Makefile.in (LIBGMP, LIBMPFR): Remove.
+ (GMPLIBS, GMPINC): Add definition.
+ (INTERNAL_CFLAGS_BASE): Add GMPINC.
+ (CLIBS): Exchange LIBMPFR and LIBGMP
+ for GMPLIBS.
+ * target-float.c: Make the code conditional on
+ HAVE_LIBMPFR unconditional.
+ * top.c: Remove code checking HAVE_LIBMPFR.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * README: Update GMP/MPFR section of the config
+ options.
+ * doc/gdb.texinfo: Likewise.
+
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=28500
+
+2022-12-21 Bruno Larsen <blarsen@redhat.com>
+
+ gdb/c++: validate 'using' directives based on the current line
+ When asking GDB to print a variable from an imported namespace, we only
+ want to see variables imported in lines that the inferior has already
+ gone through, as is being tested last in gdb.cp/nsusing.exp. However
+ with the proposed change to gdb.cp/nsusing.exp, we get the following
+ failures:
+
+ (gdb) PASS: gdb.cp/nsusing.exp: continue to breakpoint: marker10 stop
+ print x
+ $9 = 911
+ (gdb) FAIL: gdb.cp/nsusing.exp: print x, before using statement
+ next
+ 15 y += x;
+ (gdb) PASS: gdb.cp/nsusing.exp: using namespace M
+ print x
+ $10 = 911
+ (gdb) PASS: gdb.cp/nsusing.exp: print x, only using M
+
+ Showing that the feature wasn't functioning properly, it just so
+ happened that gcc ordered the namespaces in a convenient way.
+ This happens because GDB doesn't take into account the line where the
+ "using namespace" directive is written. So long as it shows up in the
+ current scope, we assume it is valid.
+
+ To fix this, add a new member to struct using_direct, that stores the
+ line where the directive was written, and a new function that informs if
+ the using directive is valid already.
+
+ Unfortunately, due to a GCC bug, the failure still shows up. Compilers
+ that set the declaration line of the using directive correctly (such as
+ Clang) do not show such a bug, so the test includes an XFAIL for gcc
+ code.
+
+ Finally, because the final test of gdb.cp/nsusing.exp has turned into
+ multiple that all would need XFAILs for older GCCs (<= 4.3), and that
+ GCC is very old, if it is detected, the test just exits early.
+
+ Approved-by: Tom Tromey <tom@tromey.com>
+
+2022-12-21 Nick Clifton <nickc@redhat.com>
+
+ Updated Romanian translation for the BFD sub-directory.
+
+ Fix an attempt to allocate an unreasonably large amount of memory when parsing a corrupt ELF file.
+ PR 29924
+ * objdump.c (load_specific_debug_section): Check for excessively
+ large sections.
+
+ Keep the .drectve section when performing a relocateable link.
+ PR 29900
+ * scripttempl/pe.sc: Keep the .drectve section when performing a
+ relocateable link.
+ * scripttempl/pep.sc: Likewise.
+
+2022-12-21 Jan Beulich <jbeulich@suse.com>
+
+ x86: rename CheckRegSize to CheckOperandSize
+ While originally indeed used for register size checking only, the
+ attribute has been used for memory operand size checking as well already
+ for quite a while, with more such uses recently having been added.
+
+ gprofng/testsuite: restrict testing to native configurations
+ The binaries involved in testing gprofng are native ones, and hence a
+ cross build of binutils won't really test intended functionality. Since
+ this testing takes quite a bit of time (typically more than running all
+ of binutils, gas, and ld testsuites together), restrict the testing to
+ native configurations only.
+
+2022-12-21 Alan Modra <amodra@gmail.com>
+
+ enable-non-contiguous-regions warnings
+ The warning about discarded sections in elf_link_input_bfd doesn't
+ belong there since the code is dealing with symbols. Multiple symbols
+ in a discarded section will result in multiple identical warnings
+ about the section. Move the warning to a new function in ldlang.c.
+
+ The patch also tidies the warning quoting of section and file names,
+ consistently using `%pA' and `%pB'. I'm no stickler for one style of
+ section and file name quoting, but they ought to be consistent within
+ a warning, eg. see the first one fixed in ldlang.c, and when a warning
+ is emitted for multiple targets they all ought to use exactly the same
+ format string to reduce translation work. elf64-ppc.c loses the
+ build_one_stub errors since we won't get there before hitting the
+ fatal errors in size_one_stub.
+
+ bfd/
+ * elflink.c (elf_link_input_bfd): Don't warn here about
+ discarded sections.
+ * elf32-arm.c (arm_build_one_stub): Use consistent style in
+ --enable-non-contiguous-regions error.
+ * elf32-csky.c (csky_build_one_stub): Likewise.
+ * elf32-hppa.c (hppa_build_one_stub): Likewise.
+ * elf32-m68hc11.c (m68hc11_elf_build_one_stub): Likewise.
+ * elf32-m68hc12.c (m68hc12_elf_build_one_stub): Likewise.
+ * elf32-metag.c (metag_build_one_stub): Likewise.
+ * elf32-nios2.c (nios2_build_one_stub): Likewise.
+ * elfnn-aarch64.c (aarch64_build_one_stub): Likewise.
+ * xcofflink.c (xcoff_build_one_stub): Likewise.
+ * elf64-ppc.c (ppc_size_one_stub): Likewise.
+ (ppc_build_one_stub): Delete dead code.
+ ld/
+ * ldlang.c (lang_add_section): Use consistent style in
+ --enable-non-contiguous-regions warnings.
+ (size_input_section): Likewise.
+ (warn_non_contiguous_discards): New function.
+ (lang_process): Call it.
+ * testsuite/ld-arm/non-contiguous-arm.d: Update.
+ * testsuite/ld-arm/non-contiguous-arm4.d: Update.
+ * testsuite/ld-arm/non-contiguous-arm7.d: Add
+ --enable-non-contiguous-regions-warnings.
+ * testsuite/ld-arm/non-contiguous-arm7.err: New.
+ * testsuite/ld-powerpc/non-contiguous-powerpc.d: Update.
+ * testsuite/ld-powerpc/non-contiguous-powerpc64.d: Update.
+
+2022-12-21 Alan Modra <amodra@gmail.com>
+
+ PR29922, SHT_NOBITS section avoids section size sanity check
+ PR 29922
+ * dwarf2.c (find_debug_info): Ignore sections without
+ SEC_HAS_CONTENTS.
+
+2022-12-21 Mike Frysinger <vapier@gentoo.org>
+
+ sim: fully merge sim_cpu_base into sim_cpu
+ Now that all ports have migrated to the new framework, drop support
+ for the old sim_cpu_base layout. There's a lot of noise here, so
+ it's been split into a dedicated commit.
+
+ sim: enable common sim_cpu usage everywhere
+ All ports should be migrated now. Drop the SIM_HAVE_COMMON_SIM_CPU
+ knob and require it be used everywhere now.
+
+ sim: or1k: invert sim_cpu storage
+ The cpu.h change is in generated cgen code, but that has been sent
+ upstream too, so the next regen should include it automatically.
+
+ sim: m32r: invert sim_cpu storage
+ The cpu*.h changes are in generated cgen code, but that has been sent
+ upstream too, so the next regen should include it automatically.
+
+ sim: lm32: invert sim_cpu storage
+ The cpu.h change is in generated cgen code, but that has been sent
+ upstream too, so the next regen should include it automatically.
+
+ sim: iq2000: invert sim_cpu storage
+ The cpu.h change is in generated cgen code, but that has been sent
+ upstream too, so the next regen should include it automatically.
+
+ sim: frv: invert sim_cpu storage
+ The cpu.h change is in generated cgen code, but that has been sent
+ upstream too, so the next regen should include it automatically.
+
+ sim: cris: invert sim_cpu storage
+ The cpu*.h changes are in generated cgen code, but that has been sent
+ upstream too, so the next regen should include it automatically.
+
+ sim: bpf: invert sim_cpu storage
+ The cpu.h change is in generated cgen code, but that has been sent
+ upstream too, so the next regen should include it automatically.
+
+ sim: cgen: prep for inverting sim_cpu storage
+ Some common cgen code changes to allow cgen ports to invert their
+ sim_cpu storage one-by-one.
+
+ sim: riscv: invert sim_cpu storage
+
+ sim: pru: invert sim_cpu storage
+
+ sim: example-synacor: invert sim_cpu storage
+
+ sim: h8300: invert sim_cpu storage
+
+ sim: m68hc11: invert sim_cpu storage
+
+ sim: mips: invert sim_cpu storage
+
+ sim: v850: invert sim_cpu storage
+
+ sim: mcore: invert sim_cpu storage
+
+ sim: aarch64: invert sim_cpu storage
+
+ sim: microblaze: invert sim_cpu storage
+
+ sim: avr: invert sim_cpu storage
+
+ sim: moxie: invert sim_cpu storage
+
+ sim: msp430: invert sim_cpu storage
+
+ sim: ft32: invert sim_cpu storage
+
+ sim: bfin: invert sim_cpu storage
+
+2022-12-21 Mike Frysinger <vapier@gentoo.org>
+
+ sim: sim_cpu: invert sim_cpu storage
+ Currently all ports have to declare sim_cpu themselves in their
+ sim-main.h and then embed the common sim_cpu_base in it. This
+ dynamic makes it impossible to share common object code among
+ multiple ports because the core data structure is always different.
+
+ Let's invert this relationship: common code declares sim_cpu, and
+ the port uses the new arch_data field for its per-cpu state.
+
+ This is the first in a series of changes: it adds a define to select
+ between the old & new layouts, then converts all the ports that don't
+ need custom state over to the new layout. This includes mn10300 that,
+ while it defines custom fields in its cpu struct, never uses them.
+
+2022-12-21 Mike Frysinger <vapier@gentoo.org>
+
+ sim: move register headers into sim/ namespace [PR sim/29869]
+ These headers define the register numbers for each port to implement
+ the sim_fetch_register & sim_store_register interfaces. While gdb
+ uses these, the APIs are part of the sim, not gdb. Move the headers
+ out of the gdb/ include namespace and into sim/ instead.
+
+ sim: ppc: drop old dgen.c generator
+ The spreg.[ch] files live in the source tree now and are created
+ with the dgen.py script, so we don't need this old tool anymore.
+
+2022-12-21 Mike Frysinger <vapier@gentoo.org>
+
+ sim: ppc: move spreg.[ch] files to the source tree
+ Simplify the build by moving the generation of these files from
+ build-time (via dgen.c that we have to compile & execute on the
+ build system) to maintainer/release mode (via spreg-gen.py that
+ we only ever execute when the spreg table actually changes). It
+ speeds up the build process and makes it easier for us to reason
+ about & review changes to the code generator.
+
+ The tool is renamed from "dgen" because it's hardcoded to only
+ generated spreg files. It isn't a generalized tool for creating
+ lookup tables.
+
+2022-12-21 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-20 Hannes Domani <ssbssa@yahoo.de>
+
+ Fix install-strip target
+ The libtool patch broke install-strip of gdb:
+
+ /bin/sh ../../gdb/../mkinstalldirs /src/gdb/inst/share/gdb/python/gdb
+ transformed_name=`t='s,y,y,'; \
+ echo gdb | sed -e "$t"` ; \
+ if test "x$transformed_name" = x; then \
+ transformed_name=gdb ; \
+ else \
+ true ; \
+ fi ; \
+ /bin/sh ../../gdb/../mkinstalldirs /src/gdb/inst/bin ; \
+ /bin/sh ./libtool --mode=install STRIPPROG='strip' /bin/sh /src/gdb/gdb.git/install-sh -c -s \
+ gdb \
+ /src/gdb/inst/bin/$transformed_name ; \
+ /bin/sh ../../gdb/../mkinstalldirs /src/gdb/inst/include/gdb ; \
+ /usr/bin/install -c -m 644 jit-reader.h /src/gdb/inst/include/gdb/jit-reader.h
+ libtool: install: `/src/gdb/inst/bin/gdb' is not a directory
+ libtool: install: Try `libtool --help --mode=install' for more information.
+
+ Since INSTALL_PROGRAM_ENV is no longer at the beginning of the command, the
+ gdb executable is not installed with install-strip.
+
+2022-12-20 Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
+
+ bfd: Discard symbol regardless of warning flag
+ The discard of symbols should be performed whether the warning for
+ the discard is enabled or not.
+ Without this patch, ld would segfault in bfd_section_removed_from_list,
+ called in the if-statement right after this block, as the argument
+ isec->output_section can be NULL.
+
+ Co-Authored-By: Yvan ROUX <yvan.roux@foss.st.com>
+
+2022-12-20 Alan Modra <amodra@gmail.com>
+
+ PR29915, bfdio.c does not compile with mingw.org's MinGW
+ PR 29915
+ * configure.ac: Add AC_CHECK_DECLS test ___lc_codepage_func.
+ * configure: Regenerate.
+ * config.in: Regenerate.
+ * bfdio.c (___lc_codepage_func): Move declaration to..
+ (_bfd_real_fopen): ..here, and use !HAVE_DECL____LC_CODEPAGE_FUNC.
+
+ Re: x86: remove i386-opc.c
+ Regen opcodes/po/POTFILES.in
+
+2022-12-20 Mike Frysinger <vapier@gentoo.org>
+
+ sim: ppc: change spreg switch table generation to compile-time
+ Simplify the generator by always outputting the switch tables, and
+ leave the choice of whether to use them to the compiler via a -D
+ flag.
+
+2022-12-20 Mike Frysinger <vapier@gentoo.org>
+
+ sim: dv-core: add hw_detach_address method [PR sim/25211]
+ The core device has an attach address method as the root of the tree
+ which calls out to the sim API. But it doesn't have a corresponding
+ detach method which means we just crash if anything tries to detach
+ itself from the core. In practice, the m68hc11 is the only model
+ that actually tries to detach itself on the fly, so no one noticed
+ earlier.
+
+ With this in place, we can delete the existing detach code from the
+ m68hc11 model since it defaults to "passthru" callback which will in
+ turn call the dv-core detach, and they have the same behavior -- call
+ the sim core API to detach from the address space.
+
+ Bug: https://sourceware.org/PR25211
+
+2022-12-20 Vladimir Mezentsev <vladimir.mezentsev@oracle.com>
+
+ gprofng: PR29646 Various warnings
+ gprofng/ChangeLog
+ 2022-12-19 Vladimir Mezentsev <vladimir.mezentsev@oracle.com>
+
+ PR gprofng/29646
+ * common/core_pcbe.c: Fix missingReturn warning.
+ * libcollector/iolib.c: Fix -Waddress warnings.
+ * src/Settings.cc: Likewise.
+ * src/checks.cc: Likewise.
+ * libcollector/linetrace.c: Likewise.
+ * libcollector/iotrace.c: Fix va_end_missing error.
+ * libcollector/libcol_util.c: Fix uninitvar warning.
+ * src/Command.cc: Fix arrayIndexOutOfBounds error.
+ * src/Function.cc: Fix uninitStructMember warning.
+ * src/ipc.cc: Fix -Wwrite-strings warnings.
+
+2022-12-20 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-19 Tom Tromey <tromey@adacore.com>
+
+ Avoid compiler warning in dwarf-do-refresh
+ The Emacs 28 compiler warns about dwarf-mode.el:
+
+ Warning (comp): dwarf-mode.el:180:32: Warning: Unused lexical argument `ignore'
+
+ This is easily fixed by prepending "_" to the parameter's name.
+
+ binutils/ChangeLog
+ 2022-12-19 Tom Tromey <tromey@adacore.com>
+
+ * dwarf-mode.el (dwarf-do-refresh): Avoid compiler warning.
+
+2022-12-19 Tom Tromey <tom@tromey.com>
+
+ Use bool in bpstat
+ This changes bpstat to use 'bool' rather than 'char', and updates the
+ uses.
+
+ Use bool constants for value_print_options
+ This changes the uses of value_print_options to use 'true' and 'false'
+ rather than integers.
+
+ Remove quick_symbol_functions::relocated
+ quick_symbol_functions::relocated is only needed for psymtabs, and
+ there it is only needed for Rust. However, because we've switched the
+ DWARF reader away from psymtabs, this means there's no longer a need
+ for this method at all.
+
+2022-12-19 Tom Tromey <tom@tromey.com>
+
+ Remove MI version 1
+ MI version 1 is long since obsolete. Several years ago, I filed
+ PR mi/23170 for this. I think it's finally time to remove this.
+ Any users of MI 1 can and should upgrade to a newer version.
+
+ Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=23170
+
+2022-12-19 Tom Tromey <tom@tromey.com>
+
+ Remove vestiges of MI version 0
+ I found a few vestiges of MI version 0 in the test suite. This patch
+ removes them.
+
+2022-12-19 Alan Modra <amodra@gmail.com>
+
+ Tidy PR29893 and PR29908 fix
+ PR 29893
+ PR 29908
+ * dwarf.c (display_debug_addr): Combine dwarf5 unit_length checks.
+ Delete dead code.
+
+2022-12-19 Jan Vrany <jan.vrany@labware.com>
+
+ gdb: fix command lookup in execute_command ()
+ Commit b5661ff2 ("gdb: fix possible use-after-free when
+ executing commands") used lookup_cmd_exact () to lookup
+ command again after its execution to avoid possible
+ use-after-free error.
+
+ However this change broke test gdb.base/define.exp which
+ defines a post-hook for subcommand ("target testsuite").
+ In this case, lookup_cmd_exact () returned NULL because
+ there's no command 'testsuite' in top-level commands.
+
+ This commit fixes this case by looking up the command again
+ using the original command line via lookup_cmd ().
+
+ Approved-By: Simon Marchi <simon.marchi@efficios.com>
+
+2022-12-19 Nick Clifton <nickc@redhat.com>
+
+ Fix potential illegal memory accesses when parsing corrupt DWARF data.
+ PR 29914
+ * dwarf.c (fetch_indexed_value): Fail if the section is not big
+ enough to contain a header size field.
+ (display_debug_addr): Fail if the computed address size is too big
+ or too small.
+
+ New Romainian translation for the GOLD subdirectory.
+
+2022-12-19 Jan Beulich <jbeulich@suse.com>
+
+ gprofng/testsuite: skip Java test without JDK
+ There's no point in even trying the Java test when gprofng was built
+ without Java support, and when the building of the constituents of the
+ testcase also would fail. On such systems this converts the respective
+ tests from "unresolved" to "unsupported", making the overall testsuite
+ run no longer report failure just because of this.
+
+ gprofng/testsuite: eliminate bogus casts
+ Casting pointers to unsigned int is generally problematic and hence
+ compilers tend to warn about such. While here they're used only in
+ fprintf(), it still seems better to omit such casts, even if only to
+ avoid setting bad precedents.
+
+ gprofng/testsuite: correct line continuation in endcases.c
+ A backslash used to indicate line continuation (in a macro definition
+ here) is not supposed to be followed by blanks or other white space; the
+ end-of-line indicator is to follow immediately.
+
+ gprofng/testsuite: correct names for signal handling tests
+ The signal handling tests spend most of their time in the signal
+ handlers, and hence for profile output to match anything in program
+ output, the respective name fields need to hold the handler function
+ names. This converts both respective tests from "unresolved" to actually
+ succeeding.
+
+ gprofng/testsuite: adjust linking of synprog
+ In order for so_syn.so and so_syx.so to be able to access the main
+ program's "testtime" variable, that variable needs exposing in the
+ dynamic symbol table. Since this is a test program only, do it the brute
+ force way and simply expose all global symbols.
+
+ Arm: break gas dependency on libopcodes
+ gas doesn't use anything from libopcodes (anymore?) - suppress linking
+ in that library.
+
+ x86: omit Cpu prefixes from opcode table
+ These enumerators can be used in only one specific field, and hence the
+ Cpu prefix isn't needed ther for disambiguation / name space separation.
+
+2022-12-19 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-18 Alan Modra <amodra@gmail.com>
+
+ Comment bfd_get_section_limit_octets and bfd_get_section_alloc_size
+ * bfd.c (bfd_get_section_limit_octets): Add comment.
+ (bfd_get_section_alloc_size): Likewise.
+ * libbfd.c (_bfd_generic_get_section_contents): Use
+ bfd_get_section_limit_octets.
+ * section.c (bfd_get_section_contents): Likewise.
+ * bfd-in2.h: Regenerate.
+
+2022-12-18 Alan Modra <amodra@gmail.com>
+
+ ld bootstrap test in build dir with path containing symlinks
+ This allows the bootstrap test to run if you have a symlink somewhere
+ in the build path directory. $ld depends on $base_dir which is set
+ via tcl [pwd], collapsing the symlink like /usr/bin/pwd, while $objdir
+ contains the symlink.
+
+ * testsuite/ld-bootstrap/bootstrap.exp: Normalize paths when
+ checking for ld build directory.
+
+2022-12-18 Joel Brobecker <brobecker@adacore.com>
+
+ Update gdb/NEWS after GDB 13 branch creation.
+ This commit a new section for the next release branch, and renames
+ the section of the current branch, now that it has been cut.
+
+2022-12-18 Joel Brobecker <brobecker@adacore.com>
+
+ Bump version to 14.0.50.DATE-git.
+ Now that the GDB 13 branch has been created,
+ this commit bumps the version number in gdb/version.in to
+ 14.0.50.DATE-git
+
+ For the record, the GDB 13 branch was created
+ from commit 71c90666e601c511a5f495827ca9ba545e4cb463.
+
+ Also, as a result of the version bump, the following changes
+ have been made in gdb/testsuite:
+
+ * gdb.base/default.exp: Change $_gdb_major to 14.
+
+2022-12-18 GDB Administrator <gdbadmin@sourceware.org>
+
+ Automatic date update in version.in
+
+2022-12-17 Alan Modra <amodra@gmail.com>
+
+ bfd_get_relocated_section_contents allow NULL data buffer
+ This patch removes the bfd_malloc in default_indirect_link_order and
+ bfd_simple_get_relocated_section_contents, pushing the allocation down
+ to bfd_get_relocated_section_contents. The idea is to make use of the
+ allocation done with sanity checking in bfd_get_full_section_contents,
+ which is called by bfd_generic_get_relocated_section_contents.
+
+ Doing this exposed a bug in bfd_get_full_section_contents. With
+ relaxation it is possible that an input section rawsize is different
+ to the section size. In that case we want to use the larger of
+ rawsize (the on-disk size for input sections) and size.
+
+ * reloc.c (bfd_generic_get_relocated_section_contents),
+ * reloc16.c (bfd_coff_reloc16_get_relocated_section_contents),
+ * coff-alpha.c (alpha_ecoff_get_relocated_section_contents),
+ * coff-sh.c (sh_coff_get_relocated_section_contents),
+ * elf-m10200.c (mn10200_elf_get_relocated_section_contents),
+ * elf-m10300.c (mn10300_elf_get_relocated_section_contents),
+ * elf32-avr.c (elf32_avr_get_relocated_section_contents),
+ * elf32-cr16.c (elf32_cr16_get_relocated_section_contents),
+ * elf32-crx.c (elf32_crx_get_relocated_section_contents),
+ * elf32-h8300.c (elf32_h8_get_relocated_section_contents),
+ * elf32-nds32.c (nds32_elf_get_relocated_section_contents),
+ * elf32-sh.c (sh_elf_get_relocated_section_contents),
+ * elfxx-mips.c (_bfd_elf_mips_get_relocated_section_contents):
+ Handle NULL data buffer.
+ * bfd.c (bfd_get_section_alloc_size): New function.
+ * bfd-in2.h: Regenerate.
+ * compress.c (bfd_get_full_section_contents): Correct section
+ malloc size.
+ * linker.c (default_indirect_link_order): Don't malloc memory
+ here before calling bfd_get_relocated_section_contents.
+ * simple.c (bfd_simple_get_relocated_section_contents): Likewise.
+
+2022-12-17 Alan Modra <amodra@gmail.com>
+
+ asan: elf.c:12621:18: applying zero offset to null pointer
+ That's this line in elf_parse_notes:
+ while (p < buf + size)
+
+ * elf.c (_bfd_elf_make_section_from_shdr): Don't call
+ elf_parse_notes when sh_size is zero.
+
+2022-12-17 Alan Modra <amodra@gmail.com>
+
+ Re: The problem with warning in elf_object_p
+ Commit 5aa0f10c424e added a per_xvec_warn array to provide [...]
[diff truncated at 100000 bytes]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2023-01-14 13:42 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-14 13:42 [binutils-gdb/binutils-2_40-branch] Set development and experimental to false. Update version number to 2.40. Add release markers. Re Nick Clifton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).