From 6e994fdb6eb01b553fa75a41bf271ba92da49f66 Mon Sep 17 00:00:00 2001 From: Patrick Lerda Date: Wed, 18 Sep 2024 20:34:53 +0200 Subject: [PATCH] i915: fix vertex atan regression This is a regression happening with the commit 87b99d579772 ("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: c4cec8423153 ("nir/i915g/r300/nv30: skip marking varyings as flat in some drivers") Signed-off-by: Patrick Lerda Reviewed-by: Georg Lehmann Part-of: --- src/gallium/drivers/i915/i915_screen.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/i915/i915_screen.c b/src/gallium/drivers/i915/i915_screen.c index 12d3e98e44b..78a5393f023 100644 --- a/src/gallium/drivers/i915/i915_screen.c +++ b/src/gallium/drivers/i915/i915_screen.c @@ -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 *