Sanchayan Maity
0f4b39775c
During the last commit of splash2 benchmark it seems before committing when we ran "make clean", it effectively undid what the patch at below link did http://www.capsl.udel.edu/splash/Download.html Fix this since without this it is not possible to build the arcane splash2 benchmark.
71 lines
2 KiB
C
71 lines
2 KiB
C
/*************************************************************************/
|
|
/* */
|
|
/* Copyright (c) 1994 Stanford University */
|
|
/* */
|
|
/* All rights reserved. */
|
|
/* */
|
|
/* Permission is given to use, copy, and modify this software for any */
|
|
/* non-commercial purpose as long as this copyright notice is not */
|
|
/* removed. All other uses, including redistribution in whole or in */
|
|
/* part, are forbidden without prior written permission. */
|
|
/* */
|
|
/* This software is provided with absolutely no warranty and no */
|
|
/* support. */
|
|
/* */
|
|
/*************************************************************************/
|
|
|
|
EXTERN_ENV
|
|
#define global extern
|
|
|
|
#include "stdinc.h"
|
|
|
|
#define HZ 60.0
|
|
#define MULT 1103515245
|
|
#define ADD 12345
|
|
#define MASK (0x7FFFFFFF)
|
|
#define TWOTO31 2147483648.0
|
|
|
|
local long A = 1;
|
|
local long B = 0;
|
|
local long randx = 1;
|
|
local long lastrand; /* the last random number */
|
|
|
|
/*
|
|
* XRAND: generate floating-point random number.
|
|
*/
|
|
|
|
double xrand(double xl, double xh)
|
|
{
|
|
return (xl + (xh - xl) * prand());
|
|
}
|
|
|
|
void pranset(long seed)
|
|
{
|
|
A = 1;
|
|
B = 0;
|
|
randx = (A*seed+B) & MASK;
|
|
A = (MULT * A) & MASK;
|
|
B = (MULT*B + ADD) & MASK;
|
|
}
|
|
|
|
double prand()
|
|
/*
|
|
Return a random double in [0, 1.0)
|
|
*/
|
|
{
|
|
lastrand = randx;
|
|
randx = (A*randx+B) & MASK;
|
|
return((double)lastrand/TWOTO31);
|
|
}
|
|
|
|
/*
|
|
* CPUTIME: compute CPU time in min.
|
|
*/
|
|
double cputime()
|
|
{
|
|
struct tms buffer;
|
|
|
|
if (times(&buffer) == (clock_t)-1)
|
|
error("times() call failed\n");
|
|
return (buffer.tms_utime / (60.0 * HZ));
|
|
}
|