freedreno/ir3: Add infrastructure for flat.b

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13558>
This commit is contained in:
Matt Turner 2021-11-01 16:12:40 -07:00 committed by Marge Bot
parent a150e31910
commit 2ee1b5a526
2 changed files with 5 additions and 1 deletions

View file

@ -275,7 +275,8 @@ ir3_collect_info(struct ir3_shader_variant *v)
info->ldp_count += components;
}
if ((instr->opc == OPC_BARY_F) && (instr->dsts[0]->flags & IR3_REG_EI))
if ((instr->opc == OPC_BARY_F || instr->opc == OPC_FLAT_B) &&
(instr->dsts[0]->flags & IR3_REG_EI))
info->last_baryf = info->instrs_count;
unsigned instrs_count = 1 + instr->repeat + instr->nop;

View file

@ -963,6 +963,7 @@ is_input(struct ir3_instruction *instr)
switch (instr->opc) {
case OPC_LDLV:
case OPC_BARY_F:
case OPC_FLAT_B:
return true;
default:
return false;
@ -1268,6 +1269,7 @@ ir3_cat2_int(opc_t opc)
case OPC_GETBIT_B:
case OPC_CBITS_B:
case OPC_BARY_F:
case OPC_FLAT_B:
return true;
default:
@ -2068,6 +2070,7 @@ INSTR2(SHL_B)
INSTR2(SHR_B)
INSTR2(ASHR_B)
INSTR2(BARY_F)
INSTR2(FLAT_B)
INSTR2(MGEN_B)
INSTR2(GETBIT_B)
INSTR1(SETRM)