[Piglit] [PATCH 7/8] util/wfl: Remove hacks for compat contexts
Chad Versace
chad.versace at linux.intel.com
Thu Dec 19 18:12:38 PST 2013
When a test requested a compatibility context, Piglit did not pass the
context version to Waffle. Instead, Piglit requested an unversioned
compatibility context and then verified with piglit_get_gl_version()
that the actual version was >= requested version.
This hack prevented Piglit from creating forward-compatible contexts,
because, according to thw EGL_KHR_create_context spec, "requesting
a forward-compatible context for OpenGL versions less than
3.0 will generate an error."
Remove the hack. Pass the requested context version to Waffle.
Signed-off-by: Chad Versace <chad.versace at linux.intel.com>
---
.../piglit-framework-gl/piglit_wfl_framework.c | 23 ++++++----------------
1 file changed, 6 insertions(+), 17 deletions(-)
diff --git a/tests/util/piglit-framework-gl/piglit_wfl_framework.c b/tests/util/piglit-framework-gl/piglit_wfl_framework.c
index b5c2b0c..0d09032 100644
--- a/tests/util/piglit-framework-gl/piglit_wfl_framework.c
+++ b/tests/util/piglit-framework-gl/piglit_wfl_framework.c
@@ -260,22 +260,15 @@ make_config_attrib_list(const struct piglit_gl_test_config *test_config,
case CONTEXT_GL_COMPAT:
assert(test_config->supports_gl_compat_version);
- /* Don't supply a GL version to Waffle. When no
- * version is specified, GLX and EGL should return the
- * latest supported version. Later, we compare the
- * actual version, as reported by glGetString, against
- * the version required by the test.
- *
- * If a version != 1.0 is given to
- * waffle_choose_config, then a code path in waffle is
- * taken that requires GLX_ARB_create_context or
- * EGL_KHR_create_context. This trick enables tests
- * for which supports_gl_compat_version > 1.0 to run
- * on drivers that lack those extensions.
- */
i = 0;
head_attrib_list[i++] = WAFFLE_CONTEXT_API;
head_attrib_list[i++] = WAFFLE_CONTEXT_OPENGL;
+
+ head_attrib_list[i++] = WAFFLE_CONTEXT_MAJOR_VERSION;
+ head_attrib_list[i++] = test_config->supports_gl_compat_version / 10;
+
+ head_attrib_list[i++] = WAFFLE_CONTEXT_MINOR_VERSION;
+ head_attrib_list[i++] = test_config->supports_gl_compat_version % 10;
break;
case CONTEXT_GL_ES: {
@@ -344,10 +337,6 @@ check_gl_version(const struct piglit_gl_test_config *test_config,
*/
return true;
case CONTEXT_GL_COMPAT: {
- /* Piglit did not supply a version to
- * waffle_config_choose(). We must check the context's
- * actual version.
- */
int actual_version = piglit_get_gl_version();
if (actual_version >= test_config->supports_gl_compat_version)
return true;
--
1.8.4
More information about the Piglit
mailing list