aboutsummaryrefslogtreecommitdiffstats
path: root/src/panfrost/bifrost/bifrost.h
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2020-03-21 21:19:43 -0400
committerMarge Bot <[email protected]>2020-03-22 03:32:35 +0000
commitd9d549ff8837b488f76981f23fa56c42164ee683 (patch)
tree1ed24b478a148f3657cca4995616bcab320ee664 /src/panfrost/bifrost/bifrost.h
parent5cdc31abd63302e3da82a1bfee625019e818fc3f (diff)
pan/bi: Pack csel4 opcodes
These are pretty straightforward but there's a lot of details to keep straight. In the IR, we keep a general logical comparator and types separately; in the hardware, the type gets fused with a (much more) limited number of comparators. So there's a fair bit of code here to account for these differences, fusing in the type information, and changing up argument order as necessary to make it actually correct. Anything to save a bit! Signed-off-by: Alyssa Rosenzweig <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4276> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4276>
Diffstat (limited to 'src/panfrost/bifrost/bifrost.h')
-rw-r--r--src/panfrost/bifrost/bifrost.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/panfrost/bifrost/bifrost.h b/src/panfrost/bifrost/bifrost.h
index 7b8854f56f3..a6508440cbb 100644
--- a/src/panfrost/bifrost/bifrost.h
+++ b/src/panfrost/bifrost/bifrost.h
@@ -230,6 +230,9 @@ enum bifrost_csel_cond {
BIFROST_UGE_I = 0x7
};
+#define BIFROST_FMA_OP_CSEL4 (0x5c)
+#define BIFROST_FMA_OP_CSEL4_V16 (0xdc)
+
struct bifrost_csel4 {
unsigned src0 : 3;
unsigned src1 : 3;