Skip to content

zink: dynamic bo lowering

Mike Blumenkrantz requested to merge zmike/mesa:zink-dynamic_bo_lowering into master

spirv has no way to handle a dynamic index for buffer access, so instead this flattens out the dynamic indexing with bcsels into constant indexing that we can handle without having to change any other code.

this is in preparation for dynamic UBO indexing in GL 4.0 (+SSBOs in 4.3). it'll eventually be removed in favor of a totally different approach for all buffer handling which will also resolve some failures in ARB_gl_spirv handling, but that's going to require a lot of surgery across the entire ntv implementation, and this method already passes 100% of tests for dynamic indexing with no other changes.

Merge request reports