| OLD | NEW |
| 1 /* Definitions for a frame unwinder, for GDB, the GNU debugger. | 1 /* Definitions for a frame unwinder, for GDB, the GNU debugger. |
| 2 | 2 |
| 3 Copyright (C) 2003-2004, 2007-2012 Free Software Foundation, Inc. | 3 Copyright (C) 2003-2004, 2007-2012 Free Software Foundation, Inc. |
| 4 | 4 |
| 5 This file is part of GDB. | 5 This file is part of GDB. |
| 6 | 6 |
| 7 This program is free software; you can redistribute it and/or modify | 7 This program is free software; you can redistribute it and/or modify |
| 8 it under the terms of the GNU General Public License as published by | 8 it under the terms of the GNU General Public License as published by |
| 9 the Free Software Foundation; either version 3 of the License, or | 9 the Free Software Foundation; either version 3 of the License, or |
| 10 (at your option) any later version. | 10 (at your option) any later version. |
| (...skipping 26 matching lines...) Expand all Loading... |
| 37 | 37 |
| 38 THIS frame's register values can be obtained by unwinding NEXT | 38 THIS frame's register values can be obtained by unwinding NEXT |
| 39 frame's registers (a recursive operation). | 39 frame's registers (a recursive operation). |
| 40 | 40 |
| 41 THIS frame's prologue cache can be used to cache information such | 41 THIS frame's prologue cache can be used to cache information such |
| 42 as where this frame's prologue stores the previous frame's | 42 as where this frame's prologue stores the previous frame's |
| 43 registers. */ | 43 registers. */ |
| 44 | 44 |
| 45 /* Given THIS frame, take a whiff of its registers (namely | 45 /* Given THIS frame, take a whiff of its registers (namely |
| 46 the PC and attributes) and if SELF is the applicable unwinder, | 46 the PC and attributes) and if SELF is the applicable unwinder, |
| 47 return non-zero. Possibly also initialize THIS_PROLOGUE_CACHE. */ | 47 return non-zero. Possibly also initialize THIS_PROLOGUE_CACHE; but |
| 48 only if returning 1. Initializing THIS_PROLOGUE_CACHE in other |
| 49 cases (0 return, or exception) is invalid. */ |
| 48 | 50 |
| 49 typedef int (frame_sniffer_ftype) (const struct frame_unwind *self, | 51 typedef int (frame_sniffer_ftype) (const struct frame_unwind *self, |
| 50 struct frame_info *this_frame, | 52 struct frame_info *this_frame, |
| 51 void **this_prologue_cache); | 53 void **this_prologue_cache); |
| 52 | 54 |
| 53 typedef enum unwind_stop_reason (frame_unwind_stop_reason_ftype) | 55 typedef enum unwind_stop_reason (frame_unwind_stop_reason_ftype) |
| 54 (struct frame_info *this_frame, void **this_prologue_cache); | 56 (struct frame_info *this_frame, void **this_prologue_cache); |
| 55 | 57 |
| 56 /* A default frame sniffer which always accepts the frame. Used by | 58 /* A default frame sniffer which always accepts the frame. Used by |
| 57 fallback prologue unwinders. */ | 59 fallback prologue unwinders. */ |
| (...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 211 gdb_byte *buf); | 213 gdb_byte *buf); |
| 212 | 214 |
| 213 /* Return a value which indicates that FRAME's saved version of REGNUM | 215 /* Return a value which indicates that FRAME's saved version of REGNUM |
| 214 has a known constant (computed) value of ADDR. Convert the | 216 has a known constant (computed) value of ADDR. Convert the |
| 215 CORE_ADDR to a target address if necessary. */ | 217 CORE_ADDR to a target address if necessary. */ |
| 216 | 218 |
| 217 struct value *frame_unwind_got_address (struct frame_info *frame, int regnum, | 219 struct value *frame_unwind_got_address (struct frame_info *frame, int regnum, |
| 218 CORE_ADDR addr); | 220 CORE_ADDR addr); |
| 219 | 221 |
| 220 #endif | 222 #endif |
| OLD | NEW |