[Mesa-dev] [PATCH 00/19] Track block instance array access per element

Ian Romanick idr at freedesktop.org
Fri Dec 16 04:10:12 UTC 2016


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.



More information about the mesa-dev mailing list