nv50/ir: Run nir_divergence_analysis before out-of-SSA
authorFaith Ekstrand <faith.ekstrand@collabora.com>
Sat, 15 Jul 2023 05:08:54 +0000 (00:08 -0500)
committerMarge Bot <emma+marge@anholt.net>
Tue, 1 Aug 2023 18:58:04 +0000 (18:58 +0000)
We don't actually use or need this information but it gets generated by
nir_opt_non_uniform_access() and stale divergence information can cause
out-of-SSA to assert in parallel copy lowering.

Reviewed-by: M Henning <drawoc@darkrefraction.com>
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24327>

src/nouveau/codegen/nv50_ir_from_nir.cpp

index c044ce4..e0eeaeb 100644 (file)
@@ -3347,6 +3347,7 @@ Converter::run()
    NIR_PASS_V(nir, nir_lower_bool_to_int32);
    NIR_PASS_V(nir, nir_lower_bit_size, Converter::lowerBitSizeCB, this);
 
+   NIR_PASS_V(nir, nir_divergence_analysis);
    NIR_PASS_V(nir, nir_convert_from_ssa, true, true);
 
    // Garbage collect dead instructions