Until now we only implement ARB_shader_atomic_counters using SSBO atomics, however this extension was originally designed for exposing hardware that was faster than ssbo atomics. Evergreen and Cayman hw have append/consume hardware intended for this purpose.
This series adds support to glsl to add a unique hw counter index to all atomic counters at link time, since these resources need to be allocated across all shaders, and the unique values are required at compile time. I've experimented with a number of ways of adding these, and they all had ups and downs, this is where I ended up. There is no compute shader support in this yet as r600 doesn't have compute shaders yet. I'm also not sure if this will work for the radeonsi GDS atomics if AMD decide to use them but it should be closer to what they want, I think some of the limits might be a bit low. Dave. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev