From 9c06b0b4285bf0abffaa37bda5b4bf686691d805 Mon Sep 17 00:00:00 2001 From: Thiago Jung Bauermann Date: Fri, 6 May 2011 18:46:33 +0000 Subject: 2011-05-06 Sergio Durigan Junior Thiago Jung Bauermann Implement support for PowerPC BookE masked watchpoints. gdb/ * NEWS: Mention masked watchpoint support. Create "Changed commands" section. * breakpoint.h (struct breakpoint_ops) : New method. Initialize to NULL in all existing breakpoint_ops instances. (struct breakpoint) : New field. * breakpoint.c (is_masked_watchpoint): Add prototype. (update_watchpoint): Don't set b->val for masked watchpoints. Call breakpoint's breakpoint_ops.works_in_software_mode if available. (watchpoints_triggered): Handle the case of a hardware masked watchpoint trigger. (watchpoint_check): Likewise. (works_in_software_mode_watchpoint): New function. (insert_masked_watchpoint, remove_masked_watchpoint) (resources_needed_masked_watchpoint) (works_in_software_mode_masked_watchpoint, print_it_masked_watchpoint) (print_one_detail_masked_watchpoint, print_mention_masked_watchpoint) (print_recreate_masked_watchpoint, is_masked_watchpoint): New functions. (masked_watchpoint_breakpoint_ops): New structure. (watch_command_1): Check for the existence of the `mask' parameter. Set b->ops according to the type of hardware watchpoint being created. * ppc-linux-nat.c (ppc_linux_insert_mask_watchpoint) (ppc_linux_remove_mask_watchpoint) (ppc_linux_masked_watch_num_registers): New functions. (_initialize_ppc_linux_nat): Initialize to_insert_mask_watchpoint, to_remove_mask_watchpoint and to_masked_watch_num_registers. * target.c (update_current_target): Mention to_insert_mask_watchpoint, to_remove_mask_watchpoint, and to_masked_watch_num_registers. (target_insert_mask_watchpoint, target_remove_mask_watchpoint) (target_masked_watch_num_registers): New functions. * target.h (struct target_ops) , , : New methods. (target_insert_mask_watchpoint, target_remove_mask_watchpoint) (target_masked_watch_num_registers): Add prototypes. gdb/doc/ * gdb.texinfo (Set Watchpoints): Document mask parameter. (PowerPC Embedded): Mention support of masked watchpoints. --- gdb/NEWS | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'gdb/NEWS') diff --git a/gdb/NEWS b/gdb/NEWS index 1a22c66..9b59419 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -3,10 +3,24 @@ *** Changes since GDB 7.3 +* When natively debugging programs on PowerPC BookE processors running + a Linux kernel version 2.6.34 or later, GDB supports masked hardware + watchpoints, which specify a mask in addition to an address to watch. + The mask specifies that some bits of an address (the bits which are + reset in the mask) should be ignored when matching the address accessed + by the inferior against the watchpoint address. See the "PowerPC Embedded" + section in the user manual for more details. + * The new option --once causes GDBserver to stop listening for connections once the first connection is made. The listening port used by GDBserver will become available after that. +* Changed commands + +watch EXPRESSION mask MASK_VALUE + The watch command now supports the mask argument which allows creation + of masked watchpoints, if the current architecture supports this feature. + *** Changes in GDB 7.3 * GDB has a new command: "thread find [REGEXP]". -- cgit v1.1