Mesa (master): translate_test: fix compilation on non-POSIX platforms
Luca Barbieri
lb at kemper.freedesktop.org
Thu Aug 12 20:10:27 UTC 2010
Module: Mesa
Branch: master
Commit: b9abe7f62c09c0395214b9447032323b3846b2cf
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b9abe7f62c09c0395214b9447032323b3846b2cf
Author: Luca Barbieri <luca at luca-barbieri.com>
Date: Thu Aug 12 22:07:37 2010 +0200
translate_test: fix compilation on non-POSIX platforms
Use a kludgy function based on rand() instead of drand48()
---
src/gallium/tests/unit/translate_test.c | 24 +++++++++++++++++++-----
1 files changed, 19 insertions(+), 5 deletions(-)
diff --git a/src/gallium/tests/unit/translate_test.c b/src/gallium/tests/unit/translate_test.c
index a6f0f54..960c70f 100644
--- a/src/gallium/tests/unit/translate_test.c
+++ b/src/gallium/tests/unit/translate_test.c
@@ -30,6 +30,20 @@
#include <util/u_cpu_detect.h>
#include <rtasm/rtasm_cpu.h>
+/* don't use this for serious use */
+static double rand_double()
+{
+ const double rm = (double)RAND_MAX + 1;
+ double div = 1;
+ double v = 0;
+ for(unsigned i = 0; i < 4; ++i)
+ {
+ div *= rm;
+ v += (double)rand() / div;
+ }
+ return v;
+}
+
int main(int argc, char** argv)
{
struct translate *(*create_fn)(const struct translate_key *key) = 0;
@@ -129,17 +143,17 @@ int main(int argc, char** argv)
key.element[0].type = TRANSLATE_ELEMENT_NORMAL;
key.element[0].instance_divisor = 0;
- srand48(4359025);
+ srand(4359025);
/* avoid negative values that work badly when converted to unsigned format*/
- for (i = 0; i < buffer_size / sizeof(unsigned); ++i)
- ((unsigned*)byte_buffer)[i] = mrand48() & 0x7f7f7f7f;
+ for (i = 0; i < buffer_size; ++i)
+ byte_buffer[i] = rand() & 0x7f7f7f7f;
for (i = 0; i < buffer_size / sizeof(float); ++i)
- float_buffer[i] = (float)drand48();
+ float_buffer[i] = (float)rand_double();
for (i = 0; i < buffer_size / sizeof(double); ++i)
- double_buffer[i] = drand48();
+ double_buffer[i] = rand_double();
for (output_format = 1; output_format < PIPE_FORMAT_COUNT; ++output_format)
{
More information about the mesa-commit
mailing list