diff --git a/src/amd/compiler/aco_optimizer_postRA.cpp b/src/amd/compiler/aco_optimizer_postRA.cpp index a05f216c97f..b9dd52a87cb 100644 --- a/src/amd/compiler/aco_optimizer_postRA.cpp +++ b/src/amd/compiler/aco_optimizer_postRA.cpp @@ -657,6 +657,11 @@ try_reassign_split_vector(pr_opt_ctx& ctx, aco_ptr& instr) if (op.regClass() == s2 && reg.reg() % 2 != 0) break; + /* Sub dword operands might need updates to SDWA/opsel, + * but we only track full register writes at the moment. + */ + assert(op.physReg().byte() == reg.byte()); + /* If there is only one use (left), recolor the split_vector definition */ if (ctx.uses[op.tempId()] == 1) def.setFixed(reg);