|
@@ -72,24 +72,23 @@ ENTRY(entry_SYSENTER_compat)
|
|
|
pushfq /* pt_regs->flags (except IF = 0) */
|
|
|
orl $X86_EFLAGS_IF, (%rsp) /* Fix saved flags */
|
|
|
pushq $__USER32_CS /* pt_regs->cs */
|
|
|
- xorq %r8,%r8
|
|
|
- pushq %r8 /* pt_regs->ip = 0 (placeholder) */
|
|
|
+ pushq $0 /* pt_regs->ip = 0 (placeholder) */
|
|
|
pushq %rax /* pt_regs->orig_ax */
|
|
|
pushq %rdi /* pt_regs->di */
|
|
|
pushq %rsi /* pt_regs->si */
|
|
|
pushq %rdx /* pt_regs->dx */
|
|
|
pushq %rcx /* pt_regs->cx */
|
|
|
pushq $-ENOSYS /* pt_regs->ax */
|
|
|
- pushq %r8 /* pt_regs->r8 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r9 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r10 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r11 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r8 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r9 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r10 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r11 = 0 */
|
|
|
pushq %rbx /* pt_regs->rbx */
|
|
|
pushq %rbp /* pt_regs->rbp (will be overwritten) */
|
|
|
- pushq %r8 /* pt_regs->r12 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r13 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r14 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r15 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r12 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r13 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r14 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r15 = 0 */
|
|
|
cld
|
|
|
|
|
|
/*
|
|
@@ -205,17 +204,16 @@ ENTRY(entry_SYSCALL_compat)
|
|
|
pushq %rdx /* pt_regs->dx */
|
|
|
pushq %rbp /* pt_regs->cx (stashed in bp) */
|
|
|
pushq $-ENOSYS /* pt_regs->ax */
|
|
|
- xorq %r8,%r8
|
|
|
- pushq %r8 /* pt_regs->r8 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r9 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r10 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r11 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r8 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r9 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r10 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r11 = 0 */
|
|
|
pushq %rbx /* pt_regs->rbx */
|
|
|
pushq %rbp /* pt_regs->rbp (will be overwritten) */
|
|
|
- pushq %r8 /* pt_regs->r12 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r13 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r14 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r15 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r12 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r13 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r14 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r15 = 0 */
|
|
|
|
|
|
/*
|
|
|
* User mode is traced as though IRQs are on, and SYSENTER
|
|
@@ -316,11 +314,10 @@ ENTRY(entry_INT80_compat)
|
|
|
pushq %rdx /* pt_regs->dx */
|
|
|
pushq %rcx /* pt_regs->cx */
|
|
|
pushq $-ENOSYS /* pt_regs->ax */
|
|
|
- xorq %r8,%r8
|
|
|
- pushq %r8 /* pt_regs->r8 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r9 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r10 = 0 */
|
|
|
- pushq %r8 /* pt_regs->r11 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r8 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r9 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r10 = 0 */
|
|
|
+ pushq $0 /* pt_regs->r11 = 0 */
|
|
|
pushq %rbx /* pt_regs->rbx */
|
|
|
pushq %rbp /* pt_regs->rbp */
|
|
|
pushq %r12 /* pt_regs->r12 */
|