ARB_gl_spirv full series

Submitted by apinheiro on Feb. 23, 2019, 11:44 p.m.

Details

Reviewer None
Submitted Feb. 23, 2019, 11:44 p.m.
Last Updated Feb. 25, 2019, 8:36 a.m.
Revision 1

Cover Letter(s)

Revision 1
      Hi,

so finally we finished the cleaning up of the piglit series for the
ARB_gl_spirv support that we send to Mesa some weeks ago (see [1]).

As with Mesa, we preferred to send all the patches we thought that
were finished, instead of keeping sending subseries with specific
sub-features.

Again, we want to thanks Nicolai Hähnle, that was the one that started
this work.

A high-level, TL;DR, overview of this series is the following one:

  * Patches 01-47: more barebone tests for ARB_gl_spirv, including
    more support on shader_runner if needed.

  * Patches 48-58: support for generation of ARB_gl_spirv tests. This
    includes direct generation of SPIR-V tests through templates, and
    support to transform existing GLSL tests from other specs, through
    glslang (using a wrapper).

  * Patches 59-63: minor clean-ups and fixes.

And now going more into detail:

  * Patches 01-02: support for GL_ACTIVE_UNIFORMS queries, plus
    modifying existing ARB_gl_spirv tests to include this query.

  * Patches 03-12: general (so both GLSL and SPIR-V) support for
    running UBO/SSBO tests without using any name, plus UBO/SSBO
    tests.

  * Patches 13-22: added further support for several shader
    introspection queries, like program interface queries, plus tests
    related with them. Here we have a lot of SPIRV ONLY tests (so
    tests that shouldn't be run on GLSL), because those are tests
    stripped of names, so several NAME related queries should return
    specific values defined by ARB_gl_spirv.

  * Patches 23-27: added transform feedback support, transform
    feedback related query object support, and the transform feedback
    tests. One could wonder why it was added, as it was avoided for a
    long time. On our experience, adding and editing tests was far
    easier as soon as we added support for xfb on shader_runner, even
    if it was really basic, and allowed to test several scenarios,
    that would be more complex by adding C-programs like on existing
    transform feedback tests.

  * Patches 28-47: miscellaneous barebone tests, and some basic extra
    support on shader runner. A little of everything.

  * Patches 48-50: added support to load SPIR-V from a external
    file. This would allow to have a GLSL test, and its SPIR-V
    equivalent on a different file. This was useful on the developing
    stages, in the case we wanted to reuse a existing GLSL test
    without modifying it too much.

  * Patches 51-53: added script that tries to generate a SPIR-V test,
    or tests, from a existing GLSL shader runner test, or set of
    tests. This script serves as a wrapper over glslang, providing
    extra features, like automatic skipping, mark existing tests,
    parse SPIR-V shader for locations, etc. The script can include the
    SPIR-V on the same test or generate a different file, on the same
    directory or on a mirror one (more about that below).

  * Patches 54-55: integration of previous script with CMake. By
    default OFF, as it adds a significant extra time while
    building. On this integration, the SPIR-V tests are generated to a
    new ("mirror") directory, as any other generated tests. As
    mentioned, the script by default generates the SPIR-V on the same
    directory, but that is only useful while developing. As a new
    source of generated tests, it makes more sense on a new
    directory. It is worth to note that it only converts tests from
    the 'tests' directory, but we tested also converting tests from
    'generated_tests'. But the latter can require even more time, ~45
    min on an average machine, so we initially assume that that would
    not be accepted even as an optional flag. We could be wrong
    though.

  * Patches 56-58: add scripts that directly generates SPIR-V
    shader_runner, using templates, as some other existing GLSL
    generators.

  * Patches 59-64: as mentioned, minor clean-ups and fixes.

[1] https://gitlab.freedesktop.org/mesa/mesa/merge_requests/178



Alejandro Piñeiro (26):
  shader_runner: add support for glGetProgram queries
  arb_gl_spirv: add GL_ACTIVE_UNIFORMS checks
  shader_runner: add force_no_names mode
  arb_gl_spirv: add some simple ubo/ssbo tests
  arb_gl_spirv: add ubo/ssbo tests with matrices
  arb_gl_spirv: add a array of ubo test, with complex ubo content
  arb_gl_spirv: add ubo tests with different matrix/array strides
  arb_gl_spirv: add ssbo test using std140 and std430
  arb_gl_spirv: add ubo array test with copy between arrays
  arb_gl_spirv: add some arrays of arrays ubo/ssbo tests
  shader_runner: add xfb testing support
  shader_runner: add xfb query object support
  arb_gl_spirv: add xfb tests
  arb_gl_spirv: array of interface block test
  arb_gl_spirv: add a basic geometry shader
  arb_gl_spirv: adding basic vertex attrib 64-bit tests
  arb_gl_spirv: added regression catching function call test
  arb_gl_spirv: fix wrong extension name for atomic-uint-fs test
  framework: add --spirv option
  CMake: search for glslangValidator, spirv-dis if needed
  generated_tests: remove extra space before #extension
  shader_runner/spirv: log skip reason on ARB_gl_spirv extension check
  shader_runner/spirv: check if test really includes spirv
  shader_runner/spirv: add check for SPV extension support
  shader_runner/spirv: skip for GL extensions without SPIR-V equivalent
  shader_runner/spirv: skip compat profile tests on SPIR-V mode

Antia Puentes (15):
  arb_gl_spirv: Added tests for glGetProgramiv()
  shader_runner: Add skeleton to support more query commands
  shader_runner: Allow to query resources using no-name data
  shader_runner: Simplify the code to query resources by name
  shader_runner: Add command to query program interfaces
  shader_runner: Add command to query the resource name
  shader_runner: Add commands to query index, loc, loc-index.
  shader_runner: Check compatibility for resource name queries
  shader_runner: add UNSIGNED_INT_ATOMIC_COUNTER as allowed type
  arb_gl_spirv: Add ARB_program_interface_query tests
  arb_gl_spirv: Add TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH test
  arb_gl_spirv: add test for atomic images
  arb_gl_spirv: Add test for atomic memory ops (shared uint)
  arb_gl_spirv: add gl_spirv.exclude file
  CMake: Add PIGLIT_GENERATE_GL_SPIRV_TESTS option

Arcady Goldmints-Orlov (2):
  arb_gl_spirv: Add test equivalent to CS basic-ssbo
  arb_gl_spirv: add tests equivalent to component-layout SSO

Eleni Maria Stea (2):
  arb_gl_spirv: added tests for functions and function calls
  arb_gl_spirv: add tests for different types of varyings and blocks

Neil Roberts (16):
  arb_gl_spirv: Add tests for UBOs with explicit offsets
  arb_gl_spirv: Add a test for SSBOs with an unsized array
  arb_gl_spirv: Add a test for matching a block by location with SSOs
  shader_runner: Add support for indexed draw calls
  shader_runner: Add a “draw arrays instanced base” command
  arb_gl_spirv: Add a test for gl_VertexID
  arb_gl_spirv: Add a test for gl_InstanceID
  arb_gl_spirv: Add a test for the OpFUnord* opcodes
  arb_gl_spirv: Add tests for the gl_FragCoord origin
  arb_gl_spirv: Add a test for PixelCenterInteger
  arb_gl_spirv: Add a test for the SamplePosition builtin
  arb_gl_spirv: Add a test for gl_PatchVerticesIn
  shader_runner/spirv: Load a replacement .shader_test
  generated_tests: Add script to translate shader_tests to SPIR-V
  generated_tests/builtin_function: Add templates for equivalent SPIR-V
  generated_tests: Generate SPIR-V equivalents for builtin tests

Nicolai Hähnle (2):
  util: add piglit_is_file_older_than helper
  gitignore: add *.spv

 .gitignore                                    |    1 +
 CMakeLists.txt                                |   20 +
 framework/options.py                          |    1 +
 framework/programs/run.py                     |    7 +
 framework/test/shader_test.py                 |    2 +
 generated_tests/CMakeLists.txt                |   36 +
 generated_tests/builtin_function.py           |  547 ++++-
 .../gen_builtin_uniform_spirv_tests.py        | 1225 +++++++++++
 generated_tests/gen_gl_spirv_tests.py         | 1424 ++++++++++++
 .../gen_extensions_defined/disabled.glsl.mako |    2 +-
 .../gen_extensions_defined/enabled.glsl.mako  |    2 +-
 .../undefined-require.glsl.mako               |    2 +-
 .../gen_vs_in_fp64/columns.shader_test.mako   |    4 +-
 .../gen_vs_in_fp64/regular.shader_test.mako   |    4 +-
 tests/gl_spirv.exclude                        |  305 +++
 tests/opengl.py                               |    9 +
 tests/shaders/shader_runner.c                 | 1908 +++++++++++++++--
 tests/spec/CMakeLists.txt                     |    1 +
 tests/spec/arb_gl_spirv/CMakeLists.gl.txt     |   13 +
 tests/spec/arb_gl_spirv/CMakeLists.txt        |    1 +
 .../array_of_input_output_block.shader_test   |  171 ++
 .../execution/atomic-image.shader_test        |  425 ++++
 ...-sso-vs-gs-fs-array-interleave.shader_test |  438 ++++
 ...mponent-layout-vs-gs-fs-double.shader_test |  312 +++
 .../component-layout-vs-gs-fs.shader_test     |  291 +++
 .../execution/cs-basic-ssbo.shader_test       |   82 +
 ...nction-call-glslang-issue-1285.shader_test |  102 +
 .../execution/origin-lower-left.shader_test   |  191 ++
 .../execution/origin-upper-left.shader_test   |  192 ++
 .../execution/pixel-center-half.shader_test   |  123 ++
 .../pixel-center-integer.shader_test          |  127 ++
 .../aggregate-types-name-queries.shader_test  |  225 ++
 .../aggregate-types-other-queries.shader_test |  309 +++
 .../atomic-counter-other-queries.shader_test  |  286 +++
 .../simple-types-name-queries.shader_test     |  242 +++
 .../simple-types-other-queries.shader_test    |  297 +++
 .../ubo-matrices-other-queries.shader_test    |  175 ++
 ...o-nested-structs-other-queries.shader_test |  232 ++
 .../program/max-length-queries.shader_test    |  211 ++
 .../program/max-length-xfb-query.shader_test  |   79 +
 .../queries/program/other-queries.shader_test |  212 ++
 ...ared-uint-atomic-mem-functions.shader_test |  262 +++
 .../execution/simple-function.shader_test     |   98 +
 .../execution/simple-geometry.shader_test     |  241 +++
 .../execution/ssbo/aoa-2.shader_test          |  294 +++
 .../execution/ssbo/aoa.shader_test            |  199 ++
 .../execution/ssbo/array-indirect.shader_test |  121 ++
 .../ssbo/array-inside-ssbo.shader_test        |  190 ++
 .../array-of-arrays-inside-ssbo.shader_test   |  204 ++
 .../execution/ssbo/array.shader_test          |  173 ++
 .../ssbo/matrix/column-major.shader_test      |  188 ++
 .../ssbo/matrix/column-vs-row.shader_test     |  292 +++
 .../execution/ssbo/matrix/complex.shader_test |  702 ++++++
 .../matrix/indirect-column-major.shader_test  |  132 ++
 .../matrix/indirect-row-major.shader_test     |  132 ++
 .../ssbo/matrix/row-major.shader_test         |  194 ++
 .../execution/ssbo/simple.shader_test         |  138 ++
 .../two-ssbo-different-layouts.shader_test    |  372 ++++
 .../execution/ssbo/two-ssbo.shader_test       |  151 ++
 .../execution/ssbo/two-stages.shader_test     |  279 +++
 .../execution/ssbo/unsized-array.shader_test  |  119 +
 ...o-block-member-layout-location.shader_test |  257 +++
 .../tcs-patch-vertices-in.shader_test         |  373 ++++
 .../execution/ubo/aoa-2.shader_test           |  281 +++
 .../execution/ubo/aoa.shader_test             |  197 ++
 .../execution/ubo/array-complex.shader_test   |  360 ++++
 ...ray-different-array-stride-ubo.shader_test |  272 +++
 .../execution/ubo/array-indirect.shader_test  |  108 +
 .../ubo/array-inside-ubo-copy.shader_test     |  137 ++
 .../ubo/array-inside-ubo.shader_test          |  155 ++
 .../array-of-arrays-inside-ubo.shader_test    |  185 ++
 .../execution/ubo/array.shader_test           |  140 ++
 .../explicit-offset-nested-struct.shader_test |   83 +
 .../execution/ubo/explicit-offset.shader_test |   82 +
 .../ubo/location-0-crash.shader_test          |   94 +
 .../ubo/matrix/column-major.shader_test       |  176 ++
 .../ubo/matrix/column-vs-row.shader_test      |  304 +++
 .../execution/ubo/matrix/complex.shader_test  |  624 ++++++
 .../different-matrix-stride.shader_test       |  260 +++
 .../matrix/indirect-column-major.shader_test  |  120 ++
 .../ubo/matrix/indirect-row-major.shader_test |  120 ++
 .../ubo/matrix/row-major.shader_test          |  175 ++
 .../execution/ubo/simple.shader_test          |  131 ++
 .../execution/ubo/two-stages.shader_test      |  276 +++
 .../execution/ubo/two-ubos.shader_test        |  141 ++
 .../execution/uniform/array.shader_test       |    2 +
 .../uniform/arrays-of-arrays.shader_test      |    2 +
 .../uniform/atomic-uint-aoa-cs.shader_test    |    2 +
 .../uniform/atomic-uint-aoa-fs.shader_test    |    2 +
 .../uniform/atomic-uint-array-cs.shader_test  |    2 +
 .../uniform/atomic-uint-array-fs.shader_test  |    2 +
 .../uniform/atomic-uint-cs.shader_test        |    2 +
 ...ader_runner => atomic-uint-fs.shader_test} |    1 +
 ...nt-mixing-with-normal-uniforms.shader_test |    2 +
 .../atomic-uint-several-slots.shader_test     |    2 +
 .../uniform/embedded-structs.shader_test      |    2 +
 .../index-matches-location.shader_test        |    2 +
 .../uniform/initializer-complex.shader_test   |    2 +
 .../uniform/initializer-dvec4.shader_test     |    3 +
 .../uniform/initializer-mat4x3.shader_test    |    4 +
 .../execution/uniform/initializer.shader_test |    2 +
 .../nonsequential-locations.shader_test       |    2 +
 .../sampler2d-binding-array.shader_test       |    2 +
 .../uniform/sampler2d-binding.shader_test     |    2 +
 ...ampler2d-nonconst-nested-array.shader_test |    2 +
 .../uniform/sampler2d-struct.shader_test      |    2 +
 .../execution/uniform/sampler2d.shader_test   |    2 +
 .../uniform/simple-without-names.shader_test  |    2 +
 .../execution/uniform/simple.shader_test      |    2 +
 .../uniform/struct-array.shader_test          |    2 +
 .../execution/uniform/struct.shader_test      |    2 +
 .../uniform/two-uniforms.shader_test          |    2 +
 .../unordered-comparison.shader_test          |  784 +++++++
 .../execution/va64/array.shader_test          |  202 ++
 .../execution/va64/simple.shader_test         |  175 ++
 .../varying/all-array-types.shader_test       |  326 +++
 .../varying/all-data-types.shader_test        |  595 +++++
 .../execution/varying/all-scalar.shader_test  |  306 +++
 .../varying/all-stages-test.shader_test       |  483 +++++
 .../execution/varying/block.shader_test       |  236 ++
 .../execution/varying/mat/mat-arb.shader_test |  313 +++
 .../execution/varying/mat/mat2.shader_test    |  235 ++
 .../execution/varying/mat/mat3.shader_test    |  294 +++
 .../execution/varying/mat/mat4.shader_test    |  358 ++++
 .../execution/vs-instance-id.shader_test      |  165 ++
 .../execution/vs-vertex-id.shader_test        |  192 ++
 .../execution/xfb/vs_aoa.shader_test          |  131 ++
 .../execution/xfb/vs_block.shader_test        |  121 ++
 .../execution/xfb/vs_block_array.shader_test  |  158 ++
 ..._block_array_offset_per_member.shader_test |  154 ++
 .../execution/xfb/vs_double.shader_test       |  126 ++
 .../execution/xfb/vs_simple.shader_test       |   80 +
 .../vs_simple_multiple_samples.shader_test    |   88 +
 .../execution/xfb/vs_struct.shader_test       |  116 +
 .../execution/xfb/vs_struct_array.shader_test |  153 ++
 .../execution/xfb/vs_two_block.shader_test    |  170 ++
 .../execution/xfb/vs_two_sets.shader_test     |  160 ++
 .../execution/xfb/vs_two_sets_ifc.shader_test |  165 ++
 .../xfb/vs_two_sets_struct.shader_test        |  173 ++
 .../linker/simple-function-call.shader_test   |  112 +
 tests/spec/arb_gl_spirv/sample-position.c     |  362 ++++
 tests/util/piglit-util.c                      |   34 +
 tests/util/piglit-util.h                      |    1 +
 unittests/generators/test_generators.py       |    1 +
 144 files changed, 26457 insertions(+), 336 deletions(-)
 create mode 100644 generated_tests/gen_builtin_uniform_spirv_tests.py
 create mode 100644 generated_tests/gen_gl_spirv_tests.py
 create mode 100644 tests/gl_spirv.exclude
 create mode 100644 tests/spec/arb_gl_spirv/CMakeLists.gl.txt
 create mode 100644 tests/spec/arb_gl_spirv/CMakeLists.txt
 create mode 100644 tests/spec/arb_gl_spirv/execution/array_of_input_output_block.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/atomic-image.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/component-layout-sso-vs-gs-fs-array-interleave.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/component-layout-vs-gs-fs-double.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/component-layout-vs-gs-fs.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/cs-basic-ssbo.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/function-call-glslang-issue-1285.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/origin-lower-left.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/origin-upper-left.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/pixel-center-half.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/pixel-center-integer.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program-interface/aggregate-types-name-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program-interface/aggregate-types-other-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program-interface/atomic-counter-other-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program-interface/simple-types-name-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program-interface/simple-types-other-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program-interface/ubo-matrices-other-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program-interface/ubo-nested-structs-other-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program/max-length-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program/max-length-xfb-query.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/queries/program/other-queries.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/shared-uint-atomic-mem-functions.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/simple-function.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/simple-geometry.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/aoa-2.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/aoa.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/array-indirect.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/array-inside-ssbo.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/array-of-arrays-inside-ssbo.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/array.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/matrix/column-major.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/matrix/column-vs-row.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/matrix/complex.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/matrix/indirect-column-major.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/matrix/indirect-row-major.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/matrix/row-major.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/simple.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/two-ssbo-different-layouts.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/two-ssbo.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/two-stages.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ssbo/unsized-array.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/sso-block-member-layout-location.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/tcs-patch-vertices-in.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/aoa-2.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/aoa.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/array-complex.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/array-different-array-stride-ubo.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/array-indirect.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/array-inside-ubo-copy.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/array-inside-ubo.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/array-of-arrays-inside-ubo.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/array.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/explicit-offset-nested-struct.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/explicit-offset.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/location-0-crash.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/matrix/column-major.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/matrix/column-vs-row.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/matrix/complex.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/matrix/different-matrix-stride.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/matrix/indirect-column-major.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/matrix/indirect-row-major.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/matrix/row-major.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/simple.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/two-stages.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/ubo/two-ubos.shader_test
 rename tests/spec/arb_gl_spirv/execution/uniform/{atomic-uint-fs.shader_runner => atomic-uint-fs.shader_test} (99%)
 create mode 100644 tests/spec/arb_gl_spirv/execution/unordered-comparison.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/va64/array.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/va64/simple.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/all-array-types.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/all-data-types.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/all-scalar.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/all-stages-test.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/block.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/mat/mat-arb.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/mat/mat2.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/mat/mat3.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/varying/mat/mat4.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/vs-instance-id.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/vs-vertex-id.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_aoa.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_block.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_block_array.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_block_array_offset_per_member.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_double.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_simple.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_simple_multiple_samples.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_struct.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_struct_array.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_two_block.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_two_sets.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_two_sets_ifc.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/execution/xfb/vs_two_sets_struct.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/linker/simple-function-call.shader_test
 create mode 100644 tests/spec/arb_gl_spirv/sample-position.c
    

Revisions

Patches download mbox

# Name Submitter State A F R T
[01/63] shader_runner: add support for glGetProgram queries apinheiro New
[02/63] arb_gl_spirv: add GL_ACTIVE_UNIFORMS checks apinheiro New
[03/63] shader_runner: add force_no_names mode apinheiro New
[04/63] arb_gl_spirv: add some simple ubo/ssbo tests apinheiro New
[05/63] arb_gl_spirv: add ubo/ssbo tests with matrices apinheiro New
[06/63] arb_gl_spirv: add a array of ubo test, with complex ubo content apinheiro New
[07/63] arb_gl_spirv: Add tests for UBOs with explicit offsets apinheiro New
[08/63] arb_gl_spirv: add ubo tests with different matrix/array strides apinheiro New
[09/63] arb_gl_spirv: Add a test for SSBOs with an unsized array apinheiro New
[10/63] arb_gl_spirv: add ssbo test using std140 and std430 apinheiro New
[11/63] arb_gl_spirv: add ubo array test with copy between arrays apinheiro New
[12/63] arb_gl_spirv: add some arrays of arrays ubo/ssbo tests apinheiro New
[13/63] arb_gl_spirv: Added tests for glGetProgramiv() apinheiro New
[14/63] shader_runner: Add skeleton to support more query commands apinheiro New
[15/63] shader_runner: Allow to query resources using no-name data apinheiro New
[16/63] shader_runner: Simplify the code to query resources by name apinheiro New
[17/63] shader_runner: Add command to query program interfaces apinheiro New
[18/63] shader_runner: Add command to query the resource name apinheiro New
[19/63] shader_runner: Add commands to query index, loc, loc-index. apinheiro New
[20/63] shader_runner: Check compatibility for resource name queries apinheiro New
[21/63] shader_runner: add UNSIGNED_INT_ATOMIC_COUNTER as allowed type apinheiro New
[22/63] arb_gl_spirv: Add ARB_program_interface_query tests apinheiro New
[23/63] shader_runner: add xfb testing support apinheiro New
[24/63] shader_runner: add xfb query object support apinheiro New
[25/63] arb_gl_spirv: add xfb tests apinheiro New
[26/63] arb_gl_spirv: Add TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH test apinheiro New
[27/63] arb_gl_spirv: array of interface block test apinheiro New
[28/63] arb_gl_spirv: add a basic geometry shader apinheiro New
[29/63] arb_gl_spirv: added tests for functions and function calls apinheiro New
[30/63] arb_gl_spirv: adding basic vertex attrib 64-bit tests apinheiro New
[31/63] arb_gl_spirv: Add a test for matching a block by location with SSOs apinheiro New
[32/63] shader_runner: Add support for indexed draw calls apinheiro New
[33/63] shader_runner: Add a “draw arrays instanced base” command apinheiro New
[34/63] arb_gl_spirv: Add a test for gl_VertexID apinheiro New
[35/63] arb_gl_spirv: Add a test for gl_InstanceID apinheiro New
[36/63] arb_gl_spirv: Add a test for the OpFUnord* opcodes apinheiro New
[37/63] arb_gl_spirv: Add tests for the gl_FragCoord origin apinheiro New
[38/63] arb_gl_spirv: Add a test for PixelCenterInteger apinheiro New
[39/63] arb_gl_spirv: Add a test for the SamplePosition builtin apinheiro New
[40/63] arb_gl_spirv: Add a test for gl_PatchVerticesIn apinheiro New
[41/63] arb_gl_spirv: add test for atomic images apinheiro New
[42/63] arb_gl_spirv: Add test for atomic memory ops (shared uint) apinheiro New
[43/63] arb_gl_spirv: added regression catching function call test apinheiro New
[44/63] arb_gl_spirv: Add test equivalent to CS basic-ssbo apinheiro New
[45/63] arb_gl_spirv: add tests equivalent to component-layout SSO apinheiro New
[46/63] arb_gl_spirv: fix wrong extension name for atomic-uint-fs test apinheiro New
[47/63] arb_gl_spirv: add tests for different types of varyings and blocks apinheiro New
[48/63] util: add piglit_is_file_older_than helper apinheiro New
[49/63] shader_runner/spirv: Load a replacement .shader_test apinheiro New
[50/63] framework: add --spirv option apinheiro New
[51/63] generated_tests: Add script to translate shader_tests to SPIR-V apinheiro New
[52/63] arb_gl_spirv: add gl_spirv.exclude file apinheiro New
[53/63] gitignore: add *.spv apinheiro New
[54/63] CMake: Add PIGLIT_GENERATE_GL_SPIRV_TESTS option apinheiro New
[55/63] CMake: search for glslangValidator, spirv-dis if needed apinheiro New
[56/63] generated_tests/builtin_function: Add templates for equivalent SPIR-V apinheiro New
[57/63] generated_tests: Generate SPIR-V equivalents for builtin tests apinheiro New
[58/63] generated_tests: remove extra space before #extension apinheiro New
[59/63] shader_runner/spirv: log skip reason on ARB_gl_spirv extension check apinheiro New
[60/63] shader_runner/spirv: check if test really includes spirv apinheiro New
[61/63] shader_runner/spirv: add check for SPV extension support apinheiro New
[62/63] shader_runner/spirv: skip for GL extensions without SPIR-V equivalent apinheiro New
[63/63] shader_runner/spirv: skip compat profile tests on SPIR-V mode apinheiro New