This series can also be found at: https://cgit.freedesktop.org/~idr/mesa/log/?h=fix-GL45-CTS.program_interface_query.uniform-block-types
The first 9 patches in the series are the bug fix. This conformance test expects per-block used-by tracking for UBO and SSBO instance array blocks. So, a block like uniform Block { ... } block[3]; will have 3 blocks, Block[0] .. Block[2], reported via program interface queries. Each of these may have a different set of per-stage used-by flags. We were not tracking this. If any member was used by a stage, we would report that all members were used by the stage. Arrays-of-arrays and non-constant indexing make this non-trivial. I expect that's why we didn't do it before. :) I think I have a nice solution to the problem. I thought of a couple simlpler soultions, but each fell victim to various corner cases. I have tried to capture these corner cases in the unit tests. The remaining patches just clean up various bits of trivium. A couple of them are quite old. There was more in that series, but they're not ready to re-send. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev