Linux 3.11-rc3
[cris-mirror.git] / arch / x86 / include / asm / frame.h
blob3b629f47eb65b4a51f6399ad153d44f9b5c24b0d
1 #ifdef __ASSEMBLY__
3 #include <asm/asm.h>
4 #include <asm/dwarf2.h>
6 /* The annotation hides the frame from the unwinder and makes it look
7 like a ordinary ebp save/restore. This avoids some special cases for
8 frame pointer later */
9 #ifdef CONFIG_FRAME_POINTER
10 .macro FRAME
11 __ASM_SIZE(push,_cfi) %__ASM_REG(bp)
12 CFI_REL_OFFSET __ASM_REG(bp), 0
13 __ASM_SIZE(mov) %__ASM_REG(sp), %__ASM_REG(bp)
14 .endm
15 .macro ENDFRAME
16 __ASM_SIZE(pop,_cfi) %__ASM_REG(bp)
17 CFI_RESTORE __ASM_REG(bp)
18 .endm
19 #else
20 .macro FRAME
21 .endm
22 .macro ENDFRAME
23 .endm
24 #endif
26 #endif /* __ASSEMBLY__ */