From 4400334ffbffba2462d7e049c79907ff0b148a52 Mon Sep 17 00:00:00 2001 From: Matt Turner Date: Tue, 11 Nov 2008 23:15:13 +0000 Subject: -- Move randnum defines to nbench0.h -- Clean misc.c nicely git-svn-id: svn://mattst88.com/svn/cleanbench/trunk@7 0d43b9a7-5ab2-4d7b-af9d-f64450cef757 --- misc.c | 123 ++++++++++++++++------------------------------------------------- 1 file changed, 29 insertions(+), 94 deletions(-) (limited to 'misc.c') diff --git a/misc.c b/misc.c index aca70bc..7d2620f 100644 --- a/misc.c +++ b/misc.c @@ -1,30 +1,5 @@ - -/* -** misc.c -** BYTEmark (tm) -** BYTE's Native Mode Benchmarks -** Rick Grehan, BYTE Magazine -** DISCLAIMER -** The source, executable, and documentation files that comprise -** the BYTEmark benchmarks are made available on an "as is" basis. -** This means that we at BYTE Magazine have made every reasonable -** effort to verify that the there are no errors in the source and -** executable code. We cannot, however, guarantee that the programs -** are error-free. Consequently, McGraw-HIll and BYTE Magazine make -** no claims in regard to the fitness of the source code, executable -** code, and documentation of the BYTEmark. -** Furthermore, BYTE Magazine, McGraw-Hill, and all employees -** of McGraw-Hill cannot be held responsible for any damages resulting -** from the use of this code or the results obtained from using -** this code. -*/ - -#include -#include "misc.h" - -/*********************************************************** -** MISCELLANEOUS BUT OTHERWISE NECESSARY ROUTINES ** -***********************************************************/ +#include +#include /**************************** ** RANDOM NUMBER GENERATOR ** @@ -35,52 +10,6 @@ ** random numbers. */ -/**************************** -* randwc() * -***************************** -** Returns signed long random modulo num. -*/ -/* -long randwc(long num) -{ - return(randnum(0L)%num); -} -*/ -/* -** Returns signed 32-bit random modulo num. -*/ -int32_t randwc(int32_t num) -{ - return(randnum((int32_t)0)%num); -} - -/*************************** -** abs_randwc() ** -**************************** -** Same as randwc(), only this routine returns only -** positive numbers. -*/ -/* -unsigned long abs_randwc(unsigned long num) -{ -long temp; - -temp=randwc(num); -if(temp<0) temp=0L-temp; - -return((unsigned long)temp); -} -*/ -uint32_t abs_randwc(uint32_t num) -{ -int32_t temp; /* Temporary storage */ - -temp=randwc(num); -if(temp<0) temp=(int32_t)0-temp; - -return((uint32_t)temp); -} - /**************************** * randnum() * ***************************** @@ -89,32 +18,38 @@ return((uint32_t)temp); ** If val==0, returns next member of sequence. ** val!=0, restart generator. */ -/* -long randnum(long lngval) -{ - register long interm; - static long randw[2] = { 13L , 117L }; - if (lngval!=0L) - { randw[0]=13L; randw[1]=117L; } +int32_t randnum(int32_t val) { + static int32_t randw[2] = { 13 , 117 }; + int32_t interm; - interm=(randw[0]*254754L+randw[1]*529562L)%999563L; - randw[1]=randw[0]; - randw[0]=interm; + if (val != 0) { + randw[0] = 13; + randw[1] = 117; + } + + interm = (randw[0]* (int32_t)254754 + randw[1]*(int32_t)529562) % (int32_t)999563; + randw[1] = randw[0]; + randw[0] = interm; return(interm); } -*/ -int32_t randnum(int32_t lngval) -{ - register int32_t interm; - static int32_t randw[2] = { (int32_t)13 , (int32_t)117 }; - if (lngval!=(int32_t)0) - { randw[0]=(int32_t)13; randw[1]=(int32_t)117; } +/**************************** +* randwc() * +***************************** +** Returns signed 32-bit random modulo num. +*/ +int32_t randwc(int32_t num) { + return(randnum(0) % num); +} - interm=(randw[0]*(int32_t)254754+randw[1]*(int32_t)529562)%(int32_t)999563; - randw[1]=randw[0]; - randw[0]=interm; - return(interm); +/*************************** +** abs_randwc() ** +**************************** +** Same as randwc(), only this routine returns only +** positive numbers. +*/ +uint32_t abs_randwc(uint32_t num) { + return abs(randwc(num)); } -- cgit v1.2.3