Add target_ops argument to to_can_accel_watchpoint_condition
authorTom Tromey <tromey@redhat.com>
Wed, 18 Dec 2013 04:29:57 +0000 (21:29 -0700)
committerTom Tromey <tromey@redhat.com>
Wed, 19 Feb 2014 14:45:36 +0000 (07:45 -0700)
2014-02-19  Tom Tromey  <tromey@redhat.com>

* target.h (struct target_ops)
<to_can_accel_watchpoint_condition>: Add argument.
(target_can_accel_watchpoint_condition): Add argument.
* target.c (debug_to_can_accel_watchpoint_condition): Add
argument.
(update_current_target): Update.
* ppc-linux-nat.c (ppc_linux_can_accel_watchpoint_condition): Add
'self' argument.

gdb/ChangeLog
gdb/ppc-linux-nat.c
gdb/target.c
gdb/target.h

index 763aa278b84e7fc3c161d0713a38ec7915a1f755..6dde680e763b8d64cbb5da5912d282c7639e274f 100644 (file)
@@ -1,3 +1,14 @@
+2014-02-19  Tom Tromey  <tromey@redhat.com>
+
+       * target.h (struct target_ops)
+       <to_can_accel_watchpoint_condition>: Add argument.
+       (target_can_accel_watchpoint_condition): Add argument.
+       * target.c (debug_to_can_accel_watchpoint_condition): Add
+       argument.
+       (update_current_target): Update.
+       * ppc-linux-nat.c (ppc_linux_can_accel_watchpoint_condition): Add
+       'self' argument.
+
 2014-02-19  Tom Tromey  <tromey@redhat.com>
 
        * target.h (struct target_ops) <to_region_ok_for_hw_watchpoint>:
index dd0fe8c17cf29b30e15450ea0aec312214f2e781..fcfd4527cd69f0bbd59c259d564347463e0bcf90 100644 (file)
@@ -2015,7 +2015,8 @@ check_condition (CORE_ADDR watch_addr, struct expression *cond,
    the condition expression, thus only triggering the watchpoint when it is
    true.  */
 static int
-ppc_linux_can_accel_watchpoint_condition (CORE_ADDR addr, int len, int rw,
+ppc_linux_can_accel_watchpoint_condition (struct target_ops *self,
+                                         CORE_ADDR addr, int len, int rw,
                                          struct expression *cond)
 {
   CORE_ADDR data_value;
index 9cc5a46302be5fc9332ec6cf2fe046da68ef9420..6836c9d2796c01de9785cca5087ca07f4afded0a 100644 (file)
@@ -128,7 +128,8 @@ static int debug_to_watchpoint_addr_within_range (struct target_ops *,
 static int debug_to_region_ok_for_hw_watchpoint (struct target_ops *self,
                                                 CORE_ADDR, int);
 
-static int debug_to_can_accel_watchpoint_condition (CORE_ADDR, int, int,
+static int debug_to_can_accel_watchpoint_condition (struct target_ops *self,
+                                                   CORE_ADDR, int, int,
                                                    struct expression *);
 
 static void debug_to_terminal_init (void);
@@ -764,7 +765,8 @@ update_current_target (void)
   de_fault (to_region_ok_for_hw_watchpoint,
            default_region_ok_for_hw_watchpoint);
   de_fault (to_can_accel_watchpoint_condition,
-            (int (*) (CORE_ADDR, int, int, struct expression *))
+            (int (*) (struct target_ops *, CORE_ADDR, int, int,
+                     struct expression *))
             return_zero);
   de_fault (to_terminal_init,
            (void (*) (void))
@@ -4666,12 +4668,14 @@ debug_to_region_ok_for_hw_watchpoint (struct target_ops *self,
 }
 
 static int
-debug_to_can_accel_watchpoint_condition (CORE_ADDR addr, int len, int rw,
+debug_to_can_accel_watchpoint_condition (struct target_ops *self,
+                                        CORE_ADDR addr, int len, int rw,
                                         struct expression *cond)
 {
   int retval;
 
-  retval = debug_target.to_can_accel_watchpoint_condition (addr, len,
+  retval = debug_target.to_can_accel_watchpoint_condition (&debug_target,
+                                                          addr, len,
                                                           rw, cond);
 
   fprintf_unfiltered (gdb_stdlog,
index e91af7d65a5015acc75c261ed559109a581804bb..d164a54462a0e4c4303dea1ef0477e19bfcc193d 100644 (file)
@@ -482,7 +482,8 @@ struct target_ops
     int (*to_region_ok_for_hw_watchpoint) (struct target_ops *,
                                           CORE_ADDR, int);
 
-    int (*to_can_accel_watchpoint_condition) (CORE_ADDR, int, int,
+    int (*to_can_accel_watchpoint_condition) (struct target_ops *,
+                                             CORE_ADDR, int, int,
                                              struct expression *);
     int (*to_masked_watch_num_registers) (struct target_ops *,
                                          CORE_ADDR, CORE_ADDR);
@@ -1679,7 +1680,8 @@ extern int target_ranged_break_num_registers (void);
    For this reason, GDB will still evaluate the condition expression when
    the watchpoint triggers.  */
 #define target_can_accel_watchpoint_condition(addr, len, type, cond) \
-  (*current_target.to_can_accel_watchpoint_condition) (addr, len, type, cond)
+  (*current_target.to_can_accel_watchpoint_condition) (&current_target,        \
+                                                      addr, len, type, cond)
 
 /* Return number of debug registers needed for a masked watchpoint,
    -1 if masked watchpoints are not supported or -2 if the given address
This page took 0.03381 seconds and 4 git commands to generate.