From 72d289b8d1491281a1c3011cdea78a6465546024 Mon Sep 17 00:00:00 2001 From: Jordan Justen Date: Fri, 5 Jan 2024 11:09:19 -0800 Subject: [PATCH] intel/compiler/fs: Restore SIMD32 restriction for ray_queries on Xe2 In 96e0d979a7b, the restriction was dropped because we don't compile a SIMD8 program on Xe2. This change moves it to run_fs() so the restriction will be added when compiling SIMD16 on Xe2. Fixes: 96e0d979a7b ("intel/fs: Check fs_visitor instance before using it") Signed-off-by: Jordan Justen Reviewed-by: Caio Oliveira Part-of: --- src/intel/compiler/brw_fs.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index 95c937a8f3b..41d48bfc7f7 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -3232,6 +3232,9 @@ fs_visitor::run_fs(bool allow_spilling, bool do_rep_send) payload_ = new fs_thread_payload(*this, source_depth_to_render_target); + if (nir->info.ray_queries > 0) + limit_dispatch_width(16, "SIMD32 not supported with ray queries.\n"); + if (do_rep_send) { assert(dispatch_width == 16); emit_repclear_shader(); @@ -3847,9 +3850,6 @@ brw_compile_fs(const struct brw_compiler *compiler, " pixel shading.\n"); } - if (nir->info.ray_queries > 0 && v8) - v8->limit_dispatch_width(16, "SIMD32 with ray queries.\n"); - if (!has_spilled && (!v8 || v8->max_dispatch_width >= 16) && (INTEL_SIMD(FS, 16) || params->use_rep_send)) {