aco: treat VINTERP_INREG as VALU

It's just v_fma with fixed DPP8 and builtin s_waitcnt_expcnt, so it can mostly
be handled as a pure VALU instruction.

Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21023>
This commit is contained in:
Georg Lehmann
2023-02-03 13:08:14 +01:00
committed by Marge Bot
parent c119b19f98
commit 77afe7d960
8 changed files with 19 additions and 19 deletions
+2 -2
View File
@@ -372,7 +372,7 @@ check_instr(wait_ctx& ctx, wait_imm& wait, alu_delay_info& delay, Instruction* i
continue;
wait.combine(it->second.imm);
if (instr->isVALU() || instr->isSALU() || instr->isVINTERP_INREG())
if (instr->isVALU() || instr->isSALU())
delay.combine(it->second.delay);
}
}
@@ -788,7 +788,7 @@ void
gen_alu(Instruction* instr, wait_ctx& ctx)
{
Instruction_cycle_info cycle_info = get_cycle_info(*ctx.program, *instr);
bool is_valu = instr->isVALU() || instr->isVINTERP_INREG();
bool is_valu = instr->isVALU();
bool is_trans = instr->isTrans();
bool clear = instr->isEXP() || instr->isDS() || instr->isMIMG() || instr->isFlatLike() ||
instr->isMUBUF() || instr->isMTBUF();