+2015-03-04 Pedro Alves <palves@redhat.com>
+
+ * NEWS: Mention the new "swbreak" and "hwbreak" stop reasons.
+ * remote.c (struct remote_state) <remote_stopped_by_watchpoint_p>:
+ Delete field.
+ <stop_reason>: New field.
+ (PACKET_swbreak_feature, PACKET_hwbreak_feature): New enum values.
+ (packet_set_cmd_state): New function.
+ (remote_protocol_features): Register the "swbreak" and "hwbreak"
+ features.
+ (remote_query_supported): If not disabled with the corresponding
+ "set remote foo-packet" command, report support for the swbreak
+ and hwbreak features.
+ (struct stop_reply) <remote_stopped_by_watchpoint_p>: Delete
+ field.
+ <stop_reason>: New field.
+ (remote_parse_stop_reply): Handle "swbreak" and "hwbreak".
+ (remote_wait_as): Adjust.
+ (remote_stopped_by_sw_breakpoint)
+ (remote_supports_stopped_by_sw_breakpoint)
+ (remote_stopped_by_hw_breakpoint)
+ (remote_supports_stopped_by_hw_breakpoint): New functions.
+ (remote_stopped_by_watchpoint): New function.
+ (init_remote_ops): Install them.
+ (_initialize_remote): Register new "set/show remote
+ swbreak-feature-packet" and "set/show remote
+ swbreak-feature-packet" commands.
+
+2015-03-04 Pedro Alves <palves@redhat.com>
+
+ * btrace.h: Include target/waitstatus.h.
+ (struct btrace_thread_info) <stop_reason>: New field.
+ * record-btrace.c (record_btrace_step_thread): Use
+ record_check_stopped_by_breakpoint instead of breakpoint_here_p.
+ (record_btrace_decr_pc_after_break): Delete.
+ (record_btrace_stopped_by_sw_breakpoint)
+ (record_btrace_supports_stopped_by_sw_breakpoint)
+ (record_btrace_stopped_by_hw_breakpoint)
+ (record_btrace_supports_stopped_by_hw_breakpoint): New functions.
+ (init_record_btrace_ops): Install them.
+ * record-full.c (record_full_hw_watchpoint): Delete and replace
+ with ...
+ (record_full_stop_reason): ... this throughout.
+ (record_full_exec_insn): Adjust.
+ (record_full_wait_1): Adjust. No longer re-increment the PC.
+ (record_full_wait_1): Adjust. Use
+ record_check_stopped_by_breakpoint instead of breakpoint_here_p.
+ (record_full_stopped_by_watchpoint): Adjust.
+ (record_full_stopped_by_sw_breakpoint)
+ (record_full_supports_stopped_by_sw_breakpoint)
+ (record_full_supports_stopped_by_sw_breakpoint)
+ (record_full_stopped_by_hw_breakpoint)
+ (record_full_supports_stopped_by_hw_breakpoint): New functions.
+ (init_record_full_ops, init_record_full_core_ops): Install them.
+ * record.c (record_check_stopped_by_breakpoint): New function.
+ * record.h: Include target/waitstatus.h.
+ (record_check_stopped_by_breakpoint): New declaration.
+
+2015-03-04 Pedro Alves <palves@redhat.com>
+
+ enum lwp_stop_reason -> enum target_stop_reason
+ * linux-nat.c (linux_resume_one_lwp, check_stopped_by_watchpoint)
+ (linux_nat_stopped_by_watchpoint, status_callback)
+ (linux_nat_wait_1): Adjust.
+ * linux-nat.h (enum lwp_stop_reason): Delete.
+ (struct lwp_info) <stop_reason>: Now an enum target_stop_reason.
+ * x86-linux-nat.c (x86_linux_prepare_to_resume): Adjust.
+ * target/waitstatus.h (enum target_stop_reason): New.
+
+2015-03-04 Pedro Alves <palves@redhat.com>
+
+ * breakpoint.c (need_moribund_for_location_type): New function.
+ (bpstat_stop_status): Don't skipping checking moribund locations
+ of breakpoint types which the target tell caused a stop.
+ (program_breakpoint_here_p): New function, factored out from ...
+ (bp_loc_is_permanent): ... this.
+ (update_global_location_list): Don't create a moribund location if
+ the target supports reporting stops of the type of the removed
+ breakpoint.
+ * breakpoint.h (program_breakpoint_here_p): New declaration.
+ * infrun.c (adjust_pc_after_break): Return early if the target has
+ already adjusted the PC. Add comments.
+ (handle_signal_stop): If nothing explains a signal, and the target
+ tells us the stop was caused by a software breakpoint, check if
+ there's a breakpoint instruction in the memory. If so, adjust the
+ PC before presenting the stop to the user. Otherwise, ignore the
+ trap. If nothing explains a signal, and the target tells us the
+ stop was caused by a hardware breakpoint, ignore the trap.
+ * target.h (struct target_ops) <to_stopped_by_sw_breakpoint,
+ to_supports_stopped_by_sw_breakpoint, to_stopped_by_hw_breakpoint,
+ to_supports_stopped_by_hw_breakpoint>: New fields.
+ (target_stopped_by_sw_breakpoint)
+ (target_supports_stopped_by_sw_breakpoint)
+ (target_stopped_by_hw_breakpoint)
+ (target_supports_stopped_by_hw_breakpoint): Define.
+ * target-delegates.c: Regenerate.
+
+2015-03-04 Pedro Alves <palves@redhat.com>
+
+ * infrun.c (follow_fork_inferior): Use the whole of the
+ inferior_ptid and pending_follow.related_pid ptids instead of
+ building ptids from the process components. Adjust verbose output
+ to use target_pid_to_str.
+ * linux-nat.c (linux_child_follow_fork): Use the whole of the
+ inferior_ptid and pending_follow.related_pid ptids instead of
+ building ptids from the process components.
+
+2015-03-04 Mark Kettenis <kettenis@gnu.org>
+
+ * inf-ptrace.c [PT_GET_PROCESS_STATE]
+ (inf_ptrace_insert_fork_catchpoint): New function.
+ (inf_ptrace_remove_fork_catchpoint): New function.
+ (inf_ptrace_target) [PT_GET_PROCESS_STATE]: Install them.
+
+2015-03-04 Andreas Arnez <arnez@linux.vnet.ibm.com>
+
+ * s390-linux-tdep.c (s390_register_name): Return empty string
+ instead of NULL for registers that shouldn't be visible.
+
2015-03-04 Andreas Arnez <arnez@linux.vnet.ibm.com>
* s390-linux-tdep.c (s390_gdbarch_init): Use the correct syscall