mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 22:49:13 +02:00
aco/ra: Add affinities for DS vector-aligned operands
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35269>
This commit is contained in:
parent
df5495b934
commit
b2a95d2133
1 changed files with 8 additions and 0 deletions
|
|
@ -3036,6 +3036,14 @@ get_affinities(ra_ctx& ctx)
|
|||
ctx.assignments[instr->operands[0].tempId()].vcc = true;
|
||||
} else if (instr->opcode == aco_opcode::s_sendmsg) {
|
||||
ctx.assignments[instr->operands[0].tempId()].m0 = true;
|
||||
} else if (instr->format == Format::DS) {
|
||||
bool is_vector = false;
|
||||
for (unsigned i = 0, vector_begin = 0; i < instr->operands.size(); i++) {
|
||||
if (is_vector || instr->operands[i].isVectorAligned())
|
||||
ctx.vectors[instr->operands[i].tempId()] = vector_info(instr.get(), vector_begin);
|
||||
is_vector = instr->operands[i].isVectorAligned();
|
||||
vector_begin = is_vector ? vector_begin : i + 1;
|
||||
}
|
||||
}
|
||||
|
||||
auto tied_defs = get_tied_defs(instr.get());
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue