1/* dwarf2out.h - Various declarations for functions found in dwarf2out.c
2   Copyright (C) 1998, 1999, 2000, 2003, 2007
3   Free Software Foundation, Inc.
4
5This file is part of GCC.
6
7GCC is free software; you can redistribute it and/or modify it under
8the terms of the GNU General Public License as published by the Free
9Software Foundation; either version 3, or (at your option) any later
10version.
11
12GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13WARRANTY; without even the implied warranty of MERCHANTABILITY or
14FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
15for more details.
16
17You should have received a copy of the GNU General Public License
18along with GCC; see the file COPYING3.  If not see
19<http://www.gnu.org/licenses/>.  */
20
21extern void dwarf2out_decl (tree);
22extern void dwarf2out_frame_debug (rtx, bool);
23extern void dwarf2out_begin_epilogue (rtx);
24extern void dwarf2out_frame_debug_restore_state (void);
25extern void dwarf2out_flush_queued_reg_saves (void);
26
27extern void debug_dwarf (void);
28struct die_struct;
29extern void debug_dwarf_die (struct die_struct *);
30extern void dwarf2out_set_demangle_name_func (const char *(*) (const char *));
31
32struct array_descr_info
33{
34  int ndimensions;
35  tree element_type;
36  tree base_decl;
37  tree data_location;
38  tree allocated;
39  tree associated;
40  struct array_descr_dimen
41    {
42      tree lower_bound;
43      tree upper_bound;
44      tree stride;
45    } dimen[10];
46};
47