radv: get the float controls execution mode from NIR for LLVM
No need to duplicate it. Though, I think it was already broken for merged shaders, but it doesn't matter. No CTS regressions anyways with LLVM. Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12989>
This commit is contained in:

committed by
Marge Bot

parent
55e6a68f69
commit
19a71e79b8
@@ -2388,7 +2388,7 @@ ac_translate_nir_to_llvm(struct ac_llvm_compiler *ac_llvm, struct nir_shader *co
|
||||
|
||||
enum ac_float_mode float_mode = AC_FLOAT_MODE_DEFAULT;
|
||||
|
||||
if (args->shader_info->float_controls_mode & FLOAT_CONTROLS_DENORM_FLUSH_TO_ZERO_FP32) {
|
||||
if (shaders[0]->info.float_controls_execution_mode & FLOAT_CONTROLS_DENORM_FLUSH_TO_ZERO_FP32) {
|
||||
float_mode = AC_FLOAT_MODE_DENORM_FLUSH_TO_ZERO;
|
||||
}
|
||||
|
||||
|
@@ -328,8 +328,6 @@ struct radv_shader_info {
|
||||
|
||||
struct gfx9_gs_info gs_ring_info;
|
||||
struct gfx10_ngg_info ngg_info;
|
||||
|
||||
unsigned float_controls_mode;
|
||||
};
|
||||
|
||||
enum radv_shader_binary_type { RADV_BINARY_TYPE_LEGACY, RADV_BINARY_TYPE_RTLD };
|
||||
|
@@ -724,8 +724,6 @@ radv_nir_shader_info_pass(struct radv_device *device, const struct nir_shader *n
|
||||
es_info->esgs_itemsize = num_outputs_written * 16;
|
||||
}
|
||||
|
||||
info->float_controls_mode = nir->info.float_controls_execution_mode;
|
||||
|
||||
if (nir->info.stage == MESA_SHADER_FRAGMENT) {
|
||||
info->ps.allow_flat_shading =
|
||||
!(info->ps.uses_persp_or_linear_interp || info->ps.needs_sample_positions ||
|
||||
|
Reference in New Issue
Block a user