mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 10:40:11 +01:00
aco: don't create vector affinities for operands which are not killed or are duplicates
Totals from affected shaders: SGPRS: 825184 -> 825184 (0.00 %) VGPRS: 697640 -> 697240 (-0.06 %) Code Size: 79244104 -> 79201072 (-0.05 %) bytes Max Waves: 42388 -> 42386 (-0.00 %) Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4573>
This commit is contained in:
parent
edc2b57ac1
commit
6792e134f3
1 changed files with 1 additions and 1 deletions
|
|
@ -1410,7 +1410,7 @@ void register_allocation(Program *program, std::vector<TempSet>& live_out_per_bl
|
|||
/* add vector affinities */
|
||||
if (instr->opcode == aco_opcode::p_create_vector) {
|
||||
for (const Operand& op : instr->operands) {
|
||||
if (op.isTemp() && op.getTemp().type() == instr->definitions[0].getTemp().type())
|
||||
if (op.isTemp() && op.isFirstKill() && op.getTemp().type() == instr->definitions[0].getTemp().type())
|
||||
ctx.vectors[op.tempId()] = instr.get();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue