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) ; \