<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>