anv: Stop bounds-checking pushed UBOs
authorJason Ekstrand <jason@jlekstrand.net>
Fri, 8 Nov 2019 15:33:07 +0000 (09:33 -0600)
committerJason Ekstrand <jason@jlekstrand.net>
Mon, 18 Nov 2019 18:35:14 +0000 (18:35 +0000)
commit4b392ced2d744fccffe95490ff57e6b41033c266
tree9a557284e54f107e7508d2038f4e7a5e74bae6e5
parentebad00d9e7d38647614eaa4800d7ef7dfbfd5767
anv: Stop bounds-checking pushed UBOs

The bounds checking is actually less safe than just pushing the data.
If the bounds checking actually ever kicks in and it's not on the last
UBO push range, then the shrinking will cause all subsequent ranges to
be pushed to the wrong place in the GRF.  One of the behaviors we
definitely don't want is for OOB UBO access to result in completely
unrelated UBOs returning garbage values.  It's safer to just push the
UBOs as-requested.  If we're really concerned about robustness, we can
emit shader code to do bounds checking which should be stupid cheap (a
CMP followed by SEL).

Cc: mesa-stable@lists.freedesktop.org
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
src/intel/vulkan/genX_cmd_buffer.c