Linux 2.6.31.6
[linux/fpc-iii.git] / arch / x86 / include / asm / frame.h
blob06850a7194e159561e8c3d7d6c6e6f2f78485a9a
1 #ifdef __ASSEMBLY__
3 #include <asm/dwarf2.h>
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
27 #endif /* __ASSEMBLY__ */