Add a new test profile: gpu.tests.

Often, I make changes to Mesa which only affect tests that actually
execute on the GPU.  For such changes, there's no real benefit to
running compiler-only/front-end tests, such as glslparsertest and
asmparsertest files.  There are a lot of those, so cutting them can save
quite a bit of time when running Piglit.

Excluding glslparsertests via -x is tricky since a lot of them live way
down in the spec/... hierarchy.  It's much easier to filter them out by
checking for the GLSLParserTest class.

Essentially, gpu.tests is quick.tests minus compiler-only tests.  In the
future, we could probably remove API-only tests (though there are a much
smaller number of those and they run fairly quickly).

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
Add a test to ensure seamless cubemap filtering is initially disabled.

v2: Actually add the new test to all.tests.

Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
!UPSTREAM: Performance micro-benchmark for fast color clears.
util: Create generic piglit_draw_rect() functions.  TODO: rework.

This patch adds the following functions to piglit-util-gl-common:
- piglit_draw_rect_generic
- piglit_draw_rect_back_generic
- piglit_draw_rect_z_generic
- piglit_draw_rect_tex_generic

These functions are similar to corresponding functions without the
"_generic" suffix, except that instead of delivering vertex position
and texture coordinates to the vertex shader using glVertexPointer()
and glTexCoordPointer(), they deliver to the generic attributes
PIGLIT_ATTRIB_POS and PIGLIT_ATTRIB_TEX.  These functions use VBO's
and VAO's when available, so they may be used when testing core
contexts.

These functions also work with compatibility contexts and with all
GLES versions.  Since GLES1 doesn't support generic vertex attributes,
we fall back to using glVertexPointer() and glTexCoordPointer() in the
GLES1 case.

When building GLES tests, the behaviour of the new _generic functions
is for all intents and purposes the same as that of the pre-existing
non-generic functions.  So to avoid code duplication, the non-generic
functions simply call their generic equivalents in GLES builds.
WIP: start testing GS in/out types
WIP: fix shader_runner error reporting when vertex data included.
WIP: Basic test of GS input varyings
Geometry shaders: add a basic EndPrimitive() test.
WIP: large EndPrimitive test
shader_runner: Add missing newlines to error messages.

Certain shader error messages were missing newlines, leading to the
error message being concatenated on the same line with "PIGLIT:
{'result': 'fail' }".
!UPSTREAM: Start working on a function accuracy test
!UPSTREAM: more experimentation with function accuracy
!UPSTREAM: read-after-swap

This works but I'm not convinced it's a good idea yet.

TODO:
- Discuss on mailing list.
!UPSTREAM: hacks
Front buffer rendering sanity test
Hacks
Clean up fbo-sys-blit.c
!UPSTREAM: Experiment with a test of glClearBufferfv

TODO:
- File a bug (or make a fix) for this
- Test clearing back while front is bound
- Test clearing individual buffers of a multi-buffer fbo
!UPSTREAM: disable running "-auto" tests before window appears

Seems to be necessary to work around nVidia bugs.

TODO:
- Make an environmnet variable option for doing this.
texelFetch: Add geometry shader testing.