<div dir="ltr"><div>I think all the interesting patches are reviewed now. All the boring "turn stuff on" patches are<br><br></div>Reviewed-by: Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Feb 27, 2018 at 5:27 AM, Jose Maria Casanova Crespo <span dir="ltr"><<a href="mailto:jmcasanova@igalia.com" target="_blank">jmcasanova@igalia.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This v2 series includes several fixes to allow enabling the VK_KHR_16bit_storage<br>
features in ANV that have already landed but are currently disabled.<br>
<br>
Main differences with V1 [1] are:<br>
<br>
* Now UBO/SSBO padding for buffers size not multiple of 4 [1/8] is done<br>
in isl and the calculus to get the original buffer size before<br>
padding is done in the backend.<br>
* Now load_ubo/ssbo [3/8] at constant offsets use untyped_surface_read<br>
in all cases. A new patch [2/8] enables the<br>
shuffle_32bit_load_result_to_<wbr>16bit_data to skip components.<br>
* vtn_type_block_size [6/8] has been simplified using glsl_get_bit_size.<br>
<br>
Patches 2 and 3 and the re-enablement of features 5 and 8 are the ones with<br>
pending review.<br>
<br>
The series includes the following fixes:<br>
<br>
* [1] Fixes issues in UBO/SSBO support when buffer size is not multiple<br>
of 4. Patch adds a padding so the size will always include the last DWord<br>
completelly. For unsized SSBO arrays there are some bits arithmetic to<br>
allow recalculating the original size without the padding to calculate the<br>
number of elements correctly.<br>
* [2-4] Fixes the behaviour when VK_KHR_relaxed_block_layout is enabled, when<br>
we can not guarantee that the surface read/write offsets are multiple of 4.<br>
* [5] Enables VK_KHR_16bit_storage for SSBO and UBO.<br>
* [6-8] Enables 16-bit push constants removing/changing asserts that don't<br>
apply anymore to 16-bit case and a fix in the calculus os the size to be<br>
read.<br>
<br>
To catch this issues several new tests were developed and they will be included<br>
upstream to VK-GL-CTS.<br>
<br>
This new version of this fixup series creates some conflicts in the re-submitted<br>
V5 series with the 16-bit Input/Output support that is still pending of review.<br>
An updated version including both series has been force-pushed at [2]<br>
<br>
[1] <a href="https://lists.freedesktop.org/archives/mesa-dev/2018-February/186544.html" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>archives/mesa-dev/2018-<wbr>February/186544.html</a><br>
[2] <a href="https://github.com/Igalia/mesa/tree/wip/VK_KHR_16bit_storage-rc5" rel="noreferrer" target="_blank">https://github.com/Igalia/<wbr>mesa/tree/wip/VK_KHR_16bit_<wbr>storage-rc5</a><br>
<br>
Cc: Jason Ekstrand <<a href="mailto:jason.ekstrand@intel.com">jason.ekstrand@intel.com</a>><br>
<br>
Jose Maria Casanova Crespo (8):<br>
isl/i965/fs: SSBO/UBO buffers need size padding if not multiple of<br>
32-bit<br>
i965/fs: shuffle_32bit_load_result_to_<wbr>16bit_data now skips components<br>
i965/fs: Support 16-bit do_read_vector with<br>
VK_KHR_relaxed_block_layout<br>
i965/fs: Support 16-bit store_ssbo with VK_KHR_relaxed_block_layout<br>
anv: Enable VK_KHR_16bit_storage for SSBO and UBO<br>
spirv: Calculate properly 16-bit vector sizes<br>
spirv/i965/anv: Relax push constant offset assertions being 32-bit<br>
aligned<br>
anv: Enable VK_KHR_16bit_storage for PushConstant<br>
<br>
src/compiler/spirv/vtn_<wbr>variables.c | 9 +-<br>
src/intel/compiler/brw_fs.cpp | 2 +-<br>
src/intel/compiler/brw_fs.h | 3 +-<br>
src/intel/compiler/brw_fs_nir.<wbr>cpp | 124 ++++++++++++++++++------<br>
src/intel/isl/isl_surface_<wbr>state.c | 22 ++++-<br>
src/intel/vulkan/anv_device.c | 18 +++-<br>
src/intel/vulkan/anv_<wbr>extensions.py | 2 +-<br>
src/intel/vulkan/anv_nir_<wbr>lower_push_constants.c | 2 -<br>
8 files changed, 137 insertions(+), 45 deletions(-)<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
2.14.3<br>
<br>
______________________________<wbr>_________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/<wbr>mailman/listinfo/mesa-dev</a><br>
</font></span></blockquote></div><br></div>