We test linking of programs that copy a large array, and a large structure.
Signed-off-by: Jordan Justen <jordan.l.jus...@intel.com> --- tests/spec/arb_shader_storage_buffer_object/execution/large-field-copy.shader_test seemed a bit too complex, when the more immediate issue was the linking failure. Maybe it would be good to verify that the copy actually works, but these at least expose the linking issue. .../linker/copy-large-array.shader_test | 27 +++++++++++++++++++ .../linker/copy-large-struct.shader_test | 31 ++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 tests/spec/arb_shader_storage_buffer_object/linker/copy-large-array.shader_test create mode 100644 tests/spec/arb_shader_storage_buffer_object/linker/copy-large-struct.shader_test diff --git a/tests/spec/arb_shader_storage_buffer_object/linker/copy-large-array.shader_test b/tests/spec/arb_shader_storage_buffer_object/linker/copy-large-array.shader_test new file mode 100644 index 0000000..e0b04e5 --- /dev/null +++ b/tests/spec/arb_shader_storage_buffer_object/linker/copy-large-array.shader_test @@ -0,0 +1,27 @@ +# Tests linking of a fragment shader that copies a 'large' array field +# within an SSBO. + +[require] +GL >= 3.3 +GLSL >= 3.30 +GL_ARB_shader_storage_buffer_object + +[vertex shader passthrough] + +[fragment shader] +#version 330 +#extension GL_ARB_shader_storage_buffer_object: require + +#define SIZE 16 + +buffer SSBO { + mat4 src[SIZE]; + mat4 dst[SIZE]; +}; + +void main() { + dst = src; +} + +[test] +link success diff --git a/tests/spec/arb_shader_storage_buffer_object/linker/copy-large-struct.shader_test b/tests/spec/arb_shader_storage_buffer_object/linker/copy-large-struct.shader_test new file mode 100644 index 0000000..81de526 --- /dev/null +++ b/tests/spec/arb_shader_storage_buffer_object/linker/copy-large-struct.shader_test @@ -0,0 +1,31 @@ +# Tests linking of a fragment shader that copies a 'large' struct +# field within an SSBO. + +[require] +GL >= 3.3 +GLSL >= 3.30 +GL_ARB_shader_storage_buffer_object + +[vertex shader passthrough] + +[fragment shader] +#version 330 +#extension GL_ARB_shader_storage_buffer_object: require + +#define SIZE 16 + +struct S { + mat4 m[SIZE]; +}; + +buffer SSBO { + S src; + S dst; +}; + +void main() { + dst = src; +} + +[test] +link success -- 2.6.2 _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/piglit