[Piglit] [PATCH 1/1] Alter shader_runner GL/GLSL ES version requirement syntax.

Stuart Abercrombie sabercrombie at chromium.org
Tue Jan 15 16:36:03 PST 2013

Apologies for the poorly constructed patch email.

My hope is to ban explicit #version strings entirely, because
otherwise we'll end up with tests that needlessly break with certain
APIs.  The simplest way to avoid unnecessary #version strings
appearing is to make shader_runner reject them all.

That said, I agree we want sanity tests to be able to specify a
particular GLSL version.  My original change introduced a new
[require] element solely specifying the #version to be inserted, but
we eventually settled on using the existing GLSL element and
restricting the comparison operator to >=.  The theory is that this
simultaneously specifies the minimum GLSL implementation version
required by the test and supplies the version to be inserted with the
#version directive.  If there is a case where these need to be
different then this does break down and we need some new syntax, but
the assumption was that they would always be the same.

So I'm claiming the existing GLSL >= syntax covers the sanity test
case and everything else too.

I wasn't aware of the GL_ARB_ES..._compatibility extension testing
requirements.  That's useful to know.  I concede that
illegal/nonsensical combinations could arise from certain GL / GLSL
version requirements, but I was assuming we would generally have sane
.shader_test files.  It's not as if shader_runner as it stands catches
everything like that.

On the trailing garbage issue, I actually had test code in there to
check for this.  I can put it back in.  It looks as if the parser
could be tightened up in various places.


More information about the Piglit mailing list