From 4cb8ecd47cf157b7045701ec34d1a035fb9a950f Mon Sep 17 00:00:00 2001 From: Konstantin Seurer Date: Thu, 26 Sep 2024 19:34:54 +0200 Subject: [PATCH] Revert "lavapipe: Do not return in report_ray_intersection" This reverts commit 466bbaf40f62a4021440906b9487d477c0273156. Acked-by: Mike Blumenkrantz Part-of: --- src/gallium/frontends/lavapipe/ci/lvp-fails.txt | 3 --- src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c | 4 ++++ 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/gallium/frontends/lavapipe/ci/lvp-fails.txt b/src/gallium/frontends/lavapipe/ci/lvp-fails.txt index 64e6e95b930..2dce182d291 100644 --- a/src/gallium/frontends/lavapipe/ci/lvp-fails.txt +++ b/src/gallium/frontends/lavapipe/ci/lvp-fails.txt @@ -694,6 +694,3 @@ dEQP-VK.dynamic_rendering.primary_cmd_buff.suballocation.formats.r32g32_uint.inp dEQP-VK.glsl.texture_functions.query.texturequerylod.isampler1d_fragment,Fail dEQP-VK.glsl.texture_functions.query.texturequerylod.sampler1d_float_fragment,Fail dEQP-VK.glsl.texture_functions.query.texturequerylod.usampler1d_fragment,Fail - -# Regression from a commit in 878ae970...e0efab52 -dEQP-VK.ray_tracing_pipeline.misc.OpTerminateRayKHR_IntersectionDynamically,Fail diff --git a/src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c b/src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c index 6e307cc767c..7c8598d8eac 100644 --- a/src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c +++ b/src/gallium/frontends/lavapipe/lvp_ray_tracing_pipeline.c @@ -523,6 +523,10 @@ 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));