From 620835926d91a908fb8b0037a9fedcda8e6da8a1 Mon Sep 17 00:00:00 2001 From: Sagar Ghuge Date: Fri, 17 Apr 2026 21:29:48 -0700 Subject: [PATCH] brw: Pass write back register for ray query messages For DG2 (Bspec 47937) has the same programming note as of Xe2+, "When this bit is set in the header, Trace Ray Message behaves like a Ray Query. This message requires a write-back message indicating RayQuery for all valid Rays (SIMD lanes) have completed." So this patch is just passing a write back destination register when we have ray query message. Signed-off-by: Sagar Ghuge Reviewed-by: Lionel Landwerlin Part-of: --- src/intel/compiler/brw/brw_from_nir.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/intel/compiler/brw/brw_from_nir.cpp b/src/intel/compiler/brw/brw_from_nir.cpp index 71e54358976..8882c1a3e9a 100644 --- a/src/intel/compiler/brw/brw_from_nir.cpp +++ b/src/intel/compiler/brw/brw_from_nir.cpp @@ -5848,15 +5848,13 @@ brw_from_nir_emit_intrinsic(nir_to_brw_state &ntb, srcs[RT_LOGICAL_SRC_TRACE_RAY_CONTROL] = get_nir_src(ntb, instr->src[2], 0); srcs[RT_LOGICAL_SRC_SYNCHRONOUS] = brw_imm_ud(synchronous); - /* Bspec 57508: Structure_SIMD16TraceRayMessage:: RayQuery Enable + /* Bspec 57508, 47937: Structure_SIMD16TraceRayMessage:: RayQuery Enable * * "When this bit is set in the header, Trace Ray Message behaves like * a Ray Query. This message requires a write-back message indicating * RayQuery for all valid Rays (SIMD lanes) have completed." */ - brw_reg dst = (devinfo->ver >= 20 && synchronous) ? - bld.vgrf(BRW_TYPE_UD) : - bld.null_reg_ud(); + brw_reg dst = synchronous ? bld.vgrf(BRW_TYPE_UD) : bld.null_reg_ud(); bld.emit(RT_OPCODE_TRACE_RAY_LOGICAL, dst, srcs, RT_LOGICAL_NUM_SRCS);