[llvm-commits] [test-suite] r42657 - /test-suite/trunk/SingleSource/Benchmarks/McGill/misr.c
Anton Korobeynikov
asl at math.spbu.ru
Fri Oct 5 15:39:24 PDT 2007
Author: asl
Date: Fri Oct 5 17:39:24 2007
New Revision: 42657
URL: http://llvm.org/viewvc/llvm-project?rev=42657&view=rev
Log:
Fix misr on mingw32
Modified:
test-suite/trunk/SingleSource/Benchmarks/McGill/misr.c
Modified: test-suite/trunk/SingleSource/Benchmarks/McGill/misr.c
URL: http://llvm.org/viewvc/llvm-project/test-suite/trunk/SingleSource/Benchmarks/McGill/misr.c?rev=42657&r1=42656&r2=42657&view=diff
==============================================================================
--- test-suite/trunk/SingleSource/Benchmarks/McGill/misr.c (original)
+++ test-suite/trunk/SingleSource/Benchmarks/McGill/misr.c Fri Oct 5 17:39:24 2007
@@ -40,6 +40,11 @@
#define TRUE 1
#define FALSE 0
+#ifdef __MINGW32__
+# define seed48(x) srand(x)
+# define lrand48() ((rand() << 16) ^ (rand()))
+#endif
+
int reg_len;
typedef struct cells {
@@ -217,7 +222,7 @@
misr_type *temp;
int different, savef_free, savefaulty;
int rem, quot, h, i, j;
- long rand;
+ long randv;
double randprob;
different = FALSE;
@@ -231,7 +236,7 @@
savefaulty = 0;
for (i=0; i<quot; i++)
{
- rand = lrand48();
+ randv = lrand48();
for (j=0; j<31; j++)
{
if (structure[i*31 + j] == '1')
@@ -239,15 +244,15 @@
savef_free += temp->f_free;
savefaulty += temp->faulty;
}
- temp->f_free = ((temp->next->f_free + rand) & BIN_MASK);
+ temp->f_free = ((temp->next->f_free + randv) & BIN_MASK);
randprob = ((double)(lrand48() % 1000) / 1000);
- if (prob > randprob) rand ^= BIN_MASK;
- temp->faulty = ((temp->next->faulty + rand) & BIN_MASK);
+ if (prob > randprob) randv ^= BIN_MASK;
+ temp->faulty = ((temp->next->faulty + randv) & BIN_MASK);
temp = temp->next;
- rand >>= 1;
+ randv >>= 1;
}
}
- rand = lrand48();
+ randv = lrand48();
for (j=0; j<rem; j++)
{
if (structure[quot*31 + j] == '1')
@@ -255,22 +260,23 @@
savef_free += temp->f_free;
savefaulty += temp->faulty;
}
- temp->f_free = ((temp->next->f_free + rand) & BIN_MASK);
- randprob = ((double)(lrand48() % 1000) / 1000); if (prob > randprob) rand ^= BIN_MASK;
- temp->faulty = ((temp->next->faulty + rand) & BIN_MASK);
+ temp->f_free = ((temp->next->f_free + randv) & BIN_MASK);
+ randprob = ((double)(lrand48() % 1000) / 1000);
+ if (prob > randprob) randv ^= BIN_MASK;
+ temp->faulty = ((temp->next->faulty + randv) & BIN_MASK);
temp = temp->next;
- rand >>= 1;
+ randv >>= 1;
}
- rand = lrand48();
+ randv = lrand48();
if (structure[reg_len - 1] == '1')
{
savef_free += temp->f_free;
savefaulty += temp->faulty;
}
- temp->f_free = ((savef_free + rand) & BIN_MASK);
+ temp->f_free = ((savef_free + randv) & BIN_MASK);
randprob = ((double)(lrand48() % 10000) / 10000);
- if (prob > randprob) rand ^= BIN_MASK;
- temp->faulty = ((savefaulty + rand) & BIN_MASK);
+ if (prob > randprob) randv ^= BIN_MASK;
+ temp->faulty = ((savefaulty + randv) & BIN_MASK);
temp = present;
}
More information about the llvm-commits
mailing list