Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v4.12 44 lines 776 B view raw
1#ifndef _ASM_X86_FRAME_H 2#define _ASM_X86_FRAME_H 3 4#include <asm/asm.h> 5 6/* 7 * These are stack frame creation macros. They should be used by every 8 * callable non-leaf asm function to make kernel stack traces more reliable. 9 */ 10 11#ifdef CONFIG_FRAME_POINTER 12 13#ifdef __ASSEMBLY__ 14 15.macro FRAME_BEGIN 16 push %_ASM_BP 17 _ASM_MOV %_ASM_SP, %_ASM_BP 18.endm 19 20.macro FRAME_END 21 pop %_ASM_BP 22.endm 23 24#else /* !__ASSEMBLY__ */ 25 26#define FRAME_BEGIN \ 27 "push %" _ASM_BP "\n" \ 28 _ASM_MOV "%" _ASM_SP ", %" _ASM_BP "\n" 29 30#define FRAME_END "pop %" _ASM_BP "\n" 31 32#endif /* __ASSEMBLY__ */ 33 34#define FRAME_OFFSET __ASM_SEL(4, 8) 35 36#else /* !CONFIG_FRAME_POINTER */ 37 38#define FRAME_BEGIN 39#define FRAME_END 40#define FRAME_OFFSET 0 41 42#endif /* CONFIG_FRAME_POINTER */ 43 44#endif /* _ASM_X86_FRAME_H */