On 06/25/2014 12:27 PM, Brian Paul wrote: > GL_MAX_UNIFORM_BLOCK_SIZE is in bytes. A "component" is regarded as being > four bytes in size. So to compute the number of components, divide the > block size by 4. > > With this change, nvidia's driver passes the test.
I might be tempted to s/4/sizeof(float)/g, but either way Reviewed-by: Ian Romanick <[email protected]> > Found by Kai Ninomiya of VMware. > --- > tests/spec/arb_uniform_buffer_object/minmax.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/tests/spec/arb_uniform_buffer_object/minmax.c > b/tests/spec/arb_uniform_buffer_object/minmax.c > index 03b254c..e5cd81a 100644 > --- a/tests/spec/arb_uniform_buffer_object/minmax.c > +++ b/tests/spec/arb_uniform_buffer_object/minmax.c > @@ -81,9 +81,9 @@ piglit_init(int argc, char **argv) > glGetIntegerv(GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, &funiforms); > glGetIntegerv(GL_MAX_UNIFORM_BLOCK_SIZE, &blocksize); > piglit_test_min_int(GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS, > - vblocks * blocksize + vuniforms); > + vblocks * blocksize / 4 + vuniforms); > piglit_test_min_int(GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS, > - fblocks * blocksize + funiforms); > + fblocks * blocksize / 4 + funiforms); > if (gs) { > if (piglit_get_gl_version() >= 31) { > glGetIntegerv(GL_MAX_GEOMETRY_UNIFORM_BLOCKS, &gblocks); > @@ -91,7 +91,7 @@ piglit_init(int argc, char **argv) > glGetIntegerv(GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, &guniforms); > > piglit_test_min_int(GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS, > - gblocks * blocksize + guniforms); > + gblocks * blocksize / 4 + guniforms); > } > > piglit_test_min_int(GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT, 1); > _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
