dwarf2_64.h 1.4 KB
Newer Older
L
Linus Torvalds 已提交
1 2 3 4 5 6 7
#ifndef _DWARF2_H
#define _DWARF2_H 1

#ifndef __ASSEMBLY__
#warning "asm/dwarf2.h should be only included in pure assembly files"
#endif

8
/*
L
Linus Torvalds 已提交
9
   Macros for dwarf2 CFI unwind table entries.
10 11 12
   See "as.info" for details on these pseudo ops. Unfortunately
   they are only supported in very new binutils, so define them
   away for older version.
L
Linus Torvalds 已提交
13 14
 */

15
#ifdef CONFIG_AS_CFI
L
Linus Torvalds 已提交
16 17 18 19 20 21 22 23 24

#define CFI_STARTPROC .cfi_startproc
#define CFI_ENDPROC .cfi_endproc
#define CFI_DEF_CFA .cfi_def_cfa
#define CFI_DEF_CFA_REGISTER .cfi_def_cfa_register
#define CFI_DEF_CFA_OFFSET .cfi_def_cfa_offset
#define CFI_ADJUST_CFA_OFFSET .cfi_adjust_cfa_offset
#define CFI_OFFSET .cfi_offset
#define CFI_REL_OFFSET .cfi_rel_offset
25 26 27 28
#define CFI_REGISTER .cfi_register
#define CFI_RESTORE .cfi_restore
#define CFI_REMEMBER_STATE .cfi_remember_state
#define CFI_RESTORE_STATE .cfi_restore_state
29
#define CFI_UNDEFINED .cfi_undefined
30 31 32 33 34
#ifdef CONFIG_AS_CFI_SIGNAL_FRAME
#define CFI_SIGNAL_FRAME .cfi_signal_frame
#else
#define CFI_SIGNAL_FRAME
#endif
L
Linus Torvalds 已提交
35 36 37 38 39 40 41 42 43 44 45 46

#else

/* use assembler line comment character # to ignore the arguments. */
#define CFI_STARTPROC	#
#define CFI_ENDPROC	#
#define CFI_DEF_CFA	#
#define CFI_DEF_CFA_REGISTER	#
#define CFI_DEF_CFA_OFFSET	#
#define CFI_ADJUST_CFA_OFFSET	#
#define CFI_OFFSET	#
#define CFI_REL_OFFSET	#
47 48 49 50
#define CFI_REGISTER	#
#define CFI_RESTORE	#
#define CFI_REMEMBER_STATE	#
#define CFI_RESTORE_STATE	#
51
#define CFI_UNDEFINED	#
52
#define CFI_SIGNAL_FRAME	#
L
Linus Torvalds 已提交
53 54 55 56

#endif

#endif