If PIGLIT_NO_FAST_SKIP is defined, the FastSkip/FastSkipMixin classes are no-ops. Therefore, the GL/GLSL version info collected in ShaderTest::__init()__ isn't used. Skipping the shader test parsing is a big win for reducing start-up time on Windows. There's not much difference either way on Linux. --- framework/test/shader_test.py | 30 +++++++++++++++++++----------- 1 file changed, 19 insertions(+), 11 deletions(-)
diff --git a/framework/test/shader_test.py b/framework/test/shader_test.py index 7f3d876..a3fb8e2 100644 --- a/framework/test/shader_test.py +++ b/framework/test/shader_test.py @@ -155,17 +155,25 @@ class ShaderTest(FastSkipMixin, PiglitBaseTest): """ def __init__(self, filename): - parser = Parser(filename) - parser.parse() - - super(ShaderTest, self).__init__( - [parser.prog, parser.filename], - run_concurrent=True, - gl_required=parser.gl_required, - gl_version=parser.gl_version, - gles_version=parser.gles_version, - glsl_version=parser.glsl_version, - glsl_es_version=parser.glsl_es_version) + if bool(os.environ.get('PIGLIT_NO_FAST_SKIP', False)): + # No need to parse the shader test file if we've disabled + # the FastSkip feature. + super(ShaderTest, self).__init__( + ['shader_runner', filename], + run_concurrent=True,) + else: + parser = Parser(filename) + parser.parse() + + super(ShaderTest, self).__init__( + [parser.prog, parser.filename], + run_concurrent=True, + gl_required=parser.gl_required, + gl_version=parser.gl_version, + gles_version=parser.gles_version, + glsl_version=parser.glsl_version, + glsl_es_version=parser.glsl_es_version) + @PiglitBaseTest.command.getter def command(self): -- 1.9.1 _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/piglit