Fix PTRACE_GETREGSET failure for compat inferiors on arm64
[binutils-gdb.git] / gdb / ChangeLog
index 57f21c26c7680425aedcfe8ceb6dc9b903bd9fcb..c146e0b38d2f5a1ac82412b46aa495332e125983 100644 (file)
@@ -1,3 +1,277 @@
+2017-01-27  Kees Cook  <keescook@google.com>
+
+       * gdb/arm-linux-nat.c (arm_linux_fetch_inferior_registers): Call
+       fetch_fpregs if target has fpa registers.
+       (arm_linux_store_inferior_registers): Call store_fpregs if target
+       has fpa registers.
+
+2017-01-26  Andreas Arnez  <arnez@linux.vnet.ibm.com>
+
+       * cris-tdep.c (cris_gdbarch_init): Remove check for
+       info.byte_order and force it to BFD_ENDIAN_LITTLE.
+
+2017-01-26  Antoine Tremblay  <antoine.tremblay@ericsson.com>
+
+       * corelow.c (get_core_register_section): Check for regset
+       existence before checking for REGSET_VARIABLE_SIZE.
+
+2017-01-26  Yao Qi  <yao.qi@linaro.org>
+           Pedro Alves  <palves@redhat.com>
+
+       PR gdb/20939
+       * disasm.c (gdb_disassembler::dis_asm_memory_error): Don't
+       call memory_error, save memaddr instead.
+       (gdb_disassembler::print_insn): If gdbarch_print_insn returns
+       negative, cal memory_error.
+       * disasm.h (gdb_disassembler) <m_err_memaddr>: New field.
+
+2017-01-26  Yao Qi  <yao.qi@linaro.org>
+
+       * disasm-selftests.c (memory_error_test): New function.
+       (_initialize_disasm_selftests): Register memory_error_test.
+
+2017-01-26  Yao Qi  <yao.qi@linaro.org>
+
+       * Makefile.in (SFILES): Add disasm-selftests.c and
+       selftest-arch.c.
+       (COMMON_OBS): Add disasm-selftests.o and selftest-arch.o.
+       * disasm-selftests.c: New file.
+       * selftest-arch.c: New file.
+       * selftest-arch.h: New file.
+
+2017-01-26  Yao Qi  <yao.qi@linaro.org>
+
+       * mep-tdep.c (mep_gdb_print_insn): Set info->arch
+       to bfd_arch_mep.  Don't return 0 if section is not
+       found.  Call print_insn_mep.
+
+2017-01-26  Pedro Alves  <palves@redhat.com>
+           Yao Qi  <yao.qi@linaro.org>
+
+       * arm-tdep.c: Include "disasm.h".
+       (gdb_print_insn_arm): Update code to get gdbarch.
+       * disasm.c (dis_asm_read_memory): Change it to
+       gdb_disassembler::dis_asm_read_memory.
+       (dis_asm_memory_error): Likewise.
+       (dis_asm_print_address): Likewise.
+       (gdb_pretty_print_insn): Change it to
+       gdb_disassembler::pretty_print_insn.
+       (dump_insns): Add one argument gdb_disassemlber.  All
+       callers updated.
+       (do_mixed_source_and_assembly_deprecated): Likewise.
+       (do_mixed_source_and_assembly): Likewise.
+       (do_assembly_only): Likewise.
+       (gdb_disassembler::gdb_disassembler): New.
+       (gdb_disassembler::print_insn): New.
+       * disasm.h (class gdb_disassembler): New.
+       (gdb_pretty_print_insn): Remove declaration.
+       (gdb_disassemble_info): Likewise.
+       * guile/scm-disasm.c (class gdbscm_disassembler): New.
+       (gdbscm_disasm_read_memory_worker): Update.
+       (gdbscm_disasm_read_memory): Update.
+       (gdbscm_disasm_memory_error): Remove.
+       (gdbscm_disasm_print_address): Remove.
+       (gdbscm_disassembler::gdbscm_disassembler): New.
+       (gdbscm_print_insn_from_port): Update.
+       * mips-tdep.c: Include disasm.h.
+       (gdb_print_insn_mips): Update code to get gdbarch.
+       * record-btrace.c (btrace_insn_history): Update.
+       * spu-tdep.c: Include disasm.h.
+       (struct spu_dis_asm_data): Remove.
+       (struct spu_dis_asm_info): New.
+       (spu_dis_asm_print_address): Use spu_dis_asm_info to get
+       SPU id.
+       (gdb_print_insn_spu): Cast disassemble_info to
+       spu_dis_asm_info.
+
+2017-01-26  Yao Qi  <yao.qi@linaro.org>
+
+       * disasm.c (do_ui_file_delete): Delete.
+       (gdb_insn_length): Move code creating stream to ...
+       * utils.c (null_stream): ... here.  New function.
+       * utils.h (null_stream): Declare.
+
+2017-01-23  Simon Marchi  <simon.marchi@polymtl.ca>
+
+       * python/py-inferior.c (find_thread_object): Return directly
+       from the loop.  Remove "found" variable.
+
+2017-01-21  Joel Brobecker  <brobecker@adacore.com>
+
+       GDB 7.12.1 released.
+
+2017-01-20  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * python/py-function.c (fnpy_call): Reorder declarations to have
+       the gdbpy_enter object declared first.
+       * python/py-xmethods.c (gdbpy_get_xmethod_arg_types): Likewise.
+
+2017-01-20  Simon Marchi  <simon.marchi@ericsson.com>
+
+       PR python/21068
+       * python/python-internal.h (PyMem_RawMalloc): Define for
+       Python < 3.4.
+       * python/py-gdb-readline.c (gdbpy_readline_wrapper): Use
+       PyMem_RawMalloc instead of PyMem_Malloc.
+
+2017-01-20  Mike Wrighton  <mike_wrighton@codesourcery.com>
+           Luis Machado  <lgustavo@codesourcery.com>
+
+       * NEWS (New commands): Mention flash-erase.
+       (New MI commands): Mention target-flash-erase.
+       * mi/mi-cmds.c (mi_cmd_target_flash_erase): Add target-flash-erase MI
+       command.
+       * mi/mi-cmds.h (mi_cmd_target_flash_erase): New declaration.
+       * mi/mi-main.c (mi_cmd_target_flash_erase): New function.
+       * target.c (flash_erase_command): New function.
+       (initialize_targets): Add new flash-erase command.
+       * target.h (flash_erase_command): New declaration.
+
+2017-01-20  Joel Brobecker  <brobecker@adacore.com>
+
+       * nat/linux-ptrace.c: Only include <sys/procfs.h> if
+       HAVE_SYS_PROCFS_H is defined.
+
+2017-01-18  Alan Hayward  <alan.hayward@arm.com>
+
+       * remote.c (struct cached_reg): Change data into a pointer.
+       * (stop_reply_dtr): Free data pointers before deleting vector.
+       (process_stop_reply): Likewise.
+       (remote_parse_stop_reply): Allocate space for data
+
+2017-01-18  Alan Hayward  <alan.hayward@arm.com>
+
+       * amd64-tdep.c (amd64_pseudo_register_read_value): remove
+       MAX_REGISTER_SIZE.
+       (amd64_pseudo_register_read_value): Likewise.
+       * remote.c (fetch_register_using_p): Remove MAX_REGISTER_SIZE.
+       (store_register_using_P): Likewise.
+       * regcache.c (regcache_xfer_part): Likewise.
+
+2017-01-16  Ivo Raisr  <ivo.raisr@oracle.com>
+
+       Split real and pseudo registers.
+       * sparc-tdep.h (SPARC_CORE_REGISTERS): New macro.
+       (sparc32_pseudo_regnum): New enum.
+       * sparc64-tdep.h (sparc64_pseudo_regnum): New enum.
+       * sparc-tdep.c (SPARC32_FPU_REGISTERS): New macro.
+       (SPARC32_CP0_REGISTERS): New macro.
+       (sparc32_pseudo_register_name): New function.
+       (sparc32_register_name): Use sparc32_pseudo_register_name.
+       (sparc32_pseudo_register_type): New function.
+       (sparc32_register_type): Use sparc32_pseudo_register_type.
+       (sparc32_pseudo_register_read, sparc32_pseudo_register_write): Handle
+       pseudo register numbers.
+       * sparc64-tdep.c SPARC64_FPU_REGISTERS): New macro.
+       (SPARC64_CP0_REGISTERS): New macro.
+       (sparc64_pseudo_register_name): New function.
+       (sparc64_register_name): Use sparc64_pseudo_register_name.
+       (sparc64_pseudo_register_type): New function.
+       (sparc64_register_type): Use sparc64_pseudo_register_type.
+       (sparc64_pseudo_register_read, sparc64_pseudo_register_write): Handle
+       pseudo register numbers.
+       (sparc64_store_floating_fields, sparc64_extract_floating_fields,
+       sparc64_store_arguments): Handle pseudo register numbers.
+
+2017-01-13  Yao Qi  <yao.qi@linaro.org>
+
+       * remote.c (REMOTE_DEBUG_MAX_CHAR): New macro.
+       (putpkt_binary): Print only REMOTE_DEBUG_MAX_CHAR chars in debug
+       output.
+       (getpkt_or_notif_sane_1): Likewise.
+
+2017-01-13  Yao Qi  <yao.qi@linaro.org>
+
+       * Makefile.in (checker-headers): Use CXX and CXX_DIALET instead
+       of CC.  Pass "-x c++-header" instead of "-x c".
+
+2017-01-12  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * remote.c (remote_can_async_p): Update comment.
+
+2017-01-12  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * linux-nat.c (linux_nat_can_async_p): Update comment.
+
+2017-01-12  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * serial.c (serial_open): Forget about "pc" and "lpt" serial interface.
+
+2017-01-11  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * cli/cli-decode.c (lookup_cmd_1): Fix typo in comment.
+
+2017-01-10  Tom Tromey  <tom@tromey.com>
+
+       * python/py-type.c (typy_legacy_template_argument): Update.
+       * cp-support.h (struct demangle_parse_info) (demangle_parse_info,
+       ~demangle_parse_info): Declare new members.
+       (cp_demangled_name_to_comp): Return unique_ptr.
+       (cp_demangled_name_parse_free)
+       (make_cleanup_cp_demangled_name_parse_free)
+       (cp_new_demangle_parse_info): Remove.
+       * cp-support.c (do_demangled_name_parse_free_cleanup)
+       (make_cleanup_cp_demangled_name_parse_free): Remove.
+       (inspect_type, cp_canonicalize_string_full)
+       (cp_canonicalize_string): Update.
+       (mangled_name_to_comp): Change return type.
+       (cp_class_name_from_physname, method_name_from_physname)
+       (cp_func_name, cp_remove_params): Update.
+       * cp-name-parser.y (demangle_parse_info): New constructor, from
+       cp_new_demangle_parse_info.
+       (~demangle_parse_info): New destructor, from
+       cp_demangled_name_parse_free.
+       (cp_merge_demangle_parse_infos): Update.
+       (cp_demangled_name_to_comp): Change return type.
+
+2017-01-10  Tom Tromey  <tom@tromey.com>
+
+       * top.c (prevent_dont_repeat): Change return type.
+       * python/python.c (execute_gdb_command): Use std::string.
+       Update.
+       * guile/guile.c (gdbscm_execute_gdb_command): Update.
+       * command.h (prevent_dont_repeat): Change return type.
+       * breakpoint.c (bpstat_do_actions_1): Update.
+
+2017-01-10  Tom Tromey  <tom@tromey.com>
+
+       * value.h (scoped_value_mark::~scoped_value_mark): Call
+       free_to_mark.
+       (scoped_value_mark::free_to_mark): New method.
+       * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use
+       scoped_value_mark.
+
+2017-01-10  Tom Tromey  <tom@tromey.com>
+
+       * python/py-value.c (valpy_dereference, valpy_referenced_value)
+       (valpy_reference_value, valpy_const_value, valpy_get_address)
+       (valpy_get_dynamic_type, valpy_lazy_string, valpy_do_cast)
+       (valpy_getitem, valpy_call, valpy_binop_throw, valpy_negative)
+       (valpy_absolute, valpy_richcompare_throw): Use scoped_value_mark.
+       * dwarf2loc.c (dwarf2_loc_desc_get_symbol_read_needs): Use
+       scoped_value_mark.
+       * dwarf2-frame.c (execute_stack_op): Use scoped_value_mark.
+       * value.h (scoped_value_mark): New class.
+
+2017-01-10  Tom Tromey  <tom@tromey.com>
+
+       * dwarf2read.c (dwarf2_build_psymtabs): Use psymtab_discarder.
+       * psympriv.h (make_cleanup_discard_psymtabs): Don't declare.
+       * psymtab.c (discard_psymtabs_upto): Remove.
+       (make_cleanup_discard_psymtabs): Remove.
+       (struct psymtab_state): Remove.
+
+2017-01-10  Tom Tromey  <tom@tromey.com>
+
+       * record-full.c (record_full_save_cleanups): Remove.
+       (record_full_save): Use gdb::unlinker.
+       * gcore.c (do_bfd_delete_cleanup): Remove.
+       (gcore_command): Use gdb::unlinker, unique_xmalloc_ptr.  Remove
+       cleanups.
+       * dwarf2read.c (unlink_if_set): Remove.
+       (write_psymtabs_to_index): Use gdb::unlinker.
+       * common/gdb_unlinker.h: New file.
+
 2017-01-10  Tom Tromey  <tom@tromey.com>
 
        * windows-tdep.c (windows_xfer_shared_library): Update.