shithub: riscv

Download patch

ref: b767b2ce23ba8294d7e628b7fbcd0ad844be5dc8
parent: d8a8ac237a5c08ce5a6fe990c213ffc0292a18dc
author: cinap_lenrek <cinap_lenrek@felloff.net>
date: Thu Jun 20 10:15:20 EDT 2019

cwfs: remove orphaned lrand.c

--- a/sys/src/cmd/cwfs/lrand.c
+++ /dev/null
@@ -1,83 +1,0 @@
-#include "all.h"
-
-/*
- *	algorithm by
- *	D. P. Mitchell & J. A. Reeds
- */
-enum {
-	LEN	= 607,
-	TAP	= 273,
-	MASK	= 0x7fffffffL,
-	A	= 48271,
-	M	= 2147483647,
-	Q	= 44488,
-	R	= 3399,
-};
-
-#define	NORM	(1.0/(1.0+MASK))
-
-static	ulong	rng_vec[LEN];
-static	ulong*	rng_tap = rng_vec;
-static	ulong*	rng_feed = 0;
-static	Lock	lk;
-
-static void
-isrand(long seed)
-{
-	long lo, hi, x;
-	int i;
-
-	rng_tap = rng_vec;
-	rng_feed = rng_vec+LEN-TAP;
-	seed %= M;
-	if(seed < 0)
-		seed += M;
-	if(seed == 0)
-		seed = 89482311;
-	x = seed;
-	/*
-	 *	Initialize by x[n+1] = 48271 * x[n] mod (2**31 - 1)
-	 */
-	for(i = -20; i < LEN; i++) {
-		hi = x / Q;
-		lo = x % Q;
-		x = A*lo - R*hi;
-		if(x < 0)
-			x += M;
-		if(i >= 0)
-			rng_vec[i] = x;
-	}
-}
-
-void
-srand(long seed)
-{
-	lock(&lk);
-	isrand(seed);
-	unlock(&lk);
-}
-
-long
-lrand(void)
-{
-	ulong x;
-
-	lock(&lk);
-
-	rng_tap--;
-	if(rng_tap < rng_vec) {
-		if(rng_feed == 0) {
-			isrand(1);
-			rng_tap--;
-		}
-		rng_tap += LEN;
-	}
-	rng_feed--;
-	if(rng_feed < rng_vec)
-		rng_feed += LEN;
-	x = (*rng_feed + *rng_tap) & MASK;
-	*rng_feed = x;
-
-	unlock(&lk);
-	return x;
-}