OpenCores
URL https://opencores.org/ocsvn/plasma/plasma/trunk

Subversion Repositories plasma

[/] [plasma/] [trunk/] [kernel/] [libc.c] - Diff between revs 352 and 379

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 352 Rev 379
Line 181... Line 181...
{
{
   return n>=0 ? n : -n;
   return n>=0 ? n : -n;
}
}
 
 
 
 
static uint32 Rand1=0x1f2bcda3, Rand2=0xdeafbeef, Rand3=0xc5134306;
static uint32 Rand1=0x1f2bcda3;
int rand(void)
int rand(void)
{
{
   int shift;
   Rand1 = 1664525 * Rand1 + 1013904223;  //from D.E. Knuth and H.W. Lewis
   Rand1 += 0x13423123 + Rand2;
 
   Rand2 += 0x2312fdea + Rand3;
 
   Rand3 += 0xf2a12de1;
 
   shift = Rand3 & 31;
 
   Rand1 = (Rand1 << (32 - shift)) | (Rand1 >> shift);
 
   Rand3 ^= Rand1;
 
   shift = (Rand3 >> 8) & 31;
 
   Rand2 = (Rand2 << (32 - shift)) | (Rand2 >> shift);
 
   return Rand1;
   return Rand1;
}
}
 
 
 
 
void srand(unsigned int seed)
void srand(unsigned int seed)

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.