platform/upstream/linaro-binutils.git
8 years agoEnable 64-bit bfd to allow correct i586->armv7l cross configuration 62/57262/3 accepted/tizen/base/20160120.042413 submit/tizen_base/20160119.134053
Yury Usishchev [Mon, 18 Jan 2016 11:42:16 +0000 (14:42 +0300)]
Enable 64-bit bfd to allow correct i586->armv7l cross configuration

Change-Id: I3fae127db730a9bf2c8c83aa4f4718c35ad6aaae
Signed-off-by: Yury Usishchev <y.usishchev@samsung.com>
8 years agopackaging: renamed binutils.spec -> linaro-binutils.spec 45/57345/1 accepted/tizen/base/20160119.091016 submit/tizen_base/20160119.085707
Dongkyun, Son [Tue, 19 Jan 2016 08:52:31 +0000 (17:52 +0900)]
packaging: renamed binutils.spec -> linaro-binutils.spec

Change-Id: If3c845287d0ce3d41126d46b6268652380d236a9
Signed-off-by: Dongkyun, Son <dongkyun.s@samsung.com>
8 years agoIgnore broken plugins 18/53718/2 accepted/tizen/base/20160119.051856 submit/tizen_base/20160118.070533
Yury Usishchev [Wed, 15 Jul 2015 17:06:43 +0000 (20:06 +0300)]
Ignore broken plugins

Allow cross-configured ld to ignore plugins that cannot be dlopened

Change-Id: I0bbca32123aeba869d843fdfb9179815af888f5c
Signed-off-by: Yury Usishchev <y.usishchev@samsung.com>
8 years agoRemove linaro part of version to allow correct configuration of gcc 42/54142/1
Yury Usishchev [Fri, 11 Dec 2015 12:15:52 +0000 (15:15 +0300)]
Remove linaro part of version to allow correct configuration of gcc

GCC uses version line to determine if we support plugins and gets it
wrong.

Change-Id: I1551f111c911a868a7c1e1d8f99c13898becb199
Signed-off-by: Yury Usishchev <y.usishchev@samsung.com>
8 years agoChange format of version string 48/53548/2
Maxim Kuvyrkov [Wed, 29 Apr 2015 16:41:50 +0000 (18:41 +0200)]
Change format of version string

Change-Id: I896e18ad6ab7e73977045a09f6fe594c8bb9c234

8 years ago* configure.tgt (targ_extra_obj) [aarch64*-*]: Define. 49/53549/2
Andreas Schwab [Sat, 18 Oct 2014 08:30:54 +0000 (10:30 +0200)]
* configure.tgt (targ_extra_obj) [aarch64*-*]: Define.

Change-Id: Id2bc17dcde75291f7d75f0074dd5c7e49188f794

8 years agoRework packaging for Tizen 47/53547/2
Yury Usishchev [Thu, 16 Jul 2015 10:32:14 +0000 (13:32 +0300)]
Rework packaging for Tizen

Change-Id: I7130a6f5b045b2a7e9cd3ca77512f91b8a7ffaba

9 years agobfd/version.h: Update VERSION for 2.25 2015.01 release upstream upstream/2.25
Will Newton [Mon, 5 Jan 2015 16:30:49 +0000 (16:30 +0000)]
bfd/version.h: Update VERSION for 2.25 2015.01 release

9 years agosrc-release.sh: Use configure.ac instead of configure.in
Will Newton [Mon, 5 Jan 2015 16:29:56 +0000 (16:29 +0000)]
src-release.sh: Use configure.ac instead of configure.in

9 years agobfd/version.h: Bump version
Will Newton [Mon, 5 Jan 2015 16:29:39 +0000 (16:29 +0000)]
bfd/version.h: Bump version

9 years agobfd/version.h: Update version for 2.25 2015.01-1 release
Will Newton [Mon, 5 Jan 2015 16:09:57 +0000 (16:09 +0000)]
bfd/version.h: Update version for 2.25 2015.01-1 release

9 years agosrc-release.sh: Add support for building binutils-linaro
Will Newton [Mon, 5 Jan 2015 16:08:47 +0000 (16:08 +0000)]
src-release.sh: Add support for building binutils-linaro

9 years agobfd/version.h: Bump VERSION
Will Newton [Mon, 5 Jan 2015 16:08:31 +0000 (16:08 +0000)]
bfd/version.h: Bump VERSION

9 years agobfd/version.h: Update version for 2.25 2015.01 release
Will Newton [Mon, 5 Jan 2015 15:53:23 +0000 (15:53 +0000)]
bfd/version.h: Update version for 2.25 2015.01 release

9 years agoAssign file position for .strtab only if needed
H.J. Lu [Mon, 5 Jan 2015 12:42:37 +0000 (04:42 -0800)]
Assign file position for .strtab only if needed

bfd/

PR ld/17773
* elflink.c (bfd_elf_final_link): Assign the file position for
the symbol string table only there are symbols to be emitted.

ld/testsuite/

PR ld/17773
* ld-elf/binutils.exp (binutils_test): Add an optional
readelf_options.  Replace -l with $readelf_options.  Add a
gap test.
* ld/testsuite/ld-elf/gap.s: New file.

9 years agoAutomatic date update in version.in
GDB Administrator [Mon, 5 Jan 2015 00:00:54 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sun, 4 Jan 2015 00:00:58 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sat, 3 Jan 2015 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Fri, 2 Jan 2015 00:00:58 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Thu, 1 Jan 2015 00:00:53 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Wed, 31 Dec 2014 00:01:06 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Tue, 30 Dec 2014 00:01:11 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Mon, 29 Dec 2014 00:01:08 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sun, 28 Dec 2014 00:00:53 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sat, 27 Dec 2014 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Fri, 26 Dec 2014 00:00:49 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Thu, 25 Dec 2014 00:00:47 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Wed, 24 Dec 2014 00:00:52 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoBump to version 2.25.0
Tristan Gingold [Tue, 23 Dec 2014 15:48:31 +0000 (16:48 +0100)]
Bump to version 2.25.0

bfd/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* version.m4: Bump version to 2.25.0
* configure: Regenerate.

binutils/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

gas/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

gprof/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

ld/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

opcodes/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

9 years agoAdd generated files.
Tristan Gingold [Tue, 23 Dec 2014 14:54:51 +0000 (15:54 +0100)]
Add generated files.

9 years agoVersion 2.25
Tristan Gingold [Tue, 23 Dec 2014 14:23:18 +0000 (15:23 +0100)]
Version 2.25

bfd/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* version.m4: Bump version to 2.25
* configure: Regenerate.

binutils/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

gas/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

gprof/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

ld/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

opcodes/
2014-12-23  Tristan Gingold  <gingold@adacore.com>

* configure: Regenerate.

9 years agoAutomatic date update in version.in
GDB Administrator [Tue, 23 Dec 2014 00:00:57 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Mon, 22 Dec 2014 00:00:58 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sun, 21 Dec 2014 00:00:59 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sat, 20 Dec 2014 00:00:57 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoRework the alignment check for BFD_RELOC_MIPS_18_PCREL_S3.
Matthew Fortune [Tue, 16 Dec 2014 12:39:22 +0000 (12:39 +0000)]
Rework the alignment check for BFD_RELOC_MIPS_18_PCREL_S3.

gas/

* config/tc-mips.c (md_apply_fix): Apply alignment check
to the symbol and offset rather than *valP for
BFD_RELOC_MIPS_18_PCREL_S3.  Also update the error message
for BFD_RELOC_MIPS_19_PCREL_S2.

gas/testsuite/

* gas/mips/r6-64.s: Remove .align directives from LDPC
instructions and add further tests for LDPC.
* gas/mips/r6-64-n32.d: remove the NOPs from LDPC expected
output and update for new tests.
* gas/mips/r6-64-n64.d: Likewise.
* gas/mips/ldpc-unalign.l: New file.
* gas/mips/ldpc-unalign.s: Likewise.
* gas/mips/mips.exp: Run ldpc-unalign test.

9 years agoFix all failing FPXX tests for tx39-elf.
Matthew Fortune [Thu, 18 Dec 2014 21:28:07 +0000 (21:28 +0000)]
Fix all failing FPXX tests for tx39-elf.

ld/testsuite/

* ld-mips-elf/attr-gnu-4-00.d: Relax check for ISA extension.
* ld-mips-elf/attr-gnu-4-01.d: Likewise.
* ld-mips-elf/attr-gnu-4-02.d: Likewise.
* ld-mips-elf/attr-gnu-4-03.d: Likewise.
* ld-mips-elf/attr-gnu-4-08.d: Likewise.
* ld-mips-elf/attr-gnu-4-10.d: Likewise.
* ld-mips-elf/attr-gnu-4-11.d: Likewise.
* ld-mips-elf/attr-gnu-4-18.d: Likewise.
* ld-mips-elf/attr-gnu-4-20.d: Likewise.
* ld-mips-elf/attr-gnu-4-22.d: Likewise.
* ld-mips-elf/attr-gnu-4-28.d: Likewise.
* ld-mips-elf/attr-gnu-4-30.d: Likewise.
* ld-mips-elf/attr-gnu-4-33.d: Likewise.
* ld-mips-elf/attr-gnu-4-38.d: Likewise.
* ld-mips-elf/attr-gnu-4-44.d: Likewise.

9 years agoFix undefined weak symbol reloc tests
Matthew Fortune [Thu, 18 Dec 2014 20:08:38 +0000 (20:08 +0000)]
Fix undefined weak symbol reloc tests

ld/testsuite/

* ld-mips-elf/mips-elf.exp: Update undefweak-overflow tests.
* ld-mips-elf/undefweak-overflow-n32.d: Remove.
* ld-mips-elf/undefweak-overflow-n64.d: Likewise.
* ld-mips-elf/undefweak-overflow.s: Set mips64r6, noreorder and
add a label to mark the micromips region.
* ld-mips-elf/undefweak-overflow.d: Update expected output.

9 years agoAdd in a JALRC alias and fix the NAL instruction.
Matthew Fortune [Tue, 16 Dec 2014 13:33:56 +0000 (13:33 +0000)]
Add in a JALRC alias and fix the NAL instruction.

opcodes/

* mips-opc.c (mips_builtin_opcodes): Add JALRC alias for JIALC.
Remove the operand from NAL.

gas/testsuite/

* gas/mips/r6.s: Test JALRC and NAL
* gas/mips/r6-n32.d: Add expected output for JALRC and NAL.
* gas/mips/r6-n64.d: Likewise.
* gas/mips/r6.d: Likewise.

9 years ago[MIPS] When calculating a relocation using an undefined weak symbol don't check for...
Andrew Bennett [Thu, 20 Nov 2014 15:40:16 +0000 (15:40 +0000)]
[MIPS] When calculating a relocation using an undefined weak symbol don't check for overflow.

In MIPS the relocation calculation only ignores the overflow checks for undefined
weak symbols on relocations associated with j/jal.   This patch extends this to
the relocations used by the: b* instructions; pc/gp relative symbol offsets; and the
lwpc/ldpc MIPS r6 instructions.

bfd/
* elfxx-mips.c (mips_elf_calculate_relocation): Only check for overflow
on non-weak undefined symbols.

ld/testsuite/
* ld-mips-elf/mips-elf.exp: Add in undefined weak overflow tests for
o32, n32 and n64.
* ld-mips-elf/undefweak-overflow.s: New test.
* ld-mips-elf/undefweak-overflow.d: New test.
* ld-mips-elf/undefweak-overflow-n32.d: New test.
* ld-mips-elf/undefweak-overflow-n64.d: New test.

9 years agoAutomatic date update in version.in
GDB Administrator [Fri, 19 Dec 2014 00:00:54 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Thu, 18 Dec 2014 00:00:49 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Wed, 17 Dec 2014 00:00:57 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Tue, 16 Dec 2014 00:00:51 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoCheck corrupt input
H.J. Lu [Mon, 15 Dec 2014 16:27:57 +0000 (08:27 -0800)]
Check corrupt input

PR ld/17713
* elflink.c (_bfd_elf_gc_mark_rsec): Check corrupt input.

9 years agoAutomatic date update in version.in
GDB Administrator [Mon, 15 Dec 2014 00:00:57 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoHandle weak alias for PIE with copy reloc
H.J. Lu [Sun, 14 Dec 2014 07:37:22 +0000 (23:37 -0800)]
Handle weak alias for PIE with copy reloc

When there is a weak symbol with a real definition, the processor
independent code will have arranged for us to see the real definition
first.  We need to copy the needs_copy bit from the real definition and
check it when allowing copy reloc in PIE.

bfd/

PR ld/17689
* elf64-x86-64.c (elf_x86_64_link_hash_entry): Add needs_copy.
Change has_bnd_reloc to bit field.
(elf_x86_64_link_hash_newfunc): Initialize needs_copy and
has_bnd_reloc to 0.
(elf_x86_64_check_relocs): Set has_bnd_reloc to 1 instead
of TRUE.
(elf_x86_64_adjust_dynamic_symbol): Copy needs_copy from the
real definition to a weak symbol.
(elf_x86_64_allocate_dynrelocs): Also check needs_copy of a
weak symbol for PIE when discarding space for relocs against
symbols which turn out to need copy relocs.
(elf_x86_64_relocate_section): Also check needs_copy of a
weak symbol for PIE with copy reloc.

ld/testsuite/

PR ld/17689
* ld-x86-64/pr17689.out: New file.
* ld-x86-64/pr17689.rd: Likewise.
* ld-x86-64/pr17689a.c: Likewise.
* ld-x86-64/pr17689b.S: Likewise.

* ld-x86-64/x86-64.exp: Run PR ld/17689 tests.

9 years agoAutomatic date update in version.in
GDB Administrator [Sun, 14 Dec 2014 00:00:45 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sat, 13 Dec 2014 00:00:50 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Fri, 12 Dec 2014 00:00:44 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Thu, 11 Dec 2014 00:00:54 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoDon't access elf tdata in dwarf.c without first checking for an ELF bfd
Alan Modra [Wed, 10 Dec 2014 03:36:42 +0000 (14:06 +1030)]
Don't access elf tdata in dwarf.c without first checking for an ELF bfd

_bfd_dwarf2_find_nearest_line may be called on a COFF bfd.

* dwarf2.c (read_address): Check bfd_target_elf_flavour before
calling get_elf_backend_data.
(_bfd_dwarf2_find_nearest_line): Fix parens.

9 years agoAutomatic date update in version.in
GDB Administrator [Wed, 10 Dec 2014 00:00:50 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Tue, 9 Dec 2014 00:00:47 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Mon, 8 Dec 2014 00:00:48 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sun, 7 Dec 2014 00:00:56 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sat, 6 Dec 2014 00:00:52 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoDefine bfd_elf32_get_synthetic_symtab for x32
H.J. Lu [Fri, 5 Dec 2014 12:52:47 +0000 (04:52 -0800)]
Define bfd_elf32_get_synthetic_symtab for x32

* elf64-x86-64.c (bfd_elf32_get_synthetic_symtab): New.

9 years agoAdd _bfd_elf_ifunc_get_synthetic_symtab
H.J. Lu [Thu, 4 Dec 2014 22:19:41 +0000 (14:19 -0800)]
Add _bfd_elf_ifunc_get_synthetic_symtab

In i386 and x86-64 binaries with ifunc, relocations against .got.plt
section may not be in the same order as entries in PLT section.  This
patch adds _bfd_elf_ifunc_get_synthetic_symtab.  It takes a function
pointer which returns an array of PLT entry symbol values.  It calls
the function pointer to get the PLT entry symbol value array indexed
by relocation index, instead of calling plt_sym_val on each relocation
index.

PR binutils/17677
* elf-bfd.h (_bfd_elf_ifunc_get_synthetic_symtab): New prototype.
* elf-ifunc.c (_bfd_elf_ifunc_get_synthetic_symtab): New
function.
* elf32-i386.c (elf_i386_plt_sym_val): Removed.
(elf_backend_plt_sym_val): Likewise.
(elf_i386_get_plt_sym_val): New.
(elf_i386_get_synthetic_symtab): Likewise.
(bfd_elf32_get_synthetic_symtab): Likewise.
* elf64-x86-64.c (elf_x86_64_plt_sym_val): Removed.
(elf_x86_64_plt_sym_val_offset_plt_bnd): Likewise.
(elf_backend_plt_sym_val): Likewise.
(elf_x86_64_get_plt_sym_val): New.
(elf_x86_64_get_synthetic_symtab): Use
_bfd_elf_ifunc_get_synthetic_symtab.
(bfd_elf64_get_synthetic_symtab): Don't undefine for NaCl.

9 years agoAutomatic date update in version.in
GDB Administrator [Fri, 5 Dec 2014 00:00:49 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoPowerPC gold, fix 32-bit branch address arithmetic
Alan Modra [Thu, 4 Dec 2014 11:15:05 +0000 (21:45 +1030)]
PowerPC gold, fix 32-bit branch address arithmetic

Mixing 64-bit and 32-bit types led to the wrong promotions.  Keep
calculation in same type.  Also fix a case where PLTREL24 reloc addend
should be ignored.

* Powerpc.cc (Target_powerpc::Branch_info::make_stub): Ignore
addend of PLTREL24 reloc when not generating a plt stub.  Make
max_branch_offset an "Address".
(Target_powerpc::Relocate::relocate): Make max_branch_offset
an "Address".

9 years agopowerpc gold, work around pr17670
Alan Modra [Wed, 3 Dec 2014 05:47:23 +0000 (16:17 +1030)]
powerpc gold, work around pr17670

pr17670 is about an assert triggering on a branch to an undefined
weak symbol, the symbol being undefined due to dropping its comdat
group section.  (Well sort of.  The symbol is actually defined in
an .opd section which isn't part of the group, but the code section
the opd entry points at is dropped.)  So don't assert.
Also, don't make long branch stubs to such symbols, and arrange to
have target-reloc.h code warn when applying relocs that use the sym.

PR 17670
* symtab.cc (Symbol::set_undefined): Remove assertion.
* powerpc.cc (Target_powerpc::symval_for_branch): Don't assert
on symbols defined in discarded sections, instead return false.
Rearrange params, update all callers.
(Target_powerpc::Branch_info::make_stub): Don't make stubs for
branches to syms in discarded sections.
(Global_symbol_visitor_opd::operator()): Set discarded opd syms
undefined and flag as discarded.
(Target_powerpc::Relocate::relocate): Localize variable.

9 years agoAutomatic date update in version.in
GDB Administrator [Thu, 4 Dec 2014 00:01:02 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoReplace copyreloc-main.c with copyreloc-main.S
H.J. Lu [Wed, 3 Dec 2014 16:40:19 +0000 (08:40 -0800)]
Replace copyreloc-main.c with copyreloc-main.S

* ld-x86-64/copyreloc-main.c: Removed.
* ld-x86-64/copyreloc-main.S: New.
* ld-x86-64/x86-64.exp: Replace copyreloc-main.c with
copyreloc-main.S.

9 years agoReformat elf_x86_64_create_dynamic_sections
H.J. Lu [Wed, 3 Dec 2014 16:10:04 +0000 (08:10 -0800)]
Reformat elf_x86_64_create_dynamic_sections

* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Reformat.

9 years agopowerpc gold, fix pr17566
Alan Modra [Wed, 3 Dec 2014 11:26:19 +0000 (21:56 +1030)]
powerpc gold, fix pr17566

Code stolen from arm.cc.

PR 17566
* powerpc.cc (Target_powerpc::Scan::local): Use add_local_section
when adding dynamic relocations against section symbols.

9 years agoX86-64: Allow copy relocs for building PIE
H.J. Lu [Tue, 2 Dec 2014 23:14:28 +0000 (15:14 -0800)]
X86-64: Allow copy relocs for building PIE

This patch allows copy relocs for non-GOT pc-relative relocation in PIE.

bfd/

* elf64-x86-64.c (elf_x86_64_create_dynamic_sections): Always
allow copy relocs for building executables.
(elf_x86_64_adjust_dynamic_symbol): Allocate copy relocs for
PIE.
(elf_x86_64_allocate_dynrelocs): For PIE, discard space for
relocs against symbols which turn out to need copy relocs.
(elf_x86_64_relocate_section): Don't copy a pc-relative
relocation into the output file if the symbol needs copy reloc.

ld/testsuite/

* ld-x86-64/copyreloc-lib.c: New file.
* ld-x86-64/copyreloc-main.c: Likewise.
* ld-x86-64/copyreloc-main.out: Likewise.
* ld-x86-64/copyreloc-main1.rd: Likewise.
* ld-x86-64/copyreloc-main2.rd: Likewise.

* ld-x86-64/x86-64.exp: Run copyreloc tests.

9 years agoAutomatic date update in version.in
GDB Administrator [Wed, 3 Dec 2014 00:00:51 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Tue, 2 Dec 2014 00:01:00 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoAdd tests for PR ld/16452 and PR ld/16457
H.J. Lu [Mon, 1 Dec 2014 14:06:21 +0000 (06:06 -0800)]
Add tests for PR ld/16452 and PR ld/16457

PR ld/16452
PR ld/16457
* ld-elf/pr16452.map: New file.
* ld-elf/pr16452.od: Likewise.
* ld-elf/pr16452a.c: Likewise.
* ld-elf/pr16452b.c: Likewise.
* ld-elf/pr16457.od: Likewise.

* ld-elf/shared.exp (build_tests): Add tests for PR ld/16452 and
PR ld/16457.

9 years agoAutomatic date update in version.in
GDB Administrator [Mon, 1 Dec 2014 00:00:49 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoPower4 should treat mftb as extended mfspr mnemonic
Alan Modra [Sat, 29 Nov 2014 08:43:17 +0000 (19:13 +1030)]
Power4 should treat mftb as extended mfspr mnemonic

On further reading of ISA manual it appears gas should have been
treating mftb and mftbu as extended mnemonics for mfspr, for ISA 2.03
and later.

opcodes/
* ppc-opc.c (powerpc_opcodes): Make mftb* generate mfspr for
power4 and later.
gas/testsuite/
* gas/ppc/a2.d: Update for mftb change.
* gas/ppc/476.d: Likewise.

9 years agoDon't deprecate powerpc mftb insn
Alan Modra [Fri, 28 Nov 2014 02:51:52 +0000 (13:21 +1030)]
Don't deprecate powerpc mftb insn

mftb is marked phased out in the architecture manual, but we can keep
it as an extended mnemonic for mftbl.

* ppc-opc.c (powerpc_opcodes <mftb>): Don't deprecate for power7.
(TB): Delete.
(insert_tbr, extract_tbr): Validate tbr number.

9 years agoDon't output symbol version definitions for non-DT_NEEDED libs
Alan Modra [Thu, 27 Nov 2014 04:46:49 +0000 (15:16 +1030)]
Don't output symbol version definitions for non-DT_NEEDED libs

PR 16452, 16457
* elflink.c (_bfd_elf_link_find_version_dependencies): Exclude
symbols from libraries that won't be listed in DT_NEEDED.
(elf_link_output_extsym): Don't output verdefs for such symbols.

9 years agoAutomatic date update in version.in
GDB Administrator [Sun, 30 Nov 2014 00:01:05 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sat, 29 Nov 2014 00:00:50 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Fri, 28 Nov 2014 00:00:46 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Thu, 27 Nov 2014 00:01:07 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years ago[GOLD] PowerPC relaxation corner case
Alan Modra [Wed, 26 Nov 2014 00:25:58 +0000 (10:55 +1030)]
[GOLD] PowerPC relaxation corner case

It's possible for the section grouping code to decide that the last
section looked at (the first section by address) doesn't fit into a
group.  In one case that section is already a group owner and that is
handled correctly.  In other cases the section should be put into its
own group.  Like this:

* powerpc.cc (Stub_control::set_output_and_owner): New function.
(Target_powerpc::group_sections): Use it.

9 years agoFix corrupted .eh_frame section with LTO and --gc-sections.
Cary Coutant [Tue, 25 Nov 2014 21:55:42 +0000 (13:55 -0800)]
Fix corrupted .eh_frame section with LTO and --gc-sections.

Backport from trunk:

When --gc-sections is turned on during an LTO link, the .eh_frame sections
from deferred files are processed before those from the replacement files.
As a result, the section end-cap from crtendS.o is placed ahead of
the .eh_frame data from the replacement files. This patch fixes the bug
by skipping the layout of the deferred sections during GC pass 2.

gold/
PR gold/17639
* object.cc (Sized_relobj_file): Initialize is_deferred_layout_.
(Sized_relobj_file::do_layout): Handle deferred sections properly
during GC pass 1. Don't add reloc sections to deferred list twice.
* object.h (Sized_relobj_file::is_deferred_layout): New function.
(Sized_relobj_file::is_deferred_layout_): New data member.

9 years agoAutomatic date update in version.in
GDB Administrator [Wed, 26 Nov 2014 00:01:02 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Tue, 25 Nov 2014 00:01:45 +0000 (00:01 +0000)]
Automatic date update in version.in

9 years ago[AArch64] Cortex-A53 Erratum 835769 -- sort maps
Jiong Wang [Mon, 24 Nov 2014 13:49:48 +0000 (13:49 +0000)]
[AArch64] Cortex-A53 Erratum 835769 -- sort maps

2014-11-24  Tejas Belagod  <tejas.belagod@arm.com>

  bfd/
    * elfnn-aarch64.c (elf_aarch64_compare_mapping): New.
    (erratum_835769_scan): Sort map list.

9 years agoPowerPC64 --plt-align
Alan Modra [Mon, 24 Nov 2014 02:11:33 +0000 (12:41 +1030)]
PowerPC64 --plt-align

Alignment of plt stubs was broken, firstly because the option was
being dropped due to the alignment value not being set in the "params"
struct used in elf64-ppc.c, and secondly due to not calculating the
number of alignment boundary crossings correctly.

bfd/
* elf64-ppc.c (plt_stub_pad): Correct.
ld/
* ld.texinfo: Correct --plt-align documentation.
* emultempl/ppc64elf.em (plt_stub_align): Delete.  Use and set
params.plt_stub_align instead.

9 years agoAutomatic date update in version.in
GDB Administrator [Mon, 24 Nov 2014 00:00:56 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sun, 23 Nov 2014 00:00:59 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Sat, 22 Nov 2014 00:00:56 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoAutomatic date update in version.in
GDB Administrator [Fri, 21 Nov 2014 00:00:52 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoPPC gold doesn't check for overflow properly
Alan Modra [Thu, 20 Nov 2014 21:45:04 +0000 (08:15 +1030)]
PPC gold doesn't check for overflow properly

* powerpc.cc (Target_powerpc::Relocate::relocate): Correct test
for undefined weaks.

9 years agoPPC gold doesn't check for overflow properly
Alan Modra [Thu, 20 Nov 2014 08:31:23 +0000 (19:01 +1030)]
PPC gold doesn't check for overflow properly

Corrects overflow test for rel14, addr14, rel24, addr24 branch relocs,
and prints an information message to give a hint as to how a branch
that can't reach a stub might be cured.

bfd/
* elf64-ppc.c (group_sections): Init stub14_group_size from
--stub-group-size parameter divided by 1024.
gold/
* powerpc.cc (Stub_control::Stub_control): Init stub14_group_size_
from --stub-group-size parameter divided by 1024.
(Powerpc_relocate_functions::rela, rela_ua): Add fieldsize
template parameter.  Update all uses.
(Target_powerpc::Relocate::relocate): Rename has_plt_value to
has_stub_value.  Set for long branches.  Don't report overflow for
branch to undefined weak symbols.  Print info message on
overflowing branch to stub.

9 years agoppc476 workaround sizing
Alan Modra [Thu, 20 Nov 2014 10:37:58 +0000 (21:07 +1030)]
ppc476 workaround sizing

* elf32-ppc.c (ppc_elf_relax_section): Correct ppc476 workaround
alignment calculation.

9 years agoAutomatic date update in version.in
GDB Administrator [Thu, 20 Nov 2014 00:00:47 +0000 (00:00 +0000)]
Automatic date update in version.in

9 years agoDefault powerpc64 to --plt-thread-safe for Go
Alan Modra [Wed, 19 Nov 2014 22:22:46 +0000 (08:52 +1030)]
Default powerpc64 to --plt-thread-safe for Go

Go is multi-threaded, so use thread-safe plt stubs.  __go_go doesn't
actually start threads, but is a convenient libgo function with a
reasonably unique name that is called by all Go executables.  (Threads
are started by a static function of libgo, runtime_newosproc, called
by a whole lot of global functions, including runtime_starttheworld
and runtime_main.)

bfd/
* elf64-ppc.c (ppc64_elf_size_stubs): Add __go_go to thread_starters.
gold/
* powerpc.cc (Target_powerpc::do_relax): Add __go_go to thread_starters.

9 years agodaily update
Alan Modra [Wed, 19 Nov 2014 00:00:16 +0000 (10:30 +1030)]
daily update

9 years agoAlways run mpx3 and mpx4 tests in 64-bit
H.J. Lu [Tue, 18 Nov 2014 13:55:32 +0000 (05:55 -0800)]
Always run mpx3 and mpx4 tests in 64-bit

* ld-x86-64/mpx.exp: Always run mpx3 and mpx4 tests in 64-bit.

9 years agoAdd -z bndplt to generate BND prefix in PLT entries
Igor Zamyatin [Tue, 18 Nov 2014 07:52:36 +0000 (10:52 +0300)]
Add -z bndplt to generate BND prefix in PLT entries

This patch adds "-z bndplt" option Linux/x86-64 linker to generate BND
prefix in PLT entries.  It also updated Linux/x86-64 assembler not to
generate R_X86_64_PLT32_BND nor R_X86_64_PC32_BND relocations.

bfd/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

* elf64-x86-64.c (elf_x86_64_check_relocs): Enable MPX PLT only
for -z bndplt.

gas/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

* config/tc-i386-intel.c (i386_operator): Remove last argument
from lex_got call.
* config/tc-i386.c (reloc): Remove bnd_prefix from parameters'
list.  Return always BFD_RELOC_32_PCREL.
* (output_branch): Remove condition for BFD_RELOC_X86_64_PC32_BND.
* (output_jump): Update call to reloc accordingly.
* (output_interseg_jump): Likewise.
* (output_disp): Likewise.
* (output_imm): Likewise.
* (x86_cons_fix_new): Likewise.
* (lex_got): Remove bnd_prefix from parameters' list in macro and
declarations. Don't use BFD_RELOC_X86_64_PLT32_BND.
* (x86_cons): Update call to lex_got accordingly.
* (i386_immediate): Likewise.
* (i386_displacement): Likewise.
* (md_apply_fix): Don't use BFD_RELOC_X86_64_PLT32_BND nor
BFD_RELOC_X86_64_PC32_BND.
* (tc_gen_reloc): Likewise.

include/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

* bfdlink.h (struct bfd_link_info): Add bndplt.

ld/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

* emulparams/elf_x86_64.sh (BNDPLT): Set to yes for x86_64.
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle
"-z bndplt" if BNDPLT is yes.
(gld${EMULATION_NAME}_list_options): Add "-z bndplt" entry.
* ld.texinfo: Add description for bndplt.

ld/testsuite/

2014-11-18  Igor Zamyatin  <igor.zamyatin@intel.com>

* ld-x86-64/bnd-ifunc-1.d: Add bndplt option.
* ld-x86-64/bnd-ifunc-2.d: Likewise.
* ld-x86-64/bnd-plt-1.d: Likewise.  Update dissassembly sections.
* ld-x86-64/mpx.exp: Handle mpx3 and mpx4 tests.
* ld-x86-64/mpx1a.rd: Remove _BND from relocation name.
* ld-x86-64/mpx1c.rd: Likewise.
* ld-x86-64/mpx2a.rd: Likewise.
* ld-x86-64/mpx2c.rd: Likewise.
* ld-x86-64/mpx3.dd: New file.
* ld-x86-64/mpx3a.s: Likewise.
* ld-x86-64/mpx3b.s: Likewise.
* ld-x86-64/mpx4.dd: Likewise.
* ld-x86-64/mpx4a.s: Likewise.
* ld-x86-64/mpx4b.s: Likewise.

9 years ago[AArch64] Add xgene2.
Philipp Tomsich [Tue, 18 Nov 2014 11:24:14 +0000 (11:24 +0000)]
[AArch64] Add xgene2.

Conflicts:
gas/doc/c-aarch64.texi

9 years ago[AArch64] Add xgene1.
Philipp Tomsich [Tue, 18 Nov 2014 11:19:05 +0000 (11:19 +0000)]
[AArch64] Add xgene1.

The name xgene1 superceeds xgene-1.  We retain support for the
original xgene-1 for compatibility but drop it from documentation.

Conflicts:
gas/config/tc-aarch64.c

9 years ago[AArch64] Enable CRC feature in GAS for cortex-a53 and cortex-a57.
Marcus Shawcroft [Tue, 18 Nov 2014 14:00:56 +0000 (14:00 +0000)]
[AArch64] Enable CRC feature in GAS for cortex-a53 and cortex-a57.

9 years agoRevert "[AArch64] Enable CRC feature in GAS for cortex-a53 and cortex-a57."
Marcus Shawcroft [Tue, 18 Nov 2014 13:59:37 +0000 (13:59 +0000)]
Revert "[AArch64] Enable CRC feature in GAS for cortex-a53 and cortex-a57."

This reverts commit 9224a67a27a5adb4524a5d9b730045205ec04e9a.