Ilia Mirkin <imir...@alum.mit.edu> writes: > On Thu, Apr 26, 2018 at 1:01 PM, Eric Anholt <e...@anholt.net> wrote: >> Fixes failure on VC5 because we would sign-extend 16ui. Sampling ui >> with isampler is undefined according to the table under "8.7 Texture >> Lookup Functions" in the 1.30 spec. >> --- >> .../texture-integer-glsl130.c | 40 ++++++++++++------- >> 1 file changed, 26 insertions(+), 14 deletions(-) >> >> diff --git a/tests/spec/ext_texture_integer/texture-integer-glsl130.c >> b/tests/spec/ext_texture_integer/texture-integer-glsl130.c >> index 2247207173a1..06332b66f2cf 100644 >> --- a/tests/spec/ext_texture_integer/texture-integer-glsl130.c >> +++ b/tests/spec/ext_texture_integer/texture-integer-glsl130.c >> @@ -44,7 +44,7 @@ static const char *TestName = "texture-integer"; >> static GLint TexWidth = 16, TexHeight = 16; >> static GLuint Texture; >> >> -static GLint BiasUniform = -1, TexUniform = -1; >> +static GLint BiasUniform[2] = {-1, -1}, TexUniform[2] = {-1, -1}; >> >> struct format_info >> { >> @@ -131,18 +131,28 @@ static const struct format_info rgb10_formats[] = { >> { GL_RGB10_A2UI, GL_BGRA_INTEGER_EXT, 10, GL_TRUE }, >> }; >> >> -static const char *FragShaderText = >> +/* The programs will be indexed by whether the texture is signed or not. */ >> +static const char *FragShaderText[2] = { >> "#version 130\n" >> "uniform vec4 bias; \n" >> - "uniform isampler2D tex; \n" >> + "uniform usampler2D tex; \n" >> "void main() \n" >> "{ \n" >> " vec4 t = vec4(texture(tex, gl_TexCoord[0].xy)); \n" >> " gl_FragColor = t + bias; \n" >> - "} \n"; >> + "} \n", >> >> -static GLuint Program; >> + "#version 130\n" >> + "uniform vec4 bias; \n" >> + "uniform isampler2D tex; \n" >> + "void main() \n" >> + "{ \n" >> + " vec4 t = vec4(texture(tex, gl_TexCoord[0].xy)); \n" >> + " gl_FragColor = t + bias; \n" >> + "} \n", >> +}; >> >> +static GLuint Program[2]; >> >> static int >> get_max_val(const struct format_info *info) >> @@ -440,12 +450,14 @@ test_format(const struct format_info *info) >> ; >> } >> >> + glUseProgram(Program[info->Signed]); >> + >> /* compute, set test bias */ >> bias[0] = expected[0] - value[0]; >> bias[1] = expected[1] - value[1]; >> bias[2] = expected[2] - value[2]; >> bias[3] = expected[3] - value[3]; >> - glUniform4fv(BiasUniform, 1, bias); >> + glUniform4fv(BiasUniform[info->Signed], 1, bias); > > I'd feel very slightly better if this said BiasUniform[!!info->Signed] > or some variant thereof (GL_TRUE is 1, but ... who knows). And same > for Program[] above. > > Reviewed-by: Ilia Mirkin <imir...@alum.mit.edu>
No thanks. true has always been 1, and won't change. !! just makes things more confusing.
signature.asc
Description: PGP signature
_______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/piglit