Module Name: src Committed By: maxv Date: Sun Sep 17 09:59:23 UTC 2017
Modified Files: src/sys/arch/i386/i386: locore.S src/sys/arch/i386/include: frameasm.h Log Message: Declare INTRFASTEXIT as a function, like amd64; will be expanded soon. To generate a diff of this commit: cvs rdiff -u -r1.151 -r1.152 src/sys/arch/i386/i386/locore.S cvs rdiff -u -r1.17 -r1.18 src/sys/arch/i386/include/frameasm.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/i386/i386/locore.S diff -u src/sys/arch/i386/i386/locore.S:1.151 src/sys/arch/i386/i386/locore.S:1.152 --- src/sys/arch/i386/i386/locore.S:1.151 Sat Aug 12 07:21:57 2017 +++ src/sys/arch/i386/i386/locore.S Sun Sep 17 09:59:23 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: locore.S,v 1.151 2017/08/12 07:21:57 maxv Exp $ */ +/* $NetBSD: locore.S,v 1.152 2017/09/17 09:59:23 maxv Exp $ */ /* * Copyright-o-rama! @@ -128,7 +128,7 @@ */ #include <machine/asm.h> -__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.151 2017/08/12 07:21:57 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: locore.S,v 1.152 2017/09/17 09:59:23 maxv Exp $"); #include "opt_copy_symtab.h" #include "opt_ddb.h" @@ -1367,3 +1367,20 @@ ENTRY(sse2_idlezero_page) popl %ebp ret END(sse2_idlezero_page) + +ENTRY(intrfastexit) + movw TF_GS(%esp),%gs + movw TF_FS(%esp),%fs + movw TF_ES(%esp),%es + movw TF_DS(%esp),%ds + movl TF_EDI(%esp),%edi + movl TF_ESI(%esp),%esi + movl TF_EBP(%esp),%ebp + movl TF_EBX(%esp),%ebx + movl TF_EDX(%esp),%edx + movl TF_ECX(%esp),%ecx + movl TF_EAX(%esp),%eax + addl $(TF_PUSHSIZE+8),%esp + iret +END(intrfastexit) + Index: src/sys/arch/i386/include/frameasm.h diff -u src/sys/arch/i386/include/frameasm.h:1.17 src/sys/arch/i386/include/frameasm.h:1.18 --- src/sys/arch/i386/include/frameasm.h:1.17 Sun Sep 17 09:04:51 2017 +++ src/sys/arch/i386/include/frameasm.h Sun Sep 17 09:59:23 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: frameasm.h,v 1.17 2017/09/17 09:04:51 maxv Exp $ */ +/* $NetBSD: frameasm.h,v 1.18 2017/09/17 09:59:23 maxv Exp $ */ #ifndef _I386_FRAMEASM_H_ #define _I386_FRAMEASM_H_ @@ -51,23 +51,8 @@ movl %eax,%fs ; \ cld -/* - * INTRFASTEXIT should be in sync with trap(), resume_iret and friends. - */ #define INTRFASTEXIT \ - movw TF_GS(%esp),%gs ; \ - movw TF_FS(%esp),%fs ; \ - movw TF_ES(%esp),%es ; \ - movw TF_DS(%esp),%ds ; \ - movl TF_EDI(%esp),%edi ; \ - movl TF_ESI(%esp),%esi ; \ - movl TF_EBP(%esp),%ebp ; \ - movl TF_EBX(%esp),%ebx ; \ - movl TF_EDX(%esp),%edx ; \ - movl TF_ECX(%esp),%ecx ; \ - movl TF_EAX(%esp),%eax ; \ - addl $(TF_PUSHSIZE+8),%esp ; \ - iret + jmp intrfastexit #define DO_DEFERRED_SWITCH \ cmpl $0, CPUVAR(WANT_PMAPLOAD) ; \