etnaviv: call nir_lower_bool_to_bitsize
authorChristian Gmeiner <christian.gmeiner@gmail.com>
Tue, 4 Aug 2020 20:44:21 +0000 (22:44 +0200)
committerMarge Bot <eric+marge@anholt.net>
Fri, 7 Aug 2020 03:25:36 +0000 (03:25 +0000)
Starting with commit 6f394343b1f ("nir/algebraic: i2f(f2i()) -> trunc()")
dEQP-GLES2.functional.shaders.operator.binary_operator.div.lowp_int_vertex
ends with an unsuppored flt instruction. Use nir_lower_bool_to_bitsize to
convert this flt to a flt32 which is supported. This fixes the introduced
regression.

Cc: 20.2 <mesa-stable@lists.freedesktop.org>
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6182>

src/gallium/drivers/etnaviv/etnaviv_compiler_nir.c

index 3352510ac05fdc6473e4a26dd6be186bd5e89f01..79ef97cdbde4ab10524622bb372b288a21cc1e25 100644 (file)
@@ -1138,6 +1138,7 @@ etna_compile_shader_nir(struct etna_shader_variant *v)
 
    NIR_PASS_V(s, nir_opt_dce);
 
+   NIR_PASS_V(s, nir_lower_bool_to_bitsize);
    NIR_PASS_V(s, etna_lower_alu, c->specs->has_new_transcendentals);
 
    if (DBG_ENABLED(ETNA_DBG_DUMP_SHADERS))