Module: Mesa
Branch: master
Commit: 4e80151c5d75bf5d4b67b0791c3eb06515345a83
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4e80151c5d75bf5d4b67b0791c3eb06515345a83

Author: Jason Ekstrand <[email protected]>
Date:   Thu Mar 26 15:46:56 2020 -0500

anv: Set alignments on descriptor and constant loads

Reviewed-by: Kenneth Graunke <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4338>

---

 src/intel/vulkan/anv_nir_apply_pipeline_layout.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/intel/vulkan/anv_nir_apply_pipeline_layout.c 
b/src/intel/vulkan/anv_nir_apply_pipeline_layout.c
index aafa63ece50..b5b7cd08041 100644
--- a/src/intel/vulkan/anv_nir_apply_pipeline_layout.c
+++ b/src/intel/vulkan/anv_nir_apply_pipeline_layout.c
@@ -534,6 +534,7 @@ build_ssbo_descriptor_load(const VkDescriptorType desc_type,
       nir_intrinsic_instr_create(b->shader, nir_intrinsic_load_ubo);
    desc_load->src[0] = nir_src_for_ssa(desc_buffer_index);
    desc_load->src[1] = nir_src_for_ssa(desc_offset);
+   nir_intrinsic_set_align(desc_load, 8, 0);
    desc_load->num_components = 4;
    nir_ssa_dest_init(&desc_load->instr, &desc_load->dest, 4, 32, NULL);
    nir_builder_instr_insert(b, &desc_load->instr);
@@ -714,6 +715,7 @@ build_descriptor_load(nir_deref_instr *deref, unsigned 
offset,
       nir_intrinsic_instr_create(b->shader, nir_intrinsic_load_ubo);
    desc_load->src[0] = nir_src_for_ssa(desc_buffer_index);
    desc_load->src[1] = nir_src_for_ssa(desc_offset);
+   nir_intrinsic_set_align(desc_load, 8, offset % 8);
    desc_load->num_components = num_components;
    nir_ssa_dest_init(&desc_load->instr, &desc_load->dest,
                      num_components, bit_size, NULL);
@@ -798,6 +800,7 @@ lower_load_constant(nir_intrinsic_instr *intrin,
    load_ubo->num_components = intrin->num_components;
    load_ubo->src[0] = nir_src_for_ssa(index);
    load_ubo->src[1] = nir_src_for_ssa(offset);
+   nir_intrinsic_set_align(load_ubo, intrin->dest.ssa.bit_size / 8, 0);
    nir_ssa_dest_init(&load_ubo->instr, &load_ubo->dest,
                      intrin->dest.ssa.num_components,
                      intrin->dest.ssa.bit_size, NULL);

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to