diff --git a/sys/i386/i386/apic_vector.s b/sys/i386/i386/apic_vector.s index 992fc9278d16..5a4bc6135ee2 100644 --- a/sys/i386/i386/apic_vector.s +++ b/sys/i386/i386/apic_vector.s @@ -189,8 +189,7 @@ IDTVEC(xen_intr_upcall) SUPERALIGN_TEXT invltlb_ret: call as_lapic_eoi - POP_FRAME - iret + jmp doreti SUPERALIGN_TEXT IDTVEC(invltlb) @@ -274,9 +273,7 @@ IDTVEC(cpustop) call as_lapic_eoi call cpustop_handler - - POP_FRAME - iret + jmp doreti /* * Executed by a CPU when it receives an IPI_SUSPEND from another CPU. @@ -290,9 +287,7 @@ IDTVEC(cpususpend) call as_lapic_eoi call cpususpend_handler - - POP_FRAME - jmp doreti_iret + jmp doreti /* * Executed by a CPU when it receives a RENDEZVOUS IPI from another CPU. @@ -314,7 +309,6 @@ IDTVEC(rendezvous) call smp_rendezvous_action call as_lapic_eoi - POP_FRAME - iret + jmp doreti #endif /* SMP */ diff --git a/sys/i386/include/asmacros.h b/sys/i386/include/asmacros.h index a9cac104abe5..2795faa86d4b 100644 --- a/sys/i386/include/asmacros.h +++ b/sys/i386/include/asmacros.h @@ -153,13 +153,6 @@ pushl $0 ; \ movw %fs,(%esp) -#define POP_FRAME \ - popl %fs ; \ - popl %es ; \ - popl %ds ; \ - popal ; \ - addl $4+4,%esp - /* * Access per-CPU data. */