<div dir="ltr">On 1 October 2013 11:34, Ian Romanick <span dir="ltr"><<a href="mailto:idr@freedesktop.org" target="_blank">idr@freedesktop.org</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On 09/09/2013 11:16 AM, Paul Berry wrote:<br>
> On 5 September 2013 18:18, Ian Romanick <<a href="mailto:idr@freedesktop.org">idr@freedesktop.org</a><br>
</div><div class="im">> <mailto:<a href="mailto:idr@freedesktop.org">idr@freedesktop.org</a>>> wrote:<br>
><br>
>     From: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a><br>
</div>>     <mailto:<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>>><br>
<div class="im">><br>
>     The test methodology is:<br>
><br>
>         - Bind an XFB object, start XFB, draw something, pause XFB.<br>
><br>
>         - Bind a different XFB object, start XFB, draw someting, pause XFB.<br>
><br>
>         - Rebind the first XFB object, resume XFB, draw something, end XFB.<br>
><br>
>         - Rebind the second XFB object, resume XFB, draw something, end XFB.<br>
><br>
>         - Verify that all the expected data has landed in the expected<br>
>           places.<br>
><br>
>     NVIDIA (304.64 on GTX 260) passes this test.  AMD has not been tested.<br>
><br>
>     Mesa (i965_dri.so) fails the GLES3 version of the test, and, when<br>
>     GL_ARB_transform_feedback2 is force-enabled, it fails the desktop GL<br>
>     version as well.<br>
><br>
>     Signed-off-by: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a><br>
</div>>     <mailto:<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>>><br>
>     Cc: Kenneth Graunke <<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a><br>
>     <mailto:<a href="mailto:kenneth@whitecape.org">kenneth@whitecape.org</a>>><br>
<div><div class="h5">>     ---<br>
>      tests/all.tests                                    |   2 +<br>
>      .../spec/arb_transform_feedback2/CMakeLists.gl.txt |   1 +<br>
>      .../arb_transform_feedback2/CMakeLists.gles3.txt   |  13 +<br>
>      .../change-objects-while-paused.c                  | 303<br>
>     +++++++++++++++++++++<br>
>      4 files changed, 319 insertions(+)<br>
>      create mode 100644<br>
>     tests/spec/arb_transform_feedback2/CMakeLists.gles3.txt<br>
>      create mode 100644<br>
>     tests/spec/arb_transform_feedback2/change-objects-while-paused.c<br>
><br>
>     diff --git a/tests/all.tests b/tests/all.tests<br>
>     index b68f187..4a19fdc 100644<br>
>     --- a/tests/all.tests<br>
>     +++ b/tests/all.tests<br>
>     @@ -2242,6 +2242,8 @@<br>
>     ext_transform_feedback['geometry-shaders-basic'] = concurrent_test(<br>
><br>
>      arb_transform_feedback2 = Group()<br>
>      spec['ARB_transform_feedback2'] = arb_transform_feedback2<br>
>     +arb_transform_feedback2['Change objects while paused'] =<br>
>     PlainExecTest(['arb_transform_feedback2-change-objects-while-paused', '-auto'])<br>
>     +arb_transform_feedback2['Change objects while paused (GLES3)'] =<br>
>     PlainExecTest(['arb_transform_feedback2-change-objects-while-paused_gles3',<br>
>     '-auto'])<br>
>      arb_transform_feedback2['draw-auto'] =<br>
>     PlainExecTest(['arb_transform_feedback2-draw-auto', '-auto'])<br>
>      arb_transform_feedback2['istranformfeedback'] =<br>
>     PlainExecTest(['arb_transform_feedback2-istransformfeedback', '-auto'])<br>
>      arb_transform_feedback2['glGenTransformFeedbacks names only'] =<br>
>     concurrent_test('arb_transform_feedback2-gen-names-only')<br>
>     diff --git a/tests/spec/arb_transform_feedback2/CMakeLists.gl.txt<br>
>     b/tests/spec/arb_transform_feedback2/CMakeLists.gl.txt<br>
>     index fbd716b..3d74f91 100644<br>
>     --- a/tests/spec/arb_transform_feedback2/CMakeLists.gl.txt<br>
>     +++ b/tests/spec/arb_transform_feedback2/CMakeLists.gl.txt<br>
>     @@ -12,6 +12,7 @@ link_libraries (<br>
>      piglit_add_executable (arb_transform_feedback2-api-errors api-errors.c)<br>
>      piglit_add_executable (arb_transform_feedback2-api-queries<br>
>     api-queries.c)<br>
>      piglit_add_executable<br>
>     (arb_transform_feedback2-cannot-bind-when-active<br>
>     cannot-bind-when-active.c)<br>
>     +piglit_add_executable<br>
>     (arb_transform_feedback2-change-objects-while-paused<br>
>     change-objects-while-paused.c)<br>
>      piglit_add_executable (arb_transform_feedback2-draw-auto draw-auto.c)<br>
>      piglit_add_executable (arb_transform_feedback2-gen-names-only<br>
>     gen-names-only.c)<br>
>      piglit_add_executable (arb_transform_feedback2-istransformfeedback<br>
>     istransformfeedback.c)<br>
>     diff --git a/tests/spec/arb_transform_feedback2/CMakeLists.gles3.txt<br>
>     b/tests/spec/arb_transform_feedback2/CMakeLists.gles3.txt<br>
>     new file mode 100644<br>
>     index 0000000..cad25bd<br>
>     --- /dev/null<br>
>     +++ b/tests/spec/arb_transform_feedback2/CMakeLists.gles3.txt<br>
>     @@ -0,0 +1,13 @@<br>
>     +include_directories(<br>
>     +       ${GLEXT_INCLUDE_DIR}<br>
>     +       ${OPENGL_INCLUDE_PATH}<br>
>     +)<br>
>     +<br>
>     +link_libraries (<br>
>     +       piglitutil_${piglit_target_api}<br>
>     +       ${OPENGL_gles2_LIBRARY}<br>
>     +)<br>
>     +<br>
>     +piglit_add_executable<br>
>     (arb_transform_feedback2-change-objects-while-paused_${piglit_target_api}<br>
>     change-objects-while-paused.c)<br>
>     +<br>
>     +# vim: ft=cmake:<br>
>     diff --git<br>
>     a/tests/spec/arb_transform_feedback2/change-objects-while-paused.c<br>
>     b/tests/spec/arb_transform_feedback2/change-objects-while-paused.c<br>
>     new file mode 100644<br>
>     index 0000000..2d759de<br>
>     --- /dev/null<br>
>     +++ b/tests/spec/arb_transform_feedback2/change-objects-while-paused.c<br>
>     @@ -0,0 +1,303 @@<br>
>     +/*<br>
>     + * Copyright © 2013 Intel Corporation<br>
>     + *<br>
>     + * Permission is hereby granted, free of charge, to any person<br>
>     obtaining a<br>
>     + * copy of this software and associated documentation files (the<br>
>     "Software"),<br>
>     + * to deal in the Software without restriction, including without<br>
>     limitation<br>
>     + * the rights to use, copy, modify, merge, publish, distribute,<br>
>     sublicense,<br>
>     + * and/or sell copies of the Software, and to permit persons to<br>
>     whom the<br>
>     + * Software is furnished to do so, subject to the following conditions:<br>
>     + *<br>
>     + * The above copyright notice and this permission notice (including<br>
>     the next<br>
>     + * paragraph) shall be included in all copies or substantial<br>
>     portions of the<br>
>     + * Software.<br>
>     + *<br>
>     + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,<br>
>     EXPRESS OR<br>
>     + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF<br>
>     MERCHANTABILITY,<br>
>     + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO<br>
>     EVENT SHALL<br>
>     + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,<br>
>     DAMAGES OR OTHER<br>
>     + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,<br>
>     ARISING<br>
>     + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR<br>
>     OTHER DEALINGS<br>
>     + * IN THE SOFTWARE.<br>
>     + */<br>
>     +<br>
>     +/**<br>
>     + * \file change-objects-while-paused.c<br>
>     + * Verify behavior of changing XFB objects while XFB is paused.<br>
>     + *<br>
>     + * The test methodology is:<br>
>     + *<br>
>     + * - Bind an XFB object, start XFB, draw something, pause XFB.<br>
>     + *<br>
>     + * - Bind a different XFB object, start XFB, draw someting, pause XFB.<br>
>     + *<br>
>     + * - Rebind the first XFB object, resume XFB, draw something, end XFB.<br>
>     + *<br>
>     + * - Rebind the second XFB object, resume XFB, draw something, end XFB.<br>
>     + *<br>
>     + * - Verify that all the expected data has landed in the expected<br>
>     places.<br>
>     + */<br>
>     +<br>
>     +#include "piglit-util-gl-common.h"<br>
>     +<br>
>     +PIGLIT_GL_TEST_CONFIG_BEGIN<br>
>     +<br>
>     +#ifdef PIGLIT_USE_OPENGL<br>
>     +       config.supports_gl_compat_version = 10;<br>
><br>
><br>
> I don't see anything in this test that relies on compatibility<br>
> functionality.  Can we add:<br>
><br>
> config.supports_gl_core_version = 31;<br>
<br>
</div></div>In addition to the supports_gl_compat_version or instead of?<br>
<br>
I did that because several Gallium drivers enable this extension without<br>
even OpenGL 3.0.  I wanted the test to be able to run on those drivers<br>
as well.<br></blockquote><div><br></div><div>I meant in addition (hence "can we add").<br></div></div></div></div>