From 0340da7c82985b3c5ac96449058d57aaddedcb2d Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Tue, 25 Apr 2023 12:56:06 +0300 Subject: [PATCH] anv: fix push range for descriptor offsets Signed-off-by: Lionel Landwerlin Fixes: 379b9bb7b0 ("anv: Support fetching descriptor addresses from push constants") Reviewed-by: Kenneth Graunke Part-of: (cherry picked from commit e1ffa067d3d5d57f3c92ed1cf2228c618a2492bf) --- .pick_status.json | 2 +- src/intel/vulkan/anv_nir_compute_push_layout.c | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index a819b9b6a33..c28897e3e3b 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1579,7 +1579,7 @@ "description": "anv: fix push range for descriptor offsets", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "379b9bb7b04dc87797e49933bbfac786b7ef38fb" }, diff --git a/src/intel/vulkan/anv_nir_compute_push_layout.c b/src/intel/vulkan/anv_nir_compute_push_layout.c index 24f8d06074e..1d4b8009eaf 100644 --- a/src/intel/vulkan/anv_nir_compute_push_layout.c +++ b/src/intel/vulkan/anv_nir_compute_push_layout.c @@ -67,12 +67,13 @@ anv_nir_compute_push_layout(nir_shader *nir, break; } - case nir_intrinsic_load_desc_set_address_intel: - push_start = MIN2(push_start, - offsetof(struct anv_push_constants, desc_sets)); - push_end = MAX2(push_end, push_start + + case nir_intrinsic_load_desc_set_address_intel: { + unsigned base = offsetof(struct anv_push_constants, desc_sets); + push_start = MIN2(push_start, base); + push_end = MAX2(push_end, base + sizeof_field(struct anv_push_constants, desc_sets)); break; + } default: break;