+2017-05-01 Tim Wiederhake <tim.wiederhake@intel.com>
+
+ * Makefile.in (SUBDIR_PYTHON_OBS): Add py-instruction.o.
+ (SUBDIR_PYTHON_SRCS): Add py-instruction.c.
+ * python/py-instruction.c, python/py-instruction.h: New file.
+ * python/py-record.c: Add py-instruction.h include.
+ (gdbpy_initialize_record): Make gdb.Instruction a super class of
+ gdb.RecordInstruction.
+ * python/python-internal.h: Add gdbpy_initialize_instruction
+ declaration.
+ * python/python.c (do_start_initialization): Add
+ gdbpy_initialize_instruction.
+
+2017-05-01 Tim Wiederhake <tim.wiederhake@intel.com>
+
+ * python/py-record-btrace.c (BTPY_REQUIRE_VALID_CALL, btpy_call_type):
+ Remove.
+ (btrace_func_from_recpy_func): New function.
+ (btpy_call_new, btpy_number, btpy_hash, btpy_richcompare): Remove.
+ (btpy_call_level, btpy_call_symbol, btpy_call_instructions,
+ btpy_call_up, btpy_call_prev_sibling, btpy_call_next_sibling): Rename to ...
+ (recpy_bt_func_level, recpy_bt_func_symbol, recpy_bt_func_instructions,
+ recpy_bt_func_up, recpy_bt_func_prev, recpy_bt_func_next): This.
+ Also, use new helper functions.
+ (btpy_list_item): Use new helper functions.
+ (recpy_bt_function_call_history): Use new type name.
+ (btpy_call_getset): Remove.
+ (gdbpy_initialize_btrace): Remove code to initialize
+ gdb.BtraceFunctionCall.
+ * python/py-record-btrace.h (recpy_bt_func_number, recpy_btb_func_level,
+ recpy_btb_func_symbol, recpy_bt_func_instructions, recpy_bt_func_up,
+ recpy_bt_func_prev, recpy_bt_func_next): New export.
+ * python/py-record.c (recpy_func_type): New static object.
+ (recpy_func_new, recpy_func_level, recpy_func_symbol,
+ recpy_func_instructions, recpy_func_up, recpy_func_prev,
+ recpy_func_next): New function.
+ (recpy_element_hash, recpy_element_richcompare): Updated comment.
+ (recpy_func_getset): New static object.
+ (gdbpy_initialize_record): Add code to initialize gdb.RecordInstruction.
+ * python/py-record.h (recpy_func_type, recpy_func_new): New export.
+
+2017-05-01 Tim Wiederhake <tim.wiederhake@intel.com>
+
+ * python/py-record-btrace.c (BTPY_REQUIRE_VALID_INSN): Remove.
+ (btpy_object, btpy_insn_type, btpy_new): Remove.
+ (btpy_list_object): Use gdb.RecordInstruction type instead of
+ gdb.BtraceInstruction type.
+ (btrace_insn_from_recpy_insn): New function.
+ (btpy_insn_or_gap_new): Adjust comment. Use recpy_insn_new instead of
+ btpy_new.
+ (btpy_call_new, btpy_list_item): Do not use btpy_new anymore.
+ (btpy_number, btpy_hash, btpy_call_level, btpy_call_symbol,
+ btpy_call_instructions, btpy_call_up, btpy_call_prev_sibling,
+ btpy_call_next_sibling, btpy_richcompare): Use recpy_element_object
+ instead of btpy_object.
+ (btpy_insn_sal, btpy_insn_pc, btpy_insn_size, btpy_insn_is_speculative,
+ btpy_insn_data, btpy_insn_decode): Rename to ...
+ (recpy_bt_insn_sal, recpy_bt_insn_pc, recpy_bt_insn_size,
+ recpy_bt_insn_is_speculative, recpy_bt_insn_data,
+ recpy_bt_insn_decode): This. Also, use new helper functions.
+ (btpy_list_position, recpy_bt_goto): Use recpy_element_object and
+ recpy_insn_type.
+ (btpy_insn_getset): Remove.
+ (gdbpy_initialize_btrace): Remove code to initialize
+ gdb.BtraceInstruction. Use recpy_element_object.
+ * python/py-record-btrace.h (recpy_bt_insn_number, recpy_bt_insn_sal,
+ recpy_bt_insn_pc, recpy_bt_insn_data, recpy_bt_insn_decoded,
+ recpy_bt_insn_size, recpy_bt_insn_is_speculative): New export.
+ * python/py-record.c (recpy_insn_type): New static object.
+ (recpy_insn_new, recpy_insn_sal, recpy_insn_pc, recpy_insn_data,
+ recpy_insn_decoded, recpy_insn_size, recpy_insn_is_speculative,
+ recpy_element_number, recpy_element_hash, recpy_element_richcompare):
+ New function.
+ (recpy_insn_getset): New static object.
+ (gdbpy_initialize_record): Initialize gdb.RecordInstruction.
+ * python/py-record.h (recpy_element_object): New typedef.
+ (recpy_insn_type, recpy_insn_new): New export.
+
+2017-05-01 Tim Wiederhake <tim.wiederhake@intel.com>
+
+ * py-record-btrace.c (btpy_insn_new): Removed.
+ (btpy_insn_or_gap_new): New function.
+ (btpy_insn_error): Removed.
+ (btpy_insn_sal, btpy_insn_pc, btpy_insn_size, btpy_insn_is_speculative,
+ btpy_insn_data, btpy_insn_decode): Remove code path for gaps.
+ (recpy_bt_replay_position, recpy_bt_begin, recpy_bt_end): Call
+ btpy_insn_or_gap_new instead of btpy_insn_new.
+ (btpy_insn_getset): Remove btpy_insn_error.
+ * py-record.c (recpy_gap_type): New static object.
+ (recpy_gap_object): New typedef.
+ (recpy_gap_new, recpy_gap_number, recpy_gap_reason_code,
+ recpy_gap_reason_string): New function.
+ (recpy_gap_getset): New static object.
+ (gdbpy_initialize_record): Initialize gdb.RecordGap type.
+ * py-record.h (recpy_gap_new): New export.
+
+2017-05-01 Tim Wiederhake <tim.wiederhake@intel.com>
+
+ * python/py-record.c (recpy_ptid): Remove.
+ (recpy_record_getset): Remove recpy_ptid.
+
+2017-05-01 Tim Wiederhake <tim.wiederhake@intel.com>
+
+ * btrace.c (btrace_fetch): Set inferior_ptid.
+ * python/py-record-btrace.c: Add "py-record.h" include.
+ (recpy_bt_format, recpy_bt_replay_position, recpy_bt_begin,
+ recpy_bt_end, recpy_bt_instruction_history,
+ recpy_bt_function_call_history, recpy_bt_goto): Use ptid stored
+ in gdb.Record object instead of current ptid.
+ * python/py-record.c: Include new "py-record.h" file.
+ (recpy_record_object): Moved to py-record.h.
+ * python/py-record.h: New file.
+
+2017-05-01 Tim Wiederhake <tim.wiederhake@intel.com>
+
+ * python/py-record-btrace.c (BTPY_REQUIRE_VALID_INSN,
+ BTPY_REQUIRE_VALID_CALL, recpy_bt_function_call_history): Fix
+ indentation.
+
+2017-05-01 Joel Brobecker <brobecker@adacore.com>
+
+ * MAINTAINERS: Move Daniel Jacobowitz and Mark Kettenis to
+ the past maintainers section.
+
+2017-04-28 Yao Qi <yao.qi@linaro.org>
+
+ * infcmd.c (get_return_value): Use regcache ctor, and remove
+ cleanup.
+
+2017-04-28 Yao Qi <yao.qi@linaro.org>
+ Pedro Alves <palves@redhat.com>
+
+ * regcache.c (regcache::regcache): New tag dispatch ctor.
+ (do_cooked_read): Moved above.
+ (regcache_dup): Use the tag dispatch ctor..
+ * regcache.h (regcache): Declare ctor, delete copy ctor and
+ assignment operator, remove friend regcache_dup.
+
+2017-04-28 Yao Qi <yao.qi@linaro.org>
+
+ * regcache.c (regcache_dup): Assert !src->m_readonly_p and
+ call method save instead of regcache_cpy.
+ * regcache.h (struct regcache): Make regcache_dup a friend.
+
+2017-04-28 Yao Qi <yao.qi@linaro.org>
+
+ * regcache.c (struct regcache): Move to regcache.h
+ (regcache::arch): New method.
+ (regcache_get_ptid): Update.
+ (get_regcache_arch): Call arch method.
+ (get_regcache_aspace): Call method aspace.
+ (register_buffer): Change it to method.
+ (regcache_save): Change it to regcache::save.
+ (regcache_restore): Likewise.
+ (regcache_cpy_no_passthrough): Remove the declaration.
+ (regcache_cpy): Call methods restore and cpy_no_passthrough.
+ (regcache_cpy_no_passthrough): Change it to method
+ cpy_no_passthrough.
+ (regcache_register_status): Change it to method
+ get_register_status.
+ (regcache_invalidate): Change it to method invalidate.
+ (regcache_thread_ptid_changed): Use methods ptid and set_ptid.
+ (regcache_raw_update): Change it to method raw_update.
+ (regcache_raw_read): Likewise.
+ (regcache_raw_read_signed): Likewise.
+ (regcache_raw_read_unsigned): Likewise.
+ (regcache_raw_write_signed): Likewise.
+ (regcache_raw_write_unsigned): Likewise.
+ (regcache_cooked_read): Likewise.
+ (regcache_cooked_read_value): Likewise.
+ (regcache_cooked_read_signed): Likewise.
+ (regcache_cooked_read_unsigned): Likewise.
+ (regcache_cooked_write_signed): Likewise.
+ (regcache_cooked_write_unsigned): Likewise.
+ (regcache_raw_set_cached_value): Likewise.
+ (regcache_raw_write): Likewise.
+ (regcache_cooked_write): Likewise.
+ (regcache_xfer_part): Likewise.
+ (regcache_raw_read_part): Likewise.
+ (regcache_raw_write_part): Likewise.
+ (regcache_cooked_read_part): Likewise.
+ (regcache_cooked_write_part): Likewise.
+ (regcache_raw_supply): Likewise.
+ (regcache_raw_collect): Likewise.
+ (regcache_transfer_regset): Likewise.
+ (regcache_supply_regset): Likewise.
+ (regcache_collect_regset): Likewise.
+ (regcache_debug_print_register): Likewise.
+ (enum regcache_dump_what): Move it to regcache.h.
+ (regcache_dump): Change it to method dump.
+ * regcache.h (enum regcache_dump_what): New.
+ (class regcache): New.
+ * target.c (target_fetch_registers): Call method
+ debug_print_register.
+ (target_store_registers): Likewise.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * windows-nat.c (struct lm_info_windows): Initialize field.
+ (windows_make_so): Allocate lm_info_windows with new.
+ (windows_free_so): Free lm_info_windows with delete.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solib-darwin.c (struct lm_info_darwin): Initialize field.
+ (darwin_current_sos): Allocate lm_info_darwin with new, remove
+ cleanup.
+ (darwin_free_so): Free lm_info_darwin with delete.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solib-svr4.h (struct lm_info_svr4): Initialize fields.
+ <l_addr_p>: Change type to bool.
+ * solib-svr4.c (lm_info_read): Allocate lm_info_svr4 with new.
+ (svr4_free_so): Free lm_info_svr4 with delete.
+ (svr4_copy_library_list): Replace memcpy with call to copy
+ constructor.
+ (library_list_start_library, svr4_default_sos): Allocate
+ lm_info_svr4 with new.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solib-target.c (struct lm_info_target): Add destructor,
+ initialize fields.
+ <name>: Change type to std::string.
+ (library_list_start_library): Allocate lm_info_target with new.
+ (solib_target_free_library_list): Free lm_info_target with
+ delete.
+ (solib_target_current_sos): Adapt to std::string.
+ (solib_target_free_so): Free lm_info_target with delete.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solib-frv.c (struct lm_info_frv): Add destructor, initialize
+ fields.
+ (frv_current_sos): Allocate lm_info_frv with new.
+ (frv_relocate_main_executable): Free lm_info_frv with delete,
+ allocate with new.
+ (frv_clear_solib, frv_free_so): Free lm_info_frv with delete.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solib-frv.c (struct lm_info_frv): Fix indentation.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solib-dsbt.c (struct lm_info_dsbt): Add destructor, initialize
+ map field.
+ (dsbt_current_sos): Allocate lm_info_dsbt with new.
+ (dsbt_relocate_main_executable): Free lm_info_dsbt with delete
+ and allocate with new.
+ (dsbt_clear_solib, dsbt_free_so): Free lm_info_dsbt with delete.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solib-aix.c (struct lm_info_aix): Initialize fields in-class.
+ <filename, member_name>: Change type to std::string.
+ (solib_aix_new_lm_info, solib_aix_xfree_lm_info): Remove.
+ (library_list_start_library): Allocate lm_info_aix with new.
+ (solib_aix_free_library_list, solib_aix_free_so): Free with delete.
+ (solib_aix_current_sos): Adapt to std::string, copy lm_info_aix
+ with copy constructor.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solist.h (struct lm_info): Remove.
+ (struct lm_info_base): New class.
+ (struct so_list) <lm_info>: Change type to lm_info_base *.
+ * nto-tdep.c (struct lm_info): Remove.
+ (lm_addr): Adjust.
+ * solib-aix.c (struct lm_info): Rename to ...
+ (struct lm_info_aix): ... this. Extend lm_info_base.
+ (lm_info_p): Rename to ...
+ (lm_info_aix_p): ... this, and adjust.
+ (solib_aix_new_lm_info, solib_aix_xfree_lm_info,
+ solib_aix_parse_libraries, library_list_start_library,
+ solib_aix_free_library_list, solib_aix_parse_libraries,
+ solib_aix_get_library_list,
+ solib_aix_relocate_section_addresses, solib_aix_free_so,
+ solib_aix_get_section_offsets,
+ solib_aix_solib_create_inferior_hook, solib_aix_current_sos):
+ Adjust.
+ (struct solib_aix_inferior_data) <library_list>: Adjust.
+ * solib-darwin.c (struct lm_info): Rename to ...
+ (struct lm_info_darwin): ... this. Extend lm_info_base.
+ (darwin_current_sos, darwin_relocate_section_addresses): Adjust.
+ * solib-dsbt.c (struct lm_info): Rename to ...
+ (struct lm_info_dsbt): ... this. Extend lm_info_base.
+ (struct dsbt_info) <main_executable_lm_info): Adjust.
+ (dsbt_current_sos, dsbt_relocate_main_executable, dsbt_free_so,
+ dsbt_relocate_section_addresses): Adjust.
+ * solib-frv.c (struct lm_info): Rename to ...
+ (struct lm_info_frv): ... this. Extend lm_info_base.
+ (main_executable_lm_info): Adjust.
+ (frv_current_sos, frv_relocate_main_executable, frv_free_so,
+ frv_relocate_section_addresses, frv_fdpic_find_global_pointer,
+ find_canonical_descriptor_in_load_object,
+ frv_fdpic_find_canonical_descriptor): Adjust.
+ * solib-svr4.c (struct lm_info): Move to solib-svr4.h, renamed
+ to lm_info_svr4.
+ (lm_info_read, lm_addr_check, svr4_keep_data_in_core,
+ svr4_clear_so, svr4_copy_library_list,
+ library_list_start_library, svr4_default_sos, svr4_read_so_list,
+ svr4_current_sos, svr4_fetch_objfile_link_map,
+ solist_update_incremental): Adjust.
+ * solib-svr4.h (struct lm_info_svr4): Move here from
+ solib-svr4.c.
+ * solib-target.c (struct lm_info): Rename to ...
+ (struct lm_info_target): ... this. Extend lm_info_base.
+ (lm_info_p): Rename to ...
+ (lm_info_target_p): ... this.
+ (solib_target_parse_libraries, library_list_start_segment,
+ library_list_start_section, library_list_start_library,
+ library_list_end_library, solib_target_free_library_list,
+ solib_target_current_sos, solib_target_free_so,
+ solib_target_relocate_section_addresses): Adjust.
+ * windows-nat.c (struct lm_info): Rename to ...
+ (struct lm_info_windows): ... this. Extend lm_info_base.
+ (windows_make_so, handle_load_dll, handle_unload_dll,
+ windows_xfer_shared_libraries): Adjust.
+
+2017-04-28 Simon Marchi <simon.marchi@ericsson.com>
+
+ * solib-darwin.c (struct darwin_so_list): Remove.
+ (darwin_current_sos): Allocate an so_list object instead of a
+ darwin_so_list, separately allocate an lm_info object.
+ (darwin_free_so): Free lm_info.
+
+2017-04-28 John Baldwin <jhb@FreeBSD.org>
+
+ * mips-tdep.c (print_gp_register_row): Replace printf_filtered
+ with fprintf_filtered.
+
+2017-04-28 Yao Qi <yao.qi@linaro.org>
+
+ * regcache.c (regcache::regcache): New function.
+ (regcache::~regcache): New function.
+ (regcache_xmalloc_1): Remove.
+ (regcache_xmalloc): Call new regcache.
+ (regcache_xfree): Call delete regcache.
+ (get_thread_arch_aspace_regcache): Call new regcache.
+
+2017-04-28 Yao Qi <yao.qi@linaro.org>
+
+ * mips-linux-nat.c (mips_linux_new_thread): Use ptid method
+ lwp instead of ptid_get_lwp.
+
+2017-04-28 Yao Qi <yao.qi@linaro.org>
+
+ * mips-linux-nat.c (mips_linux_new_thread): Get lwpid from
+ lwp_info instead of getting from inferior_ptid.
+
2017-04-27 Keith Seitz <keiths@redhat.com>
* gdbtypes.c (LVALUE_REFERENCE_TO_RVALUE_BINDING_BADNESS)