Commit Graph

37 Commits

Author SHA1 Message Date
Khem Raj
1387785013 binutils: Use tip of 2.26 branch
Until 2.26.1 is released there are few fixes which are needed especially
when using -fpie, here are changes that are part of this version bump

H.J. Lu (7):
      Add a testcase for PR ld/18591
      Store estimated distances in compressed_size
      Remove duplicated marker for 2.26 in gas/NEWS
      Add -mrelax-relocations= to x86 assembler
      Mask off the least significant bit in GOT offset
      Enable -Bsymbolic and -Bsymbolic-functions to PIE
      Fix a typo in objcopy manual

John David Anglin (1):
      Fix /usr/bin/ld: final link failed: File truncated error on hppa

(From OE-Core rev: 3685a1246110d84bffffa6d03a3c2ec0417cb4a3)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-16 09:04:22 +00:00
Marek Vasut
611e3d87d8 binutils: Repair nios2 PLT and GP handling
Repair corner cases in nios2 PLT and GP handling. See the patches
themselves for extensive detailed explanation.

The patches don't contain the ChangeLog entries, since the changelog
entries often cause trouble when applying the patch.

(From OE-Core rev: fdac5c38183aa96faea8d51d16ce5f54ee16f944)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-11 12:27:48 +00:00
Khem Raj
c85c54f7f8 binutils: Upgrade to 2.26
(From OE-Core rev: 86ade2cc2553c942d9526c5323a11ae151653505)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-02-01 11:20:18 +00:00
Khem Raj
136db70700 binutils: Fix gold linking errors due to unresolved R_ARM_MOVW_ABS_NC
This issue has been seen in multiple times e.g.

http://patchwork.openembedded.org/patch/103083/

https://www.mail-archive.com/openembedded-core@lists.openembedded.org/msg72513.html

(From OE-Core rev: 9db094039ed7bce34006cc21bb65cd800fbfee7d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-01-24 09:40:31 +00:00
Mark Hatle
116360f39b binutils: Fix XLP / Octeon 3 instruction clash
Use the value 0x00000080 for INSN_XLP, as the value 0x00000040 has already
been assigned to INSN_OCTEON3 by the binutils project.

Without this change, invalid instructions can be generated for both INSN_XLP
and INSN_OCTEON3.

(From OE-Core rev: 3a3269e7f4c7d13ad0c5705cb59c138b697151d7)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-16 11:39:26 +00:00
Mark Hatle
fd4f4d299e binutils: Fix octeon3 disassembly patch
The structure has apparently changed, and there was a missing
setting.  This corrects a segfault when disassembling code.

(From OE-Core rev: 2e8f1ffe3a8d7740b0ac68eefbba3fe28f7ba6d4)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-16 11:39:26 +00:00
Ross Burton
1c914a844b meta: Fix Upstream-Status statements
Fix a variety of problems such as typos, bad punctuations, or incorrect
Upstream-Status values.

(From OE-Core rev: bd220fe6ce8c3a0805f13a14706d3130ea872604)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 23:01:53 +01:00
Jagadeesh Krishnanjanappa
8a2edb9856 binutils: Add thunderx support to gas
Without this patch, cross compiling for AArch64 with
"-mcpu=thunderx" fails with below error,

-- snip --
Assembler messages:
Error: unknown cpu `thunderx'
Error: unrecognized option -mcpu=thunderx
-- CUT --

(From OE-Core rev: 0cdf96013f66ee3a695038af633e3160b7f720dc)

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:47 +01:00
Khem Raj
31c231c95d binutils: Fix symbols with --dynamic-list when using gold linker
There are random crashes and hangups, seen in libQtCore (QT4) as mentioned
in the binutils bugs as well, the reason is that
gold ignores all other symbols except specified in --dynamic-list which
is different in behavior as compared to bfd linker. The patch is a
backport from upstream master. This patch implements the bfd linker's
behaviour into gold.

(From OE-Core rev: 0ee1e3b000137ebcb2e223e7a3f8e9eb53088c70)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-04 16:23:47 +01:00
Armin Kuster
86559e1345 binutils: Add MIPS Octeon3
This add MIPS octeon3 support to binutils.

(From OE-Core rev: a3d3dc83a1ef73162f548594241c587ad12d8226)

Signed-off-by: Armin Kuster <akuster@mvista.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19 18:05:40 +01:00
Khem Raj
91b7c88d9f binutils: Update to tip of 2.25 branch
This update brings following patches

749b1c7 Fix some PPC assembler errors.
fe1e924 [AArch64][Backport] Remove Load/Store register (unscaled immediate) alias
4e4d08c [AArch64][Backport] Don't always create new frag for .inst directive
0381bf1 [AArch64][Backport] PR18270, fix handling of GOT entry for local symbol
bb22a11 [AArch64][Backport]Improve PC-relative relocation check for shared library
699dcf3 opcodes/
e700dd4 Downgrade linker error on protected symbols in .dynbss to a warning
13ccf8a Revert "Add extern_protected_data and set it for x86"
b0356a6 Add support for the Samsung Exynos M1 processor.
40dbf9d Add support for the Samsung Exynos M1 processor.
2aa5937 Don't pass unadorned zeros to varargs functions
12aca65 Relax PR 15228 protected visibility restriction
b443789 [AArch64] Fix branch stubs for BE
ab50ec0 Import fixes from mainline sources that address illegal memory access problems with the ELF targeted parts of the BFD library.
a539f2c Import patches from the master sources which fix illegal memory accesses found by running the binutils on fuzzed binaries.
a5ebc2c Fix build problem introduced by previous delta to coffgrok.c
7a57494 Import fixes from mainline that address illegal memory accesses when working with COFF/PE based files.
4f9583e Import fixes from trunk sources to correct invalid memory access issues with various binutils programs.
304a2b6 Import fixes for invalid memory access issues in the binutils DWARF parser from the trunk sources.
1dead8a Import security fixes for readelf from the master branch:
3e3feb3 Limit multi-byte nop instructions to 10 bytes
f12dd7b S/390: Disable relocation sort against code sections.
846daac Fix ppc32 synthetic symbols when __tls_get_addr_opt stub is generated
7235408 Tweak ppc32 tls_get_addr optimisation
642fe3b PowerPC64 thread-safe stubs not needed for iplt
2791b63 Use dynamic text relocs for protected vars
cff59f0 PowerPC64 GOLD: complain on misaligned _DS relocs
20951c8 Fix gold error: hidden symbol '...' is not defined locally
7428be5 [AArch64][2.25] Backport support for Cortex-A72
8093a8b [ARM][2.25] Backport support for Cortex-A72
f7cf878 [ARM] Backport "Skip private symbol when doing objdump"
031994d Add extern_protected_data and set it for x86

Additionally rearranges the local patches in sequence

(From OE-Core rev: a23cbec2fab9832dfcbad08e22f0f81a01fcab65)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:47 +01:00
Khem Raj
768794e6a8 binutils: Fix linking issue for R_ARM_REL32 relocs
This issue is surfaces with gcc 5.0 but its a real issue in gold
errors are like

https://sourceware.org/ml/binutils/2010-12/msg00473.html
is the test case

Change-Id: I44806e9fb75a164745e52f0040b7efc9be624ae6
(From OE-Core rev: 887c8cb41a3857b2381e3d83c2db83c1d78ae48d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-10 18:10:27 +01:00
Khem Raj
b559d7f81f binutils: Switch to using binutils stable/2.25 branch
We have a lot of patches on top of 2.25 release that we need
its easier/cleaner to use the git src instead of tarball and use
the latest on the 2.25 branch

Additionally, drop binutils-uclibc-300-006_better_file_error.patch
since it has been redone with
https://sourceware.org/ml/binutils/2006-10/msg00337.html upstream

git'ify the patches against upstream repos for better maintainance

Change-Id: I572c9bb49f60853e7ade4e8f63ab77b7e41476c5
(From OE-Core rev: 3c7fe424f850af70989ad682dd9c5be70cd02ca5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 10:53:11 +01:00
Khem Raj
1cb175fd7b binutils: Fix ICE in gold
Found when linking busybox using gold linker

Change-Id: I47b89998b9cb3d75ac97113a1b0fba109483b198
(From OE-Core rev: f370b72a0d5e13bd4f53daea99f0851517b361a2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 10:53:10 +01:00
Robert Yang
2be79f0b1d binutils: upgrade to 2.25
* Remove the following patches since they are already in the new code:
  binutils/fix-pr15815.patch
  binutils/fix-pr16428.patch
  binutils/fix-pr16476.patch
  binutils/fix-pr2404.patch
  binutils/replace_macros_with_static_inline.patch
  binutils/binutils_CVE-2014-8484.patch
  binutils/binutils_CVE-2014-8485.patch
  binutils/binutils_CVE-2014-8501.patch
  binutils/binutils_CVE-2014-8502.patch
  binutils/binutils_CVE-2014-8502_1.patch
  binutils/binutils_CVE-2014-8503.patch
  binutils/binutils_CVE-2014-8504.patch
  binutils/binutils_CVE-2014-8737.patch

* The file src-release is gone.

* Updated patches for the new code.

(From OE-Core rev: a8446ea78daa5875de43eb5bcccd8f536ea07e1c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>

Conflicts:
	meta/conf/distro/include/tcmode-default.inc
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 10:53:09 +01:00
Armin Kuster
6dde745bf9 binutils: several security fixes
CVE-2014-8484
CVE-2014-8485
CVE-2014-8501
CVE-2014-8502
CVE-2014-8503
CVE-2014-8504
CVE-2014-8737

and one supporting patch.

[Yocto # 7084]

(From OE-Core rev: 859fb4d9ec6974be9ce755e4ffefd9b199f3604c)

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-27 22:53:40 +00:00
Richard Purdie
540b7a196a binutils: Add fix for recent patch on older gcc
The recent bintuils patch update breaks on older gccs such as CentOS 6.
Backport a patch to address this.

(From OE-Core rev: 76f65e73081f52cea718ef164f9d1d7a5c65d537)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-25 13:51:46 +01:00
H.J. Lu
ad07178802 binutils: Apply the proper fix for PR 16428
It is fixed by

commit 4199e3b8669d0a36448687850374fdc2ad7240b6
Author: Alan Modra <amodra@gmail.com>
Date:   Wed Jan 15 21:50:55 2014 +1030

    non-PIC references to __ehdr_start in pie and shared

    Rather than hacking every backend to not discard dynamic relocations
    against an undefined hidden __ehdr_start, make it appear to be defined
    early.  We want __ehdr_start hidden before size_dynamic_sections so
    that it isn't put in .dynsym, but we do need the dynamic relocations
    for a PIE or shared library with a non-PIC reference.  Defining it
    early is wrong if we don't actually define the symbol later to its
    proper value.  (In some cases we want to leave the symbol undefined,
    for example, when the ELF header isn't loaded, and we don't have this
    infomation available in before_allocation.)

So replace the existing patches with this one.

(From OE-Core rev: db37534c412ff3f1460687611060b3c4b3f95a04)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-06-25 13:51:45 +01:00
Khem Raj
ab6f21f62c binutils: Fix building nativesdk binutils with gcc 4.9
Patches explain the issue in detail but this is exposed
with gcc 4.9 in binutils 2.24

(From OE-Core rev: fc5c467b680fc5aef4b0f689e6988e17a9322ae0)

(From OE-Core rev: 4dfb8847ebf8aab90ad8888933468e2899c96998)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-05-06 17:59:15 +01:00
Richard Purdie
ffa8bbf965 binutils: Add fixes for binutils issue 16428
"ld:i386 crashes with -static -fPIE -pie"
https://bugs.launchpad.net/ubuntu/+source/binutils/+bug/1266492

This adds in two upstream binutils fixes to avoid the internal error
triggered by the combination of -static with -pie on x86 builds. This
triggers a backtrace which then triggers a bug in glibc where the process
ends up hanging on some systems with broken libcs.

We can't fix the libc but we can stop the internal error and hence
avoid the hanging builds.

(From OE-Core rev: e949f9a8fc337bd768c7e8a3fd082775a94e0ad4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-25 21:26:49 +00:00
Richard Purdie
4a85e2698e binutils: Add backports to resolve systemd (from git) breakage
Backport the patches for PR2404 and PR16476 from binutils to
resolve failures when compiling systemd from git.

(From OE-Core rev: 25e376f6c8c66cca95ae7fa7f512b7dadfdd6140)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-09 09:40:00 +00:00
Khem Raj
d4b11e8f16 binutils: Upgrade to 2.24
This builds and runs images for all qemu machines

(From OE-Core rev: 015eca84f1b0f25868b47d2480bb60cea698f70e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:40 +00:00
Khem Raj
0d2b60e2d6 binutils: Delete recipes for 2.22
We have 2.23.1 as default now.

(From OE-Core rev: a2f5a228422f9807fa21de88ad589853817695f8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-02-28 23:15:49 +00:00
Laurentiu Palcu
f862f06f32 binutils-crosssdk: do not set .interp size to 0x1000 for partial linked objects
When building the SDK, the final .interp section size should be set to a
bigger value (0x1000) in order to be able to change the dynamic loader's
path later. However, we shouldn't do that for partial linked objects
(when -r or -rU is used). That's because those objects will then have an
.interp section of 0x1000 even if it contains no data and when the final
linking is done we will end up with a "cannot move location counter
backwards" error. That's because the linker will try to squeeze all the data in
the .interp sections found in various partial linked objects into one 0x1000
bytes final .interp section.

[YOCTO #3264]

(From OE-Core rev: b25d0c5fe286e44ded46aefdcbe35ed259087759)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-11-24 15:12:29 +00:00
Khem Raj
d4384e126a binutils-2.22: Disable recent gold backports from 2.22 branch
This patch has been causing some regressions on gold.
e.g. systemd based images segfault and uclibc based images
dont boot. There has been few other reports on the mailing
list. Considering this lets withdraw this patch.

(From OE-Core rev: ecbe671de1553956f83798e1c6fa3ec2fc6a7b4e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-24 12:13:48 +01:00
Khem Raj
97bb9c5b67 binutils-2.22: Backport PR fixes from 2.22 branch
These are fixes mainly cherrypicks for mips/ppc/x86
mainly fixing PRs in ld and gold

(From OE-Core rev: f098cfc24bae8e0685bcae53ea4fdc3326ddc6c4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-09-14 09:50:30 +01:00
Andy Ross
8592e82826 ld: -rpath must search under sysroot
The -rpath argument would search the host filesystem for libraries,
even when a sysroot was defined.  For cross toolchains with targets
compatible with the host architecture this can find incorrect
libraries.  Leave -rpath-link unmodified, as build systems in the wild
are already using this to point to host directories.

[YOCTO #2965]

(From OE-Core rev: bccea580f1abb762d231f785a4e60c9cd368dcdf)

Signed-off-by: Andy Ross <andy.ross@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-24 17:25:14 +01:00
Laurentiu Palcu
77973e3004 binutils: relocatable SDK: change PT_INTERP section size
This patch is needed so that all SDK binaries have the PT_INTERP section
size set to 4096 (max path size in Linux) in order to be able to parse
the binaries later and change the interpreter to the path we want.

(From OE-Core rev: 9bf657bbdfe7c1a9dff1cc121eab496e3e407197)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:38 +01:00
Mark Hatle
18de233023 Add missing Upstream-Status to various patches.
(From OE-Core rev: 951e9caac62a4de576e4003319101e8ff59d72d9)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-26 14:40:49 +01:00
Khem Raj
656417a990 binutils: Backport the e5500/e6500 patches from mainline
This updates the E5500 and E6500 support patches
as they have been applied upstream binutils.

(From OE-Core rev: 202420871785cbdbbf57adbe26eb0f649e57512b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:54:02 +01:00
Khem Raj
00330a3ad0 binutils_2.22: Backport to fix bogus textrels
This is reported by prelinker which does not
go well with textrels.

(From OE-Core rev: 7b1caeca8e5c0dd066bb940fe6d2dff4d22bf816)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-11 13:49:49 +01:00
Khem Raj
efcd382596 binutils: Default to n64 when configured for mips64
Default ABI for mips64 is n64 so make it default in binutils

(From OE-Core rev: 99f859612e16d636702f9bb11825259d90e468f2)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-21 09:59:02 +01:00
Mark Hatle
fedad51cb4 binutils: Inform binutils that armv5e really is valid!
A comment in the binutils sources indicate that it should support all of the
-march= parameters that gcc supports.  The tune validations noted that
gas failed on -march=armv5e.

It is not yet clear to me if this patch belongs upstream or not.

(From OE-Core rev: 4f2503ebdb5c491b758cbdf6eb7df96d4295c24f)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-04-04 17:17:50 +01:00
Nitin A Kamble
94cc386236 binutils: upgrade from 2.21.1a to 2.22
And rebase the patches to the newer source code

This patch is upstream hence deleting it from the recipe.
	binutils/110-arm-eabi-conf.patch

(From OE-Core rev: 715bcfe3701e5ee3e12ee4af9c868a9bbf441525)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-29 11:22:09 +00:00
Kumar Gala
e57a0bdfd4 binutils: Add support for powerpc e5500 core
Add powerpc e5500 core support to binutils so its recognized by
assember, etc.  The e5500 is a 64-bit core from Freescale utilized in
the P5020 SoC.

(From OE-Core rev: 3952db3f254e5c57a13e3a8244c76405aa3db00d)

Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-04 15:04:31 +01:00
Khem Raj
c19d858d01 binutils: Fix build when compiling target binutils recipe with gcc 4.6
(From OE-Core rev: 43c72d44337a736fc4b83ce16f7f1ed0d74243dc)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-20 15:27:39 +01:00
Nitin A Kamble
3f4f5c14ac binutils: upgrade from 2.21 to 2.21.1
(From OE-Core rev: 4810404f22d7cf8849dc32da68dd33a156cac407)

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-08 16:39:09 +01:00