aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-09-262016-09-26 Andre Vieira <andre.simoesdiasvieira@arm.com>users/ARM/embedded-binutils-2_26-branch-2016q3users/ARM/embedded-binutils-2_26-branchThomas Preud'homme2-6/+19
Backport from mainline 2016-02-16 Nick Clifton <nickc@redhat.com> gas/ * doc/as.texinfo (Section): Fix up texinfo snafus in previous update.
2016-09-262016-09-26 Andre Vieira <andre.simoesdiasvieira@arm.com>Thomas Preud'homme68-196/+331
Backport from mainline 2016-02-15 Nick Clifton <nickc@redhat.com> bfd/ * elf-bfd.h (struct bfd_elf_special_section): Use unsigned values for length and type fields. Use a signed value for the suffix_length field. binutils/ * readelf.c (get_section_type_name): Add hex prefix to offsets printed for LOPROC and LOOS values. Ensure that a result is always returned for the V850 target, even when an unrecognised processor specific value is encountered. (process_section_headers): Display key values in the order in which they appear to the user. Add the "C (compressed)" value to the list. gas/ * doc/as.texinfo (.section): Document that numeric values can now be used for the flags and type fields of the ELF target's .section directive. Add notes about the restrictions on setting flags and types. * config/obj-elf.c (obj_elf_change_section): Allow known sections to be given processor specific section types. Allow processor and application specific flags of a section to be set after definition. (obj_elf_parse_section_letters): Handle parsing numeric values. (obj_elf_section_type): Handle parsing numeric values. (obj_elf_section): Allow numeric type values. * config/obj-elf.h (obj_elf_change_section): Update prototype. * NEWS: Mention the new feature. gas/testsuite/ * testsuite/gas/elf/section10.d: New test. * testsuite/gas/elf/section10.s: Source file for new test. * testsuite/gas/elf/elf.exp: Run the new test. * testsuite/gas/i386/ilp32/x86-64-unwind.d: Remove dependency upon the description of the flags produced by readelf. * testsuite/gas/tic6x/scomm-directive-4.d: Likewise. ld/testsuite/ * testsuite/ld-i386/pr12718.d: Remove dependency upon the description of the flags produced by readelf. * testsuite/ld-i386/pr12921.d: Likewise. * testsuite/ld-i386/tlsbin-nacl.rd: Likewise. * testsuite/ld-i386/tlsbin.rd: Likewise. * testsuite/ld-i386/tlsbindesc-nacl.rd: Likewise. * testsuite/ld-i386/tlsbindesc.rd: Likewise. * testsuite/ld-i386/tlsdesc-nacl.rd: Likewise. * testsuite/ld-i386/tlsdesc.rd: Likewise. * testsuite/ld-i386/tlsgdesc-nacl.rd: Likewise. * testsuite/ld-i386/tlsgdesc.rd: Likewise. * testsuite/ld-i386/tlsnopic-nacl.rd: Likewise. * testsuite/ld-i386/tlsnopic.rd: Likewise. * testsuite/ld-i386/tlspic-nacl.rd: Likewise. * testsuite/ld-i386/tlspic.rd: Likewise. * testsuite/ld-s390/tlsbin.rd: Likewise. * testsuite/ld-s390/tlsbin_64.rd: Likewise. * testsuite/ld-s390/tlspic.rd: Likewise. * testsuite/ld-s390/tlspic_64.rd: Likewise. * testsuite/ld-sh/tlsbin-2.d: Likewise. * testsuite/ld-sh/tlspic-2.d: Likewise. * testsuite/ld-tic6x/common.d: Likewise. * testsuite/ld-tic6x/shlib-1.rd: Likewise. * testsuite/ld-tic6x/shlib-1b.rd: Likewise. * testsuite/ld-tic6x/shlib-1r.rd: Likewise. * testsuite/ld-tic6x/shlib-1rb.rd: Likewise. * testsuite/ld-tic6x/shlib-app-1.rd: Likewise. * testsuite/ld-tic6x/shlib-app-1b.rd: Likewise. * testsuite/ld-tic6x/shlib-app-1r.rd: Likewise. * testsuite/ld-tic6x/shlib-app-1rb.rd: Likewise. * testsuite/ld-tic6x/shlib-noindex.rd: Likewise. * testsuite/ld-tic6x/static-app-1.rd: Likewise. * testsuite/ld-tic6x/static-app-1b.rd: Likewise. * testsuite/ld-tic6x/static-app-1r.rd: Likewise. * testsuite/ld-tic6x/static-app-1rb.rd: Likewise. * testsuite/ld-x86-64/ilp32-4-nacl.d: Likewise. * testsuite/ld-x86-64/ilp32-4.d: Likewise. * testsuite/ld-x86-64/pr12718.d: Likewise. * testsuite/ld-x86-64/pr12921.d: Likewise. * testsuite/ld-x86-64/split-by-file-nacl.rd: Likewise. * testsuite/ld-x86-64/split-by-file.rd: Likewise. * testsuite/ld-x86-64/tlsbin-nacl.rd: Likewise. * testsuite/ld-x86-64/tlsbin.rd: Likewise. * testsuite/ld-x86-64/tlsbindesc-nacl.rd: Likewise. * testsuite/ld-x86-64/tlsbindesc.rd: Likewise. * testsuite/ld-x86-64/tlsdesc-nacl.rd: Likewise. * testsuite/ld-x86-64/tlsdesc.rd: Likewise. * testsuite/ld-x86-64/tlsgdesc-nacl.rd: Likewise. * testsuite/ld-x86-64/tlsgdesc.rd: Likewise. * testsuite/ld-x86-64/tlspic-nacl.rd: Likewise. * testsuite/ld-x86-64/tlspic.rd: Likewise. * testsuite/ld-xtensa/tlsbin.rd: Likewise. * testsuite/ld-xtensa/tlspic.rd: Likewise.
2016-09-26Fix for PURECODE readelf backportThomas Preud'homme2-2/+7
2016-09-26 Andre Vieira <andre.simoesdiasvieira@arm.com> binutils/ * readelf.c (get_elf_section_flags): Fix readelf after purecode backport.
2016-09-23Add support for PURECODEThomas Preud'homme14-7/+256
2016-09-23 Andre Vieria <andre.simoesdiasvieira@arm.com> bfd/ * bfd-in2.h (SEC_ELF_PURECODE): New. * elf32-arm.c (THUMB32_MOVT): New veneer macro. (THUMB32_MOVW): Likewise. (elf32_arm_stub_long_branch_thumb2_only_pure): New. (DEF_STUBS): Define long_branch_thumb2_only_pure. (arm_stub_is_thumb): Add new veneer stub. (arm_type_of_stub): Use new veneer. (arm_stub_required_alignment): Add new veneer. (elf32_arm_post_process_headers): Set p_flag. (elf32_arm_fake_sections): Handle SEC_ELF_PURECODE. (elf32_arm_section_flags): New. (elf_backend_section_flags): Define to elf32_arm_section_flags. (elf32_arm_lookup_section_flags): New. (elf_backend_lookup_section_flags_hook): Define to elf32_arm_lookup_section_flags. * section.c (SEC_ELF_PURECODE): NEW. binutils/ * objdump.c (dump_section_header): Handle SEC_ELF_PURECODE. * readelf.c (get_elf_section_flags): Handle PURECODE. (process_section_headers): Add purecode to help message. include/elf/ * arm.h (SHF_ARM_PURECODE): New. ld/testsuite/ * ld-arm/arm_purecode.ld: New. * ld-arm/farcall-thumb2-purecode.d: New test result. * ld-arm/farcall-thumb2-purecode.s: New test. * ld-arm/arm-elf.exp: Run it.
2016-09-23Bump dateThomas Preud'homme1-1/+1
2016-09-22Fix Thumb-2 BL detectionThomas Preud'homme6-9/+52
2016-09-22 Andre Vieira <andre.simoesdiasvieira@arm.com> Backport from mainline 2016-07-01 Thomas Preud'homme <thomas.preudhomme@arm.com> bfd/ * elf32-arm.c (using_thumb2_bl): New function. (arm_type_of_stub): Declare thumb2 variable together and change type to bfd_boolean. Use using_thumb2_bl () to determine whether THM_MAX_FWD_BRANCH_OFFSET or THM2_MAX_FWD_BRANCH_OFFSET should be checked for BL range. (elf32_arm_final_link_relocate): Use using_thumb2_bl () to determine the bit size of BL offset. ld/ * testsuite/ld-arm/arm-elf.exp (Thumb-2 BL): Assemble for ARMv7. (Thumb-2 BL on ARMv6-M): New testcase. * testsuite/ld-arm/thumb2-bl.d: Do not try to match testcase filename. * testsuite/ld-arm/thumb2-bl.s: Do not select architecture.
2016-09-22Fix feature checks based on ARM architecture valueThomas Preud'homme2-17/+51
2016-09-22 Andre Vieira <andre.simoesdiasvieira@arm.com> Backport from mainline 2016-06-14 Thomas Preud'homme <thomas.preudhomme@arm.com> bfd/ * elf32-arm.c (using_thumb_only): Force review of arch check logic for new architecture. (using_thumb2): Try Tag_THUMB_ISA_use first and check for exact arch value then. Force review of arch check logic for new architecture. (arch_has_arm_nop): Update and fix arch check logic. Force review of that logic for new architecture. (arch_has_thumb2_nop): Remove. (elf32_arm_tls_relax): Use using_thumb2 instead of above function. (elf32_arm_final_link_relocate): Likewise but using thumb2.
2016-09-22Fix of backport for thumb2 long branch veneersThomas Preud'homme2-0/+6
2016-09-22 Andre Vieira <andre.simoesdiasvieira@arm.com> bfd/ * elf32-arm.c (arm_new_stubs_start_offset_ptr): Add case for arm_stub_long_branch_thumb2_only.
2016-09-212016-09-21 Andre Vieira <andre.simoesdiasvieira@arm.com>Thomas Preud'homme7-15/+64
Backport from mainline 2016-06-17 Thomas Preud'homme <thomas.preudhomme@arm.com> Tony Wang <tony.wang@arm.com> bfd/ * elf32-arm.c (elf32_arm_stub_long_branch_thumb2_only): Define stub sequence. (stub_long_branch_thumb2_only): Define stub. (arm_stub_is_thumb): Add case for arm_stub_long_branch_thumb2_only. (arm_stub_long_branch_thumb2_only): Likewise. (arm_type_of_stub): Use arm_stub_long_branch_thumb2_only for Thumb-2 capable targets. ld/ * testsuite/ld-arm/arm-elf.exp (Thumb-Thumb farcall M profile): Assemble for ARMv6-M. (Thumb2-Thumb2 farcall M profile): New testcase. * testsuite/ld-arm/farcall-thumb2-thumb2-m.d: New file. * testsuite/ld-arm/jump-reloc-veneers-cond-long-backward.d: Update to reflect the use of Thumb-2 veneers for Thumb-2 capable targets. * testsuite/ld-arm/jump-reloc-veneers-cond-long.d: Likewise.
2016-09-20Merge remote-tracking branch 'origin/binutils-2_26-branch' into ↵Thomas Preud'homme87-826/+1808
embedded-binutils-2_26-branch
2016-09-16Backport lastest POWER9 support to match final ISA 3.0 documentation.Peter Bergner5-87/+48
opcodes/ Apply from master. 2016-09-14 Peter Bergner <bergner@vnet.ibm.com> * ppc-opc.c (powerpc_opcodes) <slbiag>: New mnemonic. <addex., brd, brh, brw, lwzmx, nandxor, rldixor, setbool, xor3>: Delete mnemonics. <cp_abort>: Rename mnemonic from ... <cpabort>: ...to this. <setb>: Change to a X form instruction. <sync>: Change to 1 operand form. <copy>: Delete mnemonic. <copy_first>: Rename mnemonic from ... <copy>: ...to this. <paste, paste.>: Delete mnemonics. <paste_last>: Rename mnemonic from ... <paste.>: ...to this. gas/ Apply from master. 2016-09-14 Peter Bergner <bergner@vnet.ibm.com> * testsuite/gas/ppc/power9.d <slbiag, cpabort> New tests. <addex., brd, brh, brw, lwzmx, nandxor, rldixor, setbool, xor3, cp_abort, copy_first, paste, paste_last, sync>: Remove tests. <copy, paste.>: Update tests. * testsuite/gas/ppc/power9.s: Likewise.
2016-08-262016-08-26 Thomas Preud'homme <thomas.preudhomme@arm.com>Thomas Preud'homme8-80/+373
Backport from mainline 2016-08-26 Thomas Preud'homme <thomas.preudhomme@arm.com> gas/ * config/tc-arm.c (v7m_psrs): Add MSPLIM, PSPLIM, MSPLIM_NS, PSPLIM_NS, PRIMASK_NS, BASEPRI_NS, FAULTMASK_NS, CONTROL_NS, SP_NS and their lowecase counterpart special registers. Write register identifier in hex. * testsuite/gas/arm/archv8m-cmse-msr.s: Reorganize tests per operation, special register and then case. Use different register for each operation. Add tests for new special registers. * testsuite/gas/arm/archv8m-cmse-msr-base.d: Adapt expected result accordingly. * testsuite/gas/arm/archv8m-cmse-msr-main.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-4.d: Likewise. opcodes/ * arm-dis.c (psr_name): Use hex as case labels. Add detection for MSPLIM, PSPLIM, MSPLIM_NS, PSPLIM_NS, PRIMASK_NS, BASEPRI_NS, FAULTMASK_NS, CONTROL_NS and SP_NS special registers.
2016-08-252016-08-25 Thomas Preud'homme <thomas.preudhomme@arm.com>Thomas Preud'homme6-34/+15
Backport from mainline 2016-08-25 Thomas Preud'homme <thomas.preudhomme@arm.com> * config/tc-arm.c (v7m_psrs): Remove msp_s, MSP_S, psp_s and PSP_S special registers. * testsuite/gas/arm/archv8m-cmse-msr.s: Remove test for above special registers. * testsuite/gas/arm/archv8m-cmse-msr-base.d: Likewise. * testsuite/gas/arm/archv8m-cmse-msr-main.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-4.d: Likewise.
2016-08-03PowerPC64 ld segfault with code in non-executable sectionsAlan Modra2-0/+7
PR ld/20428 * elf64-ppc.c (ppc_get_stub_entry): Don't segfault on NULL group.
2016-07-26Automatic date update in version.inGDB Administrator1-1/+1
2016-07-25Automatic date update in version.inGDB Administrator1-1/+1
2016-07-24Automatic date update in version.inGDB Administrator1-1/+1
2016-07-23Automatic date update in version.inGDB Administrator1-1/+1
2016-07-22Automatic date update in version.inGDB Administrator1-1/+1
2016-07-21Automatic date update in version.inGDB Administrator1-1/+1
2016-07-20Automatic date update in version.inGDB Administrator1-1/+1
2016-07-19Automatic date update in version.inGDB Administrator1-1/+1
2016-07-18Automatic date update in version.inGDB Administrator1-1/+1
2016-07-17Automatic date update in version.inGDB Administrator1-1/+1
2016-07-16Automatic date update in version.inGDB Administrator1-1/+1
2016-07-15Automatic date update in version.inGDB Administrator1-1/+1
2016-07-14Automatic date update in version.inGDB Administrator1-1/+1
2016-07-13Automatic date update in version.inGDB Administrator1-1/+1
2016-07-12Automatic date update in version.inGDB Administrator1-1/+1
2016-07-11Automatic date update in version.inGDB Administrator1-1/+1
2016-07-10Automatic date update in version.inGDB Administrator1-1/+1
2016-07-09Automatic date update in version.inGDB Administrator1-1/+1
2016-07-08Automatic date update in version.inGDB Administrator1-1/+1
2016-07-07Automatic date update in version.inGDB Administrator1-1/+1
2016-07-06Automatic date update in version.inGDB Administrator1-1/+1
2016-07-05Automatic date update in version.inGDB Administrator1-1/+1
2016-07-04Automatic date update in version.inGDB Administrator1-1/+1
2016-07-03Automatic date update in version.inGDB Administrator1-1/+1
2016-07-02Automatic date update in version.inGDB Administrator1-1/+1
2016-07-01Revert previous patch.Tristan Gingold6-18/+0
2016-07-01Generate markers for 2.27Tristan Gingold6-0/+18
binutils/ 2016-07-01 Tristan Gingold <gingold@adacore.com> * NEWS: Add marker for 2.27. gas/ 2016-07-01 Tristan Gingold <gingold@adacore.com> * NEWS: Add marker for 2.27. ld/ 2016-07-01 Tristan Gingold <gingold@adacore.com> * NEWS: Add marker for 2.27.
2016-07-01Automatic date update in version.inGDB Administrator1-1/+1
2016-06-30Automatic date update in version.inGDB Administrator1-1/+1
2016-06-29Bump to 2.26.2, development mode.Tristan Gingold14-62/+91
bfd/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * version.m4: Bump version to 2.26.2 * configure: Regenerate. binutils/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate. gas/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate. gprof/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate. ld/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate. opcodes/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate.
2016-06-29Bump to 2.26.1, commit generated files.binutils-2_26_1Tristan Gingold36-755/+821
bfd/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * version.m4: Bump version to 2.26.1 * configure: Regenerate. binutils/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate. gas/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate. gprof/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate. ld/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate. opcodes/ 2016-06-29 Tristan Gingold <gingold@adacore.com> * configure: Regenerate.
2016-06-29MIPS/GAS: Fix an ISA override not lifting ABI restrictionsMaciej W. Rozycki46-8/+778
Correct a regression introduced with commit 919731affbef ("Add MIPS .module directive") causing code like: .set mips3 dli $2, 0x9000000080000000 to fail assembly with the following error message produced: Error: number (0x9000000080000000) larger than 32 bits if built with `mips3' selected as the global ISA (e.g. `-march=mips3'). This is because a `.set' directive doing an ISA override does not lift the ABI restriction on register sizes if the ISA remains unchanged. Previously the directive always set register sizes from the ISA chosen, which is what some code expects. Restore the old semantics then. gas/ * config/tc-mips.c (code_option_type): New enum. (parse_code_option): Return status indicating option type. (s_mipsset): Update `parse_code_option' call site accordingly. Always set register sizes from the ISA with ISA overrides. (s_module): Update `parse_code_option' call site. * testsuite/gas/mips/isa-override-1.d: New test. * testsuite/gas/mips/micromips@isa-override-1.d: New test. * testsuite/gas/mips/mips1@isa-override-1.d: New test. * testsuite/gas/mips/mips2@isa-override-1.d: New test. * testsuite/gas/mips/mips32@isa-override-1.d: New test. * testsuite/gas/mips/mips32r2@isa-override-1.d: New test. * testsuite/gas/mips/mips32r3@isa-override-1.d: New test. * testsuite/gas/mips/mips32r5@isa-override-1.d: New test. * testsuite/gas/mips/mips32r6@isa-override-1.d: New test. * testsuite/gas/mips/mips64r2@isa-override-1.d: New test. * testsuite/gas/mips/mips64r3@isa-override-1.d: New test. * testsuite/gas/mips/mips64r5@isa-override-1.d: New test. * testsuite/gas/mips/mips64r6@isa-override-1.d: New test. * testsuite/gas/mips/r3000@isa-override-1.d: New test. * testsuite/gas/mips/r3900@isa-override-1.d: New test. * testsuite/gas/mips/r5900@isa-override-1.d: New test. * testsuite/gas/mips/octeon@isa-override-1.d: New test. * testsuite/gas/mips/octeon3@isa-override-1.d: New test. * testsuite/gas/mips/isa-override-2.l: New list test. * testsuite/gas/mips/mips1@isa-override-2.l: New list test. * testsuite/gas/mips/mips2@isa-override-2.l: New list test. * testsuite/gas/mips/mips32@isa-override-2.l: New list test. * testsuite/gas/mips/mips32r2@isa-override-2.l: New list test. * testsuite/gas/mips/mips32r3@isa-override-2.l: New list test. * testsuite/gas/mips/mips32r5@isa-override-2.l: New list test. * testsuite/gas/mips/mips32r6@isa-override-2.l: New list test. * testsuite/gas/mips/r3000@isa-override-2.l: New list test. * testsuite/gas/mips/r3900@isa-override-2.l: New list test. * testsuite/gas/mips/octeon3@isa-override-2.l: New list test. * testsuite/gas/mips/octeon3@isa-override-1.l: New stderr output. * testsuite/gas/mips/isa-override-1.s: New test source. * testsuite/gas/mips/r5900@isa-override-1.s: New test source. * testsuite/gas/mips/isa-override-2.s: New test source. * testsuite/gas/mips/mips1@isa-override-2.s: New test source. * testsuite/gas/mips/mips2@isa-override-2.s: New test source. * testsuite/gas/mips/mips32@isa-override-2.s: New test source. * testsuite/gas/mips/mips32r2@isa-override-2.s: New test source. * testsuite/gas/mips/mips32r3@isa-override-2.s: New test source. * testsuite/gas/mips/mips32r5@isa-override-2.s: New test source. * testsuite/gas/mips/mips32r6@isa-override-2.s: New test source. * testsuite/gas/mips/r3000@isa-override-2.s: New test source. * testsuite/gas/mips/r3900@isa-override-2.s: New test source. * testsuite/gas/mips/octeon3@isa-override-2.s: New test source. * testsuite/gas/mips/mips.exp: Run the new tests. (cherry picked from commit 22522f880a8e17a17c4f195796ec89caece7652b)
2016-06-29GAS: Fix `abort' expansion in write.cMaciej W. Rozycki2-1/+7
Remove an internal diagnostic regression introduced with the inclusion of "libbfd.h" from write.c, added with: commit e7ff5c732e7b95aafccd0910ea1a5cb8251a1033 Author: Alan Modra <amodra@gmail.com> Date: Fri Feb 16 03:40:17 2007 +0000 That change made "libbfd.h" override the `abort' definition provided by "as.h" earlier on, making the message produced by any calls reached from write.c, which is a part of the GAS proper, look like they came from BFD, e.g.: .../gas/testsuite/gas/elf/type.s: Assembler messages: .../gas/testsuite/gas/elf/type.s:30: Error: symbol type "gnu_unique_object" is supported only by GNU targets ../as-new: BFD (GNU Binutils) 2.26.51.20160628 internal error, aborting at .../gas/write.c:608 in size_seg ../as-new: Please report this bug. vs: .../gas/testsuite/gas/elf/type.s: Assembler messages: .../gas/testsuite/gas/elf/type.s:30: Error: symbol type "gnu_unique_object" is supported only by GNU targets .../gas/testsuite/gas/elf/type.s: Internal error, aborting at .../gas/write.c:602 in size_seg Please report this bug. With the removal of "libbfd.h" restore the latter message format. gas/ * write.c: Remove "libbfd.h" inclusion. (cherry picked from commit 6d44f09a7645d7a2cb2f712c4d2f1f3512e848f5)
2016-06-29Automatic date update in version.inGDB Administrator1-1/+1
2016-06-28Invalid read in _bfd_elf_get_symbol_version_stringAlan Modra2-1/+8
PR 20304 * objdump.c (objdump_print_symname): Don't attempt to retrieve version info from synthetic symbols.
2016-06-28Fix ppc64le S-record test failAlan Modra2-0/+8
Segfaults on --defsym symbol (__stack_chk_fail in this instance). * elf64-ppc.c (ppc64_elf_branch_reloc): Check for NULL owner before dereferencing.