aco: Use as_vgpr for the second source of mbcnt_amd.
authorTimur Kristóf <timur.kristof@gmail.com>
Thu, 10 Jun 2021 09:40:16 +0000 (11:40 +0200)
committerMarge Bot <eric+marge@anholt.net>
Thu, 10 Jun 2021 10:13:02 +0000 (10:13 +0000)
Fixes: 1e49018cedf700fd21fe1498d24742cecf4b5ff4
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11292>

src/amd/compiler/aco_instruction_selection.cpp

index d36728a..9ca92d4 100644 (file)
@@ -8380,7 +8380,7 @@ void visit_intrinsic(isel_context *ctx, nir_intrinsic_instr *instr)
    }
    case nir_intrinsic_mbcnt_amd: {
       Temp src = get_ssa_temp(ctx, instr->src[0].ssa);
-      Temp add_src = get_ssa_temp(ctx, instr->src[1].ssa);
+      Temp add_src = as_vgpr(ctx, get_ssa_temp(ctx, instr->src[1].ssa));
       Temp dst = get_ssa_temp(ctx, &instr->dest.ssa);
       /* Fit 64-bit mask for wave32 */
       src = emit_extract_vector(ctx, src, 0, RegClass(src.type(), bld.lm.size()));