X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Fasm-x86_64%2Fcalling.h;h=6f4f63af96e1a661f215895e502155f402b40678;hb=97bf2856c6014879bd04983a3e9dfcdac1e7fe85;hp=b773861e3d9452361ac1edb2a8049a6806279286;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/include/asm-x86_64/calling.h b/include/asm-x86_64/calling.h index b773861e3..6f4f63af9 100644 --- a/include/asm-x86_64/calling.h +++ b/include/asm-x86_64/calling.h @@ -2,7 +2,6 @@ * Some macros to handle stack frames in assembly. */ -#include #define R15 0 #define R14 8 @@ -65,27 +64,36 @@ .if \skipr11 .else movq (%rsp),%r11 + CFI_RESTORE r11 .endif .if \skipr8910 .else movq 1*8(%rsp),%r10 + CFI_RESTORE r10 movq 2*8(%rsp),%r9 + CFI_RESTORE r9 movq 3*8(%rsp),%r8 + CFI_RESTORE r8 .endif .if \skiprax .else movq 4*8(%rsp),%rax + CFI_RESTORE rax .endif .if \skiprcx .else movq 5*8(%rsp),%rcx + CFI_RESTORE rcx .endif .if \skiprdx .else movq 6*8(%rsp),%rdx + CFI_RESTORE rdx .endif movq 7*8(%rsp),%rsi + CFI_RESTORE rsi movq 8*8(%rsp),%rdi + CFI_RESTORE rdi .if ARG_SKIP+\addskip > 0 addq $ARG_SKIP+\addskip,%rsp CFI_ADJUST_CFA_OFFSET -(ARG_SKIP+\addskip) @@ -124,11 +132,17 @@ .macro RESTORE_REST movq (%rsp),%r15 + CFI_RESTORE r15 movq 1*8(%rsp),%r14 + CFI_RESTORE r14 movq 2*8(%rsp),%r13 + CFI_RESTORE r13 movq 3*8(%rsp),%r12 + CFI_RESTORE r12 movq 4*8(%rsp),%rbp + CFI_RESTORE rbp movq 5*8(%rsp),%rbx + CFI_RESTORE rbx addq $REST_SKIP,%rsp CFI_ADJUST_CFA_OFFSET -(REST_SKIP) .endm @@ -143,30 +157,6 @@ RESTORE_ARGS 0,\addskip .endm - /* push in order ss, rsp, eflags, cs, rip */ - .macro FAKE_STACK_FRAME child_rip - xorl %eax,%eax - subq $6*8,%rsp - movq %rax,5*8(%rsp) /* ss */ - movq %rax,4*8(%rsp) /* rsp */ - movq $(1<<9),3*8(%rsp) /* eflags */ - movq $__KERNEL_CS,2*8(%rsp) /* cs */ - movq \child_rip,1*8(%rsp) /* rip */ - movq %rax,(%rsp) /* orig_rax */ - .endm - - .macro UNFAKE_STACK_FRAME - addq $8*6, %rsp - .endm - .macro icebp .byte 0xf1 .endm - -#ifdef CONFIG_FRAME_POINTER -#define ENTER enter -#define LEAVE leave -#else -#define ENTER -#define LEAVE -#endif