summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1997-03-05 16:30:55 +0000
committerbde <bde@FreeBSD.org>1997-03-05 16:30:55 +0000
commit6a14cbe8cc8482b8045354c49cc618596d251b8f (patch)
tree6347128edd0d6a7dd8a8be1e949b4ffb07fd5e7b /sys
parent21d274a9e5f58240d0339d2a091af79af02d84e8 (diff)
downloadFreeBSD-src-6a14cbe8cc8482b8045354c49cc618596d251b8f.zip
FreeBSD-src-6a14cbe8cc8482b8045354c49cc618596d251b8f.tar.gz
Made FPU stuff conditional on npx as well as I586_CPU.
Diffstat (limited to 'sys')
-rw-r--r--sys/amd64/amd64/support.S33
-rw-r--r--sys/amd64/amd64/support.s33
-rw-r--r--sys/i386/i386/support.s33
3 files changed, 54 insertions, 45 deletions
diff --git a/sys/amd64/amd64/support.S b/sys/amd64/amd64/support.S
index f700c7e..0bfef22 100644
--- a/sys/amd64/amd64/support.S
+++ b/sys/amd64/amd64/support.S
@@ -30,9 +30,10 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id$
+ * $Id: support.s,v 1.50 1997/02/22 09:32:46 peter Exp $
*/
+#include "npx.h"
#include "opt_cpu.h"
#include <machine/asmacros.h>
@@ -61,9 +62,11 @@ _copyout_vector:
.globl _ovbcopy_vector
_ovbcopy_vector:
.long _generic_bcopy
+#if defined(I586_CPU) && NNPX > 0
kernel_fpu_lock:
.byte 0xfe
.space 3
+#endif
.text
@@ -190,7 +193,7 @@ do0:
ret
#endif
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_bzero)
movl 4(%esp),%edx
movl 8(%esp),%ecx
@@ -330,7 +333,7 @@ intreg_i586_bzero:
stosb
popl %edi
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/* fillw(pat, base, cnt) */
ENTRY(fillw)
@@ -433,7 +436,7 @@ ENTRY(generic_bcopy)
cld
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_bcopy)
pushl %esi
pushl %edi
@@ -569,7 +572,7 @@ small_i586_bcopy:
popl %esi
cld
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/*
* Note: memcpy does not support overlapping copies
@@ -711,7 +714,7 @@ ENTRY(generic_copyout)
3:
movl %ebx,%ecx
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
slow_copyout:
#endif
@@ -743,7 +746,7 @@ copyout_fault:
movl $EFAULT,%eax
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_copyout)
/*
* Duplicated from generic_copyout. Could be done a bit better.
@@ -795,7 +798,7 @@ ENTRY(i586_copyout)
call _fastmove
addl $4,%esp
jmp done_copyout
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/* copyin(from_user, to_kernel, len) */
ENTRY(copyin)
@@ -820,7 +823,7 @@ ENTRY(generic_copyin)
cmpl $VM_MAXUSER_ADDRESS,%edx
ja copyin_fault
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
slow_copyin:
#endif
@@ -834,10 +837,10 @@ slow_copyin:
rep
movsb
-#if defined(I586_CPU)
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
done_copyin:
-#endif /* I586_CPU */
+#endif
popl %edi
popl %esi
xorl %eax,%eax
@@ -854,7 +857,7 @@ copyin_fault:
movl $EFAULT,%eax
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_copyin)
/*
* Duplicated from generic_copyin. Could be done a bit better.
@@ -887,9 +890,9 @@ ENTRY(i586_copyin)
call _fastmove
addl $8,%esp
jmp done_copyin
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
-#if defined(I586_CPU)
+#if defined(I586_CPU) && NNPX > 0
/* fastmove(src, dst, len)
src in %esi
dst in %edi
@@ -1075,7 +1078,7 @@ fastmove_tail_fault:
movl $0,PCB_ONFAULT(%edx)
movl $EFAULT,%eax
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/*
* fu{byte,sword,word} : fetch a byte (sword, word) from user memory
diff --git a/sys/amd64/amd64/support.s b/sys/amd64/amd64/support.s
index f700c7e..0bfef22 100644
--- a/sys/amd64/amd64/support.s
+++ b/sys/amd64/amd64/support.s
@@ -30,9 +30,10 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id$
+ * $Id: support.s,v 1.50 1997/02/22 09:32:46 peter Exp $
*/
+#include "npx.h"
#include "opt_cpu.h"
#include <machine/asmacros.h>
@@ -61,9 +62,11 @@ _copyout_vector:
.globl _ovbcopy_vector
_ovbcopy_vector:
.long _generic_bcopy
+#if defined(I586_CPU) && NNPX > 0
kernel_fpu_lock:
.byte 0xfe
.space 3
+#endif
.text
@@ -190,7 +193,7 @@ do0:
ret
#endif
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_bzero)
movl 4(%esp),%edx
movl 8(%esp),%ecx
@@ -330,7 +333,7 @@ intreg_i586_bzero:
stosb
popl %edi
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/* fillw(pat, base, cnt) */
ENTRY(fillw)
@@ -433,7 +436,7 @@ ENTRY(generic_bcopy)
cld
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_bcopy)
pushl %esi
pushl %edi
@@ -569,7 +572,7 @@ small_i586_bcopy:
popl %esi
cld
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/*
* Note: memcpy does not support overlapping copies
@@ -711,7 +714,7 @@ ENTRY(generic_copyout)
3:
movl %ebx,%ecx
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
slow_copyout:
#endif
@@ -743,7 +746,7 @@ copyout_fault:
movl $EFAULT,%eax
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_copyout)
/*
* Duplicated from generic_copyout. Could be done a bit better.
@@ -795,7 +798,7 @@ ENTRY(i586_copyout)
call _fastmove
addl $4,%esp
jmp done_copyout
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/* copyin(from_user, to_kernel, len) */
ENTRY(copyin)
@@ -820,7 +823,7 @@ ENTRY(generic_copyin)
cmpl $VM_MAXUSER_ADDRESS,%edx
ja copyin_fault
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
slow_copyin:
#endif
@@ -834,10 +837,10 @@ slow_copyin:
rep
movsb
-#if defined(I586_CPU)
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
done_copyin:
-#endif /* I586_CPU */
+#endif
popl %edi
popl %esi
xorl %eax,%eax
@@ -854,7 +857,7 @@ copyin_fault:
movl $EFAULT,%eax
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_copyin)
/*
* Duplicated from generic_copyin. Could be done a bit better.
@@ -887,9 +890,9 @@ ENTRY(i586_copyin)
call _fastmove
addl $8,%esp
jmp done_copyin
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
-#if defined(I586_CPU)
+#if defined(I586_CPU) && NNPX > 0
/* fastmove(src, dst, len)
src in %esi
dst in %edi
@@ -1075,7 +1078,7 @@ fastmove_tail_fault:
movl $0,PCB_ONFAULT(%edx)
movl $EFAULT,%eax
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/*
* fu{byte,sword,word} : fetch a byte (sword, word) from user memory
diff --git a/sys/i386/i386/support.s b/sys/i386/i386/support.s
index f700c7e..0bfef22 100644
--- a/sys/i386/i386/support.s
+++ b/sys/i386/i386/support.s
@@ -30,9 +30,10 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id$
+ * $Id: support.s,v 1.50 1997/02/22 09:32:46 peter Exp $
*/
+#include "npx.h"
#include "opt_cpu.h"
#include <machine/asmacros.h>
@@ -61,9 +62,11 @@ _copyout_vector:
.globl _ovbcopy_vector
_ovbcopy_vector:
.long _generic_bcopy
+#if defined(I586_CPU) && NNPX > 0
kernel_fpu_lock:
.byte 0xfe
.space 3
+#endif
.text
@@ -190,7 +193,7 @@ do0:
ret
#endif
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_bzero)
movl 4(%esp),%edx
movl 8(%esp),%ecx
@@ -330,7 +333,7 @@ intreg_i586_bzero:
stosb
popl %edi
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/* fillw(pat, base, cnt) */
ENTRY(fillw)
@@ -433,7 +436,7 @@ ENTRY(generic_bcopy)
cld
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_bcopy)
pushl %esi
pushl %edi
@@ -569,7 +572,7 @@ small_i586_bcopy:
popl %esi
cld
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/*
* Note: memcpy does not support overlapping copies
@@ -711,7 +714,7 @@ ENTRY(generic_copyout)
3:
movl %ebx,%ecx
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
slow_copyout:
#endif
@@ -743,7 +746,7 @@ copyout_fault:
movl $EFAULT,%eax
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_copyout)
/*
* Duplicated from generic_copyout. Could be done a bit better.
@@ -795,7 +798,7 @@ ENTRY(i586_copyout)
call _fastmove
addl $4,%esp
jmp done_copyout
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/* copyin(from_user, to_kernel, len) */
ENTRY(copyin)
@@ -820,7 +823,7 @@ ENTRY(generic_copyin)
cmpl $VM_MAXUSER_ADDRESS,%edx
ja copyin_fault
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
slow_copyin:
#endif
@@ -834,10 +837,10 @@ slow_copyin:
rep
movsb
-#if defined(I586_CPU)
+#if defined(I586_CPU) && NNPX > 0
ALIGN_TEXT
done_copyin:
-#endif /* I586_CPU */
+#endif
popl %edi
popl %esi
xorl %eax,%eax
@@ -854,7 +857,7 @@ copyin_fault:
movl $EFAULT,%eax
ret
-#ifdef I586_CPU
+#if defined(I586_CPU) && NNPX > 0
ENTRY(i586_copyin)
/*
* Duplicated from generic_copyin. Could be done a bit better.
@@ -887,9 +890,9 @@ ENTRY(i586_copyin)
call _fastmove
addl $8,%esp
jmp done_copyin
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
-#if defined(I586_CPU)
+#if defined(I586_CPU) && NNPX > 0
/* fastmove(src, dst, len)
src in %esi
dst in %edi
@@ -1075,7 +1078,7 @@ fastmove_tail_fault:
movl $0,PCB_ONFAULT(%edx)
movl $EFAULT,%eax
ret
-#endif /* I586_CPU */
+#endif /* I586_CPU && NNPX > 0 */
/*
* fu{byte,sword,word} : fetch a byte (sword, word) from user memory
OpenPOWER on IntegriCloud