diff options
Diffstat (limited to 'sys/arch/vax')
-rw-r--r-- | sys/arch/vax/conf/files.vax | 3 | ||||
-rw-r--r-- | sys/arch/vax/vax/random.s | 105 |
2 files changed, 1 insertions, 107 deletions
diff --git a/sys/arch/vax/conf/files.vax b/sys/arch/vax/conf/files.vax index 0c34f42ef43..34c89ba13f0 100644 --- a/sys/arch/vax/conf/files.vax +++ b/sys/arch/vax/conf/files.vax @@ -1,4 +1,4 @@ -# $OpenBSD: files.vax,v 1.48 2008/08/18 23:19:21 miod Exp $ +# $OpenBSD: files.vax,v 1.49 2008/10/10 20:21:39 deraadt Exp $ # $NetBSD: files.vax,v 1.60 1999/08/27 20:04:32 ragge Exp $ # # new style config file for vax architecture @@ -384,7 +384,6 @@ file arch/vax/vax/bus_mem.c file arch/vax/vax/sgmap.c file arch/vax/vax/vm_machdep.c file arch/vax/vax/findcpu.c -file arch/vax/vax/random.s file arch/vax/vax/autoconf.c file arch/vax/vax/mutex.c file arch/vax/vax/in_cksum.c inet diff --git a/sys/arch/vax/vax/random.s b/sys/arch/vax/vax/random.s deleted file mode 100644 index 41fea6aea6c..00000000000 --- a/sys/arch/vax/vax/random.s +++ /dev/null @@ -1,105 +0,0 @@ -/* $OpenBSD: random.s,v 1.5 2007/01/14 19:13:35 otto Exp $ */ -/* $NetBSD: random.S,v 1.4 2007/01/14 13:26:18 ragge Exp $ */ - -/* - * Copyright (c) 1994 Ludd, University of Lule}, Sweden. 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. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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. - */ - -/* - * 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: (1) source code distributions - * retain the above copyright notice and this paragraph in its entirety, (2) - * distributions including binary code include the above copyright notice and - * this paragraph in its entirety in the documentation or other materials - * provided with the distribution, and (3) all advertising materials mentioning - * features or use of this software display the following acknowledgement: - * ``This product includes software developed by the University of California, - * Lawrence Berkeley Laboratory and its contributors.'' 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 ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED - * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF - * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. - * - * Here is a very good random number generator. This implementation is - * based on ``Two Fast Implementations of the "Minimal Standard" Random - * Number Generator'', David G. Carta, Communications of the ACM, Jan 1990, - * Vol 33 No 1. Do NOT modify this code unless you have a very thorough - * understanding of the algorithm. It's trickier than you think. If - * you do change it, make sure that its 10,000'th invocation returns - * 1043618065. - * - * Here is easier-to-decipher pseudocode: - * - * p = (16807*seed)<30:0> # e.g., the low 31 bits of the product - * q = (16807*seed)<62:31> # e.g., the high 31 bits starting at bit 32 - * if (p + q < 2^31) - * seed = p + q - * else - * seed = ((p + q) & (2^31 - 1)) + 1 - * return (seed); - * - * The result is in (0,2^31), e.g., it's always positive. - */ - -#include <machine/asm.h> - - .data - .globl __randseed -__randseed: - .long 1 -ENTRY(random, 0) - movl $16807,r0 - - movl __randseed,r1 # r2=16807*loword(__randseed) - bicl3 $0xffff0000,r1,r2 - mull2 r0,r2 - ashl $-16,r1,r1 # r1=16807*hiword(__randseed) - bicl2 $0xffff0000,r1 - mull2 r0,r1 - bicl3 $0xffff0000,r2,r0 - ashl $-16,r2,r2 # r1+=(r2>>16) - bicl2 $0xffff0000,r2 - addl2 r2,r1 - ashl $16,r1,r2 # r0|=r1<<16 - bisl2 r2,r0 - ashl $-16,r1,r1 # r1=r1>>16 - - ashl $1,r1,r1 - movl r0,r2 - rotl $1,r0,r0 - bicl2 $0xfffffffe,r0 - bisl2 r0,r1 - movl r2,r0 - bicl2 $0x80000000,r0 - addl2 r1,r0 - bgeq L1 - subl2 $0x7fffffff,r0 -L1: movl r0,__randseed - ret |