root/arch/x86/include/asm/frame.h

/* [<][>][^][v][top][bottom][index][help] */
#ifdef __ASSEMBLY__

#include <asm/asm.h>
#include <asm/dwarf2.h>

/* The annotation hides the frame from the unwinder and makes it look
   like a ordinary ebp save/restore. This avoids some special cases for
   frame pointer later */
#ifdef CONFIG_FRAME_POINTER
        .macro FRAME
        __ASM_SIZE(push,_cfi)   %__ASM_REG(bp)
        CFI_REL_OFFSET          __ASM_REG(bp), 0
        __ASM_SIZE(mov)         %__ASM_REG(sp), %__ASM_REG(bp)
        .endm
        .macro ENDFRAME
        __ASM_SIZE(pop,_cfi)    %__ASM_REG(bp)
        CFI_RESTORE             __ASM_REG(bp)
        .endm
#else
        .macro FRAME
        .endm
        .macro ENDFRAME
        .endm
#endif

#endif  /*  __ASSEMBLY__  */

/* [<][>][^][v][top][bottom][index][help] */