[Mesa-dev] [PATCH] mesa: expose ARB_compute_shader with compat profile

Ilia Mirkin imirkin at alum.mit.edu
Wed May 25 20:15:02 UTC 2016


On Wed, May 25, 2016 at 3:52 PM, Matt Turner <mattst88 at gmail.com> wrote:
> On Wed, May 25, 2016 at 12:17 PM, Samuel Pitoiset
> <samuel.pitoiset at gmail.com> wrote:
>> This fixes use of compute shaders with some NVIDIA GL 4.3 samples which
>> require a compat profile.
>
> I'm confused.
>
> The samples you're talking about... use 4.3 compatibility? We already
> don't support compatibility profile, so you presumably have to hack
> that on.
>
> The ARB_compute_shader extension spec says it requires 4.2, and we
> don't expose 4.2 with the compatibility profile. I think you should

We've ignored plenty of such comments in the past though.
ARB_shader_storage_buffer_object has similar language (requiring 4.0,
for no apparent reason). As do a ton of other extensions. I think the
real dependency is on images + atomic counters. (Otherwise compute
shaders are pretty useless.)

> have some justification for why it's safe to expose in compatibility
> profile, since that's a pretty big change. Or, you don't want to
> expose it in compatibility but you need this patch to enable it with
> the 4.2-compat hack enabled...?
>
> Strangely, ARB_compute_shader says "GLL, GLC" in extensions_table.h,
> but it's only core-enabled on my glxinfo.

That's surprising. Perhaps you only enable it for core in i965?

Either way, I had suggested this patch to true up the state of
has_compute_shaders with the extension table. An alternate solution
would be to not expose compute shaders in compat profiles. Is there
any real reason to do that though?

  -ilia


More information about the mesa-dev mailing list