1#ifdef __ASSEMBLY__ 2 3#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 26 27#endif /* __ASSEMBLY__ */ 28