radv: mark RADV_DEBUG=splitfma as deprecated

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37145>
This commit is contained in:
Samuel Pitoiset 2025-09-02 17:38:12 +02:00 committed by Marge Bot
parent 4748ecb238
commit 7304423b5c
6 changed files with 12 additions and 7 deletions

View file

@ -1451,6 +1451,7 @@ RADV driver environment variables
dump SPIR-V
``splitfma``
split application-provided fused multiply-add in geometry stages
(deprecated)
``startup``
display info at startup
``syncshaders``

View file

@ -45,7 +45,7 @@ enum {
RADV_DEBUG_NO_NGGC = 1ull << 30,
RADV_DEBUG_DUMP_PROLOGS = 1ull << 31,
RADV_DEBUG_NO_DMA_BLIT = 1ull << 32,
RADV_DEBUG_SPLIT_FMA = 1ull << 33,
RADV_DEBUG_SPLIT_FMA = 1ull << 33, /* deprecated */
RADV_DEBUG_DUMP_EPILOGS = 1ull << 34,
RADV_DEBUG_NO_FMASK = 1ull << 35,
RADV_DEBUG_SHADOW_REGS = 1ull << 36,

View file

@ -224,8 +224,7 @@ radv_init_dri_options(struct radv_instance *instance)
instance->drirc.invariant_geom = driQueryOptionb(&instance->drirc.options, "radv_invariant_geom");
if (driQueryOptionb(&instance->drirc.options, "radv_split_fma"))
instance->debug_flags |= RADV_DEBUG_SPLIT_FMA;
instance->drirc.split_fma = driQueryOptionb(&instance->drirc.options, "radv_split_fma");
if (driQueryOptionb(&instance->drirc.options, "radv_disable_dcc"))
instance->debug_flags |= RADV_DEBUG_NO_DCC;
@ -451,6 +450,12 @@ radv_CreateInstance(const VkInstanceCreateInfo *pCreateInfo, const VkAllocationC
instance->drirc.invariant_geom = true;
}
if (instance->debug_flags & RADV_DEBUG_SPLIT_FMA) {
fprintf(stderr, "radv: RADV_DEBUG=splitfma is deprecated and will it be removed in future Mesa releases. "
"Please use radv_split_fma=true instead.\n");
instance->drirc.split_fma = true;
}
*pInstance = radv_instance_to_handle(instance);
return VK_SUCCESS;

View file

@ -76,6 +76,7 @@ struct radv_instance {
bool cooperative_matrix2_nv;
bool no_dynamic_bounds;
bool invariant_geom;
bool split_fma;
char *app_layer;
uint8_t override_graphics_shader_version;
uint8_t override_compute_shader_version;

View file

@ -224,7 +224,7 @@ radv_physical_device_init_cache_key(struct radv_physical_device *pdev)
key->no_rt = !!(instance->debug_flags & RADV_DEBUG_NO_RT);
key->ps_wave32 = pdev->ps_wave_size == 32;
key->rt_wave64 = pdev->rt_wave_size == 64;
key->split_fma = !!(instance->debug_flags & RADV_DEBUG_SPLIT_FMA);
key->split_fma = instance->drirc.split_fma;
key->ssbo_non_uniform = instance->drirc.ssbo_non_uniform;
key->tex_non_uniform = instance->drirc.tex_non_uniform;
key->lower_terminate_to_discard = instance->drirc.lower_terminate_to_discard;

View file

@ -51,10 +51,8 @@
static void
get_nir_options_for_stage(struct radv_physical_device *pdev, mesa_shader_stage stage)
{
const struct radv_instance *instance = radv_physical_device_instance(pdev);
nir_shader_compiler_options *options = &pdev->nir_options[stage];
bool split_fma =
(stage <= MESA_SHADER_GEOMETRY || stage == MESA_SHADER_MESH) && instance->debug_flags & RADV_DEBUG_SPLIT_FMA;
const bool split_fma = (stage <= MESA_SHADER_GEOMETRY || stage == MESA_SHADER_MESH) && pdev->cache_key.split_fma;
ac_nir_set_options(&pdev->info, pdev->use_llvm, options);