Mesa (main): freedreno/ir3: Add infrastructure for flat.b
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Nov 4 03:20:38 UTC 2021
Module: Mesa
Branch: main
Commit: 2ee1b5a5268b206b4d431862da3296d197d1cc17
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2ee1b5a5268b206b4d431862da3296d197d1cc17
Author: Matt Turner <mattst88 at gmail.com>
Date: Mon Nov 1 16:12:40 2021 -0700
freedreno/ir3: Add infrastructure for flat.b
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13558>
---
src/freedreno/ir3/ir3.c | 3 ++-
src/freedreno/ir3/ir3.h | 3 +++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/freedreno/ir3/ir3.c b/src/freedreno/ir3/ir3.c
index 634732a6acb..04e68c676a3 100644
--- a/src/freedreno/ir3/ir3.c
+++ b/src/freedreno/ir3/ir3.c
@@ -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;
diff --git a/src/freedreno/ir3/ir3.h b/src/freedreno/ir3/ir3.h
index 07cc651b682..96835e0e595 100644
--- a/src/freedreno/ir3/ir3.h
+++ b/src/freedreno/ir3/ir3.h
@@ -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)
More information about the mesa-commit
mailing list