Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/i386/i386 Back out pushl/popl -> movl change. copy_...
details: https://anonhg.NetBSD.org/src/rev/181d63f90dde
branches: trunk
changeset: 537653:181d63f90dde
user: junyoung <junyoung%NetBSD.org@localhost>
date: Fri Oct 04 06:43:40 2002 +0000
description:
Back out pushl/popl -> movl change. copy_fault is also used by kcopy(9).
diffstat:
sys/arch/i386/i386/locore.s | 37 ++++++++++++++++++++-----------------
1 files changed, 20 insertions(+), 17 deletions(-)
diffs (103 lines):
diff -r 098cafcff4f0 -r 181d63f90dde sys/arch/i386/i386/locore.s
--- a/sys/arch/i386/i386/locore.s Fri Oct 04 06:02:38 2002 +0000
+++ b/sys/arch/i386/i386/locore.s Fri Oct 04 06:43:40 2002 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: locore.s,v 1.263 2002/10/04 04:40:12 junyoung Exp $ */
+/* $NetBSD: locore.s,v 1.264 2002/10/04 06:43:40 junyoung Exp $ */
/*-
* Copyright (c) 1998, 2000 The NetBSD Foundation, Inc.
@@ -980,10 +980,11 @@
ENTRY(i386_copyout)
pushl %esi
pushl %edi
+ pushl $0
- movl 12(%esp),%esi
- movl 16(%esp),%edi
- movl 20(%esp),%eax
+ movl 16(%esp),%esi
+ movl 20(%esp),%edi
+ movl 24(%esp),%eax
/*
* We check that the end of the destination buffer is not past the end
@@ -1057,10 +1058,10 @@
rep
movsb
- xorl %eax,%eax
+ popl PCB_ONFAULT(%edx)
popl %edi
popl %esi
- movl %eax,PCB_ONFAULT(%edx)
+ xorl %eax,%eax
ret
#endif /* I386_CPU */
@@ -1069,10 +1070,11 @@
ENTRY(i486_copyout)
pushl %esi
pushl %edi
+ pushl $0
- movl 12(%esp),%esi
- movl 16(%esp),%edi
- movl 20(%esp),%eax
+ movl 16(%esp),%esi
+ movl 20(%esp),%edi
+ movl 24(%esp),%eax
/*
* We check that the end of the destination buffer is not past the end
@@ -1098,10 +1100,10 @@
rep
movsb
- xorl %eax,%eax
+ popl PCB_ONFAULT(%edx)
popl %edi
popl %esi
- movl %eax,PCB_ONFAULT(%edx)
+ xorl %eax,%eax
ret
#endif /* I486_CPU || I586_CPU || I686_CPU */
@@ -1121,11 +1123,12 @@
pushl %esi
pushl %edi
GET_CURPCB(%eax)
+ pushl $0
movl $_C_LABEL(copy_fault),PCB_ONFAULT(%eax)
- movl 12(%esp),%esi
- movl 16(%esp),%edi
- movl 20(%esp),%eax
+ movl 16(%esp),%esi
+ movl 20(%esp),%edi
+ movl 24(%esp),%eax
/*
* We check that the end of the destination buffer is not past the end
@@ -1150,10 +1153,10 @@
movsb
GET_CURPCB(%edx)
- xorl %eax,%eax
+ popl PCB_ONFAULT(%edx)
popl %edi
popl %esi
- movl %eax,PCB_ONFAULT(%edx)
+ xorl %eax,%eax
ret
#endif /* I386_CPU || I486_CPU || I586_CPU || I686_CPU */
@@ -1164,7 +1167,7 @@
/* LINTSTUB: Ignore */
NENTRY(copy_fault)
GET_CURPCB(%edx)
- movl $0,PCB_ONFAULT(%edx)
+ popl PCB_ONFAULT(%edx)
popl %edi
popl %esi
ret
Home |
Main Index |
Thread Index |
Old Index