i915: fix vertex atan regression

This is a regression happening with the commit 87b99d5797 ("nir: use copysign for atan").
Indeed, the opcode "copysign" was generating an incompatible i915 sequence.

For instance, this issue is triggered with
"deqp-gles2 --deqp-case=dEQP-GLES2.functional.shaders.operator.angle_and_trigonometry.atan2.highp_float_vertex":
deqp-gles2: ../src/compiler/nir/nir_lower_int_to_float.c:239: lower_alu_instr: Assertion `nir_alu_type_get_base_type(info->output_type) != nir_type_int && nir_alu_type_get_base_type(info->output_type) != nir_type_uint' failed.

Fixes: c4cec84231 ("nir/i915g/r300/nv30: skip marking varyings as flat in some drivers")
Signed-off-by: Patrick Lerda <patrick9876@free.fr>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31315>
This commit is contained in:
Patrick Lerda
2024-09-18 20:34:53 +02:00
committed by Marge Bot
parent dbc4a2e30b
commit 6e994fdb6e
+1
View File
@@ -173,6 +173,7 @@ static const struct nir_shader_compiler_options gallivm_nir_options = {
.lower_device_index_to_zero = true,
/* .support_16bit_alu = true, */
.has_ddx_intrinsics = true,
.no_integers = true,
};
static const void *