summaryrefslogtreecommitdiff
path: root/sys/lib/libkern
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2016-03-10 05:21:07 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2016-03-10 05:21:07 +0000
commitc400f295ba6f85ba64ace07f695fb256c2d0be4a (patch)
tree265a006468002120501028c53adada195040d33f /sys/lib/libkern
parent9ba85825418c4c702bba4c9e682bc8d578dd7716 (diff)
more pieces of vax
Diffstat (limited to 'sys/lib/libkern')
-rw-r--r--sys/lib/libkern/arch/vax/bcmp.S56
-rw-r--r--sys/lib/libkern/arch/vax/bcopy.S1
-rw-r--r--sys/lib/libkern/arch/vax/bzero.S46
-rw-r--r--sys/lib/libkern/arch/vax/memcmp.S65
-rw-r--r--sys/lib/libkern/arch/vax/memcpy.S1
-rw-r--r--sys/lib/libkern/arch/vax/memmove.S102
-rw-r--r--sys/lib/libkern/arch/vax/memset.S48
7 files changed, 0 insertions, 319 deletions
diff --git a/sys/lib/libkern/arch/vax/bcmp.S b/sys/lib/libkern/arch/vax/bcmp.S
deleted file mode 100644
index 36c360cc698..00000000000
--- a/sys/lib/libkern/arch/vax/bcmp.S
+++ /dev/null
@@ -1,56 +0,0 @@
-/* $OpenBSD: bcmp.S,v 1.4 2013/07/05 21:11:57 miod Exp $ */
-/*
- * Copyright (c) 1983, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <machine/asm.h>
-
-/* Since "cmpc3" is not portable across VAXen, do it the hard way */
-/* still, this is four times faster than the generic C version on a uvax2 */
-
-ENTRY(bcmp, 0)
- movl 12(%ap),%r0 # r0 = n
- jeql 9f
- movq 4(%ap),%r1 # r1 = s1, r2 = s2
- ashl $-2,%r0,%r3 # convert len to # of long words
- jeql 2f
-1:
- cmpl (%r1)+,(%r2)+ # no "cmpq" alas, so four bytes at a time
- jneq 9f
- sobgtr %r3,1b
-2:
- bicl3 $-4,%r0,%r3 # handle at most 3 extra bytes
- jeql 8f
-3:
- cmpb (%r1)+,(%r2)+
- jneq 9f
- sobgtr %r3,3b
-8:
- clrl %r0 # we have a match!
-9:
- ret
diff --git a/sys/lib/libkern/arch/vax/bcopy.S b/sys/lib/libkern/arch/vax/bcopy.S
deleted file mode 100644
index c9361568da4..00000000000
--- a/sys/lib/libkern/arch/vax/bcopy.S
+++ /dev/null
@@ -1 +0,0 @@
-/* This code is contained in memmove.S */
diff --git a/sys/lib/libkern/arch/vax/bzero.S b/sys/lib/libkern/arch/vax/bzero.S
deleted file mode 100644
index 0c21e05f0e1..00000000000
--- a/sys/lib/libkern/arch/vax/bzero.S
+++ /dev/null
@@ -1,46 +0,0 @@
-/* $OpenBSD: bzero.S,v 1.4 2013/07/05 21:11:57 miod Exp $ */
-/*
- * Copyright (c) 1983, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-/* bzero(base, length) */
-
-#include <machine/asm.h>
-
-ENTRY(bzero, R2|R3|R4|R5)
- movl 4(%ap),%r3
- jbr 2f
-1:
- subl2 %r0,8(%ap)
- movc5 $0,(%r3),$0,%r0,(%r3)
-2:
- movzwl $65535,%r0
- cmpl 8(%ap),%r0
- jgtr 1b
- movc5 $0,(%r3),$0,8(%ap),(%r3)
- ret
diff --git a/sys/lib/libkern/arch/vax/memcmp.S b/sys/lib/libkern/arch/vax/memcmp.S
deleted file mode 100644
index f5fda4dcb29..00000000000
--- a/sys/lib/libkern/arch/vax/memcmp.S
+++ /dev/null
@@ -1,65 +0,0 @@
-/* $OpenBSD: memcmp.S,v 1.2 2013/07/05 21:11:57 miod Exp $ */
-/*-
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-/* int memcmp(s1, s2, n) */
-
-#include <machine/asm.h>
-
-ENTRY(memcmp, 0)
- movl 12(%ap),%r0
- jeql 9f
- movq 4(%ap),%r1
- ashl $-2,%r0,%r3 # convert len to long words
- jeql 2f
-1:
- cmpl (%r1)+,(%r2)+ # no "cmpq" alas
- jneq 7f
- sobgtr %r3,1b
-2:
- bicl3 $-4,%r0,%r3 # handle at most 3 extra bytes
- jeql 4f
-3:
- cmpb (%r1)+,(%r2)+
- jneq 8f
- sobgtr %r3,3b
-4:
- clrl %r0 # we had a match
- ret
-7: # backup, and do a byte compare
- tstl -(%r1)
- tstl -(%r2)
- movl $4,%r3
- jbr 3b
-8:
- movzbl -(%r1),%r3
- movzbl -(%r2),%r4
- subl3 %r4,%r3,%r0
-9:
- ret
diff --git a/sys/lib/libkern/arch/vax/memcpy.S b/sys/lib/libkern/arch/vax/memcpy.S
deleted file mode 100644
index c9361568da4..00000000000
--- a/sys/lib/libkern/arch/vax/memcpy.S
+++ /dev/null
@@ -1 +0,0 @@
-/* This code is contained in memmove.S */
diff --git a/sys/lib/libkern/arch/vax/memmove.S b/sys/lib/libkern/arch/vax/memmove.S
deleted file mode 100644
index 8723aaa8ec1..00000000000
--- a/sys/lib/libkern/arch/vax/memmove.S
+++ /dev/null
@@ -1,102 +0,0 @@
-/* $OpenBSD: memmove.S,v 1.5 2013/07/05 21:11:57 miod Exp $ */
-/*-
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-/*
- * void *memmove(dst, src, size)
- * returns dst
- *
- * This optimises the usual case (count < 65536) at the expense
- * of some extra memory references and branches when count >= 65536.
- */
-
-#include <machine/asm.h>
-
-ENTRY(bcopy, R2|R3|R4|R5)
- movzwl $65535,%r0 /* r0 = 64K (needed below) */
- movq 8(%ap),%r1 /* r1 = src, r2 = length */
- movl %r1,%r3 /* r3 = dst */
- movl 4(%ap),%r1 /* r1 = src */
- brw 5f /* do a memmove */
-
-ENTRY(memcpy, R2|R3|R4|R5)
- movzwl $65535,%r0 /* r0 = 64K (needed below) */
- movq 8(%ap),%r1 /* r1 = src, r2 = length */
- movl 4(%ap),%r3 /* r3 = dst */
- cmpl %r1,%r3
- beql 2f /* equal, nothing to do */
- brw 1f /* jump into the forward copy path of memmove */
-
-ENTRY(memmove, R2|R3|R4|R5)
- movzwl $65535,%r0 /* r0 = 64K (needed below) */
- movq 8(%ap),%r1 /* r1 = src, r2 = length */
- movl 4(%ap),%r3 /* r3 = dst */
-5:
- cmpl %r1,%r3
- bgtru 1f /* normal forward case */
- beql 2f /* equal, nothing to do */
- addl2 %r2,%r1 /* overlaps iff src<dst but src+len>dst */
- cmpl %r1,%r3
- bgtru 4f /* overlapping, must move backwards */
- subl2 %r2,%r1
-
-1: /* move forward */
- cmpl %r2,%r0
- bgtru 3f /* stupid movc3 limitation */
- movc3 %r2,(%r1),(%r3) /* move it all */
-2:
- movl 4(%ap),%r0 /* return original dst */
- ret
-3:
- subl2 %r0,12(%ap) /* adjust length by 64K */
- movc3 %r0,(%r1),(%r3) /* move 64K */
- movl 12(%ap),%r2
- decw %r0 /* from 0 to 65535 */
- brb 1b /* retry */
-
-4: /* move backward */
- addl2 %r2,%r3
-5:
- cmpl %r2,%r0
- bgtru 6f /* stupid movc3 limitation */
- subl2 %r2,%r1
- subl2 %r2,%r3
- movc3 %r2,(%r1),(%r3) /* move it all */
- movl 4(%ap),%r0 /* return original dst */
- ret
-6:
- subl2 %r0,12(%ap) /* adjust length by 64K */
- subl2 %r0,%r1
- subl2 %r0,%r3
- movc3 %r0,(%r1),(%r3) /* move 64K */
- movl 12(%ap),%r2
- decw %r0
- subl2 %r0,%r1
- subl2 %r0,%r3
- brb 5b
diff --git a/sys/lib/libkern/arch/vax/memset.S b/sys/lib/libkern/arch/vax/memset.S
deleted file mode 100644
index 80ce2a2f752..00000000000
--- a/sys/lib/libkern/arch/vax/memset.S
+++ /dev/null
@@ -1,48 +0,0 @@
-/* $OpenBSD: memset.S,v 1.2 2013/07/05 21:11:57 miod Exp $ */
-/*-
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-/* void *memset(base, c, length) */
-
-#include <machine/asm.h>
-
-ENTRY(memset, R2|R3|R4|R5)
- movl 4(%ap),%r3
-1:
- movzwl $65535,%r0
- movq 8(%ap),%r1
- cmpl %r2,%r0
- jgtru 2f
- movc5 $0,(%r3),%r1,%r2,(%r3)
- movl %r1,%r0
- ret
-2:
- subl2 %r0,12(%ap)
- movc5 $0,(%r3),%r1,%r0,(%r3)
- jbr 1b