Lines 673-684
Link Here
|
673 |
asm("rdtsc" : "=A" (tick)); |
673 |
asm("rdtsc" : "=A" (tick)); |
674 |
#elif defined (__SUNPRO_CC) || defined( __sparc__ ) |
674 |
#elif defined (__SUNPRO_CC) || defined( __sparc__ ) |
675 |
tick = gethrtime(); |
675 |
tick = gethrtime(); |
676 |
#else /* #elif defined(__MACH__) */ |
676 |
#elif defined(__MACH__) |
677 |
int fd=open("/dev/random",O_RDONLY); |
677 |
int fd=open("/dev/random",O_RDONLY); |
678 |
read(fd,&tick,sizeof(tick)); |
678 |
read(fd,&tick,sizeof(tick)); |
679 |
closesocket(fd); |
679 |
closesocket(fd); |
680 |
//#else |
680 |
#else |
681 |
//# error Need some way to seed the random number generator |
681 |
# error Need some way to seed the random number generator |
682 |
#endif |
682 |
#endif |
683 |
int seed = int(tick); |
683 |
int seed = int(tick); |
684 |
#ifdef WIN32 |
684 |
#ifdef WIN32 |