]>
git.ipfire.org Git - thirdparty/binutils-gdb.git/log
Alan Modra [Tue, 30 Aug 2016 02:28:05 +0000 (11:58 +0930)]
[GOLD] correct grouping of stubs
This patch rewrites the rather obscure can_add_to_stub_group, fixing
a problem with the handling of sections containing conditional
external branches. When a section group contains any such section,
the group size needs to be limited to a much smaller size than groups
with only non-conditional external branches.
PR 20523
* powerpc.cc (class Stub_control): Add has14_. Comment owner_.
(Stub_control::can_add_to_stub_group): Correct grouping of
sections containing 14-bit external branches. When returning
false, set state_ to reflect the fact that we have one section
for the next group. Rewrite most of function for clarity.
Add and expand comments.
(Target_powerpc::do_relax): Print stub group size retry in hex.
Han Shen [Fri, 26 Aug 2016 22:50:15 +0000 (15:50 -0700)]
PR gold/20529 - relaxing loop never ends.
* powerpc.cc (Stub_table::min_size_threshold_): New member to
limit size.
(Stub_table::set_min_size_threshold): New member function.
(Stub_table::set_address_and_size): Add code to only allow size
increase.
(Target_powerpc::do_relax): Add code to record last size.
Alan Modra [Tue, 6 Dec 2016 05:36:14 +0000 (16:06 +1030)]
PowerPC64 toc optimisation for power9
Recognize power9 and a few other insns from older machines. Fixes
linker complaints like "toc optimization is not supported for
0xf4090002 instruction". 0xf4090002 is stxsd v0,0(r9)
bfd/
* elf64-ppc.c (ok_lo_toc_insn): Add r_type param. Recognize
lq,lfq,lxv,lxsd,lxssp,lfdp,stq,stfq,stxv,stxsd,stxssp,stfdp.
Don't match lmd and stmd.
ld/
* testsuite/ld-powerpc/tocopt7.s,
* testsuite/ld-powerpc/tocopt7.out,
* testsuite/ld-powerpc/tocopt7.d: New test.
* testsuite/ld-powerpc/tocopt8.s,
* testsuite/ld-powerpc/tocopt8.d: New test.
* testsuite/ld-powerpc/powerpc.exp: Run them.
H.J. Lu [Wed, 15 Feb 2017 19:39:30 +0000 (11:39 -0800)]
i386: Allow "lea foo@GOT, %reg" in PIC
"lea foo@GOT, %reg" is OK in PIC since it only loads the GOT offset
into register, which can be used later with a GOT base register to
get the value in the GOT entry.
(cherry picked from commit
2a5684011edabf5804abb9e11253a9747587b284 )
bfd/
PR ld/21168
* elf32-i386.c (elf_i386_relocate_section): Allow
"lea foo@GOT, %reg" in PIC.
ld/
PR ld/21168
* testsuite/ld-i386/i386.exp: Run pr21168.
* testsuite/ld-i386/pr21168a.c: New file.
* testsuite/ld-i386/pr21168b.S: Likewise.
GDB Administrator [Thu, 29 Dec 2016 00:01:02 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 28 Dec 2016 00:01:06 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 27 Dec 2016 00:00:58 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 26 Dec 2016 00:01:10 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 25 Dec 2016 00:01:03 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 24 Dec 2016 00:00:54 +0000 (00:00 +0000)]
Automatic date update in version.in
Maciej W. Rozycki [Fri, 23 Dec 2016 20:03:36 +0000 (20:03 +0000)]
MIPS/BFD: Remove EI_ABIVERSION 5 allocation for PT_GNU_STACK support
Revert commit
17733f5be961 ("Increment the ABIVERSION to 5 for MIPS
objects with non-executable stacks.") and remove EI_ABIVERSION 5
allocation for PT_GNU_STACK support, which has not made it to glibc
and will be reassigned.
bfd/
* bfd/elfxx-mips.c (_bfd_mips_post_process_headers): Revert
2016-02-23 change and remove EI_ABIVERSION 5 support.
(cherry picked from commit
4d4f40e041ce7c8c7c8e50f957e0440b64ab7e95 )
GDB Administrator [Fri, 23 Dec 2016 00:01:08 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 22 Dec 2016 00:01:17 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 21 Dec 2016 00:01:08 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 20 Dec 2016 00:01:15 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 19 Dec 2016 00:01:06 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 18 Dec 2016 00:01:03 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 17 Dec 2016 00:01:15 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 16 Dec 2016 00:01:10 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 15 Dec 2016 00:01:14 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 14 Dec 2016 00:01:11 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 13 Dec 2016 00:01:15 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 12 Dec 2016 00:01:05 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 11 Dec 2016 00:01:06 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 10 Dec 2016 00:01:11 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 9 Dec 2016 00:01:05 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 8 Dec 2016 00:01:20 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 7 Dec 2016 00:01:08 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 6 Dec 2016 00:02:03 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 5 Dec 2016 00:01:53 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 4 Dec 2016 00:01:50 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 3 Dec 2016 00:01:58 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 2 Dec 2016 00:01:25 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 1 Dec 2016 00:01:08 +0000 (00:01 +0000)]
Automatic date update in version.in
Alan Modra [Wed, 30 Nov 2016 05:03:07 +0000 (15:33 +1030)]
PR20886, looping in ppc64_elf_size_stubs
The PR20886 binary is large enough that there are two stub sections
servicing .text (which is 88M). It so happens that between one
iteration of sizing and the next that one stub section grows while
the other shrinks. Since one section is always growing, the loop
never terminates.
This patch changes the algorithm to not update previous size on
shrinking, once we go past a certain number of iterations.
PR ld/20886
* elf64-ppc.c (ppc64_elf_size_stubs): Make rawsize max size seen
on any pass past STUB_SHRINK_ITER.
GDB Administrator [Wed, 30 Nov 2016 00:01:01 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 29 Nov 2016 00:01:04 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 28 Nov 2016 00:01:03 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 27 Nov 2016 00:01:10 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 26 Nov 2016 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 25 Nov 2016 00:00:48 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 24 Nov 2016 00:01:19 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 23 Nov 2016 00:01:14 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 22 Nov 2016 00:01:11 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 21 Nov 2016 00:01:23 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 20 Nov 2016 00:01:09 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 19 Nov 2016 00:01:16 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 18 Nov 2016 00:01:07 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 17 Nov 2016 00:00:59 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 16 Nov 2016 00:01:07 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 15 Nov 2016 00:01:05 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 14 Nov 2016 00:01:03 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 13 Nov 2016 00:01:07 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 12 Nov 2016 00:00:59 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 11 Nov 2016 00:00:58 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 10 Nov 2016 00:01:17 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 9 Nov 2016 00:01:10 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 8 Nov 2016 00:01:14 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 7 Nov 2016 00:01:06 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 6 Nov 2016 00:01:06 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 5 Nov 2016 00:01:01 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 4 Nov 2016 00:01:03 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 3 Nov 2016 00:01:04 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 2 Nov 2016 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 1 Nov 2016 00:01:03 +0000 (00:01 +0000)]
Automatic date update in version.in
Alan Modra [Mon, 31 Oct 2016 02:16:38 +0000 (12:46 +1030)]
Revert part "Set dynamic tag VMA and size from dynamic section when possible"
PR 20748
* elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Revert
2016-05-13 change.
GDB Administrator [Mon, 31 Oct 2016 00:01:06 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 30 Oct 2016 00:01:03 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 29 Oct 2016 00:00:59 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 28 Oct 2016 00:01:08 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 27 Oct 2016 00:00:59 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 26 Oct 2016 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 25 Oct 2016 00:01:02 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 24 Oct 2016 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 23 Oct 2016 00:00:59 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 22 Oct 2016 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 21 Oct 2016 00:00:58 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 20 Oct 2016 00:00:59 +0000 (00:00 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 19 Oct 2016 00:01:07 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 18 Oct 2016 00:01:13 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 17 Oct 2016 00:01:04 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 16 Oct 2016 00:01:04 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 15 Oct 2016 00:00:57 +0000 (00:00 +0000)]
Automatic date update in version.in
Alan Modra [Fri, 14 Oct 2016 10:47:54 +0000 (21:17 +1030)]
Add separate debug info file section
* scripttempl/DWARF.sc: Add .debug_addr.
GDB Administrator [Fri, 14 Oct 2016 00:01:14 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 13 Oct 2016 00:01:07 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 12 Oct 2016 00:01:04 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 11 Oct 2016 00:01:04 +0000 (00:01 +0000)]
Automatic date update in version.in
Christophe Lyon [Tue, 27 Sep 2016 23:37:52 +0000 (01:37 +0200)]
[ARM] PR ld/20608 Relocation truncated to fit: R_ARM_THM_JUMP24 for relocation to PLT entry
2016-09-28 Christophe Lyon <christophe.lyon@linaro.org>
PR ld/20608
bfd/
* elf32-arm.c (arm_type_of_stub): Handle the case when the pre-PLT
Thumb-ARM stub is too far.
ld
* testsuite/ld-arm/arm-elf.exp: Handle new testcase.
* testsuite/ld-arm/farcall-mixed-app2.d: New file.
* testsuite/ld-arm/farcall-mixed-app2.r: Likewise.
* testsuite/ld-arm/farcall-mixed-app2.s: Likewise.
* testsuite/ld-arm/farcall-mixed-app2.sym: Likewise.
GDB Administrator [Mon, 10 Oct 2016 00:01:07 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 9 Oct 2016 00:01:18 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 8 Oct 2016 00:01:01 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 7 Oct 2016 00:01:11 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 6 Oct 2016 00:01:16 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 5 Oct 2016 00:01:10 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 4 Oct 2016 00:01:01 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 3 Oct 2016 00:01:05 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 2 Oct 2016 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 1 Oct 2016 00:01:18 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 30 Sep 2016 00:01:01 +0000 (00:01 +0000)]
Automatic date update in version.in