| OLD | NEW |
| 1 /* Memory breakpoint interfaces for the remote server for GDB. | 1 /* Memory breakpoint interfaces for the remote server for GDB. |
| 2 Copyright (C) 2002, 2005, 2007-2012 Free Software Foundation, Inc. | 2 Copyright (C) 2002, 2005, 2007-2012 Free Software Foundation, Inc. |
| 3 | 3 |
| 4 Contributed by MontaVista Software. | 4 Contributed by MontaVista Software. |
| 5 | 5 |
| 6 This file is part of GDB. | 6 This file is part of GDB. |
| 7 | 7 |
| 8 This program is free software; you can redistribute it and/or modify | 8 This program is free software; you can redistribute it and/or modify |
| 9 it under the terms of the GNU General Public License as published by | 9 it under the terms of the GNU General Public License as published by |
| 10 the Free Software Foundation; either version 3 of the License, or | 10 the Free Software Foundation; either version 3 of the License, or |
| 11 (at your option) any later version. | 11 (at your option) any later version. |
| 12 | 12 |
| 13 This program is distributed in the hope that it will be useful, | 13 This program is distributed in the hope that it will be useful, |
| 14 but WITHOUT ANY WARRANTY; without even the implied warranty of | 14 but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 16 GNU General Public License for more details. | 16 GNU General Public License for more details. |
| 17 | 17 |
| 18 You should have received a copy of the GNU General Public License | 18 You should have received a copy of the GNU General Public License |
| 19 along with this program. If not, see <http://www.gnu.org/licenses/>. */ | 19 along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
| 20 | 20 |
| 21 #ifndef MEM_BREAK_H | 21 #ifndef MEM_BREAK_H |
| 22 #define MEM_BREAK_H | 22 #define MEM_BREAK_H |
| 23 | 23 |
| 24 /* Breakpoints are opaque. */ | 24 /* Breakpoints are opaque. */ |
| 25 struct breakpoint; | 25 struct breakpoint; |
| 26 struct fast_tracepoint_jump; | 26 struct fast_tracepoint_jump; |
| 27 | 27 |
| 28 /* Locate a breakpoint placed at address WHERE and return a pointer |
| 29 to its structure. */ |
| 30 |
| 31 struct breakpoint *find_gdb_breakpoint_at (CORE_ADDR where); |
| 32 |
| 28 /* Create a new GDB breakpoint at WHERE. Returns -1 if breakpoints | 33 /* Create a new GDB breakpoint at WHERE. Returns -1 if breakpoints |
| 29 are not supported on this target, 0 otherwise. */ | 34 are not supported on this target, 0 otherwise. */ |
| 30 | 35 |
| 31 int set_gdb_breakpoint_at (CORE_ADDR where); | 36 int set_gdb_breakpoint_at (CORE_ADDR where); |
| 32 | 37 |
| 33 /* Returns TRUE if there's any breakpoint at ADDR in our tables, | 38 /* Returns TRUE if there's any breakpoint at ADDR in our tables, |
| 34 inserted, or not. */ | 39 inserted, or not. */ |
| 35 | 40 |
| 36 int breakpoint_here (CORE_ADDR addr); | 41 int breakpoint_here (CORE_ADDR addr); |
| 37 | 42 |
| 38 /* Returns TRUE if there's any inserted breakpoint set at ADDR. */ | 43 /* Returns TRUE if there's any inserted breakpoint set at ADDR. */ |
| 39 | 44 |
| 40 int breakpoint_inserted_here (CORE_ADDR addr); | 45 int breakpoint_inserted_here (CORE_ADDR addr); |
| 41 | 46 |
| 47 /* Clear all breakpoint conditions associated with this address. */ |
| 48 |
| 49 void clear_gdb_breakpoint_conditions (CORE_ADDR addr); |
| 50 |
| 51 /* Set target-side condition CONDITION to the breakpoint at ADDR. */ |
| 52 |
| 53 int add_breakpoint_condition (CORE_ADDR addr, char **condition); |
| 54 |
| 55 int add_breakpoint_commands (CORE_ADDR addr, char **commands, int persist); |
| 56 |
| 57 int any_persistent_commands (void); |
| 58 |
| 59 /* Evaluation condition (if any) at breakpoint BP. Return 1 if |
| 60 true and 0 otherwise. */ |
| 61 |
| 62 int gdb_condition_true_at_breakpoint (CORE_ADDR where); |
| 63 |
| 64 int gdb_no_commands_at_breakpoint (CORE_ADDR where); |
| 65 |
| 66 void run_breakpoint_commands (CORE_ADDR where); |
| 67 |
| 42 /* Returns TRUE if there's a GDB breakpoint set at ADDR. */ | 68 /* Returns TRUE if there's a GDB breakpoint set at ADDR. */ |
| 43 | 69 |
| 44 int gdb_breakpoint_here (CORE_ADDR where); | 70 int gdb_breakpoint_here (CORE_ADDR where); |
| 45 | 71 |
| 46 /* Create a new breakpoint at WHERE, and call HANDLER when | 72 /* Create a new breakpoint at WHERE, and call HANDLER when |
| 47 it is hit. HANDLER should return 1 if the breakpoint | 73 it is hit. HANDLER should return 1 if the breakpoint |
| 48 should be deleted, 0 otherwise. */ | 74 should be deleted, 0 otherwise. */ |
| 49 | 75 |
| 50 struct breakpoint *set_breakpoint_at (CORE_ADDR where, | 76 struct breakpoint *set_breakpoint_at (CORE_ADDR where, |
| 51 int (*handler) (CORE_ADDR)); | 77 int (*handler) (CORE_ADDR)); |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 152 uninserted). This still leaves the tracepoints in the table. */ | 178 uninserted). This still leaves the tracepoints in the table. */ |
| 153 | 179 |
| 154 void uninsert_fast_tracepoint_jumps_at (CORE_ADDR pc); | 180 void uninsert_fast_tracepoint_jumps_at (CORE_ADDR pc); |
| 155 | 181 |
| 156 /* Reinsert fast tracepoint jumps at WHERE (and change their status to | 182 /* Reinsert fast tracepoint jumps at WHERE (and change their status to |
| 157 inserted). */ | 183 inserted). */ |
| 158 | 184 |
| 159 void reinsert_fast_tracepoint_jumps_at (CORE_ADDR where); | 185 void reinsert_fast_tracepoint_jumps_at (CORE_ADDR where); |
| 160 | 186 |
| 161 #endif /* MEM_BREAK_H */ | 187 #endif /* MEM_BREAK_H */ |
| OLD | NEW |