aboutsummaryrefslogtreecommitdiff
path: root/gdb/trad-frame.h
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2004-03-23 13:49:50 +0000
committerAndrew Cagney <cagney@redhat.com>2004-03-23 13:49:50 +0000
commit0db9b4b7096923a0e101becc6ffc88b75f11f0a1 (patch)
treeccec46bb95cde317d5dde993e42d31b4ecc27838 /gdb/trad-frame.h
parent88d65ad6f1503fecf3f07d742ca76b218ff08518 (diff)
downloadgdb-0db9b4b7096923a0e101becc6ffc88b75f11f0a1.zip
gdb-0db9b4b7096923a0e101becc6ffc88b75f11f0a1.tar.gz
gdb-0db9b4b7096923a0e101becc6ffc88b75f11f0a1.tar.bz2
2004-03-23 Andrew Cagney <cagney@redhat.com>
* Makefile.in (trad_frame_h): Add $(frame_h). * trad-frame.h: Update copyright. Include "frame.h". (struct trad_frame_cache, trad_frame_cache_zalloc): Declare. (trad_frame_set_id, trad_frame_get_id): Declare. (trad_frame_set_reg_addr, trad_frame_get_register): Declare. * trad-frame.c: Update copyright. (struct trad_frame_cache): Define. (trad_frame_cache_zalloc): New function. (trad_frame_set_id, trad_frame_get_id): New functions. (trad_frame_set_reg_addr, trad_frame_get_register): New functions.
Diffstat (limited to 'gdb/trad-frame.h')
-rw-r--r--gdb/trad-frame.h26
1 files changed, 25 insertions, 1 deletions
diff --git a/gdb/trad-frame.h b/gdb/trad-frame.h
index 55720c7..194f39a 100644
--- a/gdb/trad-frame.h
+++ b/gdb/trad-frame.h
@@ -1,6 +1,6 @@
/* Traditional frame unwind support, for GDB the GNU Debugger.
- Copyright 2003 Free Software Foundation, Inc.
+ Copyright 2003, 2004 Free Software Foundation, Inc.
This file is part of GDB.
@@ -22,7 +22,31 @@
#ifndef TRAD_FRAME_H
#define TRAD_FRAME_H
+#include "frame.h" /* For "struct frame_id". */
+
struct frame_info;
+struct trad_frame_cache;
+
+/* A simple, or traditional frame cache.
+
+ The entire cache is populated in a single pass and then generic
+ routines are used to extract the various cache values. */
+
+struct trad_frame_cache *trad_frame_cache_zalloc (struct frame_info *next_frame);
+
+/* This frame's ID. */
+void trad_frame_set_id (struct trad_frame_cache *this_trad_cache,
+ struct frame_id this_id);
+void trad_frame_get_id (struct trad_frame_cache *this_trad_cache,
+ struct frame_id *this_id);
+
+void trad_frame_set_reg_unknown (struct trad_frame_cache *this_trad_cache,
+ int regnum, CORE_ADDR addr);
+void trad_frame_get_register (struct trad_frame_cache *this_trad_cache,
+ struct frame_info *next_frame,
+ int regnum, int *optimizedp,
+ enum lval_type *lvalp, CORE_ADDR *addrp,
+ int *realregp, void *bufferp);
/* A traditional saved regs table, indexed by REGNUM, encoding where
the value of REGNUM for the previous frame can be found in this