pan/mdg: Fix spilling of non-32-bit types
authorIcecream95 <ixn@keemail.me>
Wed, 9 Sep 2020 06:22:00 +0000 (18:22 +1200)
committerMarge Bot <eric+marge@anholt.net>
Wed, 9 Sep 2020 21:31:58 +0000 (21:31 +0000)
The source argument for mov has index 1, not 0.

Fixes a vertex shader in SuperTuxKart.

Fixes: b4de9e035ac ("pan/mdg: Mask spills from texture write")
Reported-by: macc24
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>~
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6659>

src/panfrost/midgard/midgard_ra.c

index 9f0091d..6eb7368 100644 (file)
@@ -861,7 +861,7 @@ mir_spill_register(
                                 st = v_mov(spill_node, spill_slot);
                                 st.no_spill |= (1 << spill_class);
                                 st.mask = ins->mask;
-                                st.dest_type = st.src_types[0] = ins->dest_type;
+                                st.dest_type = st.src_types[1] = ins->dest_type;
                         } else {
                                 ins->dest = spill_index++;
                                 ins->no_spill |= (1 << spill_class);