arb_explicit_attrib_location: Remove unnecessary dependence on GL_ARB_blend_func_extended

Reviewed-by: Brian Paul <brianp@vmware.com>
piglit: Fix tegra build break.

egl_khr_fence_sync.c:1106: undefined reference to `eglCreateSyncKHR'
egl_khr_fence_sync.c:1113: undefined reference to `eglClientWaitSyncKHR'
egl_khr_fence_sync.c:1122: undefined reference to `eglDestroySyncKHR'
egl_khr_fence_sync.c:1066: undefined reference to `eglCreateSyncKHR'

BUG=chromium:389430
TEST=emerge-daisy/link/nyan_big piglt
Reviewed-by: Chad Versace <chad.versace@linux.intel.com>
arb_texture_view: verify that 2darray can be sampled as cube

Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
arb_texture_view: verify that 2d array can be sampled as cube array

Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
spec/ARB_copy_image: Add a simple ARB_copy_image test

This is a simple sanity test for the ARB_copy_image extension.  This tests
tests the different combinations of textures and renderbuffers for intputs
and outputs to glCopyTexSubImage.

v2: Incorperated comments from Brian Paul
v3: Also copy from the texture back onto itself to test yet another path

Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com>
spec/ARB_copy_image: Add a test for testing different texture target combinations

This tests all of the possible different combinations of texture targets
such as GL_TEXTURE_2D, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_1D_ARRAY, etc.  The
only targets not tested are GL_TEXTURE_2D_MULTISAMPLE and
GL_TEXTURE_2D_MULTISAMPLE_ARRAY but those are special.

v2: Incorperated comments from Brian Paul and Dylan Baker

Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com>
util: Add a function for uploading multisample textures

One of the greatest difficulties in properly testing multisample textures
is actually generating and working with reference images.  This adds a nice
little util function that allows you to upload a multisampled image as if
you were using glTexImage3D.

Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com>
spec/ARB_copy_image: Test different combinations of texture formats

This tests glCopyTexSubImage on all of the allowed combinations of internal
texture formats.  This also tests multisample textures.

v2: Incorperated comments from Brian Paul and Dylan Baker
v3: Added multisample support and more formats
v4: Properly handle subtests that skip or warn instead of just pass/fail
v5: Test copying between different portions of the same image

Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com>
spec/ARB_copy_image: Add an api_errors test
arb_texture_view: Fix bogus probe rects

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
arb_gpu_shader_fp64: test vector insert and extract operations

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
arb_gpu_shader_fp64: test constructor conversions with matrix

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
arb_explicit_uniform_location: test explicit location for a sampler

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Chris Forbes <chrisf@ijw.co.nz>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82921
results.py: Add abstract backend class

This patch adds an abc for Backends, redefining the API that backends
(currently only JSONWriter) produce. In subsequent patches JSONWriter
will be adapted into a Backend derived class and one additional Backend
will be added, for writing JUnit xml.

This is a fairly substantial change, and deserves some explanation. At
Intel we are deploying Jenkins servers to assist our development team,
and piglit's native JSON format isn't supported by Jenkins. VMware
already uses JUnit to interface with Jenkins, but does so by converting
the native piglit JSON into JUnit, there are a couple of problems with
this solution. The biggest problem is that it requires extra time to
convert from one format to another, the second problem is that the
script used to do the conversion is not Python3 ready, or even close,
which is step forward that Intel would like to make. By converting
piglit to have an abstracted backend layer we remove the need to convert
piglit's JSON into another format, and we remove another roadblock
toward python3.

The goal of the Backend class it to present a fairly high level API that
is "just enough" API for piglit's use, not a feature complete general
purpose API as JSONWriter provides. This will make writing backends
simpler.

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
python: Don't call methods that are not equivalent to Backend API externally

This patch removes external calls to JSONWriter methods that are not
part of the Backend API (or closely equivalent), since those methods
will be changed from public to protected.

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
results.py: Change JSONWriter methods to be more like Backend

This changes initialize_json and close_json to be more like the
constructor and finalize methods of Backend.

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
results.py: Make fsync a keyword argument

Since fsync is not relevant to all backends, changing it to file_fsync
makes it fit better into the Backend API

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
results.py: Change JSONWriter to take a string rather than file object

Since not every backend wants a file type not passing one is much nicer
than passing a file. In addition, it removes code duplication between
run and resume.

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
results.py: Merge initialize_json into constructor

This moves the Initial metadata write into the constructor, like Backend
expects.

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
results.py: Add write_test method

This is the test writing method provided by Backend.

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>