gallivm: stop using per shader float fast math flags

They are no longer set anywhere.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39026>
This commit is contained in:
Georg Lehmann 2025-12-18 20:25:41 +01:00 committed by Marge Bot
parent 9da2d21804
commit 0e2b31c8df

View file

@ -5865,30 +5865,18 @@ void lp_build_nir_soa_func(struct gallivm_state *gallivm,
lp_build_context_init(&bld.int_bld, gallivm, lp_int_type(type));
{
struct lp_type float_type = type;
float_type.signed_zero_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_SIGNED_ZERO_PRESERVE_FP32);
float_type.nan_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_NAN_PRESERVE_FP32);
lp_build_context_init(&bld.base, gallivm, float_type);
}
{
struct lp_type dbl_type;
dbl_type = type;
dbl_type.width *= 2;
dbl_type.signed_zero_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_SIGNED_ZERO_PRESERVE_FP64);
dbl_type.nan_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_NAN_PRESERVE_FP64);
lp_build_context_init(&bld.dbl_bld, gallivm, dbl_type);
}
{
struct lp_type half_type;
half_type = type;
half_type.width /= 2;
half_type.signed_zero_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_SIGNED_ZERO_PRESERVE_FP16);
half_type.nan_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_NAN_PRESERVE_FP16);
lp_build_context_init(&bld.half_bld, gallivm, half_type);
}
{
@ -5940,30 +5928,18 @@ void lp_build_nir_soa_func(struct gallivm_state *gallivm,
lp_build_context_init(&bld.scalar_int_bld, gallivm, lp_int_type(elem_type));
{
struct lp_type float_type = elem_type;
float_type.signed_zero_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_SIGNED_ZERO_PRESERVE_FP32);
float_type.nan_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_NAN_PRESERVE_FP32);
lp_build_context_init(&bld.scalar_base, gallivm, float_type);
}
{
struct lp_type dbl_type;
dbl_type = elem_type;
dbl_type.width *= 2;
dbl_type.signed_zero_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_SIGNED_ZERO_PRESERVE_FP64);
dbl_type.nan_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_NAN_PRESERVE_FP64);
lp_build_context_init(&bld.scalar_dbl_bld, gallivm, dbl_type);
}
{
struct lp_type half_type;
half_type = elem_type;
half_type.width /= 2;
half_type.signed_zero_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_SIGNED_ZERO_PRESERVE_FP16);
half_type.nan_preserve =
!!(shader->info.float_controls_execution_mode & FLOAT_CONTROLS_NAN_PRESERVE_FP16);
lp_build_context_init(&bld.scalar_half_bld, gallivm, half_type);
}
{