aco: fix instruction encoding for LS VGPR init bug workaround
authorRhys Perry <pendingchaos02@gmail.com>
Mon, 16 Mar 2020 13:47:55 +0000 (13:47 +0000)
committerMarge Bot <eric+marge@anholt.net>
Mon, 16 Mar 2020 19:34:32 +0000 (19:34 +0000)
Fixes: a952bf3946 ('aco: Fix LS VGPR init bug on affected hardware.')
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-By: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4201>

src/amd/compiler/aco_instruction_selection.cpp

index 195c57950c585165028f4152a7bb5a6b2fbf5bd8..ff39ad854cdfd4396a50b76d746121e131d60291 100644 (file)
@@ -9501,15 +9501,15 @@ void fix_ls_vgpr_init_bug(isel_context *ctx, Pseudo_instruction *startpgm)
 
    /* If there are no HS threads, SPI mistakenly loads the LS VGPRs starting at VGPR 0. */
 
-   Temp instance_id = bld.sop2(aco_opcode::v_cndmask_b32, bld.def(v1),
+   Temp instance_id = bld.vop2(aco_opcode::v_cndmask_b32, bld.def(v1),
                                get_arg(ctx, ctx->args->ac.instance_id),
                                get_arg(ctx, ctx->args->rel_auto_id),
                                ls_has_nonzero_hs_threads);
-   Temp rel_auto_id = bld.sop2(aco_opcode::v_cndmask_b32, bld.def(v1),
+   Temp rel_auto_id = bld.vop2(aco_opcode::v_cndmask_b32, bld.def(v1),
                                get_arg(ctx, ctx->args->rel_auto_id),
                                get_arg(ctx, ctx->args->ac.tcs_rel_ids),
                                ls_has_nonzero_hs_threads);
-   Temp vertex_id = bld.sop2(aco_opcode::v_cndmask_b32, bld.def(v1),
+   Temp vertex_id = bld.vop2(aco_opcode::v_cndmask_b32, bld.def(v1),
                              get_arg(ctx, ctx->args->ac.vertex_id),
                              get_arg(ctx, ctx->args->ac.tcs_patch_id),
                              ls_has_nonzero_hs_threads);