| 1 | /* dw2gencfi.h - Support for generating Dwarf2 CFI information. |
| 2 | Copyright 2003, 2007 Free Software Foundation, Inc. |
| 3 | Contributed by Michal Ludvig <mludvig@suse.cz> |
| 4 | |
| 5 | This file is part of GAS, the GNU Assembler. |
| 6 | |
| 7 | GAS is free software; you can redistribute it and/or modify |
| 8 | it under the terms of the GNU General Public License as published by |
| 9 | the Free Software Foundation; either version 3, or (at your option) |
| 10 | any later version. |
| 11 | |
| 12 | GAS is distributed in the hope that it will be useful, |
| 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| 15 | GNU General Public License for more details. |
| 16 | |
| 17 | You should have received a copy of the GNU General Public License |
| 18 | along with GAS; see the file COPYING. If not, write to the Free |
| 19 | Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA |
| 20 | 02110-1301, USA. */ |
| 21 | |
| 22 | #ifndef DW2GENCFI_H |
| 23 | #define DW2GENCFI_H |
| 24 | |
| 25 | #include "elf/dwarf2.h" |
| 26 | |
| 27 | struct symbol; |
| 28 | |
| 29 | extern const pseudo_typeS cfi_pseudo_table[]; |
| 30 | |
| 31 | /* cfi_finish() is called at the end of file. It will complain if |
| 32 | the last CFI wasn't properly closed by .cfi_endproc. */ |
| 33 | extern void cfi_finish (void); |
| 34 | |
| 35 | /* Entry points for backends to add unwind information. */ |
| 36 | extern void cfi_new_fde (struct symbol *); |
| 37 | extern void cfi_end_fde (struct symbol *); |
| 38 | extern void cfi_set_return_column (unsigned); |
| 39 | extern void cfi_add_advance_loc (struct symbol *); |
| 40 | |
| 41 | extern void cfi_add_CFA_offset (unsigned, offsetT); |
| 42 | extern void cfi_add_CFA_def_cfa (unsigned, offsetT); |
| 43 | extern void cfi_add_CFA_register (unsigned, unsigned); |
| 44 | extern void cfi_add_CFA_def_cfa_register (unsigned); |
| 45 | extern void cfi_add_CFA_def_cfa_offset (offsetT); |
| 46 | extern void cfi_add_CFA_restore (unsigned); |
| 47 | extern void cfi_add_CFA_undefined (unsigned); |
| 48 | extern void cfi_add_CFA_same_value (unsigned); |
| 49 | extern void cfi_add_CFA_remember_state (void); |
| 50 | extern void cfi_add_CFA_restore_state (void); |
| 51 | |
| 52 | #endif /* DW2GENCFI_H */ |