Commit Graph

112825 Commits

Author SHA1 Message Date
GDB Administrator
f54631f853 Automatic date update in version.in 2023-04-24 00:01:01 +00:00
GDB Administrator
cfcfe638fb Automatic date update in version.in 2023-04-23 00:01:34 +00:00
GDB Administrator
e7b2c90235 Automatic date update in version.in 2023-04-22 00:00:51 +00:00
GDB Administrator
97eb0413e9 Automatic date update in version.in 2023-04-21 00:01:00 +00:00
GDB Administrator
594dcc92e8 Automatic date update in version.in 2023-04-20 00:01:19 +00:00
Nick Clifton
4671be001e Updated Hungarian translation for the gprof directory 2023-04-19 10:37:02 +01:00
GDB Administrator
fbf5c5942a Automatic date update in version.in 2023-04-19 00:01:58 +00:00
GDB Administrator
850c6228d0 Automatic date update in version.in 2023-04-18 00:01:36 +00:00
GDB Administrator
19f8c226de Automatic date update in version.in 2023-04-17 00:01:38 +00:00
GDB Administrator
82c733aa63 Automatic date update in version.in 2023-04-16 00:01:16 +00:00
GDB Administrator
27feb01ccd Automatic date update in version.in 2023-04-15 00:01:20 +00:00
GDB Administrator
1d717e8ee5 Automatic date update in version.in 2023-04-14 00:01:09 +00:00
GDB Administrator
7e524e54c4 Automatic date update in version.in 2023-04-13 00:00:54 +00:00
GDB Administrator
e718027dda Automatic date update in version.in 2023-04-12 00:00:50 +00:00
H.J. Lu
ded035f913 lto: Don't add indirect symbols for versioned aliases in IR
Linker adds indirect symbols for versioned symbol aliases, which are
created by ".symver foo, foo@FOO", by checking symbol type, value and
section so that references to foo will be replaced by references to
foo@FOO if foo and foo@FOO have the same symbol type, value and section.
But in IR, since all symbols of the same type have the same value and
section, we can't tell if a symbol is an alias of another symbol by
their types, values and sections.  We shouldn't add indirect symbols
for versioned symbol aliases in IR.

bfd/

	PR ld/30281
	* elflink.c (elf_link_add_object_symbols): Don't add indirect
	symbols for ".symver foo, foo@FOO" aliases in IR.

ld/

	PR ld/30281
	* testsuite/ld-plugin/lto.exp: Add PR ld/30281 test.
	* testsuite/ld-plugin/pr30281.t: New file.
	* testsuite/ld-plugin/pr30281.c: Likewise.

(cherry picked from commit 79cfb928f5)
2023-04-11 09:25:09 -07:00
GDB Administrator
7a06052ee6 Automatic date update in version.in 2023-04-11 00:00:51 +00:00
GDB Administrator
eff44adc6e Automatic date update in version.in 2023-04-10 00:01:09 +00:00
GDB Administrator
53402072fd Automatic date update in version.in 2023-04-09 00:01:00 +00:00
GDB Administrator
668bd5fb52 Automatic date update in version.in 2023-04-08 00:01:06 +00:00
GDB Administrator
c272270df7 Automatic date update in version.in 2023-04-07 00:00:50 +00:00
Stam Markianos-Wright
74cb2ddeab gas: arm: Change warning message to not reference specific A-class architecture revision
We noticed that a warning message about the use of scalar fp16
instructions being UNPREDICTABLE when conditionalized in an IT
block referenced the specific A-class architecture revision
ARMv8.2-A.
Many of these instructions are now also part of ARMv8.1-M, so
the warning message had become misleading.  Here we just change
the message to not specify an architecture revision at all and
update all testing accordingly.  This was done with a simple
find-n-replace within the binutils sources.  No tests have
regressed for the arm target.

gas/ChangeLog:

        * config/tc-arm.c (do_scalar_fp16_v82_encode): Remove
        ARMv8.2-A from the warning message.
        (do_neon_movhf): Likewise
        * testsuite/gas/arm/armv8-2-fp16-scalar-bad.l: Likewise
        * testsuite/gas/arm/mve-vaddsub-it-bad.l: Likewise
        * testsuite/gas/arm/mve-vcvtne-it-bad.l: Likewise
        * testsuite/gas/arm/mve-vcvtne-it.d: Likewise
2023-04-06 15:29:52 +01:00
Stam Markianos-Wright
570b9c09bb gas: arm: Fix a further IT-predicated vcvt issue in the presense of MVE vcvtn
Previously we had experienced issues with assembling a "VCVTNE" instruction
in the presence of the MVE architecture extension, because it could be
interpreted both as:

* The base instruction VCVT + NE for IT predication when inside an IT block.
* The MVE instruction VCVTN + E in the Else of a VPT block.

Given a C reproducer of:
```
int test_function(float value)
{
  int ret_val = 10;
  if (value != 0.0)
  {
    ret_val = (int) value;
  }
  return ret_val;
}
```
GCC generates a VCVTNE instruction based on the `truncsisf2_vfp`
pattern, which will look like:
`vcvtne.s32.f32 s-reg, s-reg`
This still triggers an error due to being misidentified as "vcvtn+e"
Similar errors were found with other type combinations and instruction
patterns (these have all been added to the testing of this patch).

This class of errors was previously worked around by:
https://sourceware.org/pipermail/binutils/2020-August/112728.html
which addressed this by looking at the operand types, however,
that isn't adequate to cover all the extra cases that have been
found.  Instead, we add some special-casing logic earlier when
the instructions are parsed that is conditional on whether we are
in a VPT block or not, when the instruction is parsed.

gas/ChangeLog:

	* config/tc-arm.c (opcode_lookup): Add special vcvtn handling.
	* testsuite/gas/arm/mve-vcvtne-it-bad.l: Add further testing.
	* testsuite/gas/arm/mve-vcvtne-it-bad.s: Likewise.
	* testsuite/gas/arm/mve-vcvtne-it.d: Likewise.
	* testsuite/gas/arm/mve-vcvtne-it.s: Likewise.
2023-04-06 15:29:47 +01:00
GDB Administrator
ab4a93a5ed Automatic date update in version.in 2023-04-06 00:00:54 +00:00
GDB Administrator
78f85ccd6e Automatic date update in version.in 2023-04-05 00:00:58 +00:00
GDB Administrator
51f6a127e4 Automatic date update in version.in 2023-04-04 00:00:50 +00:00
GDB Administrator
f09febaa30 Automatic date update in version.in 2023-04-03 00:00:51 +00:00
GDB Administrator
791416ab78 Automatic date update in version.in 2023-04-02 00:00:40 +00:00
GDB Administrator
7e440e325f Automatic date update in version.in 2023-04-01 00:00:56 +00:00
GDB Administrator
4c0b696977 Automatic date update in version.in 2023-03-31 00:01:13 +00:00
GDB Administrator
cc8fa93100 Automatic date update in version.in 2023-03-30 00:00:54 +00:00
GDB Administrator
89464ff0d4 Automatic date update in version.in 2023-03-29 00:00:49 +00:00
GDB Administrator
9d57bdf24c Automatic date update in version.in 2023-03-28 00:00:59 +00:00
GDB Administrator
5f0b5c3114 Automatic date update in version.in 2023-03-27 00:00:38 +00:00
GDB Administrator
313c466b8d Automatic date update in version.in 2023-03-26 00:00:39 +00:00
GDB Administrator
a665f99441 Automatic date update in version.in 2023-03-25 00:00:44 +00:00
Nick Alcock
bddd62e188 libctf: get the offsets of fields of unnamed structs/unions right
We were failing to add the offsets of the containing struct/union
in this case, leading to all offsets being relative to the unnamed
struct/union itself.

libctf/
	PR libctf/30264
	* ctf-types.c (ctf_member_info): Add the offset of the unnamed
	member of the current struct as necessary.
	* testsuite/libctf-lookup/unnamed-field-info*: New test.
2023-03-24 14:11:18 +00:00
Nick Alcock
7aa47eafcc libctf: fix assertion failure with no system qsort_r
If no suitable qsort_r is found in libc, we fall back to an
implementation in ctf-qsort.c.  But this implementation routinely calls
the comparison function with two identical arguments. The comparison
function that ensures that the order of output types is stable is not
ready for this, misinterprets it as a type appearing more that once (a
can-never-happen condition) and fails with an assertion failure.

Fixed, audited for further instances of the same failure (none found)
and added a no-qsort test to my regular testsuite run.

libctf/:
	PR libctf/30013
	* ctf-dedup.c (sort_output_mapping): Inputs are always equal to
	themselves.
2023-03-24 14:11:13 +00:00
GDB Administrator
9d7879951a Automatic date update in version.in 2023-03-24 00:01:18 +00:00
GDB Administrator
90c1af13df Automatic date update in version.in 2023-03-23 00:01:55 +00:00
Alan Modra
165accf075 coff_get_normalized_symtab bfd_release
We can't free "internal" on errors, since bfd_coff_swap_sym_in may
call bfd_alloc.  For example, _bfd_XXi_swap_sym_in may even create new
sections, which use bfd_alloc'd memory.  If "internal" is freed, all
more recently bfd_alloc'd memory is also freed.

	* coffgen.c (coff_get_normalized_symtab): Don't bfd_release on
	error.

(cherry picked from commit bcefc6be97)
2023-03-22 10:45:32 +10:30
GDB Administrator
d180af460b Automatic date update in version.in 2023-03-22 00:01:18 +00:00
Alan Modra
af35798e95 PR30217, dynamic relocations using local dynamic symbols
glibc's ld.so ignores local dynamic symbols.  It's been that way
forever.  We therefore can't use them on dynamic relocations.  Fixing
that problem uncovered another problem in sorting of dynamic relocs,
caused no doubt by copying make_iplt_section (where we don't want
reloc sorting by the generic gold function, we want iplt relocs last)
to make_lplt_section (where we do want sorting).

	PR 30217
	* powerpc.cc (branch_needs_plt_entry): New function.
	(Target_powerpc::plt_off): Use it here..
	(Target_powerpc::Scan::global): ..and here to correct PLT16 reloc
	handling for forced-local global symbols.
	(Output_data_plt_powerpc::add_entry): Rename "stash"
	parameter "is_local".  Emit relative relocs for globals that
	are forced local, and don't set_needs_dynsym_entry.
	(Target_powerpc::make_lplt_section): Don't create a separate
	reloc section, use rela_dyn.
	(Target_powerpc::make_brlt_section): Likewise.

(cherry picked from commit 0961e63157)
2023-03-22 09:21:49 +10:30
GDB Administrator
cf3ecb9574 Automatic date update in version.in 2023-03-21 00:01:36 +00:00
GDB Administrator
0b77148f8f Automatic date update in version.in 2023-03-20 00:01:33 +00:00
GDB Administrator
b31eb88fff Automatic date update in version.in 2023-03-19 00:01:20 +00:00
GDB Administrator
b0c1a2ec6f Automatic date update in version.in 2023-03-18 00:01:28 +00:00
GDB Administrator
17f33cd090 Automatic date update in version.in 2023-03-17 00:01:12 +00:00
GDB Administrator
75fdc002b9 Automatic date update in version.in 2023-03-16 00:01:55 +00:00
GDB Administrator
7f513c52d2 Automatic date update in version.in 2023-03-15 00:01:34 +00:00
GDB Administrator
fc3fbfb2ee Automatic date update in version.in 2023-03-14 00:01:57 +00:00