On 6 October 2012 18:49, Marek Olšák <span dir="ltr"><<a href="mailto:maraeo@gmail.com" target="_blank">maraeo@gmail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
AFAIK, integer formats cannot be resolved, but only one sample is chosen and<br>
copied to the destination. However the chosen sample might not be at the center<br>
of the pixel, so the tests might never pass.<br></blockquote><div><br>According to my reading of the spec, integer format MSAA resolves should work fine--the samples should be averaged together, just as they are for fixed-point and floating-point formats.  So unless I'm misreading the spec, these tests should pass.  And in fact, on Intel hardware with Mesa they do.<br>
<br>I'm really interested in keeping these tests around because on Intel hardware, the MSAA resolve is performed by a special-purpose shader that's generated on the fly by the driver.  That shader has to be subtly different when using integer formats (to avoid overflow, it has to use the integer AVG instruction, rather than floating point ADDs followed by a division).  These piglit tests are, at the moment, the only thing verifying that we've handled the integer case correctly.<br>
<br>Integer format MSAA is a rare, but not unheard of, use case (in fact, GL 3.2 introduced a constant, GL_MAX_INTEGER_SAMPLES, to allow the driver to advertise its level of support for it).  So I'd really rather not drop these tests if we can avoid it.<br>
<br>I'm guessing that you want to drop the tests because they're failing on a particular piece of hardware.  Have we ruled out the possibility of a driver bug?  If there's no driver bug (e.g. the tests are failing because of a hardware limitation), I'd recommend modifying the driver to report FRAMEBUFFER_UNSUPPORTED for those formats that don't work (we currently do this on Intel chipsets to work around some hardware bugs).  The multisample formats tests will automatically skip any formats that report FRAMEBUFFER_UNSUPPORTED.   <br>
 </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
---<br>
 tests/all.tests |    2 --<br>
 1 file changed, 2 deletions(-)<br>
<br>
diff --git a/tests/all.tests b/tests/all.tests<br>
index ac0f65b..caaba11 100644<br>
--- a/tests/all.tests<br>
+++ b/tests/all.tests<br>
@@ -1731,7 +1731,6 @@ ext_texture_integer['fbo_integer_readpixels_sint_uint'] = plain_test('ext_textur<br>
 ext_texture_integer['getteximage-clamping'] = concurrent_test('ext_texture_integer-getteximage-clamping')<br>
 ext_texture_integer['getteximage-clamping GL_ARB_texture_rg'] = concurrent_test('ext_texture_integer-getteximage-clamping GL_ARB_texture_rg')<br>
 ext_texture_integer['texture_integer_glsl130'] = concurrent_test('ext_texture_integer-texture_integer_glsl130')<br>
-add_msaa_formats_tests(ext_texture_integer, 'GL_EXT_texture_integer')<br>
<br>
 arb_texture_rg = Group()<br>
 spec['ARB_texture_rg'] = arb_texture_rg<br>
@@ -1746,7 +1745,6 @@ add_fbo_clear_extension(arb_texture_rg, 'GL_ARB_texture_rg-float', 'fbo-clear-fo<br>
 add_fbo_blending_extension(arb_texture_rg, 'GL_ARB_texture_rg-float', 'fbo-blending-formats-float')<br>
 add_fbo_alphatest_extension(arb_texture_rg, 'GL_ARB_texture_rg-float', 'fbo-alphatest-formats-float')<br>
 add_msaa_formats_tests(arb_texture_rg, 'GL_ARB_texture_rg')<br>
-add_msaa_formats_tests(arb_texture_rg, 'GL_ARB_texture_rg-int')<br>
 add_msaa_formats_tests(arb_texture_rg, 'GL_ARB_texture_rg-float')<br>
 add_texwrap_test2(arb_texture_rg, '2D', 'GL_R8')<br>
 add_texwrap_test2(arb_texture_rg, '2D', 'GL_RG8')<br>
<span class="HOEnZb"><font color="#888888">--<br>
1.7.9.5<br>
<br>
_______________________________________________<br>
Piglit mailing list<br>
<a href="mailto:Piglit@lists.freedesktop.org">Piglit@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/piglit" target="_blank">http://lists.freedesktop.org/mailman/listinfo/piglit</a><br>
</font></span></blockquote></div><br>