From fc783e6de56e3e4eafc3b7d5c2f439d6d2bccd9c Mon Sep 17 00:00:00 2001 From: Konstantin Seurer Date: Mon, 16 Sep 2024 12:51:37 +0200 Subject: [PATCH] lavapipe: Do not return in report_ray_intersection report_ray_intersection should not terminate invocations. Fixes: d99e95e ("lavapipe: Implement VK_KHR_ray_tracing_pipeline") Reviewed-by: Friedrich Vock Part-of: (cherry picked from commit 466bbaf40f62a4021440906b9487d477c0273156) --- .pick_status.json | 2 +- src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 771e6ecce6f..4a4be85ce50 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -424,7 +424,7 @@ "description": "lavapipe: Do not return in report_ray_intersection", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "d99e95e033eccfece156e8715a1e33daca10160e", "notes": null diff --git a/src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c b/src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c index b6b06b8c755..2716caa1088 100644 --- a/src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c +++ b/src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c @@ -523,10 +523,6 @@ lvp_lower_isec_intrinsic(nir_builder *b, nir_intrinsic_instr *instr, void *data) nir_def *terminate = nir_load_var(b, state->terminate); nir_store_var(b, state->terminate, nir_ior(b, terminate, prev_terminate), 0x1); - - nir_push_if(b, terminate); - nir_jump(b, nir_jump_return); - nir_pop_if(b, NULL); } nir_push_if(b, nir_load_var(b, state->accept));