binutils-gdb.git
11 years agoopcodes/
Peter Bergner [Tue, 30 Jul 2013 02:26:09 +0000 (02:26 +0000)]
opcodes/
* ppc-dis.c (powerpc_init_dialect): Use ppc_parse_cpu() to set dialect.

11 years agodaily update
Alan Modra [Tue, 30 Jul 2013 00:00:05 +0000 (00:00 +0000)]
daily update

11 years ago * main.c (captured_command_loop): Tweak comment.
Doug Evans [Mon, 29 Jul 2013 21:41:30 +0000 (21:41 +0000)]
* main.c (captured_command_loop): Tweak comment.

11 years ago * target.c (target_async_permitted_1): Fix comment.
Doug Evans [Mon, 29 Jul 2013 21:27:46 +0000 (21:27 +0000)]
* target.c (target_async_permitted_1): Fix comment.

11 years ago * symtab.c (iterate_over_some_symtabs): Add comment.
Doug Evans [Mon, 29 Jul 2013 20:15:47 +0000 (20:15 +0000)]
* symtab.c (iterate_over_some_symtabs): Add comment.

11 years ago * symtab.c (iterate_over_some_symtabs): Fix indentation.
Doug Evans [Mon, 29 Jul 2013 20:04:16 +0000 (20:04 +0000)]
* symtab.c (iterate_over_some_symtabs): Fix indentation.

11 years ago2013-07-22 Sterling Augustine <saugustine@google.com>
Sterling Augustine [Mon, 29 Jul 2013 18:29:12 +0000 (18:29 +0000)]
2013-07-22  Sterling Augustine  <saugustine@google.com>

* dwarf_reader.cc (Dwarf_pubnames_table::read_section):
Convert parameter shndx to local variable. Add parameters symtab
and symtab_size.  Scan over section names.  Find relocation
section corresponding to current section.  Create and initialize
reloc_mapper_ and reloc_type_.
(Dwarf_pubnames_table::read_header):  Add assertion.  Change
unit_length to off_t.  Initialize member unit_length_.  Fill in field
cu_offset_.
* dwarf_reader.h (Dwarf_pubnames_table::Dwarf_pubnames_table):
Initialize new fields unit_length_ and cu_offset_.
(Dwarf_pubnames_table::read_section): Update prototype.
(Dwarf_pubnames_table::cu_offset): New member function.
(Dwarf_pubnames_table::subsection_size): Likewise.
(Dwarf_pubnames_table::cu_offset_, Dwarf_pubnames_table::unit_length):
New fields.
(Dwarf_info_reader::symtab, Dwarf_info_reader::symtab_size): Make
member functions public.
* gdb_index.cc (Gdb_index_info_reader::read_pubnames_and_pubtypes):
Update comment.  Rework logic.  Move repeated parts to...
(Gdb_index_info_reader::read_pubtable): ...here. New function.
(Gdb_index::Gdb_index): Initialize new fields, pubnames_table_,
pubtypes_table_, and stmt_list_offset.
(Gdb_index::map_pubtable_to_dies, Gdb_index::find_pubname_offset,
Gdb_index::find_pubtype_offset,
Gdb_index::map_pubnames_and_types_to_dies): Define new functions.
(Gdb_index::pubnames_read): Update prototype and rework logic.
* gdb_index.h (Gdb_index_info_reader, Dwarf_pubnames_table):
Forward declare.
(Gdb_index::map_pubtable_to_dies, Gdb_index::find_pubname_offset,
Gdb_index::find_pubtype_offset, Gdb_index::pubnames_table)
Gdb_index::pubtypes_table, Gdb_index::map_pubnames_and_types_to_dies,
Gdb_index::map_pubtable_to_dies):
Declare functions.
(Gdb_index::pubnames_read): Update declaration.
(Gdb_index::Pubname_offset_map): New type.
(Gdb_index::cu_pubname_map_, Gdb_index::cu_pubtype_map_,
Gdb_index::pubnames_table_, Gdb_index::pubtypes_table_,
Gdb_index::stmt_list_offset): Declare.
(Gdb_index::pubnames_shndx_, Gdb_index::pubnames_offet_,
Gdb_index::pubtypes_object_, Gdb_index::pubtypes_shndx_)
Gdb_index::pubtypes_offset_): Remove.

11 years agodaily update
Alan Modra [Mon, 29 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years ago * elf64-hppa.c (elf64_hppa_finish_dynamic_sections)
Maciej W. Rozycki [Sun, 28 Jul 2013 23:05:18 +0000 (23:05 +0000)]
* elf64-hppa.c (elf64_hppa_finish_dynamic_sections)
<DT_HP_LOAD_MAP>: Return unsuccessfully if there's no `.data'
section.

11 years ago2013-07-27 Andrew Pinski <apinski@cavium.com>
Andrew Pinski [Sun, 28 Jul 2013 03:29:41 +0000 (03:29 +0000)]
2013-07-27  Andrew Pinski  <apinski@cavium.com>

* elfnn-aarch64.c (elfNN_aarch64_check_relocs):
Use the correct alignment for
_bfd_elf_make_dynamic_reloc_section for ILP32.

11 years agodaily update
Alan Modra [Sun, 28 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years ago2013-07-27 Andrew Pinski <apinski@cavium.com>
Andrew Pinski [Sat, 27 Jul 2013 23:58:43 +0000 (23:58 +0000)]
2013-07-27  Andrew Pinski  <apinski@cavium.com>

* elfnn-aarch64.c (elfNN_aarch64_howto_from_bfd_reloc): Handle
BFD_RELOC_AARCH64_NONE explicitly.

11 years ago * elf32-vax.c (elf_vax_finish_dynamic_sections): Don't set GOT's
Maciej W. Rozycki [Sat, 27 Jul 2013 22:38:50 +0000 (22:38 +0000)]
* elf32-vax.c (elf_vax_finish_dynamic_sections): Don't set GOT's
entry size if there is no ELF section data.

11 years ago * ld-vax-elf/export-class-call.dd: New test.
Maciej W. Rozycki [Sat, 27 Jul 2013 22:28:29 +0000 (22:28 +0000)]
* ld-vax-elf/export-class-call.dd: New test.
* ld-vax-elf/export-class-call.rd: New test.
* ld-vax-elf/export-class-call.xd: New test.
* ld-vax-elf/export-class-data.dd: New test.
* ld-vax-elf/export-class-data.rd: New test.
* ld-vax-elf/export-class-data.xd: New test.
* ld-vax-elf/export-class.ld: New test linker script.
* ld-vax-elf/export-class-call.s: New test source.
* ld-vax-elf/export-class-data.s: New test source.
* ld-vax-elf/export-class-def.s: New test source.
* ld-vax-elf/vax-elf.exp: Run the new tests.
* ld-vax-elf/vax-export-class.rd: New test.
* ld-vax-elf/vax-export-class.xd: New test.
* ld-vax-elf/export-class.exp: New test script.

11 years ago bfd/
Maciej W. Rozycki [Sat, 27 Jul 2013 22:21:11 +0000 (22:21 +0000)]
bfd/
* elf32-vax.c (elf_vax_check_relocs) <R_VAX_GOT32, R_VAX_PLT32>:
Don't check symbol visibility here.  Remove a check already
asserted for.
(elf_vax_instantiate_got_entries): Use SYMBOL_REFERENCES_LOCAL
instead of individual checks.
(elf_vax_relocate_section) <R_VAX_GOT32, R_VAX_PLT32>: Only
check the offset to decide if produce a GOT or PLT entry.
Remove redundant assertions.  Remove code to produce GOT entries
for local symbols.  Remove a duplicate comment and add a comment
on GOT relocations.
(elf_vax_finish_dynamic_symbol): Remove code to produce RELATIVE
dynamic relocs.

ld/testsuite/
* ld-vax-elf/got-local-exe.xd: New test.
* ld-vax-elf/got-local-lib.xd: New test.
* ld-vax-elf/got-local-aux.s: New test source.
* ld-vax-elf/got-local-def.s: New test source.
* ld-vax-elf/got-local-ref.s: New test source.
* ld-vax-elf/vax-elf.exp: Run the new tests.

11 years ago * elf32-vax.c (elf_vax_always_size_sections): Correct a comment
Maciej W. Rozycki [Sat, 27 Jul 2013 19:32:53 +0000 (19:32 +0000)]
* elf32-vax.c (elf_vax_always_size_sections): Correct a comment
typo.

11 years ago * elf32-vax.c (elf_vax_discard_got_entries): New function.
Maciej W. Rozycki [Sat, 27 Jul 2013 19:17:29 +0000 (19:17 +0000)]
* elf32-vax.c (elf_vax_discard_got_entries): New function.
(elf_vax_always_size_sections): Likewise.
(elf_vax_size_dynamic_sections): Remove code moved to
elf_vax_always_size_sections.  Make comment on
elf_vax_instantiate_got_entries match reality.
(elf_vax_instantiate_got_entries): Assert that rather than check
if dynobj is null.  Don't check for dynamic_sections_created.
Make function description match reality.
(elf_backend_always_size_sections): New macro.

11 years agogdb/gdbserver/
Yao Qi [Sat, 27 Jul 2013 07:59:49 +0000 (07:59 +0000)]
gdb/gdbserver/

* Makefile.in (SFILES): Add common/mips-linux-watch.c.
(mips-linux-watch.o): New rule.
(mips_linux_watch_h): New variable.
* configure.srv <mips*-*-linux*>: Add mips-linux-watch.o to
srv_tgtobj.
* linux-mips-low.c: Include mips-linux-watch.h.
(struct arch_process_info, struct arch_lwp_info): New.
(update_watch_registers_callback): New function.
(mips_linux_new_process, mips_linux_new_thread) New functions.
(mips_linux_prepare_to_resume, mips_insert_point): New
functions.
(mips_remove_point, mips_stopped_by_watchpoint): New
functions.
(rsp_bp_type_to_target_hw_bp_type): New function.
(mips_stopped_data_address): New function.
(the_low_target): Add watchpoint support functions.

gdb/

* NEWS: Mention that GDBserver now supports hardware
watchpoints on the MIPS GNU/Linux target.

11 years agogdb/
Yao Qi [Sat, 27 Jul 2013 07:49:05 +0000 (07:49 +0000)]
gdb/

* Makefile.in (HFILES_NO_SRCDIR): Add
common/mips-linux-watch.h.
(mips-linux-watch.o): New rule.
* common/mips-linux-watch.c: New.
* common/mips-linux-watch.h: New.
* config/mips/linux.mh (NATDEPFILES): Add mips-linux-watch.o
* mips-linux-nat.c: Include mips-linux-watch.h.
(W_BIT, R_BIT, I_BIT, W_MASK, R_MASK, I_MASK, IRW_MASK): Move
to common/mips-linux-watch.h.
(MAX_DEBUG_REGISTER): Likewise.
(enum pt_watch_style): Likewise.
(struct mips32_watch_regs): Likewise.
(struct mips64_watch_regs): Likewise.
(struct pt_watch_regs): Likewise.
(struct mips_watchpoint): Likewise.
(mips_linux_watch_get_irw_mask): Move to
common/mips-linux-watch.c.
(get_reg_mask, mips_linux_watch_get_num_valid): Likewise.
(mips_linux_watch_get_watchlo): Likewise.
(mips_linux_watch_set_watchlo): Likewise.
(mips_linux_watch_get_watchhi): Likewise.
(mips_linux_watch_set_watchhi): Likewise.
(mips_linux_read_watch_registers): Likewise.
(mips_linux_watch_type_to_irw): Likewise.
(mips_linux_stopped_data_address, fill_mask): Likewise.
(mips_linux_watch_try_one_watch): Likewise.
(mips_linux_watch_populate_regs): Likewise.

11 years agogdb/
Yao Qi [Sat, 27 Jul 2013 07:32:40 +0000 (07:32 +0000)]
gdb/
* mips-linux-nat.c (get_irw_mask): Rename to ...
(mips_linux_watch_get_irw_mask): ... this.  Rename parameter
'set' to 'n'.  Update function comment.  All callers changed.
(get_reg_mask): Rename parameter 'set' to 'n'.  Update
function comment.  All callers changed.
(get_num_valid): Rename to ...
(mips_linux_watch_get_num_valid): ... this.  Rename parameter
'set' to 'n'.  Update function comment.  All callers changed.
(get_watchlo): Rename to ...
(mips_linux_watch_get_watchlo): ... this.  Rename parameter
'set' to 'n'.  Update function comment.  All callers changed.
(set_watchlo): Rename to ...
(mips_linux_watch_set_watchlo): ... this.  Rename parameter
'set' to 'n'.  Update function comment.  All callers changed.
(get_watchhi): Rename to ...
(mips_linux_watch_get_watchhi): ... this.  Update function
comment.  All callers changed.
(set_watchhi): Rename to ...
(mips_linux_watch_set_watchhi): ... this.  Update function
comment.  All callers changed.
(mips_linux_read_watch_registers): Update function comment.
Add new parameters 'lwpid', 'watch_readback', and
'watch_readback_valid'.  Update.
(type_to_irw): Rename to ...
(mips_linux_watch_type_to_irw): ... this.  Update function
comment.  All callers changed.
(fill_mask): Update function comment.
(try_one_watch): Rename to ...
(mips_linux_watch_try_one_watch): ... this.  Change the type
of parameter 'irw' from 'unsigned' to 'uint32_t'.
(populate_regs_from_watches): Rename to ...
(mips_linux_watch_populate_regs): ... this.  Add parameter
'current_watches'.  All callers changed.

11 years agogdb/
Yao Qi [Sat, 27 Jul 2013 07:27:18 +0000 (07:27 +0000)]
gdb/
* mips-linux-nat.c (MAX_DEBUG_REGISTER): Move it earlier in
the code.
(PTRACE_SET_WATCH_REGS, enum pt_watch_style): Remove.
(struct mips32_watch_regs, struct mips64_watch_regs): Remove.
(struct pt_watch_regs): Likewise.
[!PTRACE_GET_WATCH_REGS] (PTRACE_SET_WATCH_REGS): New macro.
[!PTRACE_GET_WATCH_REGS] (enum pt_watch_style): New.
[!PTRACE_GET_WATCH_REGS] (struct mips32_watch_regs): New.
[!PTRACE_GET_WATCH_REGS] (struct mips64_watch_regs): New.
[!PTRACE_GET_WATCH_REGS] (struct pt_watch_regs): New.

11 years agogdb/
Yao Qi [Sat, 27 Jul 2013 07:11:46 +0000 (07:11 +0000)]
gdb/

* breakpoint.h: Include break-common.h.
(enum target_hw_bp_type): Move to ...
* common/break-common.h: ... here.  New.

gdb/gdbserver/

* i386-low.c: Include break-common.h.
(enum target_hw_bp_type): Remove.

11 years agodaily update
Alan Modra [Sat, 27 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years ago * gdb.mi/mi-var-child-f.exp: Pass f90 to gdb_compile instead
Keith Seitz [Fri, 26 Jul 2013 18:15:07 +0000 (18:15 +0000)]
* gdb.mi/mi-var-child-f.exp: Pass f90 to gdb_compile instead
of f77.
Allow for compiler variations of integer types.
Use mi_create_varobj.
Use mi_list_varobj_children for the immediate children of `array'.
Add "has_more" attribute for grandchildren test.

11 years agoAdd Intel AVX-512 support
H.J. Lu [Fri, 26 Jul 2013 17:20:25 +0000 (17:20 +0000)]
Add Intel AVX-512 support

binutils/

2013-07-26  Sergey Guriev  <sergey.s.guriev@intel.com>
    Alexander Ivchenko  <alexander.ivchenko@intel.com>
    Maxim Kuznetsov  <maxim.kuznetsov@intel.com>
    Sergey Lega  <sergey.s.lega@intel.com>
    Anna Tikhonova  <anna.tikhonova@intel.com>
    Ilya Tocar  <ilya.tocar@intel.com>
    Andrey Turetskiy  <andrey.turetskiy@intel.com>
    Ilya Verbin  <ilya.verbin@intel.com>
    Kirill Yukhin  <kirill.yukhin@intel.com>
    Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* dwarf.c (dwarf_regnames_i386): Add k0-k7 registers and
numeration in comments.
(dwarf_regnames_x86_64): Add xmm16-31 and k0-k7 registers to
dwarf table.

gas/

2013-07-26  Sergey Guriev  <sergey.s.guriev@intel.com>
    Alexander Ivchenko  <alexander.ivchenko@intel.com>
    Maxim Kuznetsov  <maxim.kuznetsov@intel.com>
    Sergey Lega  <sergey.s.lega@intel.com>
    Anna Tikhonova  <anna.tikhonova@intel.com>
    Ilya Tocar  <ilya.tocar@intel.com>
    Andrey Turetskiy  <andrey.turetskiy@intel.com>
    Ilya Verbin  <ilya.verbin@intel.com>
    Kirill Yukhin  <kirill.yukhin@intel.com>
    Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* config/tc-i386-intel.c (O_zmmword_ptr): New.
(i386_types): Add zmmword.
(i386_intel_simplify_register): Allow regzmm.
(i386_intel_simplify): Handle zmmwords.
(i386_intel_operand): Handle RC/SAE, vector operations and
zmmwords.
* config/tc-i386.c (ZMMWORD_MNEM_SUFFIX): New.
(struct RC_Operation): New.
(struct Mask_Operation): New.
(struct Broadcast_Operation): New.
(vex_prefix): Size of bytes increased to 4 to support EVEX
encoding.
(enum i386_error): Add new error codes: unsupported_broadcast,
broadcast_not_on_src_operand, broadcast_needed,
unsupported_masking, mask_not_on_destination, no_default_mask,
unsupported_rc_sae, rc_sae_operand_not_last_imm,
invalid_register_operand, try_vector_disp8.
(struct _i386_insn): Add new fields vrex, need_vrex, mask,
rounding, broadcast, memshift.
(struct RC_name): New.
(RC_NamesTable): New.
(evexlig): New.
(evexwig): New.
(extra_symbol_chars): Add '{'.
(cpu_arch): Add AVX512F, AVX512CD, AVX512ER and AVX512PF.
(i386_operand_type): Add regzmm, regmask and vec_disp8.
(match_mem_size): Handle zmmwords.
(operand_type_match): Handle zmm-registers.
(mode_from_disp_size): Handle vec_disp8.
(fits_in_vec_disp8): New.
(md_begin): Handle {} properly.
(type_names): Add "rZMM", "Mask reg" and "Vector d8".
(build_vex_prefix): Handle vrex.
(build_evex_prefix): New.
(process_immext): Adjust to properly handle EVEX.
(md_assemble): Add EVEX encoding support.
(swap_2_operands): Correctly handle operands with masking,
broadcasting or RC/SAE.
(check_VecOperands): Support EVEX features.
(VEX_check_operands): Properly handle 16 upper [xyz]mm registers.
(match_template): Support regzmm and handle new error codes.
(process_suffix): Handle zmmwords and zmm-registers.
(check_byte_reg): Extend to zmm-registers.
(process_operands): Extend to zmm-registers.
(build_modrm_byte): Handle EVEX.
(output_insn): Adjust to properly handle EVEX case.
(disp_size): Handle vec_disp8.
(output_disp): Support compressed disp8*N evex feature.
(output_imm): Handle RC/SAE immediates properly.
(check_VecOperations): New.
(i386_immediate): Handle EVEX features.
(i386_index_check): Handle zmmwords and zmm-registers.
(RC_SAE_immediate): New.
(i386_att_operand): Handle EVEX features.
(parse_real_register): Add a check for ZMM/Mask registers.
(OPTION_MEVEXLIG): New.
(OPTION_MEVEXWIG): New.
(md_longopts): Add mevexlig and mevexwig.
(md_parse_option): Handle mevexlig and mevexwig options.
(md_show_usage): Add description for mevexlig and mevexwig.
* doc/c-i386.texi: Document avx512f/.avx512f, avx512cd/.avx512cd,
avx512er/.avx512er, avx512pf/.avx512pf, mevexlig and mevexwig.

gas/testsuite/

2013-07-26  Sergey Guriev  <sergey.s.guriev@intel.com>
    Alexander Ivchenko  <alexander.ivchenko@intel.com>
    Maxim Kuznetsov  <maxim.kuznetsov@intel.com>
    Sergey Lega  <sergey.s.lega@intel.com>
    Anna Tikhonova  <anna.tikhonova@intel.com>
    Ilya Tocar  <ilya.tocar@intel.com>
    Andrey Turetskiy  <andrey.turetskiy@intel.com>
    Ilya Verbin  <ilya.verbin@intel.com>
    Kirill Yukhin  <kirill.yukhin@intel.com>
    Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* gas/cfi/cfi-i386.s: Add tests for k0-k7.
* gas/cfi/cfi-i386.d: Change to reflect above mentioned changes.
* gas/cfi/cfi-x86_64.s: Add tests for xmm16-31, k0-7.
* gas/cfi/cfi-x86_64.d: Change to reflect above mentioned changes.
* gas/i386/ilp32/cfi/cfi-x86_64.d: Ditto.
* gas/i386/intel-regs.s: Add tests for zmm0 and xmm16 registers.
* gas/i386/intel-regs.d: Change correspondingly.
* gas/i386/prefetch-intel.d: Reflect implementation of prefetchwt1.
* gas/i386/prefetch.d: Ditto.
* gas/i386/x86-64-prefetch-intel.d: Ditto.
* gas/i386/x86-64-prefetch.d: Ditto.
* gas/i386/avx512f-intel.d: New.
* gas/i386/avx512f-nondef.d: New.
* gas/i386/avx512f-nondef.s: New.
* gas/i386/avx512f-opts-intel.d: New.
* gas/i386/avx512f-opts.d: New.
* gas/i386/avx512f-opts.s: New.
* gas/i386/avx512f.d: New.
* gas/i386/avx512f.s: New.
* gas/i386/avx512cd-intel.d: New.
* gas/i386/avx512cd.d: New.
* gas/i386/avx512cd.s: New.
* gas/i386/avx512er-intel.d: New.
* gas/i386/avx512er.d: New.
* gas/i386/avx512er.s: New.
* gas/i386/avx512pf-intel.d: New.
* gas/i386/avx512pf.d: New.
* gas/i386/avx512pf.s: New.
* gas/i386/evex-lig.s: New.
* gas/i386/evex-lig256-intel.d: New.
* gas/i386/evex-lig256.d: New.
* gas/i386/evex-lig512-intel.d: New.
* gas/i386/evex-lig512.d: New.
* gas/i386/evex-wig.s: New.
* gas/i386/evex-wig1-intel.d: New.
* gas/i386/evex-wig1.d: New.
* gas/i386/inval-avx512f.l: New.
* gas/i386/inval-avx512f.s: New.
* gas/i386/x86-64-avx512f-intel.d: New.
* gas/i386/x86-64-avx512f-nondef.d: New.
* gas/i386/x86-64-avx512f-nondef.s: New.
* gas/i386/x86-64-avx512f-opts-intel.d: New.
* gas/i386/x86-64-avx512f-opts.d: New.
* gas/i386/x86-64-avx512f-opts.s: New.
* gas/i386/x86-64-avx512f.d: New.
* gas/i386/x86-64-avx512f.s: New.
* gas/i386/x86-64-avx512cd-intel.d: New.
* gas/i386/x86-64-avx512cd.d: New.
* gas/i386/x86-64-avx512cd.s: New.
* gas/i386/x86-64-avx512er-intel.d: New.
* gas/i386/x86-64-avx512er.d: New.
* gas/i386/x86-64-avx512er.s: New.
* gas/i386/x86-64-avx512pf-intel.d: New.
* gas/i386/x86-64-avx512pf.d: New.
* gas/i386/x86-64-avx512pf.s: New.
* gas/i386/x86-64-evex-lig.s: New.
* gas/i386/x86-64-evex-lig256-intel.d: New.
* gas/i386/x86-64-evex-lig256.d: New.
* gas/i386/x86-64-evex-lig512-intel.d: New.
* gas/i386/x86-64-evex-lig512.d: New.
* gas/i386/x86-64-evex-wig.s: New.
* gas/i386/x86-64-evex-wig1-intel.d: New.
* gas/i386/x86-64-evex-wig1.d: New.
* gas/i386/x86-64-inval-avx512f.l: New.
* gas/i386/x86-64-inval-avx512f.s: New.
* gas/i386/i386.exp: Run new AVX-512 tests.

opcodes/

2013-07-26  Sergey Guriev  <sergey.s.guriev@intel.com>
    Alexander Ivchenko  <alexander.ivchenko@intel.com>
    Maxim Kuznetsov  <maxim.kuznetsov@intel.com>
    Sergey Lega  <sergey.s.lega@intel.com>
    Anna Tikhonova  <anna.tikhonova@intel.com>
    Ilya Tocar  <ilya.tocar@intel.com>
    Andrey Turetskiy  <andrey.turetskiy@intel.com>
    Ilya Verbin  <ilya.verbin@intel.com>
    Kirill Yukhin  <kirill.yukhin@intel.com>
    Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* i386-dis-evex.h: New.
* i386-dis.c (OP_Rounding): New.
(VPCMP_Fixup): New.
(OP_Mask): New.
(Rdq): New.
(XMxmmq): New.
(EXdScalarS): New.
(EXymm): New.
(EXEvexHalfBcstXmmq): New.
(EXxmm_mdq): New.
(EXEvexXGscat): New.
(EXEvexXNoBcst): New.
(VPCMP): New.
(EXxEVexR): New.
(EXxEVexS): New.
(XMask): New.
(MaskG): New.
(MaskE): New.
(MaskR): New.
(MaskVex): New.
(modes enum): Add evex_x_gscat_mode, evex_x_nobcst_mode,
evex_half_bcst_xmmq_mode, xmm_mdq_mode, ymm_mode,
evex_rounding_mode, evex_sae_mode, mask_mode.
(USE_EVEX_TABLE): New.
(EVEX_TABLE): New.
(EVEX enum): New.
(REG enum): Add REG_EVEX_0F72, REG_EVEX_0F73, REG_EVEX_0F38C6,
REG_EVEX_0F38C7.
(MOD enum): Add MOD_EVEX_0F10_PREFIX_1, MOD_EVEX_0F10_PREFIX_3,
MOD_EVEX_0F11_PREFIX_1, MOD_EVEX_0F11_PREFIX_3,
MOD_EVEX_0F12_PREFIX_0, MOD_EVEX_0F16_PREFIX_0, MOD_EVEX_0F38C6_REG_1,
MOD_EVEX_0F38C6_REG_2, MOD_EVEX_0F38C6_REG_5, MOD_EVEX_0F38C6_REG_6,
MOD_EVEX_0F38C7_REG_1, MOD_EVEX_0F38C7_REG_2,  MOD_EVEX_0F38C7_REG_5,
MOD_EVEX_0F38C7_REG_6.
(PREFIX enum): Add PREFIX_VEX_0F41, PREFIX_VEX_0F42, PREFIX_VEX_0F44,
PREFIX_VEX_0F45, PREFIX_VEX_0F46, PREFIX_VEX_0F47, PREFIX_VEX_0F4B,
PREFIX_VEX_0F90, PREFIX_VEX_0F91, PREFIX_VEX_0F92, PREFIX_VEX_0F93,
PREFIX_VEX_0F98, PREFIX_VEX_0F3A30, PREFIX_VEX_0F3A32,
PREFIX_VEX_0F3AF0, PREFIX_EVEX_0F10, PREFIX_EVEX_0F11,
PREFIX_EVEX_0F12, PREFIX_EVEX_0F13, PREFIX_EVEX_0F14,
PREFIX_EVEX_0F15, PREFIX_EVEX_0F16, PREFIX_EVEX_0F17,
PREFIX_EVEX_0F28, PREFIX_EVEX_0F29, PREFIX_EVEX_0F2A,
PREFIX_EVEX_0F2B, PREFIX_EVEX_0F2C, PREFIX_EVEX_0F2D,
PREFIX_EVEX_0F2E, PREFIX_EVEX_0F2F, PREFIX_EVEX_0F51,
PREFIX_EVEX_0F58, PREFIX_EVEX_0F59, PREFIX_EVEX_0F5A,
PREFIX_EVEX_0F5B, PREFIX_EVEX_0F5C, PREFIX_EVEX_0F5D,
PREFIX_EVEX_0F5E, PREFIX_EVEX_0F5F, PREFIX_EVEX_0F62,
PREFIX_EVEX_0F66, PREFIX_EVEX_0F6A, PREFIX_EVEX_0F6C,
PREFIX_EVEX_0F6D, PREFIX_EVEX_0F6E, PREFIX_EVEX_0F6F,
PREFIX_EVEX_0F70, PREFIX_EVEX_0F72_REG_0, PREFIX_EVEX_0F72_REG_1,
PREFIX_EVEX_0F72_REG_2, PREFIX_EVEX_0F72_REG_4,
PREFIX_EVEX_0F72_REG_6, PREFIX_EVEX_0F73_REG_2,
PREFIX_EVEX_0F73_REG_6, PREFIX_EVEX_0F76, PREFIX_EVEX_0F78,
PREFIX_EVEX_0F79, PREFIX_EVEX_0F7A, PREFIX_EVEX_0F7B,
PREFIX_EVEX_0F7E, PREFIX_EVEX_0F7F, PREFIX_EVEX_0FC2,
PREFIX_EVEX_0FC6, PREFIX_EVEX_0FD2, PREFIX_EVEX_0FD3,
PREFIX_EVEX_0FD4, PREFIX_EVEX_0FD6, PREFIX_EVEX_0FDB,
PREFIX_EVEX_0FDF, PREFIX_EVEX_0FE2, PREFIX_EVEX_0FE6 PREFIX_EVEX_0FE7,
PREFIX_EVEX_0FEB, PREFIX_EVEX_0FEF, PREFIX_EVEX_0FF2,
PREFIX_EVEX_0FF3, PREFIX_EVEX_0FF4, PREFIX_EVEX_0FFA, PREFIX_EVEX_0FFB,
PREFIX_EVEX_0FFE, PREFIX_EVEX_0F380C, PREFIX_EVEX_0F380D,
PREFIX_EVEX_0F3811, PREFIX_EVEX_0F3812, PREFIX_EVEX_0F3813,
PREFIX_EVEX_0F3814, PREFIX_EVEX_0F3815, PREFIX_EVEX_0F3816,
PREFIX_EVEX_0F3818, PREFIX_EVEX_0F3819, PREFIX_EVEX_0F381A,
PREFIX_EVEX_0F381B, PREFIX_EVEX_0F381E, PREFIX_EVEX_0F381F,
PREFIX_EVEX_0F3821, PREFIX_EVEX_0F3822, PREFIX_EVEX_0F3823,
PREFIX_EVEX_0F3824, PREFIX_EVEX_0F3825, PREFIX_EVEX_0F3827,
PREFIX_EVEX_0F3828, PREFIX_EVEX_0F3829, PREFIX_EVEX_0F382A,
PREFIX_EVEX_0F382C, PREFIX_EVEX_0F382D, PREFIX_EVEX_0F3831,
PREFIX_EVEX_0F3832, PREFIX_EVEX_0F3833, PREFIX_EVEX_0F3834,
PREFIX_EVEX_0F3835, PREFIX_EVEX_0F3836, PREFIX_EVEX_0F3837,
PREFIX_EVEX_0F3839, PREFIX_EVEX_0F383A, PREFIX_EVEX_0F383B,
PREFIX_EVEX_0F383D, PREFIX_EVEX_0F383F, PREFIX_EVEX_0F3840,
PREFIX_EVEX_0F3842, PREFIX_EVEX_0F3843, PREFIX_EVEX_0F3844,
PREFIX_EVEX_0F3845, PREFIX_EVEX_0F3846, PREFIX_EVEX_0F3847,
PREFIX_EVEX_0F384C, PREFIX_EVEX_0F384D, PREFIX_EVEX_0F384E,
PREFIX_EVEX_0F384F, PREFIX_EVEX_0F3858, PREFIX_EVEX_0F3859,
PREFIX_EVEX_0F385A, PREFIX_EVEX_0F385B, PREFIX_EVEX_0F3864,
PREFIX_EVEX_0F3865, PREFIX_EVEX_0F3876, PREFIX_EVEX_0F3877,
PREFIX_EVEX_0F387C, PREFIX_EVEX_0F387E, PREFIX_EVEX_0F387F,
PREFIX_EVEX_0F3888, PREFIX_EVEX_0F3889, PREFIX_EVEX_0F388A,
PREFIX_EVEX_0F388B, PREFIX_EVEX_0F3890, PREFIX_EVEX_0F3891,
PREFIX_EVEX_0F3892, PREFIX_EVEX_0F3893, PREFIX_EVEX_0F3896,
PREFIX_EVEX_0F3897, PREFIX_EVEX_0F3898, PREFIX_EVEX_0F3899,
PREFIX_EVEX_0F389A, PREFIX_EVEX_0F389B, PREFIX_EVEX_0F389C,
PREFIX_EVEX_0F389D, PREFIX_EVEX_0F389E, PREFIX_EVEX_0F389F,
PREFIX_EVEX_0F38A0, PREFIX_EVEX_0F38A1, PREFIX_EVEX_0F38A2,
PREFIX_EVEX_0F38A3, PREFIX_EVEX_0F38A6, PREFIX_EVEX_0F38A7,
PREFIX_EVEX_0F38A8, PREFIX_EVEX_0F38A9, PREFIX_EVEX_0F38AA,
PREFIX_EVEX_0F38AB, PREFIX_EVEX_0F38AC, PREFIX_EVEX_0F38AD,
PREFIX_EVEX_0F38AE, PREFIX_EVEX_0F38AF, PREFIX_EVEX_0F38B6,
PREFIX_EVEX_0F38B7, PREFIX_EVEX_0F38B8, PREFIX_EVEX_0F38B9,
PREFIX_EVEX_0F38BA, PREFIX_EVEX_0F38BB, PREFIX_EVEX_0F38BC,
PREFIX_EVEX_0F38BD, PREFIX_EVEX_0F38BE, PREFIX_EVEX_0F38BF,
PREFIX_EVEX_0F38C4, PREFIX_EVEX_0F38C6_REG_1,
PREFIX_EVEX_0F38C6_REG_2, PREFIX_EVEX_0F38C6_REG_5,
PREFIX_EVEX_0F38C6_REG_6, PREFIX_EVEX_0F38C7_REG_1,
PREFIX_EVEX_0F38C7_REG_2, PREFIX_EVEX_0F38C7_REG_5,
PREFIX_EVEX_0F38C7_REG_6, PREFIX_EVEX_0F38C8, PREFIX_EVEX_0F38CA,
PREFIX_EVEX_0F38CB, PREFIX_EVEX_0F38CC, PREFIX_EVEX_0F38CD,
PREFIX_EVEX_0F3A00,  PREFIX_EVEX_0F3A01, PREFIX_EVEX_0F3A03,
PREFIX_EVEX_0F3A04, PREFIX_EVEX_0F3A05, PREFIX_EVEX_0F3A08,
PREFIX_EVEX_0F3A09, PREFIX_EVEX_0F3A0A, PREFIX_EVEX_0F3A0B,
PREFIX_EVEX_0F3A17, PREFIX_EVEX_0F3A18, PREFIX_EVEX_0F3A19,
PREFIX_EVEX_0F3A1A, PREFIX_EVEX_0F3A1B, PREFIX_EVEX_0F3A1D,
PREFIX_EVEX_0F3A1E, PREFIX_EVEX_0F3A1F, PREFIX_EVEX_0F3A21,
PREFIX_EVEX_0F3A23, PREFIX_EVEX_0F3A25, PREFIX_EVEX_0F3A26,
PREFIX_EVEX_0F3A27, PREFIX_EVEX_0F3A38, PREFIX_EVEX_0F3A39,
PREFIX_EVEX_0F3A3A, PREFIX_EVEX_0F3A3B, PREFIX_EVEX_0F3A3E,
PREFIX_EVEX_0F3A3F, PREFIX_EVEX_0F3A43, PREFIX_EVEX_0F3A54,
PREFIX_EVEX_0F3A55.
(VEX_LEN enum): Add VEX_LEN_0F41_P_0, VEX_LEN_0F42_P_0, VEX_LEN_0F44_P_0,
VEX_LEN_0F45_P_0, VEX_LEN_0F46_P_0, VEX_LEN_0F47_P_0,
VEX_LEN_0F4B_P_2, VEX_LEN_0F90_P_0, VEX_LEN_0F91_P_0,
VEX_LEN_0F92_P_0, VEX_LEN_0F93_P_0, VEX_LEN_0F98_P_0,
VEX_LEN_0F3A30_P_2, VEX_LEN_0F3A32_P_2, VEX_W_0F41_P_0_LEN_1,
VEX_W_0F42_P_0_LEN_1, VEX_W_0F44_P_0_LEN_0, VEX_W_0F45_P_0_LEN_1,
VEX_W_0F46_P_0_LEN_1, VEX_W_0F47_P_0_LEN_1, VEX_W_0F4B_P_2_LEN_1,
VEX_W_0F90_P_0_LEN_0, VEX_W_0F91_P_0_LEN_0, VEX_W_0F92_P_0_LEN_0,
VEX_W_0F93_P_0_LEN_0, VEX_W_0F98_P_0_LEN_0, VEX_W_0F3A30_P_2_LEN_0,
VEX_W_0F3A32_P_2_LEN_0.
(VEX_W enum): Add EVEX_W_0F10_P_0, EVEX_W_0F10_P_1_M_0,
EVEX_W_0F10_P_1_M_1, EVEX_W_0F10_P_2, EVEX_W_0F10_P_3_M_0,
EVEX_W_0F10_P_3_M_1, EVEX_W_0F11_P_0, EVEX_W_0F11_P_1_M_0,
EVEX_W_0F11_P_1_M_1, EVEX_W_0F11_P_2, EVEX_W_0F11_P_3_M_0,
EVEX_W_0F11_P_3_M_1, EVEX_W_0F12_P_0_M_0, EVEX_W_0F12_P_0_M_1,
EVEX_W_0F12_P_1, EVEX_W_0F12_P_2, EVEX_W_0F12_P_3, EVEX_W_0F13_P_0,
EVEX_W_0F13_P_2, EVEX_W_0F14_P_0, EVEX_W_0F14_P_2, EVEX_W_0F15_P_0,
EVEX_W_0F15_P_2, EVEX_W_0F16_P_0_M_0, EVEX_W_0F16_P_0_M_1,
EVEX_W_0F16_P_1, EVEX_W_0F16_P_2, EVEX_W_0F17_P_0, EVEX_W_0F17_P_2,
EVEX_W_0F28_P_0, EVEX_W_0F28_P_2, EVEX_W_0F29_P_0, EVEX_W_0F29_P_2,
EVEX_W_0F2A_P_1, EVEX_W_0F2A_P_3, EVEX_W_0F2B_P_0, EVEX_W_0F2B_P_2,
EVEX_W_0F2E_P_0, EVEX_W_0F2E_P_2, EVEX_W_0F2F_P_0, EVEX_W_0F2F_P_2,
EVEX_W_0F51_P_0, EVEX_W_0F51_P_1, EVEX_W_0F51_P_2, EVEX_W_0F51_P_3,
EVEX_W_0F58_P_0, EVEX_W_0F58_P_1, EVEX_W_0F58_P_2, EVEX_W_0F58_P_3,
EVEX_W_0F59_P_0, EVEX_W_0F59_P_1, EVEX_W_0F59_P_2, EVEX_W_0F59_P_3,
EVEX_W_0F5A_P_0, EVEX_W_0F5A_P_1, EVEX_W_0F5A_P_2, EVEX_W_0F5A_P_3,
EVEX_W_0F5B_P_0, EVEX_W_0F5B_P_1, EVEX_W_0F5B_P_2, EVEX_W_0F5C_P_0,
EVEX_W_0F5C_P_1, EVEX_W_0F5C_P_2, EVEX_W_0F5C_P_3, EVEX_W_0F5D_P_0,
EVEX_W_0F5D_P_1, EVEX_W_0F5D_P_2, EVEX_W_0F5D_P_3, EVEX_W_0F5E_P_0,
EVEX_W_0F5E_P_1, EVEX_W_0F5E_P_2, EVEX_W_0F5E_P_3, EVEX_W_0F5F_P_0,
EVEX_W_0F5F_P_1, EVEX_W_0F5F_P_2, EVEX_W_0F5F_P_3, EVEX_W_0F62_P_2,
EVEX_W_0F66_P_2, EVEX_W_0F6A_P_2, EVEX_W_0F6C_P_2, EVEX_W_0F6D_P_2,
EVEX_W_0F6E_P_2, EVEX_W_0F6F_P_1, EVEX_W_0F6F_P_2, EVEX_W_0F70_P_2,
EVEX_W_0F72_R_2_P_2, EVEX_W_0F72_R_6_P_2, EVEX_W_0F73_R_2_P_2,
EVEX_W_0F73_R_6_P_2, EVEX_W_0F76_P_2, EVEX_W_0F78_P_0,
EVEX_W_0F79_P_0, EVEX_W_0F7A_P_1, EVEX_W_0F7A_P_3, EVEX_W_0F7B_P_1,
EVEX_W_0F7B_P_3, EVEX_W_0F7E_P_1, EVEX_W_0F7E_P_2, EVEX_W_0F7F_P_1,
EVEX_W_0F7F_P_2, EVEX_W_0FC2_P_0, EVEX_W_0FC2_P_1, EVEX_W_0FC2_P_2,
EVEX_W_0FC2_P_3, EVEX_W_0FC6_P_0, EVEX_W_0FC6_P_2, EVEX_W_0FD2_P_2,
EVEX_W_0FD3_P_2, EVEX_W_0FD4_P_2, EVEX_W_0FD6_P_2, EVEX_W_0FE6_P_1,
EVEX_W_0FE6_P_2, EVEX_W_0FE6_P_3, EVEX_W_0FE7_P_2, EVEX_W_0FF2_P_2,
EVEX_W_0FF3_P_2, EVEX_W_0FF4_P_2, EVEX_W_0FFA_P_2, EVEX_W_0FFB_P_2,
EVEX_W_0FFE_P_2, EVEX_W_0F380C_P_2, EVEX_W_0F380D_P_2,
EVEX_W_0F3811_P_1, EVEX_W_0F3812_P_1, EVEX_W_0F3813_P_1,
EVEX_W_0F3813_P_2, EVEX_W_0F3814_P_1, EVEX_W_0F3815_P_1,
EVEX_W_0F3818_P_2, EVEX_W_0F3819_P_2, EVEX_W_0F381A_P_2,
EVEX_W_0F381B_P_2, EVEX_W_0F381E_P_2, EVEX_W_0F381F_P_2,
EVEX_W_0F3821_P_1, EVEX_W_0F3822_P_1, EVEX_W_0F3823_P_1,
EVEX_W_0F3824_P_1, EVEX_W_0F3825_P_1, EVEX_W_0F3825_P_2,
EVEX_W_0F3828_P_2, EVEX_W_0F3829_P_2, EVEX_W_0F382A_P_1,
EVEX_W_0F382A_P_2, EVEX_W_0F3831_P_1, EVEX_W_0F3832_P_1,
EVEX_W_0F3833_P_1, EVEX_W_0F3834_P_1, EVEX_W_0F3835_P_1,
EVEX_W_0F3835_P_2, EVEX_W_0F3837_P_2, EVEX_W_0F383A_P_1,
EVEX_W_0F3840_P_2, EVEX_W_0F3858_P_2, EVEX_W_0F3859_P_2,
EVEX_W_0F385A_P_2, EVEX_W_0F385B_P_2, EVEX_W_0F3891_P_2,
EVEX_W_0F3893_P_2, EVEX_W_0F38A1_P_2, EVEX_W_0F38A3_P_2,
EVEX_W_0F38C7_R_1_P_2, EVEX_W_0F38C7_R_2_P_2, EVEX_W_0F38C7_R_5_P_2,
EVEX_W_0F38C7_R_6_P_2, EVEX_W_0F3A00_P_2, EVEX_W_0F3A01_P_2,
EVEX_W_0F3A04_P_2, EVEX_W_0F3A05_P_2, EVEX_W_0F3A08_P_2,
EVEX_W_0F3A09_P_2, EVEX_W_0F3A0A_P_2, EVEX_W_0F3A0B_P_2,
EVEX_W_0F3A18_P_2, EVEX_W_0F3A19_P_2, EVEX_W_0F3A1A_P_2,
EVEX_W_0F3A1B_P_2, EVEX_W_0F3A1D_P_2, EVEX_W_0F3A21_P_2,
EVEX_W_0F3A23_P_2, EVEX_W_0F3A38_P_2, EVEX_W_0F3A39_P_2,
EVEX_W_0F3A3A_P_2, EVEX_W_0F3A3B_P_2, EVEX_W_0F3A43_P_2.
(struct vex): Add fields evex, r, v, mask_register_specifier,
zeroing, ll, b.
(intel_names_xmm): Add upper 16 registers.
(att_names_xmm): Ditto.
(intel_names_ymm): Ditto.
(att_names_ymm): Ditto.
(names_zmm): New.
(intel_names_zmm): Ditto.
(att_names_zmm): Ditto.
(names_mask): Ditto.
(intel_names_mask): Ditto.
(att_names_mask): Ditto.
(names_rounding): Ditto.
(names_broadcast): Ditto.
(x86_64_table): Add escape to evex-table.
(reg_table): Include reg_table evex-entries from
i386-dis-evex.h.  Fix prefetchwt1 instruction.
(prefix_table): Add entries for new instructions.
(vex_table): Ditto.
(vex_len_table): Ditto.
(vex_w_table): Ditto.
(mod_table): Ditto.
(get_valid_dis386): Properly handle new instructions.
(print_insn): Handle zmm and mask registers, print mask operand.
(intel_operand_size): Support EVEX, new modes and sizes.
(OP_E_register): Handle new modes.
(OP_E_memory): Ditto.
(OP_G): Ditto.
(OP_XMM): Ditto.
(OP_EX): Ditto.
(OP_VEX): Ditto.
* i386-gen.c (cpu_flag_init): Update CPU_ANY_SSE_FLAGS and
CPU_ANY_AVX_FLAGS.  Add CPU_AVX512F_FLAGS, CPU_AVX512CD_FLAGS,
CPU_AVX512ER_FLAGS and CPU_AVX512PF_FLAGS.
(cpu_flags): Add CpuAVX512F, CpuAVX512CD, CpuAVX512ER,
CpuAVX512PF and CpuVREX.
(operand_type_init): Add OPERAND_TYPE_REGZMM,
OPERAND_TYPE_REGMASK and OPERAND_TYPE_VEC_DISP8.
(opcode_modifiers): Add EVex, Masking, VecESize, Broadcast,
StaticRounding, SAE, Disp8MemShift, NoDefMask.
(operand_types): Add RegZMM, RegMask, Vec_Disp8, Zmmword.
* i386-init.h: Regenerate.
* i386-opc.h (CpuAVX512F): New.
(CpuAVX512CD): New.
(CpuAVX512ER): New.
(CpuAVX512PF): New.
(CpuVREX): New.
(i386_cpu_flags): Add cpuavx512f, cpuavx512cd, cpuavx512er,
cpuavx512pf and cpuvrex fields.
(VecSIB): Add VecSIB512.
(EVex): New.
(Masking): New.
(VecESize): New.
(Broadcast): New.
(StaticRounding): New.
(SAE): New.
(Disp8MemShift): New.
(NoDefMask): New.
(i386_opcode_modifier): Add evex, masking, vecesize, broadcast,
staticrounding, sae, disp8memshift and nodefmask.
(RegZMM): New.
(Zmmword): Ditto.
(Vec_Disp8): Ditto.
(i386_operand_type): Add regzmm, regmask, zmmword and vec_disp8
fields.
(RegVRex): New.
* i386-opc.tbl: Add AVX512 instructions.
* i386-reg.tbl: Add 16 upper XMM and YMM registers, 32 new ZMM
registers, mask registers.
* i386-tbl.h: Regenerate.

11 years agoGDB kills itself instead of interrupting inferior
Pedro Alves [Fri, 26 Jul 2013 11:15:45 +0000 (11:15 +0000)]
GDB kills itself instead of interrupting inferior

When GDB is run with IO redirected to a pipe, the 'interrupt' command
causes it to kill its own process group instead of the inferior's.
The problem manifests itself in async mode, native debugging:

    $ cat | gdb <file>
    (gdb) set target-async on
    (gdb) run &
    (gdb) interrupt
    A debugging session is active.
    Inferior 1 [process 20584] will be killed.
    Quit anyway? (y or n) [answered Y; input not from terminal]

In this case, GDB tells that its stdin isn't a tty and doesn't save
the inferior's process group in
inflow.c:terminal_init_inferior_with_pgrp.  The 'interrupt' command
tries to 'kill' the inferior's process group in
`inf-ptrace.c:inf_ptrace_stop`, but since that wasn't saved in the
first place, GDB kills process group 0, meaning, its own process
group.

When GDB is used from a frontend, that means killing its own process
group including the frontend and possibly the X session.  This was
originally seen with SublimeGDB:
  https://github.com/quarnster/SublimeGDB/issues/29.

The patch makes GDB save the inferior pgid regardless of having a
terminal, as pgid is used not only to reset foreground process group,
but also to interrupt the inferior process.  It also adds a regression
test.  Luckily, we can emulate not having a terminal with "set
interactive-mode off", avoiding the need of special magic to spawn gdb
with a pipe.

Tested on x86_64 Fedora 17.

gdb/
2013-07-26  Cyril Nikolaev  <cyril@nichtverstehen.de>

* inflow.c (terminal_init_inferior_with_pgrp): Save inferior
process group regardless of having tty on stdin.

gdb/testsuite/
2013-07-26  Pedro Alves  <palves@redhat.com>

* gdb.base/interrupt-noterm.c, gdb.base/interrupt-noterm.exp: New
files.

11 years agodaily update
Alan Modra [Fri, 26 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years ago * linux-fork.h (detach_fork): Delete.
Doug Evans [Thu, 25 Jul 2013 20:53:07 +0000 (20:53 +0000)]
* linux-fork.h (detach_fork): Delete.

11 years agoopcodes/
Richard Sandiford [Thu, 25 Jul 2013 19:11:39 +0000 (19:11 +0000)]
opcodes/
2013-07-25  Aaro Koskinen  <aaro.koskinen@iki.fi>

PR gas/15220
* mips-opc.c (mips_builtin_opcodes): Fix wrong opcodes for
Loongson 2F madd.ps, msub.ps, nmadd.ps and nmsub.ps.

gas/testsuite/
* gas/mips/loongson-2f.d: Fix expected output for madd.ps,
msub.ps, nmadd.ps and nmsub.ps.

11 years agoSupport Intel SHA
H.J. Lu [Thu, 25 Jul 2013 16:16:35 +0000 (16:16 +0000)]
Support Intel SHA

gas/

2013-07-25  Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* config/tc-i386.c (cpu_arch): Add .sha.
* doc/c-i386.texi: Document sha/.sha.

gas/testsuite/

2013-07-25  Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* gas/i386/sha.d: New.
* gas/i386/sha.s: New.
* gas/i386/x86-64-sha.d: New.
* gas/i386/x86-64-sha.s: New.
* gas/i386/i386.exp: Run new SHA tests.

opcodes/

2013-07-25  Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* i386-dis.c (PREFIX enum): Add PREFIX_0F38C8, PREFIX_0F38C9,
PREFIX_0F38CA, PREFIX_0F38CB, PREFIX_0F38CC, PREFIX_0F38CD,
PREFIX_0F3ACC.
(prefix_table): Updated.
(three_byte_table): Likewise.
* i386-gen.c (cpu_flag_init): Add CPU_SHA_FLAGS.
(cpu_flags): Add CpuSHA.
(i386_cpu_flags): Add cpusha.
* i386-init.h: Regenerate.
* i386-opc.h (CpuSHA): New.
(CpuUnused): Restored.
(i386_cpu_flags): Add cpusha.
* i386-opc.tbl: Add SHA instructions.
* i386-tbl.h: Regenerate.

11 years agoCorrect MPX ChangeLog entries
H.J. Lu [Thu, 25 Jul 2013 16:09:09 +0000 (16:09 +0000)]
Correct MPX ChangeLog entries

11 years ago * elf64-ppc.c (struct ppc64_elf_obj_tdata): Replace opd_relocs
Alan Modra [Thu, 25 Jul 2013 15:18:26 +0000 (15:18 +0000)]
* elf64-ppc.c (struct ppc64_elf_obj_tdata): Replace opd_relocs
with a union.
(opd_entry_value): Cache .opd section contents.
(ppc64_elf_relocate_section): Adjust.

11 years agoremove pop_target
Tom Tromey [Thu, 25 Jul 2013 14:34:51 +0000 (14:34 +0000)]
remove pop_target

This patch fixes the target double-close problem (PR remote/15266),
and in the process removes pop_target entire (PR remote/15256).

The first issue is that pop_target calls target_close.  However, it
then calls unpush_target, which also calls target_close.  This means
targets must be able to be closed twice.  Not only is this strange,
but it also directly contradicts the contract of to_xclose targets.
(We currently have just a single such target, and it is never pushed;
but I plan to add more, and so this latent bug is triggered.)

The second issue is that it seems to me that calling pop_target is
often unsafe.  This is what cropped up in 15256, where the remote
target assumed that it could pop_target -- but there was another
target higher on the stack, leading to confusion.

But, it is always just as easy to call unpush_target as it is to call
pop_target; and it is also safer.  So, removing pop_target seemed like
an improvement.

Finally, this adds an assertion to target_close to ensure that no
currently-pushed target can be closed.

Built and regtested on x86-64 Fedora 18; both natively and using the
native-gdbserver board file.

PR remote/15256, PR remote/15266:
* bfd-target.c (target_bfd_reopen): Initialize to_magic.
* monitor.c (monitor_detach): Use unpush_target.
* remote-m32r-sdi.c (m32r_detach): Use unpush_target.
* remote-mips.c (mips_detach): Use unpush_target.  Don't
call mips_close.
* remote-sim.c (gdbsim_detach): Use unpush_target.
* target.c (pop_target): Remove.
(pop_all_targets_above): Don't call target_close.
(target_close): Assert that the target is unpushed.
* target.h (pop_target): Don't declare.
* tracepoint.c (tfile_open): Use unpush_target.

11 years agodon't call add_target for thread_db_ops
Tom Tromey [Thu, 25 Jul 2013 14:28:15 +0000 (14:28 +0000)]
don't call add_target for thread_db_ops

Right now, "help target" will include this line:

    target multi-thread -- Threads and pthreads support

However, it doesn't make sense to invoke "target multi-thread".

This patch fixes the problem by not registering the multi-thread
target.  add_target does some needed initialization of the target_ops,
so I broke this out into a new function.

It isn't clear to me whether this patch requires a test case or not.
I'm not sure whether there are other unregistered targets; but if
there are, it seems unlikely that we test for their absence from the
help.

Built and regtested on x86-64 Fedora 18.

* linux-thread-db.c (init_thread_db_ops): Call
complete_target_initialization.
(_initialize_thread_db): Don't call add_target.
* target.c (complete_target_initialization): New function.
(add_target_with_completer): Call it.
* target.h (complete_target_initialization): Declare.

11 years ago2013-07-25 Mark Kettenis <kettenis@gnu.org>
Mark Kettenis [Thu, 25 Jul 2013 12:10:44 +0000 (12:10 +0000)]
2013-07-25  Mark Kettenis  <kettenis@gnu.org>

        * hppa-tdep.h (enum hppa_regnum): Add members for all space registers.
        * hppaobsd-tdep.c (HPPAOBSD_SIZEOF_GREGS): Add comment.
        (HPPANBSD_SIZEOF_GREGS): New define.
        (hppaobsd_supply_gregset): Handle additional registers.
        * hppabsd-nat.c (hppabsd_gregset_supplies_p): Adjust to indicate
        we provide more registers now.
        (hppabsd_supply_gregset): Supply additional registers.
        (hppabsd_collect_gregset): Collect additional registers.

11 years ago2013-07-25 Mark Kettenis <kettenis@gnu.org>
Mark Kettenis [Thu, 25 Jul 2013 12:05:01 +0000 (12:05 +0000)]
2013-07-25  Mark Kettenis  <kettenis@gnu.org>

        * hppabsd-tdep.c: Include "dwarf2-frame.h".
        (hppabsd_dwarf2_frame_init_reg): New function.
        (hppabsd_init_abi): Hook in the DWARF CFI frame unwinder.

11 years agoResue 'z' formatter from mi register display code.
Andrew Burgess [Thu, 25 Jul 2013 10:39:39 +0000 (10:39 +0000)]
Resue 'z' formatter from mi register display code.

  http://sourceware.org/ml/gdb-patches/2013-07/msg00236.html

gdb/ChangeLog

        * mi/mi-main.c (output_register): Make MI 'r' format use standard
        'z' format code.  Remove error for optimized out values, standard
        code will handle these fine.

gdb/testsuite/ChangeLog

        * gdb.mi/mi-reg-undefined.exp: New file.
        * gdb.mi/mi-reg-undefined.c: Likewise.
        * gdb.mi/mi-reg-undefined.S: Likewise.

11 years agoAdd new 'z' format for print command.
Andrew Burgess [Thu, 25 Jul 2013 10:16:08 +0000 (10:16 +0000)]
Add new 'z' format for print command.

  http://sourceware.org/ml/gdb-patches/2013-07/msg00235.html

gdb/ChangeLog

        * NEWS: Mention new 'z' formatter.
        * printcmd.c (print_scalar_formatted): Add new 'z' formatter.
        (_initialize_printcmd): Mention 'z' formatter in help text of the
        'x' command.

gdb/doc/ChangeLog

        * gdb.texinfo (Output Formats): Mention the new 'z' formatter.

gdb/testsuite/ChangeLog

        * gdb.base/printcmds.exp (test_print_int_arrays): Add tests for x,
        z, o, and t output formats.
        * gdb.base/display.exp: Use 'k' as an undefined format now that
        'z' is defined.

11 years ago PR ld/15762
Alan Modra [Thu, 25 Jul 2013 00:14:11 +0000 (00:14 +0000)]
PR ld/15762
PR ld/12761
* elflink.c (elf_link_add_object_symbols): Correct test in
last patch.  Remove unnecessary code.

11 years agodaily update
Alan Modra [Thu, 25 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years ago * mips-tdep.c (micromips_deal_with_atomic_sequence): Correct
Maciej W. Rozycki [Wed, 24 Jul 2013 22:23:12 +0000 (22:23 +0000)]
* mips-tdep.c (micromips_deal_with_atomic_sequence): Correct
formatting.

11 years ago * boards/native-stdio-gdbserver.exp (${board}_build_remote_cmd): Pass
Doug Evans [Wed, 24 Jul 2013 21:59:30 +0000 (21:59 +0000)]
* boards/native-stdio-gdbserver.exp (${board}_build_remote_cmd): Pass
"--" to switch.

11 years ago2013-07-24 Sergio Durigan Junior <sergiodj@redhat.com>
Sergio Durigan Junior [Wed, 24 Jul 2013 19:50:32 +0000 (19:50 +0000)]
2013-07-24  Sergio Durigan Junior  <sergiodj@redhat.com>

* breakpoint.c (create_longjmp_master_breakpoint): Check if probe
interface can evaluate arguments.  Fallback to the old mode if it
cannot.
(create_exception_master_breakpoint): Likewise.
* elfread.c (elf_can_evaluate_probe_arguments): New function.
(struct sym_probe_fns elf_probe_fns): Export function above to the
probe interface.
* probe.c (can_evaluate_probe_arguments): New function.
* probe.h (struct probe_ops) <can_evaluate_probe_arguments>: New
function pointer.
(can_evaluate_probe_arguments): New function prototype.
* solib-svr4.c (svr4_create_solib_event_breakpoints): Check if
probe interface can evaluate arguments.  Fallback to the old mode
if it cannot.
* stap-probe.c (stap_get_probe_argument_count): Check if probe
interface can evaluate arguments.  Warning the user if it cannot.
(stap_can_evaluate_probe_arguments): New function.
(struct probe_ops stap_probe_ops): Export function above to the
probe interface.
* symfile.h (struct sym_probe_fns) <can_evaluate_probe_arguments>:
New function pointer.

11 years agoCheck .gnu.warning section in shared library
H.J. Lu [Wed, 24 Jul 2013 17:24:20 +0000 (17:24 +0000)]
Check .gnu.warning section in shared library

PR ld/15762
* ld-elf/shared.exp (build_tests): Check .gnu.warning section
in the libbarw.so library.
* ld-elf/libbarw.rd: New.

* lib/ld-lib.exp (run_cc_link_tests): Support checking on
output with warning message.

11 years ago gdb/
Luis Machado [Wed, 24 Jul 2013 16:20:12 +0000 (16:20 +0000)]
gdb/
* Makefile.in (SFILES): Add common/target-common.c.
Add common/target-common.h to headers.
(COMMON_OBS): Add target-common.o.
(target-common.o): New target.
* linux-nat.h (resume_kind): Move to common/target-common.h.
* target.c (target_waitstatus_to_string): Move to
common/target-common.c.
* target.h: Include target-common.h.
(target_waitkind): Move to common/target-common.h.
(target_waitstatus): Likewise.
(TARGET_WNOHANG): Likewise.
* common/target-common.c: New file.
* common/target-common.h: New file.

gdb/gdbserver/
* Makefile.in (SFILES): /common/target-common.c.
(OBS): Add target-common.o.
(server_h): Add $(srcdir)/../common/target-common.h.
(target-common.o): New target.
* server.c (queue_stop_reply_callback): Free
status string after use.
* target.c (target_waitstatus_to_string): Remove.
* target.h: Include target-common.h.
(resume_kind): Likewise.
(target_waitkind): Likewise.
(target_waitstatus): Likewise.
(TARGET_WNOHANG): Likewise.

11 years agoSupport Intel MPX
H.J. Lu [Wed, 24 Jul 2013 15:47:25 +0000 (15:47 +0000)]
Support Intel MPX

gas/

2013-07-24  Anna Tikhonova  <anna.tikhonova@intel.com>
    Kirill Yukhin  <kirill.yukhin@intel.com>
    Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* config/tc-i386.c (BND_PREFIX): New.
(struct _i386_insn): Add new field bnd_prefix.
(add_bnd_prefix): New.
(cpu_arch): Add MPX.
(i386_operand_type): Add regbnd.
(md_assemble): Handle BND prefixes.
(parse_insn): Likewise.
(output_branch): Likewise.
(output_jump): Likewise.
(build_modrm_byte): Handle regbnd.
(OPTION_MADD_BND_PREFIX): New.
(md_longopts): Add entry for 'madd-bnd-prefix'.
(md_parse_option): Handle madd-bnd-prefix option.
(md_show_usage): Add description for madd-bnd-prefix
option.
* doc/c-i386.texi: Document mpx/.mpx and -madd-bnd-prefix.

gas/testsuite/

2013-07-24  Anna Tikhonova  <anna.tikhonova@intel.com>
    Kirill Yukhin  <kirill.yukhin@intel.com>
    Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* gas/i386/mpx-add-bnd-prefix.s: New.
* gas/i386/mpx-add-bnd-prefix.d: New.
* gas/i386/mpx-inval-1.l: New.
* gas/i386/mpx-inval-1.s: New.
* gas/i386/mpx.d: New.
* gas/i386/mpx.s: New.
* gas/i386/x86-64-mpx-add-bnd-prefix.d: New.
* gas/i386/x86-64-mpx-add-bnd-prefix.s: New.
* gas/i386/x86-64-mpx-addr32.d: New.
* gas/i386/x86-64-mpx-addr32.s: New.
* gas/i386/x86-64-mpx-inval-1.l: New.
* gas/i386/x86-64-mpx-inval-1.s: New.
* gas/i386/x86-64-mpx-inval-2.l: New.
* gas/i386/x86-64-mpx-inval-2.s: New.
* gas/i386/x86-64-mpx.d: New.
* gas/i386/x86-64-mpx.s: New.
* gas/i386/nops.d: Adjust to MPX changes.
* gas/i386/nops.s: Likewise.
* gas/i386/x86-64-nops.d: Likewise.
* gas/i386/x86-64-nops.s: Likewise.
* gas/i386/ilp32/x86-64-nops.d: Likewise.
* gas/i386/i386.exp: Run new MPX tests.

include/opcode/

2013-07-24  Anna Tikhonova  <anna.tikhonova@intel.com>
    Kirill Yukhin  <kirill.yukhin@intel.com>
    Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* i386.h (BND_PREFIX_OPCODE): New.

opcodes/

2013-07-24  Anna Tikhonova  <anna.tikhonova@intel.com>
    Kirill Yukhin  <kirill.yukhin@intel.com>
    Michael Zolotukhin  <michael.v.zolotukhin@intel.com>

* i386-dis.c (BND_Fixup): New.
(Ebnd): New.
(Ev_bnd): New.
(Gbnd): New.
(BND): New.
(v_bnd_mode): New.
(bnd_mode): New.
(MOD enum): Add new entries.
(PREFIX enum): Likewise.
(dis tables): Replace XX with BND for near branch and call
instructions.
(prefix_table): Add new entries.
(mod_table): Likewise.
(names_bnd): New.
(intel_names_bnd): New.
(att_names_bnd): New.
(BND_PREFIX): New.
(prefix_name): Handle BND_PREFIX.
(print_insn): Initialize names_bnd.
(intel_operand_size): Handle new modes.
(OP_E_register): Likewise.
(OP_E_memory): Likewise.
(OP_G): Likewise.
* i386-gen.c (cpu_flag_init): Add CpuMPX.
(cpu_flags): Add CpuMPX.
(operand_type_init): Add RegBND.
(opcode_modifiers): Add BNDPrefixOk.
(operand_types): Add RegBND.
* i386-init.h: Regenerate.
* i386-opc.h (CpuMPX): New.
(CpuUnused): Comment out.
(i386_cpu_flags): Add cpumpx.
(BNDPrefixOk): New.
(i386_opcode_modifier): Add bndprefixok.
(RegBND): New.
(i386_operand_type): Add regbnd.
* i386-opc.tbl: Add BNDPrefixOk to near jumps, calls and rets.
Add MPX instructions and bnd prefix.
* i386-reg.tbl: Add bnd0-bnd3 registers.
* i386-tbl.h: Regenerate.

11 years ago * dwarf2read.c (lookup_dwo_cutu): Change missing DWO complaint to
Doug Evans [Wed, 24 Jul 2013 15:45:32 +0000 (15:45 +0000)]
* dwarf2read.c (lookup_dwo_cutu): Change missing DWO complaint to
a warning.

11 years agobfd/
Tristan Gingold [Wed, 24 Jul 2013 14:12:41 +0000 (14:12 +0000)]
bfd/
2013-07-24  Tristan Gingold  <gingold@adacore.com>

        * coff-rs6000.c (xcoff_howto_table): Fix masks and pc_relative for
        R_RBR.  Add numbers in comments.
        (_bfd_xcoff_reloc_type_lookup): Handle BFD_RELOC_PPC_B16.
        * coff64-rs6000.c: Likewise.

gas/
2013-07-24  Tristan Gingold  <gingold@adacore.com>

        * config/tc-ppc.c (md_apply_fix): Adjust BFD_RELOC_PPC_B16 on
        xcoff targets.

gas/testsuite/
2013-07-24  Tristan Gingold  <gingold@adacore.com>

        * gas/ppc/test2xcoff32.s, gas/ppc/test2xcoff32.d: New files
        * gas/ppc/ppc.exp: Add new test.
        * gas/ppc/xcoff-br16-1.s, gas/ppc/xcoff-br16-1.d,
        gas/ppc/xcoff-br16-2.s, gas/ppc/xcoff-br16-2.d: New files
        * gas/ppc/aix.exp: Add new tests.

11 years agogdb/testsuite/
Yao Qi [Wed, 24 Jul 2013 09:17:15 +0000 (09:17 +0000)]
gdb/testsuite/

* gdb.mi/mi-var-cmd.exp: If host is remote, use ${testfile} on
host.
* gdb.mi/mi-basics.exp (test_exec_and_symbol_mi_operatons):
Likewise.  If host is remote, copy ${binfile} to host.

11 years ago2013-07-24 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Andreas Krebbel [Wed, 24 Jul 2013 09:02:45 +0000 (09:02 +0000)]
2013-07-24  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/tc-s390.c (s390_machine): Don't force the .machine
argument to lower case.

11 years agodaily update
Alan Modra [Wed, 24 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years agooops - omitted from previous delta
Nick Clifton [Tue, 23 Jul 2013 07:40:46 +0000 (07:40 +0000)]
oops - omitted from previous delta

11 years agogdb/
Yao Qi [Tue, 23 Jul 2013 07:02:03 +0000 (07:02 +0000)]
gdb/

* i386-tdep.c (i386_in_stack_tramp_p): Remove unused
parameter 'gdbarch'.
(i386_stack_tramp_frame_sniffer): Caller update.
* i386-linux-tdep.c (i386_linux_core_read_xcr0): Remove
parameter 'gdbarch' and 'target'.
(i386_linux_core_read_description): Caller update.
* amd64-linux-tdep.c (amd64_linux_core_read_description):
Likewise.
* i386-linux-tdep.h (i386_linux_core_read_xcr0): Update
declaration.

11 years ago * dwarf2read.c (init_cutu_and_read_dies): Revert patch from
Tom Tromey [Tue, 23 Jul 2013 06:56:53 +0000 (06:56 +0000)]
* dwarf2read.c (init_cutu_and_read_dies): Revert patch from
2013-07-22.

11 years agogdb/testsuite/
Yao Qi [Tue, 23 Jul 2013 06:54:47 +0000 (06:54 +0000)]
gdb/testsuite/

* gdb.mi/mi-var-cmd.exp: Adjust pattern to match current error
message.

11 years agodaily update
Alan Modra [Tue, 23 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years agoFix the following ChangeLog entry:
Jan Kratochvil [Mon, 22 Jul 2013 20:52:23 +0000 (20:52 +0000)]
Fix the following ChangeLog entry:

2013-07-22  Doug Evans  <dje@google.com>

gdb/
* exec.h (remove_target_sections): Delete arg abfd.
* exec.c (exec_close): Update call to remove_target_sections.
(remove_target_sections): Delete arg abfd.
* solib.c (update_solib_list): Ditto.
(reload_shared_libraries_1): Ditto.
(clear_solib): Ditto, and unconditionally call remove_target_sections.
* target.h (struct target_section): Rename key to owner.
All uses updated.

11 years ago2013-07-22 Doug Evans <dje@google.com>
Jan Kratochvil [Mon, 22 Jul 2013 20:51:11 +0000 (20:51 +0000)]
2013-07-22  Doug Evans  <dje@google.com>

gdb/
* exec.h (remove_target_sections): Delete arg abfd.
* exec.c (remove_target_sections): Delete arg abfd.
(exec_close): Update call to remove_target_sections.
* solib.c (update_solib_list): Ditto.
(reload_shared_libraries_1): Ditto.
(clear_solib): Ditto, and unconditionally call remove_target_sections.

11 years agomerge from gcc
DJ Delorie [Mon, 22 Jul 2013 18:03:12 +0000 (18:03 +0000)]
merge from gcc

11 years agofix solib-som.c
Tom Tromey [Mon, 22 Jul 2013 18:00:50 +0000 (18:00 +0000)]
fix solib-som.c

som_open_symbol_file_object was leaking a cleanup.

* solib-som.c (som_open_symbol_file_object): Call do_cleanups.

11 years agofix init_cutu_and_read_dies
Tom Tromey [Mon, 22 Jul 2013 17:58:51 +0000 (17:58 +0000)]
fix init_cutu_and_read_dies

init_cutu_and_read_dies creates an outer cleanup and uses its
immediately nested inner cleanup conditionally.  This seems overly
complicated to me; simpler is to just deal with the outer cleanup and
drop the inner one.  That is what this patch implements.

* dwarf2read.c (init_cutu_and_read_dies): Remove 'free_cu_cleanup'.
Simplify cleanup handling.

11 years agofix dwarf_decode_line_header
Tom Tromey [Mon, 22 Jul 2013 17:53:55 +0000 (17:53 +0000)]
fix dwarf_decode_line_header

dwarf_decode_line_header has one return that is missing a call to
do_cleanups.  This patch adds it.

This was found using the cleanup checker.

* dwarf2read.c (dwarf_decode_line_header): Call do_cleanups
on all return paths.

11 years agosrc-release: Fix VER computation for TOOL=gdb
Joel Brobecker [Mon, 22 Jul 2013 15:17:20 +0000 (15:17 +0000)]
src-release: Fix VER computation for TOOL=gdb

Without this patch, the DATE marker in gdb/version.in does not get
replaced by the source packaging date, causing the name of the
tarball being created to: have the DATE marker in the tarball
name and the name of the directory the sources unpack to (Eg:
gdb-7.6.50-DATE-cvs.tar instead of gdb-7.6.50-20130710-cvs.tar).

ChangeLog:

        * src-release (VER): Use $(TOOL)/common/create-version.sh
        if it exists.

11 years ago2013-07-22 Edjunior Barbosa Machado <emachado@linux.vnet.ibm.com>
Ulrich Weigand [Mon, 22 Jul 2013 13:17:51 +0000 (13:17 +0000)]
2013-07-22  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>

* ppc-linux-nat.c (PPC_DEBUG_FEATURE_DATA_BP_DAWR): New define.
(ppc_linux_region_ok_for_hw_watchpoint): Add checking to use the new
DAWR interface for longer ranges hardware watchpoint (up to 512 bytes).

11 years agooops - omitted fromn previous delta
Nick Clifton [Mon, 22 Jul 2013 13:04:57 +0000 (13:04 +0000)]
oops - omitted fromn previous delta

11 years ago * ld-scripts/script.exp: Use run_dump_test instead of
Nick Clifton [Mon, 22 Jul 2013 13:03:30 +0000 (13:03 +0000)]
* ld-scripts/script.exp: Use run_dump_test instead of
ld_simple_link to check the error message.
* ld-scripts/align-with-input.d: New file.
* ld-scripts/region-alias-1.d: Likewise.
* ld-scripts/region-alias-2.d: Likewise.
* ld-scripts/region-alias-3.d: Likewise.
* ld-scripts/region-alias-4.d: Likewise.

11 years ago2013-07-22 Phil Muldoon <pmuldoon@redhat.com>
Phil Muldoon [Mon, 22 Jul 2013 11:42:31 +0000 (11:42 +0000)]
2013-07-22  Phil Muldoon  <pmuldoon@redhat.com>

* top.c (print_gdb_version): Add help, apropos description and
url to online documentation.

11 years ago2013-07-22 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Kyrylo Tkachov [Mon, 22 Jul 2013 09:05:04 +0000 (09:05 +0000)]
2013-07-22  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* config/tc-arm.c (s_arm_arch_extension): Improve error message
for invalid extension.

11 years agodaily update
Alan Modra [Mon, 22 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years agomerge from gcc
DJ Delorie [Sun, 21 Jul 2013 17:19:10 +0000 (17:19 +0000)]
merge from gcc

11 years agodaily update
Alan Modra [Sun, 21 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years ago PR ld/15762
Alan Modra [Sat, 20 Jul 2013 09:50:16 +0000 (09:50 +0000)]
PR ld/15762
PR ld/12761
* elflink.c (elf_link_add_object_symbols): Don't clobber
.gnu.warning.symbol sections when shared.

11 years agodaily update
Alan Modra [Sat, 20 Jul 2013 00:00:05 +0000 (00:00 +0000)]
daily update

11 years agogold/
Roland McGrath [Fri, 19 Jul 2013 23:07:08 +0000 (23:07 +0000)]
gold/
* options.h (General_options): Add -Trodata-segment option.
* parameters.cc (Parameters::check_rodata_segment): New function.
(Parameters::set_target_once): Call it.
* parameters.h (Parameters): Declare it (private member function).
* layout.cc (load_seg_unusable_for_headers): New function, broken
out of Layout::relaxation_loop_body.  If TARGET->isolate_execinstr()
then validate rodata segment rather than text segment.
(relaxation_loop_body): Call that.
(is_text_segment): New function.  Don't admit a non-executable
segment if TARGET->isolate_execinstr().
(set_segment_offsets): Call it.  Honor -Trodata-segment option.

11 years ago[AArch64, ILP32] Retire -milp32 and -mlp64; use -mabi=ilp32 and -mabi=lp64.
Yufeng Zhang [Fri, 19 Jul 2013 16:25:54 +0000 (16:25 +0000)]
[AArch64, ILP32] Retire -milp32 and -mlp64; use -mabi=ilp32 and -mabi=lp64.

gas/

* config/tc-aarch64.c (enum aarch64_abi_type): New enumeration tag.
(AARCH64_ABI_LP64, AARCH64_ABI_ILP32): New enumerators.
(aarch64_abi): New variable.
(ilp32_p): Change to be a macro.
(aarch64_opts): Remove the support for option -milp32 and -mlp64.
(struct aarch64_option_abi_value_table): New struct.
(aarch64_abis): New table.
(aarch64_parse_abi): New function.
(aarch64_long_opts): Add entry for -mabi=.
* doc/as.texinfo (Target AArch64 options): Document -mabi.
* doc/c-aarch64.texi: Likewise.

gas/testsuite/

* gas/aarch64/ilp32-basic.d (#as): Update to use -mabi=ilp32

11 years agooops - omitted from previous delta
Nick Clifton [Fri, 19 Jul 2013 13:21:55 +0000 (13:21 +0000)]
oops - omitted from previous delta

11 years ago * elf32-rx.c (rx_elf_relocate_section): Fix typo: move
Nick Clifton [Fri, 19 Jul 2013 13:16:17 +0000 (13:16 +0000)]
* elf32-rx.c (rx_elf_relocate_section): Fix typo: move
saw_subtract from R_RX_OPdiv to R_RX_OPneg.

11 years ago PR binutils/15745
Nick Clifton [Fri, 19 Jul 2013 10:44:01 +0000 (10:44 +0000)]
PR binutils/15745
* readelf.c (get_unwind_section_word): Whilst searching for a
reloc section associated with an unwind section, check the type as
well as the section number.

11 years ago * ldgram.y: Add ALIGN_WITH_INPUT output section attribute.
Nick Clifton [Fri, 19 Jul 2013 10:39:51 +0000 (10:39 +0000)]
* ldgram.y: Add ALIGN_WITH_INPUT output section attribute.
* ldlang.c: Likewise.
* ldlang.h: Likewise.
* ldlex.l: Likewise.
* mri.c: Likewise.
* ld.texinfo: Document new feature.
* NEWS: Mention new feature.

* ld-scripts/script.exp: Run align with input test.
* ld-scripts/align-with-input.t: New file.
* ld-scripts/rgn-at8.d: Likewise.
* ld-scripts/rgn-at8.t: Likewise.

11 years agogdb/testsuite/gdb.base: Enable disp-step-syscall.exp tests for ARM.
Will Newton [Fri, 19 Jul 2013 10:24:34 +0000 (10:24 +0000)]
gdb/testsuite/gdb.base: Enable disp-step-syscall.exp tests for ARM.

disp-step-syscall.exp is not run for ARM targets because ARM syscall
instructions have not been added to the list of possible syscall
instructions. This patch adds ARM syscall instructions to enable
disp-step-syscall.exp tests for ARM targets. Attached patch is tested
on ARMv7 and helps pass all disp-step-syscall.exp tests for ARM
targets.

gdb/testsuite/ChangeLog:

2013-07-19  Omair Javaid  <Omair.Javaid@linaro.org>

* gdb.base/disp-step-syscall.exp: Add svc and swi syscall
instructions and enable disp-step-syscall for arm targets.

11 years agogdb/testsuite/gdb.dwarf2: Replace @ with % for ARM compatability.
Will Newton [Fri, 19 Jul 2013 10:01:26 +0000 (10:01 +0000)]
gdb/testsuite/gdb.dwarf2: Replace @ with % for ARM compatability.

The ARM assembler recognises @ symbol as a comment marker and
therefore is unable to assemble some of gdb.dwarf2 testsuite tests.
This patch replaces all occurrences of @ symbol with % sign to allow
tests stay compatible with both ARM and x86 assembly. This patch has
been tested on x86_64 and ARMv7 targets.

gdb/testsuite/ChangeLog:

2013-07-19  Omair Javaid  <Omair.Javaid@linaro.org>

        * gdb.dwarf2/fission-reread.S: Replace @ sign with % sign to remove
        assembler errors on arm.
        * gdb.dwarf2/mac-fileno.S: Likewise.
        * gdb.dwarf2/member-ptr-forwardref.S: Likewise.
        * gdb.dwarf2/pr13961.S: Likewise.

11 years ago2013-07-19 Hui Zhu <hui@codesourcery.com>
Hui Zhu [Fri, 19 Jul 2013 07:26:46 +0000 (07:26 +0000)]
2013-07-19  Hui Zhu  <hui@codesourcery.com>

PR gdb/15692
* mi/mi-cmd-break.c (mi_argv_to_format): Handle double quotes.

2013-07-19  Hui Zhu  <hui@codesourcery.com>

PR gdb/15692
* gdb.mi/mi-dprintf.exp: Add double quotes test.

11 years agodaily update
Alan Modra [Fri, 19 Jul 2013 00:00:04 +0000 (00:00 +0000)]
daily update

11 years agogdb/
Yao Qi [Thu, 18 Jul 2013 23:09:49 +0000 (23:09 +0000)]
gdb/

* target.c (update_current_target): Change the default action
of 'to_traceframe_info' from tcomplain to return_zero.
* target.h (struct target_ops) <to_traceframe_info>: Add more
comments.
* valops.c (read_value_memory): Call
traceframe_available_memory unconditionally.

gdb/testsuite/

* gdb.trace/read-memory.exp (test_from_remote): Update test.
(teset_from_exec): Likewise.

11 years agogdb/testsuite/
Yao Qi [Thu, 18 Jul 2013 23:04:00 +0000 (23:04 +0000)]
gdb/testsuite/

* gdb.trace/read-memory.c: New.
* gdb.trace/read-memory.exp: New.

11 years agogdb/testsuite/
Yao Qi [Thu, 18 Jul 2013 22:38:58 +0000 (22:38 +0000)]
gdb/testsuite/

* lib/gdb.exp (gdb_compile_shlib): Pass the tail name of
$dest to link options if host is remote.  Move the
generated file to $dest.a on host if host is remote.

11 years ago * ar.c (usage): Fix C conformance issue.
Nick Clifton [Thu, 18 Jul 2013 16:12:35 +0000 (16:12 +0000)]
* ar.c (usage): Fix C conformance issue.

* config/tc-i386-intel.c (i386_intel_operand): Fixed signed vs
unsigned comparison.

11 years agogdb/testsuite/gdb.threads: Ensure TLS tests link against pthreads.
Will Newton [Thu, 18 Jul 2013 15:49:22 +0000 (15:49 +0000)]
gdb/testsuite/gdb.threads: Ensure TLS tests link against pthreads.

On Ubuntu by default the compiler passes --as-needed to ld which
means no DT_NEEDED entry is added for libpthread when building
the TLS tests. This causes the test to fail as libpthread is
required to look up TLS variables. Add calls to pthread_testcancel
to make sure libpthread gets linked.

gdb/testsuite/ChangeLog:

2013-07-18  Will Newton  <will.newton@linaro.org>

* gdb.threads/tls-nodebug.c: Call pthread_testcancel
to ensure the test is linked against pthreads.
* gdb.threads/tls-var-main.c: Likewise.
* gdb.threads/tls-shared.c: Likewise.

11 years ago * doc/binutils.texi (nm, objdump): Remove bogus links to STABS
Nick Clifton [Thu, 18 Jul 2013 15:39:21 +0000 (15:39 +0000)]
* doc/binutils.texi (nm, objdump): Remove bogus links to STABS
documentation.

11 years ago PR ld/15721
Nick Clifton [Thu, 18 Jul 2013 14:08:42 +0000 (14:08 +0000)]
PR ld/15721
* elf32-msp430.c (R_MSP430_10_PCREL): Use 10-bit source and
destination masks.
* R_MSP430_2X_PCREL: Likewise.
* R_MSP430X_10_PCREL: Likewise.
* R_MSP430X_2X_PCREL: Likewise.

11 years ago PR binutils/15728
Nick Clifton [Thu, 18 Jul 2013 13:53:04 +0000 (13:53 +0000)]
PR binutils/15728
* basic-ops.h: (SUBWORDSIQI) Make declaration static.
* (SUBWORDSIHI): Likewise.
* (SUBWORDDIQI): Likewise.
* (SUBWORDDIHI): Likewise.
* (SUBWORDDISI): Likewise.

11 years ago * config/rx-defs.h: Add macros for RX100, RX200, RX600, and
Nick Clifton [Thu, 18 Jul 2013 12:15:15 +0000 (12:15 +0000)]
    * config/rx-defs.h: Add macros for RX100, RX200, RX600, and
RX610.
        * config/rx-parse.y: (rx_check_float_support): Add function to
check floating point operation support for target RX100 and
RX200.
        * config/tc-rx.c: Add CPU options RX100, RX200, RX600, and RX610.
        * doc/c-rx.texi: Add -mcpu option to recognize macros for RX100,
        RX200, RX600, and RX610

11 years ago * elf32-arm.c (arm_type_of_stub): Don't use ST_BRANCH_TO_ARM for
Nick Clifton [Thu, 18 Jul 2013 12:00:26 +0000 (12:00 +0000)]
    * elf32-arm.c (arm_type_of_stub): Don't use ST_BRANCH_TO_ARM for
thumb only targets.
        (elf32_arm_final_link_relocate): Likewise.

        * ld-arm/thumb-b-lks-sym.d: Updated to be more flexible.
        * ld-arm/thumb-bl-lks-sym.d: Likewise.

11 years ago * config/tc-avr.c (md_show_usage): Add avrxmega2 to help text
Nick Clifton [Thu, 18 Jul 2013 11:52:47 +0000 (11:52 +0000)]
* config/tc-avr.c (md_show_usage): Add avrxmega2 to help text

11 years ago * config/tc-avr.c: Make ata6289's ISA to AVR_ISA_AVR4.
Nick Clifton [Thu, 18 Jul 2013 11:47:30 +0000 (11:47 +0000)]
* config/tc-avr.c: Make ata6289's ISA to AVR_ISA_AVR4.
* doc/c-avr.texi: Likewise.

11 years ago * mach-o.c (mach_o_section_name_xlat dw): Add entry for
Nick Clifton [Thu, 18 Jul 2013 11:40:37 +0000 (11:40 +0000)]
* mach-o.c (mach_o_section_name_xlat dw): Add entry for
.debug_gdb_scripts

11 years ago * elf32-arm.c (elf32_arm_stub_long_branch_arm_nacl): New variable.
Nick Clifton [Thu, 18 Jul 2013 11:24:11 +0000 (11:24 +0000)]
* elf32-arm.c (elf32_arm_stub_long_branch_arm_nacl): New variable.
(elf32_arm_stub_long_branch_arm_nacl_pic): New variable.
(arm_build_one_stub): Increase MAXRELOCS to 3.
(arm_type_of_stub): Use them if GLOBALS->nacl_p.
(struct elf32_arm_link_hash_table): Give add_stub_section member's
pointee type a third argument.
(elf32_arm_create_or_find_stub_sec): Update caller.
(elf32_arm_size_stubs): Update argument type.
* bfd-in.h (elf32_arm_size_stubs): Update decl.
* bfd-in2.h: Regenerate.
* libbfd.h: Regenerate.

* emultempl/armelf.em (elf32_arm_add_stub_section): Take third
argument ALIGNMENT_POWER, use it instead of constant 3.

* ld-arm/farcall-arm-nacl.d: New file.
* ld-arm/farcall-arm-nacl-pic.d: New file.
* ld-arm/farcall-data-nacl.d: New file.
* ld-arm/arm-elf.exp (armeabitests_common): Add extra element to
"action" lists for those cases to use a different dump file for NaCl
targets.
Massage $armeabitests_common to drop the extra element or the one
before it, depending on [istarget "arm*-*-nacl*"].

* ld-arm/arm-elf.exp (armelftests_common): Move all "Cortex-A8
erratum fix", Thumb-only and interworking cases to ...
(armelftests_nonacl): ... here.
(armeabitests_common): Move all "erratum 760522 fix", Thumb-only
and interworking cases to ...
(armeabitests_nonacl): ... here.

11 years ago * readelf.c (process_unwind): Do not return the result of a void
Nick Clifton [Thu, 18 Jul 2013 10:57:23 +0000 (10:57 +0000)]
* readelf.c (process_unwind): Do not return the result of a void
function.

11 years agogdb/testsuite/
Yao Qi [Thu, 18 Jul 2013 05:13:27 +0000 (05:13 +0000)]
gdb/testsuite/

* lib/future.exp (gdb_default_target_compile): Use tail name
of $destfile as the output name of compile.  Move the
generated file to $destfile on build.

11 years agogdb/testsuite/
Yao Qi [Thu, 18 Jul 2013 05:07:25 +0000 (05:07 +0000)]
gdb/testsuite/

* lib/gdb.exp (gdb_compile): Set
gdb_saved_set_unbuffered_mode_obj to
set_unbuffered_mode_saved.o if host is remote.  Invoke
remote_download to copy $unbuf_obj to host.