Merge ../linus
[pandora-kernel.git] / include / asm-i386 / dwarf2.h
1 #ifndef _DWARF2_H
2 #define _DWARF2_H
3
4 #include <linux/config.h>
5
6 #ifndef __ASSEMBLY__
7 #warning "asm/dwarf2.h should be only included in pure assembly files"
8 #endif
9
10 /*
11    Macros for dwarf2 CFI unwind table entries.
12    See "as.info" for details on these pseudo ops. Unfortunately
13    they are only supported in very new binutils, so define them
14    away for older version.
15  */
16
17 #ifdef CONFIG_UNWIND_INFO
18
19 #define CFI_STARTPROC .cfi_startproc
20 #define CFI_ENDPROC .cfi_endproc
21 #define CFI_DEF_CFA .cfi_def_cfa
22 #define CFI_DEF_CFA_REGISTER .cfi_def_cfa_register
23 #define CFI_DEF_CFA_OFFSET .cfi_def_cfa_offset
24 #define CFI_ADJUST_CFA_OFFSET .cfi_adjust_cfa_offset
25 #define CFI_OFFSET .cfi_offset
26 #define CFI_REL_OFFSET .cfi_rel_offset
27 #define CFI_REGISTER .cfi_register
28 #define CFI_RESTORE .cfi_restore
29 #define CFI_REMEMBER_STATE .cfi_remember_state
30 #define CFI_RESTORE_STATE .cfi_restore_state
31
32 #else
33
34 /* Due to the structure of pre-exisiting code, don't use assembler line
35    comment character # to ignore the arguments. Instead, use a dummy macro. */
36 .macro ignore a=0, b=0, c=0, d=0
37 .endm
38
39 #define CFI_STARTPROC   ignore
40 #define CFI_ENDPROC     ignore
41 #define CFI_DEF_CFA     ignore
42 #define CFI_DEF_CFA_REGISTER    ignore
43 #define CFI_DEF_CFA_OFFSET      ignore
44 #define CFI_ADJUST_CFA_OFFSET   ignore
45 #define CFI_OFFSET      ignore
46 #define CFI_REL_OFFSET  ignore
47 #define CFI_REGISTER    ignore
48 #define CFI_RESTORE     ignore
49 #define CFI_REMEMBER_STATE ignore
50 #define CFI_RESTORE_STATE ignore
51
52 #endif
53
54 #endif