Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[wrt350n-kernel.git] / include / asm-x86 / 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__ */