tu: Initial implementation of VK_EXT_inline_uniform_block
This is a trivial implementation where we just insert a UBO descriptor pointing to the actual data and then treat it as a normal UBO everywhere else. In theory an indirect CP_LOAD_STATE would be more efficient than ldc.k to preload inline uniform blocks to constants. However we will always need the UBO descriptor anyway, even if we lower the limits enough to always be able to preload them, because with variable pointers we may have a pointer that could be to either an inline uniform block or regular uniform block. So, using an indirect CP_LOAD_STATE should be an optimization on top of this. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17960>
This commit is contained in:
@@ -485,7 +485,7 @@ Vulkan 1.3 -- all DONE: anv, radv, lvp
|
||||
VK_EXT_4444_formats DONE (anv, lvp, radv, tu, v3dv, vn)
|
||||
VK_EXT_extended_dynamic_state DONE (anv, lvp, radv, tu, vn)
|
||||
VK_EXT_extended_dynamic_state2 DONE (anv, lvp, radv, tu, vn)
|
||||
VK_EXT_inline_uniform_block DONE (anv, lvp, radv, v3dv, vn)
|
||||
VK_EXT_inline_uniform_block DONE (anv, lvp, radv, tu, v3dv, vn)
|
||||
VK_EXT_pipeline_creation_cache_control DONE (anv, lvp, radv, tu, v3dv, vn)
|
||||
VK_EXT_pipeline_creation_feedback DONE (anv, lvp, radv, tu, v3dv, vn)
|
||||
VK_EXT_private_data DONE (anv, lvp, pvr, radv, tu, v3dv, vn)
|
||||
|
Reference in New Issue
Block a user