blob: 06850a7194e159561e8c3d7d6c6e6f2f78485a9a [file] [log] [blame]
Adrian Bunk7e02cb92007-10-17 18:04:38 +02001#ifdef __ASSEMBLY__
2
Andi Kleenecaf45e2006-09-26 10:52:29 +02003#include <asm/dwarf2.h>
4
5/* The annotation hides the frame from the unwinder and makes it look
6 like a ordinary ebp save/restore. This avoids some special cases for
7 frame pointer later */
8#ifdef CONFIG_FRAME_POINTER
9 .macro FRAME
10 pushl %ebp
11 CFI_ADJUST_CFA_OFFSET 4
12 CFI_REL_OFFSET ebp,0
13 movl %esp,%ebp
14 .endm
15 .macro ENDFRAME
16 popl %ebp
17 CFI_ADJUST_CFA_OFFSET -4
18 CFI_RESTORE ebp
19 .endm
20#else
21 .macro FRAME
22 .endm
23 .macro ENDFRAME
24 .endm
25#endif
Adrian Bunk7e02cb92007-10-17 18:04:38 +020026
27#endif /* __ASSEMBLY__ */