aboutsummaryrefslogtreecommitdiff
path: root/gdb/cp-abi.h
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/cp-abi.h')
-rw-r--r--gdb/cp-abi.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gdb/cp-abi.h b/gdb/cp-abi.h
index 4ddc121..91d89b3 100644
--- a/gdb/cp-abi.h
+++ b/gdb/cp-abi.h
@@ -170,6 +170,11 @@ struct value *cplus_method_ptr_to_value (struct value **this_p,
void cplus_make_method_ptr (gdb_byte *CONTENTS, CORE_ADDR address,
int is_virtual);
+/* Determine if we are currently in a C++ thunk. If so, get the address
+ of the routine we are thunking to and continue to there instead. */
+
+CORE_ADDR cplus_skip_trampoline (CORE_ADDR stop_pc);
+
struct cp_abi_ops
{
const char *shortname;
@@ -192,6 +197,7 @@ struct cp_abi_ops
int (*method_ptr_size) (void);
void (*make_method_ptr) (gdb_byte *, CORE_ADDR, int);
struct value * (*method_ptr_to_value) (struct value **, struct value *);
+ CORE_ADDR (*skip_trampoline) (CORE_ADDR);
};