undefined newexpr->gdbarch field in ada-lang.c:replace_operator_with_call
[deliverable/binutils-gdb.git] / gdb / libunwind-frame.h
CommitLineData
0e5d83e3
JJ
1/* Frame unwinder for frames with libunwind frame information.
2
7b6bb8da 3 Copyright (C) 2003, 2006, 2007, 2008, 2009, 2010, 2011
4c38e0a4 4 Free Software Foundation, Inc.
0e5d83e3
JJ
5
6 Contributed by Jeff Johnston.
7
8 This file is part of GDB.
9
10 This program is free software; you can redistribute it and/or modify
11 it under the terms of the GNU General Public License as published by
a9762ec7 12 the Free Software Foundation; either version 3 of the License, or
0e5d83e3
JJ
13 (at your option) any later version.
14
15 This program is distributed in the hope that it will be useful,
16 but WITHOUT ANY WARRANTY; without even the implied warranty of
17 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 GNU General Public License for more details.
19
20 You should have received a copy of the GNU General Public License
a9762ec7 21 along with this program. If not, see <http://www.gnu.org/licenses/>. */
0e5d83e3
JJ
22
23#ifdef HAVE_LIBUNWIND_H
24
5439edaa
AC
25struct frame_info;
26struct frame_id;
45ecac4b 27struct regcache;
c5a27d9c 28struct gdbarch;
5439edaa 29
0e5d83e3
JJ
30#ifndef LIBUNWIND_FRAME_H
31#define LIBUNWIND_FRAME_H 1
32
33#include "libunwind.h"
34
0e5d83e3
JJ
35struct libunwind_descr
36{
37 int (*gdb2uw) (int);
38 int (*uw2gdb) (int);
39 int (*is_fpreg) (int);
40 void *accessors;
c5a27d9c 41 void *special_accessors;
0e5d83e3
JJ
42};
43
15c1e57f
JB
44int libunwind_frame_sniffer (const struct frame_unwind *self,
45 struct frame_info *this_frame,
46 void **this_cache);
47
48int libunwind_sigtramp_frame_sniffer (const struct frame_unwind *self,
49 struct frame_info *this_frame,
50 void **this_cache);
0e5d83e3 51
3e43a32a
MS
52void libunwind_frame_set_descr (struct gdbarch *arch,
53 struct libunwind_descr *descr);
0e5d83e3 54
15c1e57f 55void libunwind_frame_this_id (struct frame_info *this_frame, void **this_cache,
0e5d83e3 56 struct frame_id *this_id);
15c1e57f
JB
57struct value *libunwind_frame_prev_register (struct frame_info *this_frame,
58 void **this_cache, int regnum);
272dfcfd 59void libunwind_frame_dealloc_cache (struct frame_info *self, void *cache);
15c1e57f
JB
60CORE_ADDR libunwind_frame_base_address (struct frame_info *this_frame,
61 void **this_cache);
0e5d83e3
JJ
62
63int libunwind_is_initialized (void);
64
65int libunwind_search_unwind_table (void *as, long ip, void *di,
66 void *pi, int need_unwind_info, void *args);
67
503ff15d
KB
68unw_word_t libunwind_find_dyn_list (unw_addr_space_t, unw_dyn_info_t *,
69 void *);
70
45ecac4b
UW
71int libunwind_get_reg_special (struct gdbarch *gdbarch,
72 struct regcache *regcache,
73 int regnum, void *buf);
c5a27d9c 74
0e5d83e3
JJ
75#endif /* libunwind-frame.h */
76
77#endif /* HAVE_LIBUNWIND_H */
This page took 0.84778 seconds and 4 git commands to generate.