blob: afd4212e860bd4e93409c16d38f0184c47c292f4 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _DWARF2_H
2#define _DWARF2_H 1
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_DEBUG_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
28#else
29
30/* use assembler line comment character # to ignore the arguments. */
31#define CFI_STARTPROC #
32#define CFI_ENDPROC #
33#define CFI_DEF_CFA #
34#define CFI_DEF_CFA_REGISTER #
35#define CFI_DEF_CFA_OFFSET #
36#define CFI_ADJUST_CFA_OFFSET #
37#define CFI_OFFSET #
38#define CFI_REL_OFFSET #
39
40#endif
41
42#endif