[Mesa-dev] [PATCH 2/2] st/mesa: add GL_ARB_shader_atomic_counter_ops support

Ilia Mirkin imirkin at alum.mit.edu
Thu Mar 10 17:13:03 UTC 2016


On Thu, Mar 10, 2016 at 12:04 PM, Glenn Kennard <glenn.kennard at gmail.com> wrote:
> On Thu, 10 Mar 2016 17:02:15 +0100, Ilia Mirkin <imirkin at alum.mit.edu>
> wrote:
>
>> On Thu, Mar 10, 2016 at 10:57 AM, Nicolai Hähnle <nhaehnle at gmail.com>
>> wrote:
>>>>
>>>> -   if (c->MaxCombinedAtomicBuffers > 0)
>>>> +   if (c->MaxCombinedAtomicBuffers > 0) {
>>>>         extensions->ARB_shader_atomic_counters = GL_TRUE;
>>>> +      extensions->ARB_shader_atomic_counter_ops = GL_TRUE;
>>>> +   }
>>>
>>>
>>>
>>> I believe there's pre-GCN AMD hardware which can support atomic counters
>>> but
>>> not atomic_counter_ops (at least according to what the closed driver
>>> exposes, I haven't actually checked the docs), so there should probably
>>> be a
>>> capability flag here.
>>
>>
>> I assumed this was due to laziness... seems odd if the SSBO atomic ops
>> can be supported, but those same ops can't be supported on atomic
>> buffers. Glenn / Dave - do you guys happen to know what the pre-GCN hw
>> is capable of?
>>
>>   -ilia
>>
>
> AFAIK Cayman supports atomic counter ops on SSBOs, evergreen only on counter
> buffers, and earlier hardware does neither.

To phrase this a different way, my patch is fine? :) If you support
atomic counters, you support all the various ops in
ARB_shader_atomic_counter_ops (which are basically all the SSBO ops,
but on atomic counters)?


More information about the mesa-dev mailing list