Patches 2 & 3, sso: Add utility function to select the GLSL version sso: Use pick_a_glsl_version utility function Reviewed-by: Jordan Justen <[email protected]>
On Sun, Apr 27, 2014 at 2:12 PM, Ian Romanick <[email protected]> wrote: > From: Ian Romanick <[email protected]> > > Existing tests had this open-coded. > > Signed-off-by: Ian Romanick <[email protected]> > --- > tests/spec/arb_separate_shader_objects/400-combinations.c | 13 > ++----------- > .../ActiveShaderProgram-invalid-program.c | 8 ++------ > tests/spec/arb_separate_shader_objects/CMakeLists.gl.txt | 6 +++--- > .../arb_separate_shader_objects/rendezvous_by_location.c | 13 > ++----------- > 4 files changed, 9 insertions(+), 31 deletions(-) > > diff --git a/tests/spec/arb_separate_shader_objects/400-combinations.c > b/tests/spec/arb_separate_shader_objects/400-combinations.c > index 388536f..8278983 100644 > --- a/tests/spec/arb_separate_shader_objects/400-combinations.c > +++ b/tests/spec/arb_separate_shader_objects/400-combinations.c > @@ -40,6 +40,7 @@ > * (with --by-location command line parameter). > */ > #include "piglit-util-gl-common.h" > +#include "sso-common.h" > > /** > * Size of each square that will be drawn. > @@ -199,9 +200,6 @@ piglit_init(int argc, char **argv) > unsigned i; > unsigned j; > unsigned idx; > - bool es; > - int glsl_major; > - int glsl_minor; > const char *location; > const char *vertex_name; > const char *fragment_name; > @@ -227,14 +225,7 @@ piglit_init(int argc, char **argv) > fragment_name = "in_color"; > } > > - /* Some NVIDIA drivers have issues with layout qualifiers, 'in' > - * keywords, and 'out' keywords in "lower" GLSL versions. If the > - * driver supports GLSL >= 1.40, use 1.40. Otherwise, pick the > - * highest version that the driver supports. > - */ > - piglit_get_glsl_version(&es, &glsl_major, &glsl_minor); > - glsl_version = ((glsl_major * 100) + glsl_minor) >= 140 > - ? 140 : ((glsl_major * 100) + glsl_minor); > + glsl_version = pick_a_glsl_version(); > > /* Generate the vertex shader programs. Each vertex shader is > * hardcoded to select a specific column on the display. > diff --git > a/tests/spec/arb_separate_shader_objects/ActiveShaderProgram-invalid-program.c > > b/tests/spec/arb_separate_shader_objects/ActiveShaderProgram-invalid-program.c > index 5f8b696..fa15f93 100644 > --- > a/tests/spec/arb_separate_shader_objects/ActiveShaderProgram-invalid-program.c > +++ > b/tests/spec/arb_separate_shader_objects/ActiveShaderProgram-invalid-program.c > @@ -40,6 +40,7 @@ > */ > > #include "piglit-util-gl-common.h" > +#include "sso-common.h" > > PIGLIT_GL_TEST_CONFIG_BEGIN > > @@ -68,16 +69,11 @@ piglit_init(int argc, char **argv) > GLuint unlinked_prog; > GLuint shader; > unsigned glsl_version; > - bool es; > - int glsl_major; > - int glsl_minor; > char *source; > > piglit_require_extension("GL_ARB_separate_shader_objects"); > > - piglit_get_glsl_version(&es, &glsl_major, &glsl_minor); > - glsl_version = ((glsl_major * 100) + glsl_minor) >= 140 > - ? 140 : ((glsl_major * 100) + glsl_minor); > + glsl_version = pick_a_glsl_version(); > > glGenProgramPipelines(1, &pipe); > pass = piglit_check_gl_error(GL_NO_ERROR) && pass; > diff --git a/tests/spec/arb_separate_shader_objects/CMakeLists.gl.txt > b/tests/spec/arb_separate_shader_objects/CMakeLists.gl.txt > index b8ac47d..f0dcf01 100644 > --- a/tests/spec/arb_separate_shader_objects/CMakeLists.gl.txt > +++ b/tests/spec/arb_separate_shader_objects/CMakeLists.gl.txt > @@ -9,13 +9,13 @@ link_libraries ( > ${OPENGL_glu_LIBRARY} > ) > > -piglit_add_executable (arb_separate_shader_object-400-combinations > 400-combinations.c) > +piglit_add_executable (arb_separate_shader_object-400-combinations > 400-combinations.c sso-common.c) > piglit_add_executable (arb_separate_shader_object-active-sampler-conflict > active-sampler-conflict.c) > -piglit_add_executable > (arb_separate_shader_object-ActiveShaderProgram-invalid-program > ActiveShaderProgram-invalid-program.c) > +piglit_add_executable > (arb_separate_shader_object-ActiveShaderProgram-invalid-program > ActiveShaderProgram-invalid-program.c sso-common.c) > piglit_add_executable (arb_separate_shader_object-GetProgramPipelineiv > GetProgramPipelineiv.c) > piglit_add_executable (arb_separate_shader_object-IsProgramPipeline > IsProgramPipeline.c) > piglit_add_executable (arb_separate_shader_object-mix_pipeline_useprogram > mix_pipeline_useprogram.c) > piglit_add_executable (arb_separate_shader_object-ProgramUniform-coverage > ProgramUniform-coverage.c) > -piglit_add_executable (arb_separate_shader_object-rendezvous_by_location > rendezvous_by_location.c) > +piglit_add_executable (arb_separate_shader_object-rendezvous_by_location > rendezvous_by_location.c sso-common.c) > piglit_add_executable > (arb_separate_shader_object-UseProgramStages-non-separable > UseProgramStages-non-separable.c) > piglit_add_executable (arb_separate_shader_object-ValidateProgramPipeline > ValidateProgramPipeline.c) > diff --git a/tests/spec/arb_separate_shader_objects/rendezvous_by_location.c > b/tests/spec/arb_separate_shader_objects/rendezvous_by_location.c > index 4193ea5..b44211c 100644 > --- a/tests/spec/arb_separate_shader_objects/rendezvous_by_location.c > +++ b/tests/spec/arb_separate_shader_objects/rendezvous_by_location.c > @@ -42,6 +42,7 @@ > * shader. > */ > #include "piglit-util-gl-common.h" > +#include "sso-common.h" > > PIGLIT_GL_TEST_CONFIG_BEGIN > > @@ -140,9 +141,6 @@ void piglit_init(int argc, char **argv) > GLuint vs_prog; > GLuint fs_prog_same_declaration_order; > GLuint fs_prog_same_location_order; > - bool es; > - int glsl_major; > - int glsl_minor; > char *source; > > piglit_require_vertex_shader(); > @@ -150,14 +148,7 @@ void piglit_init(int argc, char **argv) > piglit_require_extension("GL_ARB_separate_shader_objects"); > piglit_require_extension("GL_ARB_explicit_attrib_location"); > > - /* Some NVIDIA drivers have issues with layout qualifiers, 'in' > - * keywords, and 'out' keywords in "lower" GLSL versions. If the > - * driver supports GLSL >= 1.40, use 1.40. Otherwise, pick the > - * highest version that the driver supports. > - */ > - piglit_get_glsl_version(&es, &glsl_major, &glsl_minor); > - glsl_version = ((glsl_major * 100) + glsl_minor) >= 140 > - ? 140 : ((glsl_major * 100) + glsl_minor); > + glsl_version = pick_a_glsl_version(); > > asprintf(&source, vs_code_template, glsl_version); > vs_prog = glCreateShaderProgramv(GL_VERTEX_SHADER, 1, > -- > 1.8.1.4 > > _______________________________________________ > Piglit mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/piglit _______________________________________________ Piglit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/piglit
