aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-05-18MIPS/readelf: Use the `d_val' dynamic entry member with the relevant tagsMaciej W. Rozycki2-1/+11
binutils/ * readelf.c (dynamic_section_mips_val) <DT_MIPS_RLD_VERSION> <DT_MIPS_LOCAL_GOTNO, DT_MIPS_CONFLICTNO, DT_MIPS_LIBLISTNO> <DT_MIPS_SYMTABNO, DT_MIPS_UNREFEXTNO, DT_MIPS_HIPAGENO> <DT_MIPS_DELTA_CLASS_NO, DT_MIPS_DELTA_INSTANCE_NO> <DT_MIPS_DELTA_RELOC_NO, DT_MIPS_DELTA_SYM_NO> <DT_MIPS_DELTA_CLASSSYM_NO, DT_MIPS_COMPACT_SIZE>: Use the `d_val' rather than `d_ptr' member of the dynamic entry.
2016-05-18PPC_OPERAND_SIGNOPT range.Alan Modra4-9/+14
Commit b84bf58a accidentally extended the range of allowed negative numbers. * config/tc-ppc.c (ppc_insert_operand): Trim PPC_OPERAND_SIGNOPT allowed negative range. * testsuite/gas/ppc/power9.s: Test xxspltib of -128, not -256. * testsuite/gas/ppc/power9.d: Update.
2016-05-18Automatic date update in version.inGDB Administrator1-1/+1
2016-05-17Fix -exec-run not running asynchronously with mi-async on (PR gdb/18077)Simon Marchi5-4/+102
When doing -exec-run on a freshly started GDB, the only target on the target stack at the time the dummy one. When mi_async_p is called to know whether the run should be async, it queries whether the current target (dummy) supports async, and the answer is no. The fix is to make the code query the target that will be used for the run, which is not necessarily the current target. No regressions in the gdb.mi directory using the unix, native-gdbserver and native-extended-gdbserver boards. The test doesn't pass when forcing maint set target-async off, obviously, since it makes mi-async have no effect. It doesn't seem like other tests are checking for that eventuality, so I didn't in the new test. gdb/ChangeLog: * mi/mi-main.c (run_one_inferior): Use run target to determine whether to run async or not. (mi_cmd_exec_run): Likewise. gdb/testsuite/ChangeLog: * gdb.mi/mi-async-run.exp: New file. * gdb.mi/mi-async-run.c: New file.
2016-05-17Rename OP_F90_RANGE to OP_RANGE.Tom Tromey10-50/+65
This renames OP_F90_RANGE to OP_RANGE, and similarly renames the f90_range_type enum. 2016-05-17 Tom Tromey <tom@tromey.com> * std-operator.def (OP_RANGE): Rename from OP_F90_RANGE. * rust-lang.c: Don't include f-lang.h. (rust_range, rust_compute_range, rust_subscript) (rust_evaluate_subexp): Update. * rust-exp.y: Don't include f-lang.h. (ast_range, convert_ast_to_expression): Update. * parse.c (operator_length_standard): Update. * f-lang.h (enum f90_range_type): Move to expression.h. * f-exp.y: Use OP_RANGE. * expression.h (enum range_type): New enum; renamed from f90_range_type. * expprint.c: Don't include f-lang.h. (print_subexp_standard, dump_subexp_body_standard): Use OP_RANGE. * eval.c (value_f90_subarray, evaluate_subexp_standard): Update.
2016-05-17Add Rust documentationTom Tromey4-1/+109
This patch adds documentation for the new Rust support in gdb. 2016-05-17 Tom Tromey <tom@tromey.com> * NEWS: Add Rust item. 2016-05-17 Tom Tromey <tom@tromey.com> * gdb.texinfo (Supported Languages): Mention Rust. Update menu. (Rust): New node.
2016-05-17Update gdb test suite for RustTom Tromey13-1/+1015
This updates the gdb test suite for Rust. 2016-05-17 Tom Tromey <tom@tromey.com> Manish Goregaokar <manishsmail@gmail.com> * lib/rust-support.exp: New file. * lib/gdb.exp (skip_rust_tests): New proc. (build_executable_from_specs): Handle rust. * lib/future.exp (gdb_find_rustc): New proc. (gdb_default_target_compile): Handle rust. * gdb.rust/expr.exp: New file. * gdb.rust/generics.exp: New file. * gdb.rust/generics.rs: New file. * gdb.rust/methods.exp: New file. * gdb.rust/methods.rs: New file. * gdb.rust/modules.exp: New file. * gdb.rust/modules.rs: New file. * gdb.rust/simple.exp: New file. * gdb.rust/simple.rs: New file.
2016-05-17Add support for the Rust languageTom Tromey12-7/+4904
This patch adds support for the Rust language. 2016-05-17 Tom Tromey <tom@tromey.com> Manish Goregaokar <manishsmail@gmail.com> * symtab.c (symbol_find_demangled_name): Handle Rust. * symfile.c (init_filename_language_table): Treat ".rs" as Rust. * std-operator.def (STRUCTOP_ANONYMOUS, OP_RUST_ARRAY): New constants. * rust-lang.h: New file. * rust-lang.c: New file. * rust-exp.y: New file. * dwarf2read.c (read_file_scope): Add Rust producer sniffing. (dwarf2_compute_name, read_func_scope, read_structure_type) (read_base_type, read_subrange_type, set_cu_language) (new_symbol_full, determine_prefix): Handle Rust. * defs.h (enum language) <language_rust>: New constant. * Makefile.in (SFILES): Add rust-exp.y, rust-lang.c. (COMMON_OBS): Add rust-exp.o, rust-lang.o. 2016-05-17 Tom Tromey <tom@tromey.com> * gdb.base/default.exp (set language): Add rust.
2016-05-17Add array start and end strings to generic_val_print_decorationsTom Tromey7-10/+36
For Rust value-printing, I wanted to use generic_val_print_array, but I also wanted to control the starting and ending strings. This patch adds new strings to generic_val_print_decorations, updates generic_val_print_array to use them, and updates all the existing instances of generic_val_print_decorations. 2016-05-17 Tom Tromey <tom@tromey.com> * valprint.h (struct generic_val_print_array) <array_start, array_end>: New fields. * valprint.c (generic_val_print_array): Add "decorations" parameter. Use "array_start", "array_end". (generic_val_print) <TYPE_CODE_ARRAY>: Update. * p-valprint.c (p_decorations): Update. * m2-valprint.c (m2_decorations): Update. * f-valprint.c (f_decorations): Update. * c-valprint.c (c_decorations): Update.
2016-05-17Add self-test framework to gdbTom Tromey13-2/+191
I wanted to unit test the Rust lexer, so I added a simple unit testing command to gdb. The intent is that self tests will only be compiled into gdb in development mode. In release mode they simply won't exist. So, this exposes $development to C code as GDB_SELF_TEST. In development mode, test functions are registered with the self test module. A test function is just a function that does some checks, and throws an exception on failure. Then this adds a new "maint selftest" command which invokes the test functions, and a new dejagnu test case that invokes it. 2016-05-17 Tom Tromey <tom@tromey.com> * NEWS: Add "maint selftest" entry. * selftest.h: New file. * selftest.c: New file. * maint.c: Include selftest.h. (maintenance_selftest): New function. (_initialize_maint_cmds): Add "maint selftest" command. * configure.ac (GDB_SELF_TEST): Maybe define. * config.in, configure: Rebuild. * Makefile.in (SFILES): Add selftest.c. (COMMON_OBS): Add selftest.o. 2016-05-17 Tom Tromey <tom@tromey.com> * gdb.texinfo (Maintenance Commands): Document "maint selftest". 2016-05-17 Tom Tromey <tom@tromey.com> * gdb.gdb/unittest.exp: New file.
2016-05-17Make gdb expression debugging handle OP_F90_RANGETom Tromey2-0/+63
print_subexp_standard and dump_subexp_body_standard did not handle OP_F90_RANGE. Attempting to dump an expression using this opcode would fail. This patch adds support for this opcode to these functions. 2016-05-17 Tom Tromey <tom@tromey.com> * expprint.c: Include f-lang.h. (print_subexp_standard, dump_subexp_body_standard): Handle OP_F90_RANGE.
2016-05-17Fix latent yacc-related bug in gdb/Makefile.in init.c ruleTom Tromey2-0/+6
gdb's Makefile.in does not currently scan .y files to add global initializers from these files to init.c. However, at least ada-exp.y tries to use this feature. This patch fixes the problem. 2016-05-17 Tom Tromey <tom@tromey.com> * Makefile.in (init.c): Search .y files for initialization functions.
2016-05-17Add DW_LANG_RustTom Tromey2-1/+10
include/ * dwarf2.h (enum dwarf_source_language) <DW_LANG_Rust, DW_LANG_Rust_old>: New constants. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@235643 138bc75d-0d04-0410-961f-82ee72b054a4
2016-05-17Check global CC in at_least_gcc_versionH.J. Lu2-0/+6
at_least_gcc_version should check global CC. * testsuite/lib/ld-lib.exp (at_least_gcc_version): Check global CC.
2016-05-17Fix date in ChangeLogH.J. Lu1-1/+1
2016-05-17Make ARMv8-M GAS tests pass on non ELF targetsThomas Preud'homme16-22/+43
2016-05-17 Thomas Preud'homme <thomas.preudhomme@arm.com> gas/ * testsuite/gas/arm/archv8m-cmse-msr-base.d: Force Thumb when disassembling and stop skipping targets. * testsuite/gas/arm/archv8m-cmse-msr-main.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-4.d: Likewise. * testsuite/gas/arm/archv8m-base.d: Also allow nops after the last instruction for targets that have stronger alignment requirement. * testsuite/gas/arm/archv8m-cmse-base.d: Likewise. * testsuite/gas/arm/archv8m-cmse-main-1.d: Likewise. * testsuite/gas/arm/archv8m-cmse-main-2.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-1.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-2.d: Likewise. * testsuite/gas/arm/archv8m-main-dsp-3.d: Likewise. * testsuite/gas/arm/archv8m-main.d: Likewise. * testsuite/gas/arm/archv8m.s: Add label. * testsuite/gas/arm/archv8m-cmse.s: Likewise. * testsuite/gas/arm/archv8m-cmse-msr.s: Likewise. * testsuite/gas/arm/archv8m-cmse-main.s: Likewise.
2016-05-17Place progmem data from AVR's libc before other progmem data.Senthil Kumar Selvaraj3-0/+14
* scripttempl/avr.sc (text): Place .progmem.data from avr-libc above .progmem*. * scripttempl/avrtiny.sc (text): Likewise.
2016-05-17LD/ELF: Unify STB_GNU_UNIQUE handlingMaciej W. Rozycki19-83/+104
Take STB_GNU_UNIQUE handling scattered across targets and gather it in the generic ELF linker. Update test suite infrastructure accordingly. bfd/ * elf-s390-common.c (elf_s390_add_symbol_hook): Remove STB_GNU_UNIQUE handling. * elf32-arc.c (elf_arc_add_symbol_hook): Likewise. * elf32-arm.c (elf32_arm_add_symbol_hook): Likewise. * elf32-m68k.c (elf_m68k_add_symbol_hook): Likewise. * elf32-ppc.c (ppc_elf_add_symbol_hook): Likewise. * elf32-sparc.c (elf32_sparc_add_symbol_hook): Likewise. * elf64-ppc.c (ppc64_elf_add_symbol_hook): Likewise. * elf64-sparc.c (elf64_sparc_add_symbol_hook): Likewise. * elf64-x86-64.c (elf_x86_64_add_symbol_hook): Likewise. * elfxx-aarch64.c (_bfd_aarch64_elf_add_symbol_hook): Likewise. * elfxx-mips.c (_bfd_mips_elf_add_symbol_hook): Likewise. * elf32-i386.c (elf_i386_add_symbol_hook): Remove function. (elf_backend_add_symbol_hook): Remove macro. * elflink.c (elf_link_add_object_symbols): Set `has_gnu_symbols' for STB_GNU_UNIQUE symbols. binutils/ * testsuite/lib/binutils-common.exp (supports_gnu_unique): New procedure. * testsuite/binutils-all/objcopy.exp: Use `supports_gnu_unique' with the `strip-10' test. ld/ * testsuite/ld-unique/unique.exp: Use `is_elf_format' and `supports_gnu_unique' to qualify testing.
2016-05-17Use unsuspend_all_lwpsYao Qi2-1/+6
This patch is to replace find_inferior (&all_threads, unsuspend_one_lwp, NULL) with unsuspend_all_lwps (NULL), which is shorter. They are equivalent to each other. gdb/gdbserver: 2016-05-17 Yao Qi <yao.qi@linaro.org> * linux-low.c (linux_stabilize_threads): Call unsuspend_all_lwps instead of find_inferior.
2016-05-17Automatic date update in version.inGDB Administrator1-1/+1
2016-05-16Match shell_prompt # in batch-preserve-term-settings.expYao Qi2-2/+6
batch-preserve-term-settings.exp fails if the shell prompt isn't $. It is # in our testing env. In fact, the shell prompt can be anything. The perfect solution would be "set_board_info shell_prompt" in the host board file, and use board_info shell_prompt in batch-preserve-term-settings.exp. This is a little bit overkill to me, and we still need to figure out the different prompts on different shells. I also tried to start shell with the prompt preset, but there is not unique way to set shell prompt in different shells, so I give up. It is reasonably simple to match either $ or # for the shell prompt, and we can easily extend it to match other char, like >. gdb/testsuite: 2016-05-16 Yao Qi <yao.qi@linaro.org> * gdb.base/batch-preserve-term-settings.exp: Remove variable shell_prompt. Update shell_prompt_re.
2016-05-16V850/BFD: Call `_bfd_elf_copy_private_bfd_data' againMaciej W. Rozycki4-8/+25
Correct a regression introduced with commit 685080f21003 ("Adds support for generating notes in V850 binaries.") which replaced rather than extending the call to `_bfd_elf_copy_private_bfd_data' with `v850_elf_copy_private_bfd_data'. Consequently ELFOSABI_GNU marking is not propagated to output by `objcopy' from objects containing STB_GNU_UNIQUE symbols. bfd/ * elf32-v850.c (v850_elf_copy_notes): New function, factored out from... (v850_elf_copy_private_bfd_data): ... here. Call the new function and `_bfd_elf_copy_private_bfd_data'. binutils/ * testsuite/binutils-all/objcopy.exp: Don't skip the `strip-10' test for the V850.
2016-05-16m32r: make mach_table static and constTrevor Saunders2-1/+5
It is only read in tc-m32r.c, so it might as well be static and const, and that should help the compiler slightly. gas/ChangeLog: 2016-05-16 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> * config/tc-m32r.c (mach_table): Make static and const.
2016-05-16tc-vax.c: make prototype of flonum_gen2vax match its definitionTrevor Saunders2-1/+6
gas/ChangeLog: 2016-05-16 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> * config/tc-vax.c (flonum_gen2vax): Adjust prototype to match definition.
2016-05-16stop defining linkrelax in multiple placesTrevor Saunders3-6/+12
Defining linkrelax to have different values in as.c and tc-msp430.c / tc-mn10300.c is at least rather tricky, and seems fragile, when we can just set it in md_begin instead. gas/ChangeLog: 2016-05-16 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> * config/tc-mn10300.c (md_begin): set linkrelax here instead of defining it. * config/tc-msp430.c (md_begin): Likewise.
2016-05-16m68hc11: make some vars type bfd_reloc_code_real_typeTrevor Saunders2-4/+11
These variables only hold values from the bfd_reloc_code_real_type enum, and are passed to functions that expect the argument to be of type bfd_reloc_code_real_type, so it seems to make sense that there type is bfd_reloc_code_real_type rather than int. gas/ChangeLog: 2016-05-16 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> * config/tc-m68hc11.c (fixup8): Change variables type from int to bfd_reloc_code_real_type where appropriate. (fixup16): Likewise. (fixup8_xg): Likewise.
2016-05-16ld/testsuite/ld-elf/flags1.d: Update the xfail listMaciej W. Rozycki2-8/+4
Update to match commit 924bc11ba455 ("Update section merge test."). ld/ * testsuite/ld-elf/flags1.d: Update the xfail list.
2016-05-16Automatic date update in version.inGDB Administrator1-1/+1
2016-05-15SH64/GAS: Fix a -Wwrite-strings build failureMaciej W. Rozycki2-1/+5
Fix a commit 6757cf57697d ("enable -Wwrite-strings for gas") regression. gas/ * config/tc-sh64.c (shmedia_check_limits): Constify `msg'.
2016-05-15ld/testsuite/ld-elf/flags1.d: Update for `*-*-nacl*' xfail removalMaciej W. Rozycki2-1/+5
ld/ * testsuite/ld-elf/flags1.d: Update for `*-*-nacl*' xfail removal.
2016-05-15Automatic date update in version.inGDB Administrator1-1/+1
2016-05-14Remove redundant sizeof on EXPECTED_VIEW_LENGTHH.J. Lu3-2/+9
PR ld/20097 * testplug2.c (onall_symbols_read): Remove redundant sizeof on EXPECTED_VIEW_LENGTH. * testplug4.c (onall_symbols_read): Likewise.
2016-05-14Automatic date update in version.inGDB Administrator1-1/+1
2016-05-13Accept valid one byte signed and unsigned values for the IMM8 operand.Peter Bergner5-1/+14
opcodes/ * ppc-opc.c (IMM8): Use PPC_OPERAND_SIGNOPT. gas/ * testsuite/gas/ppc/power9.d <xxspltib>: Add additional operand tests. * testsuite/gas/ppc/power9.s: Likewise.
2016-05-13Don't convert GOTPCREL relocation against large sectionH.J. Lu8-1/+65
bfd/ PR ld/20093 * elf64-x86-64.c (elf_x86_64_convert_load_reloc): Don't convert GOTPCREL relocation against large section. ld/ PR ld/20093 * testsuite/ld-x86-64/pr20093-1.d: New file. * testsuite/ld-x86-64/pr20093-1.s: Likewise. * testsuite/ld-x86-64/pr20093-2.d: Likewise. * testsuite/ld-x86-64/pr20093-2.s: Likewise. * testsuite/ld-x86-64/x86-64.exp: Run pr20093-1 and pr20093-2.
2016-05-13Fix build breakageAlan Modra2-1/+4
* config/obj-coff.c (weak_uniquify): Delete unused var.
2016-05-13Set dynamic tag VMA and size from dynamic section when possibleAlan Modra34-186/+200
Rather than searching the output for a specific named section, it's better, where possible, to use a linker created dynamic section to set a dynamic tag's value. That way ld doesn't depend on the output section name, making it possibile to map dynamic sections differently. bfd/ * elf-m10300.c (_bfd_mn10300_elf_finish_dynamic_sections): Use linker dynamic sections in calculating size and address of * dynamic tags rather than using output sections. Remove asserts. * elf32-arm.c (elf32_arm_finish_dynamic_sections): Likewise. * elf32-cr16.c (_bfd_cr16_elf_finish_dynamic_sections): Likewise. * elf32-cris.c (elf_cris_finish_dynamic_sections): Likewise. * elf32-i370.c (i370_elf_finish_dynamic_sections): Likewise. * elf32-lm32.c (lm32_elf_finish_dynamic_sections): Likewise. * elf32-m32r.c (m32r_elf_finish_dynamic_sections): Likewise. * elf32-m68k.c (elf_m68k_finish_dynamic_sections): Likewise. * elf32-metag.c (elf_metag_finish_dynamic_sections): Likewise. * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Likewise. * elf32-nds32.c (nds32_elf_finish_dynamic_sections): Likewise. * elf32-nios2.c (nios2_elf32_finish_dynamic_sections): Likewise. * elf32-or1k.c (or1k_elf_finish_dynamic_sections): Likewise. * elf32-s390.c (elf_s390_finish_dynamic_sections): Likewise. * elf32-score.c (s3_bfd_score_elf_finish_dynamic_sections): Likewise. * elf32-score7.c (s7_bfd_score_elf_finish_dynamic_sections): Likewise. * elf32-vax.c (elf_vax_finish_dynamic_sections): Likewise. * elf32-xtensa.c (elf_xtensa_finish_dynamic_sections): Likewise. * elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Likewise. * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise. * elf64-sh64.c (sh64_elf64_finish_dynamic_sections): Likewise. * elflink.c (bfd_elf_final_link): Likewise. * elfxx-mips.c (_bfd_mips_elf_finish_dynamic_sections): Likewise. * elfxx-sparc.c (sparc_finish_dyn): Likewise. Adjust error message. * elf32-arc.c (GET_SYMBOL_OR_SECTION): Remove ASSERT arg and don't set doit. Look up dynobj section. (elf_arc_finish_dynamic_sections): Adjust GET_SYMBOL_OR_SECTION invocation and dynamic tag vma calculation. Don't test boolean var == TRUE. * elfnn-aarch64.c (elfNN_aarch64_finish_dynamic_sections): Fix DT_JMPREL calc. ld/ * testsuite/ld-arm/arm-elf.exp: Adjust for arm-no-rel-plt now passing. Use different output file name for static app without .rel.plt. * testsuite/ld-arm/arm-no-rel-plt.ld: Align .rel.dyn and .rela.dyn. * testsuite/ld-arm/arm-no-rel-plt.out: Delete. * testsuite/ld-arm/arm-no-rel-plt.r: New. * testsuite/ld-arm/arm-static-app.d: Don't check file name. * testsuite/ld-arm/arm-static-app.r: Likewise.
2016-05-13ld -z combreloc elf_link_sort_relocsAlan Modra2-19/+60
A linker script may put .rela.plt in with other .rela.dyn relocs. The change to elf_reloc_type_class puts any PLT relocs last. This patch makes the input section layout better match the sorted relocs. * elflink.c (elf_link_sort_relocs): Wrap overlong lines. Fix octets_per_byte. Put dynamic .rela.plt last in link orders. Assign output_offset for reloc sections rather than writing sorted relocs from block corresponding to output_offset.
2016-05-13use XNEW and related macros moreTrevor Saunders55-267/+365
Its a bit shorter and simpler than raw xmalloc. gas/ChangeLog: 2016-05-13 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> * app.c (app_push): Use XNEW and related macros. * as.c (parse_args): Likewise. * cgen.c (make_right_shifted_expr): Likewise. (gas_cgen_tc_gen_reloc): Likewise. * config/bfin-defs.h: Likewise. * config/bfin-parse.y: Likewise. * config/obj-coff.c (stack_init): Likewise. (stack_push): Likewise. (coff_obj_symbol_new_hook): Likewise. (coff_obj_symbol_clone_hook): Likewise. (add_lineno): Likewise. (coff_frob_symbol): Likewise. * config/obj-elf.c (obj_elf_section_name): Likewise. (build_group_lists): Likewise. * config/obj-evax.c (evax_symbol_new_hook): Likewise. * config/obj-macho.c (obj_mach_o_indirect_symbol): Likewise. * config/tc-aarch64.c (insert_reg_alias): Likewise. (find_or_make_literal_pool): Likewise. (add_to_lit_pool): Likewise. (fill_instruction_hash_table): Likewise. * config/tc-alpha.c (load_expression): Likewise. (emit_jsrjmp): Likewise. (s_alpha_ent): Likewise. (s_alpha_end): Likewise. (s_alpha_linkage): Likewise. (md_begin): Likewise. (tc_gen_reloc): Likewise. * config/tc-arc.c (arc_insert_opcode): Likewise. (arc_extcorereg): Likewise. * config/tc-bfin.c: Likewise. * config/tc-cr16.c: Likewise. * config/tc-cris.c: Likewise. * config/tc-crx.c (preprocess_reglist): Likewise. * config/tc-d10v.c: Likewise. * config/tc-frv.c (frv_insert_vliw_insn): Likewise. (frv_tomcat_shuffle): Likewise. * config/tc-h8300.c: Likewise. * config/tc-i370.c (i370_macro): Likewise. * config/tc-i386.c (lex_got): Likewise. (md_parse_option): Likewise. * config/tc-ia64.c (alloc_record): Likewise. (set_imask): Likewise. (save_prologue_count): Likewise. (dot_proc): Likewise. (dot_endp): Likewise. (ia64_frob_label): Likewise. (add_qp_imply): Likewise. (add_qp_mutex): Likewise. (mark_resource): Likewise. (dot_alias): Likewise. * config/tc-m68hc11.c: Likewise. * config/tc-m68k.c (m68k_frob_label): Likewise. (s_save): Likewise. (mri_control_label): Likewise. (push_mri_control): Likewise. (build_mri_control_operand): Likewise. (s_mri_else): Likewise. (s_mri_break): Likewise. (s_mri_next): Likewise. (s_mri_for): Likewise. (s_mri_endw): Likewise. * config/tc-metag.c (create_mnemonic_htab): Likewise. * config/tc-microblaze.c: Likewise. * config/tc-mmix.c (s_loc): Likewise. * config/tc-nds32.c (nds32_relax_hint): Likewise. * config/tc-nios2.c (nios2_insn_reloc_new): Likewise. * config/tc-rl78.c: Likewise. * config/tc-rx.c (rx_include): Likewise. * config/tc-sh.c: Likewise. * config/tc-sh64.c (shmedia_frob_section_type): Likewise. * config/tc-sparc.c: Likewise. * config/tc-spu.c: Likewise. * config/tc-tic6x.c (static tic6x_unwind_info *tic6x_get_unwind): Likewise. (tic6x_start_unwind_section): Likewise. * config/tc-tilegx.c: Likewise. * config/tc-tilepro.c: Likewise. * config/tc-v850.c: Likewise. * config/tc-visium.c: Likewise. * config/tc-xgate.c: Likewise. * config/tc-xtensa.c (xtensa_translate_old_userreg_ops): Likewise. (new_resource_table): Likewise. (resize_resource_table): Likewise. (xtensa_create_trampoline_frag): Likewise. (xtensa_maybe_create_literal_pool_frag): Likewise. (cache_literal_section): Likewise. * config/xtensa-relax.c (append_transition): Likewise. (append_condition): Likewise. (append_value_condition): Likewise. (append_constant_value_condition): Likewise. (append_literal_op): Likewise. (append_label_op): Likewise. (append_constant_op): Likewise. (append_field_op): Likewise. (append_user_fn_field_op): Likewise. (enter_opname_n): Likewise. (enter_opname): Likewise. (split_string): Likewise. (parse_insn_templ): Likewise. (clone_req_or_option_list): Likewise. (clone_req_option_list): Likewise. (parse_option_cond): Likewise. (parse_insn_pattern): Likewise. (parse_insn_repl): Likewise. (build_transition): Likewise. (build_transition_table): Likewise. * dw2gencfi.c (alloc_fde_entry): Likewise. (alloc_cfi_insn_data): Likewise. (cfi_add_CFA_remember_state): Likewise. (dot_cfi_escape): Likewise. (dot_cfi_fde_data): Likewise. (select_cie_for_fde): Likewise. * dwarf2dbg.c (dwarf2_directive_loc): Likewise. * ecoff.c (ecoff_add_bytes): Likewise. (ecoff_build_debug): Likewise. * input-scrub.c (input_scrub_push): Likewise. (input_scrub_begin): Likewise. (input_scrub_next_buffer): Likewise. * itbl-ops.c (append_insns_as_macros): Likewise. (alloc_entry): Likewise. (alloc_field): Likewise. * listing.c (listing_newline): Likewise. (listing_listing): Likewise. * macro.c (get_any_string): Likewise. (delete_macro): Likewise. * stabs.c (generate_asm_file): Likewise. (stabs_generate_asm_lineno): Likewise. * subsegs.c (subseg_change): Likewise. (subseg_get): Likewise. * symbols.c (define_dollar_label): Likewise. (symbol_relc_make_sym): Likewise. * write.c (write_relocs): Likewise.
2016-05-13use xstrdup, xmemdup0 and concat moreTrevor Saunders26-229/+137
gas/ChangeLog: 2016-05-13 Trevor Saunders <tbsaunde+binutils@tbsaunde.org> * config/obj-coff.c (obj_coff_def): Simplify string copying. (weak_name2altname): Likewise. (weak_uniquify): Likewise. (obj_coff_section): Likewise. (obj_coff_init_stab_section): Likewise. * config/obj-elf.c (obj_elf_section_name): Likewise. (obj_elf_init_stab_section): Likewise. * config/obj-evax.c (evax_shorten_name): Likewise. * config/obj-macho.c (obj_mach_o_make_or_get_sect): Likewise. * config/tc-aarch64.c (create_register_alias): Likewise. * config/tc-alpha.c (load_expression): Likewise. (s_alpha_file): Likewise. (s_alpha_section_name): Likewise. (tc_gen_reloc): Likewise. * config/tc-arc.c (md_assemble): Likewise. * config/tc-arm.c (create_neon_reg_alias): Likewise. (start_unwind_section): Likewise. * config/tc-hppa.c (pa_build_unwind_subspace): Likewise. (hppa_elf_mark_end_of_function): Likewise. * config/tc-nios2.c (nios2_modify_arg): Likewise. (nios2_negate_arg): Likewise. * config/tc-rx.c (rx_section): Likewise. * config/tc-sh64.c (sh64_consume_datalabel): Likewise. * config/tc-tic30.c (tic30_find_parallel_insn): Likewise. * config/tc-tic54x.c (tic54x_include): Likewise. (tic54x_macro_info): Likewise. (subsym_get_arg): Likewise. (subsym_substitute): Likewise. (tic54x_start_line_hook): Likewise. * config/tc-xtensa.c (xtensa_literal_prefix): Likewise. (xg_reverse_shift_count): Likewise. * config/xtensa-relax.c (enter_opname_n): Likewise. (split_string): Likewise. * dwarf2dbg.c (get_filenum): Likewise. (process_entries): Likewise. * expr.c (operand): Likewise. * itbl-ops.c (alloc_entry): Likewise. * listing.c (listing_message): Likewise. (listing_title): Likewise. * macro.c (check_macro): Likewise. * stabs.c (s_xstab): Likewise. * symbols.c (symbol_relc_make_expr): Likewise. * write.c (compress_debug): Likewise.
2016-05-13Automatic date update in version.inGDB Administrator1-1/+1
2016-05-12Handle symbols defined/referenced only within IRH.J. Lu9-5/+796
The plugin is called to claim symbols in an archive element from plugin_object_p. But those symbols aren't needed to create output. They are defined and referenced only within IR. get_symbols should return resolution based on IR symbol kinds. PR ld/20070 * Makefile.am (noinst_LTLIBRARIES): Add libldtestplug4.la. (libldtestplug4_la_SOURCES): New. (libldtestplug4_la_CFLAGS): Likewise. (libldtestplug4_la_LDFLAGS): Likewise. * Makefile.in: Regenerated. * plugin.c (get_symbols): Return resolution based on IR symbol kinds for symbols defined/referenced only within IR. * testplug4.c: New file. * ld/testsuite/ld-plugin/pr20070.d: Likewise. * ld/testsuite/ld-plugin/pr20070a.c: Likewise. * ld/testsuite/ld-plugin/pr20070b.c: Likewise. * testsuite/ld-plugin/plugin.exp (plugin4_name): New. (plugin4_path): Likewise. Add a test for ld/20070.
2016-05-12PR symtab/19999 gdb unable to resolve vars with fission+PIEDoug Evans6-4/+567
gdb/ChangeLog: * dwarf2loc.c (dwarf2_find_location_expression): For DWO files still add base_offset. gdb/testsuite/ChangeLog: * lib/dwarf.exp (build_executable_from_fission_assembler): Pass $options when building executable. * gdb.dwarf2/fission-loclists-pie.c: New file. * gdb.dwarf2/fission-loclists-pie.exp: New file.
2016-05-12Use correct regexp syntax in ARM PR20068 testNick Clifton2-2/+7
2016-05-13ld -z combreloc reloc sortingAlan Modra2-2/+6
PLT relocs don't appear in .rela.dyn, at least not when using normal linker scripts. However, if they do, then they ought to be placed last rather than in the middle of other relocs. * elf-bfd.h (elf_reloc_type_class): Put reloc_class_plt last.
2016-05-12Automatic date update in version.inGDB Administrator1-1/+1
2016-05-11Update pr20068 test to allow for big endian ARM configurationNick Clifton2-2/+8
2016-05-11Add MIPS32 DSPr3 support.Matthew Fortune17-6/+126
bfd/ * elfxx-mips.c (print_mips_ases): Add DSPR3. binutils/ * readelf.c (print_mips_ases): Add DSPR3. gas/ * config/tc-mips.c (options): Add OPTION_DSPR3 and OPTION_NO_DSPR3. (md_longopts): Likewise. (md_show_usage): Add help for -mdspr3 and -mno-dspr3. (mips_ases): Define availability for DSPr3. (mips_ase_groups): Add ASE_DSPR3 to the DSP group. (mips_convert_ase_flags): Map ASE_DSPR3 to AFL_ASE_DSPR3. * doc/as.texinfo: Document -mdspr3, -mno-dspr3. Fix -mdspr2 formatting. * doc/c-mips.texi: Document -mdspr3, -mno-dspr3, .set dspr3 and .set nodspr3. Fix -mdspr2 formatting. * testsuite/gas/mips/mips32-dspr3.d: New file. * testsuite/gas/mips/mips32-dspr3.s: Likewise. * testsuite/gas/mips/mips.exp: Run mips32-dspr3 test. include/ * elf/mips.h (AFL_ASE_DSPR3): New macro. (AFL_ASE_MASK): Update to include AFL_ASE_DSPR3. * opcode/mips.h (ASE_DSPR3): New macro. opcodes/ * mips-dis.c (mips_arch_choices): Add ASE_DSPR3 to mips32r6 and mips64r6. * mips-opc.c (D34): New macro. (mips_builtin_opcodes): Define bposge32c for DSPr3.
2016-05-11[HPPA] Attach linker created dynamic sections to stub bfdAlan Modra5-16/+40
bfd/ * elf32-hppa.c (elf32_hppa_init_stub_bfd): New function. (elf32_hppa_check_relocs): Don't set dynobj. (elf32_hppa_size_stubs): Test !SEC_LINKER_CREATED for stub sections. (elf32_hppa_build_stubs): Likewise. * elf32-hppa.h (elf32_hppa_init_stub_bfd): Declare. ld/ * emultempl/hppaelf.em (hppaelf_create_output_section_statements): Call elf32_hppa_init_stub_bfd.
2016-05-11ld --gc-sections fail with __tls_get_addr_optAlan Modra12-0/+190
When --gc-sections is active, __tls_get_addr_opt is marked as not needed and forced local before ppc*_elf_tls_setup is run. bfd/ PR 20060 * elf64-ppc.c (ppc64_elf_tls_setup): Clear forced_local. * elf32-ppc.c (ppc_elf_tls_setup): Likewise. ld/ PR 20060 * testsuite/ld-powerpc/powerpc.exp: Run new tests. * testsuite/ld-powerpc/tlsdll.s: New. * testsuite/ld-powerpc/tlsdll.ver: New. * testsuite/ld-powerpc/tlsdll_32.s: New. * testsuite/ld-powerpc/tlsopt5.d: New. * testsuite/ld-powerpc/tlsopt5.s: New. * testsuite/ld-powerpc/tlsopt5_32.d: New. * testsuite/ld-powerpc/tlsopt5_32.s: New.