From c1b29174b4384a40fac4bbabffa4ef24fabfd288 Mon Sep 17 00:00:00 2001 From: Georg Lehmann Date: Mon, 7 Jul 2025 15:46:11 +0200 Subject: [PATCH] aco: use a smaller wqm section for strict_wqm sampling MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It's only important that the coordinate is created in WQM, the sample itself doesn't care. Reviewed-by: Daniel Schürmann Part-of: --- src/amd/compiler/instruction_selection/aco_select_nir.cpp | 2 +- .../instruction_selection/aco_select_nir_intrinsics.cpp | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/amd/compiler/instruction_selection/aco_select_nir.cpp b/src/amd/compiler/instruction_selection/aco_select_nir.cpp index 84bc23ddb01..3ce03241fc8 100644 --- a/src/amd/compiler/instruction_selection/aco_select_nir.cpp +++ b/src/amd/compiler/instruction_selection/aco_select_nir.cpp @@ -683,7 +683,7 @@ visit_tex(isel_context* ctx, nir_tex_instr* instr) tex->tfe = instr->is_sparse; tex->d16 = d16; tex->a16 = a16; - if (implicit_derivs) + if (implicit_derivs && !has_wqm_coord) set_wqm(ctx, true); if (tg4_integer_cube_workaround) { diff --git a/src/amd/compiler/instruction_selection/aco_select_nir_intrinsics.cpp b/src/amd/compiler/instruction_selection/aco_select_nir_intrinsics.cpp index 87d2e5c7660..0c9fbb054d7 100644 --- a/src/amd/compiler/instruction_selection/aco_select_nir_intrinsics.cpp +++ b/src/amd/compiler/instruction_selection/aco_select_nir_intrinsics.cpp @@ -5134,6 +5134,7 @@ visit_intrinsic(isel_context* ctx, nir_intrinsic_instr* instr) vec->definitions[0] = Definition(dst); ctx->block->instructions.emplace_back(std::move(vec)); + set_wqm(ctx, true); break; } case nir_intrinsic_store_scalar_arg_amd: {