/* Frame unwinder for frames with libunwind frame information.
- Copyright 2003 Free Software Foundation, Inc.
+ Copyright (C) 2003 Free Software Foundation, Inc.
Contributed by Jeff Johnston.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA. */
#ifdef HAVE_LIBUNWIND_H
+struct frame_info;
+struct frame_id;
+struct gdbarch;
+
#ifndef LIBUNWIND_FRAME_H
#define LIBUNWIND_FRAME_H 1
#include "libunwind.h"
-struct frame_info;
-
struct libunwind_descr
{
int (*gdb2uw) (int);
int (*uw2gdb) (int);
int (*is_fpreg) (int);
void *accessors;
+ void *special_accessors;
};
const struct frame_unwind *libunwind_frame_sniffer (struct frame_info *next_frame);
+const struct frame_unwind *libunwind_sigtramp_frame_sniffer (struct frame_info *next_frame);
void libunwind_frame_set_descr (struct gdbarch *arch, struct libunwind_descr *descr);
int libunwind_search_unwind_table (void *as, long ip, void *di,
void *pi, int need_unwind_info, void *args);
-unw_word_t libunwind_find_dyn_list (unw_addr_space_t, void *, size_t,
- unw_word_t, unw_word_t, void *);
-
+unw_word_t libunwind_find_dyn_list (unw_addr_space_t, unw_dyn_info_t *,
+ void *);
+
+int libunwind_get_reg_special (struct gdbarch *gdbarch, int regnum, void *buf);
+
#endif /* libunwind-frame.h */
#endif /* HAVE_LIBUNWIND_H */