diff options
author | David Woodhouse <dwmw2@infradead.org> | 2007-10-13 14:58:23 +0100 |
---|---|---|
committer | David Woodhouse <dwmw2@infradead.org> | 2007-10-13 14:58:23 +0100 |
commit | ebf8889bd1fe3615991ff4494635d237280652a2 (patch) | |
tree | 10fb735717122bbb86474339eac07f26e7ccdf40 /include/asm-x86_64/calling.h | |
parent | b160292cc216a50fd0cd386b0bda2cd48352c73b (diff) | |
parent | 752097cec53eea111d087c545179b421e2bde98a (diff) |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'include/asm-x86_64/calling.h')
-rw-r--r-- | include/asm-x86_64/calling.h | 162 |
1 files changed, 0 insertions, 162 deletions
diff --git a/include/asm-x86_64/calling.h b/include/asm-x86_64/calling.h deleted file mode 100644 index 6f4f63af96e1..000000000000 --- a/include/asm-x86_64/calling.h +++ /dev/null @@ -1,162 +0,0 @@ -/* - * Some macros to handle stack frames in assembly. - */ - - -#define R15 0 -#define R14 8 -#define R13 16 -#define R12 24 -#define RBP 32 -#define RBX 40 -/* arguments: interrupts/non tracing syscalls only save upto here*/ -#define R11 48 -#define R10 56 -#define R9 64 -#define R8 72 -#define RAX 80 -#define RCX 88 -#define RDX 96 -#define RSI 104 -#define RDI 112 -#define ORIG_RAX 120 /* + error_code */ -/* end of arguments */ -/* cpu exception frame or undefined in case of fast syscall. */ -#define RIP 128 -#define CS 136 -#define EFLAGS 144 -#define RSP 152 -#define SS 160 -#define ARGOFFSET R11 -#define SWFRAME ORIG_RAX - - .macro SAVE_ARGS addskip=0,norcx=0,nor891011=0 - subq $9*8+\addskip,%rsp - CFI_ADJUST_CFA_OFFSET 9*8+\addskip - movq %rdi,8*8(%rsp) - CFI_REL_OFFSET rdi,8*8 - movq %rsi,7*8(%rsp) - CFI_REL_OFFSET rsi,7*8 - movq %rdx,6*8(%rsp) - CFI_REL_OFFSET rdx,6*8 - .if \norcx - .else - movq %rcx,5*8(%rsp) - CFI_REL_OFFSET rcx,5*8 - .endif - movq %rax,4*8(%rsp) - CFI_REL_OFFSET rax,4*8 - .if \nor891011 - .else - movq %r8,3*8(%rsp) - CFI_REL_OFFSET r8,3*8 - movq %r9,2*8(%rsp) - CFI_REL_OFFSET r9,2*8 - movq %r10,1*8(%rsp) - CFI_REL_OFFSET r10,1*8 - movq %r11,(%rsp) - CFI_REL_OFFSET r11,0*8 - .endif - .endm - -#define ARG_SKIP 9*8 - .macro RESTORE_ARGS skiprax=0,addskip=0,skiprcx=0,skipr11=0,skipr8910=0,skiprdx=0 - .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) - .endif - .endm - - .macro LOAD_ARGS offset - movq \offset(%rsp),%r11 - movq \offset+8(%rsp),%r10 - movq \offset+16(%rsp),%r9 - movq \offset+24(%rsp),%r8 - movq \offset+40(%rsp),%rcx - movq \offset+48(%rsp),%rdx - movq \offset+56(%rsp),%rsi - movq \offset+64(%rsp),%rdi - movq \offset+72(%rsp),%rax - .endm - -#define REST_SKIP 6*8 - .macro SAVE_REST - subq $REST_SKIP,%rsp - CFI_ADJUST_CFA_OFFSET REST_SKIP - movq %rbx,5*8(%rsp) - CFI_REL_OFFSET rbx,5*8 - movq %rbp,4*8(%rsp) - CFI_REL_OFFSET rbp,4*8 - movq %r12,3*8(%rsp) - CFI_REL_OFFSET r12,3*8 - movq %r13,2*8(%rsp) - CFI_REL_OFFSET r13,2*8 - movq %r14,1*8(%rsp) - CFI_REL_OFFSET r14,1*8 - movq %r15,(%rsp) - CFI_REL_OFFSET r15,0*8 - .endm - - .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 - - .macro SAVE_ALL - SAVE_ARGS - SAVE_REST - .endm - - .macro RESTORE_ALL addskip=0 - RESTORE_REST - RESTORE_ARGS 0,\addskip - .endm - - .macro icebp - .byte 0xf1 - .endm |