-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 09/06/2011 03:21 PM, Roland Scheidegger wrote: > Am 06.09.2011 22:13, schrieb Ian Romanick: >> From: Ian Romanick <ian.d.roman...@intel.com> >> >> Core Mesa already does the dispatch offset remapping for every >> function that could possibly ever be supported. There's no need to >> continue using that cruft in the driver. >> >> Since the call to _mesa_enable_imaging_extensions (via >> driInitExtensions) is removed, EXT_blend_logic_op is explicitly added >> to the list. EXT_blend_color is also added, but it depends on the >> drmSupportsBlendColor flag. > > Hmm, I don't think EXT_blend_logic_op was advertized before. The reason > for this is that EXT_blend_logic_op together with
EXT_blend_logic_op *was* previously enabled. r200CreateContext called driInitExtensions( ctx, card_extensions, GL_TRUE );. The GL_TRUE parameter tells driInitExtensions to call _mesa_enable_imaging_extensions. _mesa_enable_imaging_extensions in turn enables: GL_EXT_blend_color GL_EXT_blend_logic_op GL_EXT_blend_minmax GL_EXT_blend_subtract I didn't see anything in r200_state.c to handle blend equation being set to GL_LOGIC_OP. Of course, we have *zero* piglit tests for this extension. > EXT_blend_equation_separate allows some unholy combinations which the > r200 (possibly other hw too) can't handle correctly. Namely this > combination makes it possible to have logic ops on rgb or alpha channels > and color blending on the other channels. > I know that at least sometime in the past this driver did not advertize > EXT_blend_logic_op, since OpenGL 1.1 style logic ops do not have that > problem and EXT_blend_logic_op wasn't really all that important. I guess > though it's not exactly a severe problem since surely apps old enough to > use EXT_blend_logic_op wouldn't try to use EXT_blend_equation_separate > (though in theory some app could be clever and really want to do that...). That's a good point. I suspect that no hardware actually handles this case correctly. I seem to recall that this is the reason NVIDIA doesn't support GL_EXT_blend_logic_op in their drivers. I know the non-Quadro cards don't support it, anyway. Does this work on later chips in the Radeon family? I don't think anyone will miss GL_EXT_blend_logic_op if we just remove it altogether. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk5pASUACgkQX1gOwKyEAw/3OgCfR/mU4O+4dEeGdr6zGrpx7KzU 1zQAnRXhbDF6/gvIFmePr86ddVzKVPVV =OI6v -----END PGP SIGNATURE----- _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev