On 10 February 2018 at 11:33, Eric Anholt <e...@anholt.net> wrote: > Cc: Rhys Kidd <rhysk...@gmail.com> > Fixes: 4bf986274728 ("glsl/tests: Add UINT64 and INT64 types") >
Reviewed-by: Rhys Kidd <rhysk...@gmail.com> > --- > .../glsl/tests/uniform_initializer_utils.cpp | 22 > +++++++++++++++++++--- > 1 file changed, 19 insertions(+), 3 deletions(-) > > diff --git a/src/compiler/glsl/tests/uniform_initializer_utils.cpp > b/src/compiler/glsl/tests/uniform_initializer_utils.cpp > index 701c8ef4d091..0d7fa26752fd 100644 > --- a/src/compiler/glsl/tests/uniform_initializer_utils.cpp > +++ b/src/compiler/glsl/tests/uniform_initializer_utils.cpp > @@ -204,6 +204,22 @@ generate_array_data(void *mem_ctx, enum > glsl_base_type base_type, > val = new(mem_ctx) ir_constant(array_type, &values_for_array); > } > > +static uint64_t > +uint64_storage(union gl_constant_value *storage) > +{ > + uint64_t val; > + memcpy(&val, &storage->i, sizeof(uint64_t)); > + return val; > +} > + > +static uint64_t > +double_storage(union gl_constant_value *storage) > +{ > + double val; > + memcpy(&val, &storage->i, sizeof(double)); > + return val; > +} > + > /** > * Verify that the data stored for the uniform matches the initializer > * > @@ -252,13 +268,13 @@ verify_data(gl_constant_value *storage, unsigned > storage_array_size, > EXPECT_EQ(val->value.b[i] ? boolean_true : 0, storage[i].i); > break; > case GLSL_TYPE_DOUBLE: > - EXPECT_EQ(val->value.d[i], *(double *)&storage[i*2].i); > + EXPECT_EQ(val->value.d[i], double_storage(&storage[i*2])); > break; > case GLSL_TYPE_UINT64: > - EXPECT_EQ(val->value.u64[i], *(uint64_t *)&storage[i*2].i); > + EXPECT_EQ(val->value.u64[i], uint64_storage(&storage[i*2])); > break; > case GLSL_TYPE_INT64: > - EXPECT_EQ(val->value.i64[i], *(int64_t *)&storage[i*2].i); > + EXPECT_EQ(val->value.i64[i], uint64_storage(&storage[i*2])); > break; > case GLSL_TYPE_ATOMIC_UINT: > case GLSL_TYPE_STRUCT: > -- > 2.15.0 > >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev