aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/panfrost/bifrost/bi_print.c1
-rw-r--r--src/panfrost/bifrost/compiler.h5
2 files changed, 6 insertions, 0 deletions
diff --git a/src/panfrost/bifrost/bi_print.c b/src/panfrost/bifrost/bi_print.c
index c9e6beb1249..2e6ef452899 100644
--- a/src/panfrost/bifrost/bi_print.c
+++ b/src/panfrost/bifrost/bi_print.c
@@ -267,6 +267,7 @@ bi_special_op_name(enum bi_special_op op)
switch (op) {
case BI_SPECIAL_FRCP: return "frcp";
case BI_SPECIAL_FRSQ: return "frsq";
+ case BI_SPECIAL_EXP2_LOW: return "exp2_low";
default: return "invalid";
}
}
diff --git a/src/panfrost/bifrost/compiler.h b/src/panfrost/bifrost/compiler.h
index 64baf8cc4c7..90f0e94a6e0 100644
--- a/src/panfrost/bifrost/compiler.h
+++ b/src/panfrost/bifrost/compiler.h
@@ -195,6 +195,11 @@ enum bi_table_op {
enum bi_special_op {
BI_SPECIAL_FRCP,
BI_SPECIAL_FRSQ,
+
+ /* fp32 exp2() with low precision, suitable for half_exp2() in CL or
+ * exp2() in GL. In the first argument, it takes f2i_rte(x * 2^24). In
+ * the second, it takes x itself. */
+ BI_SPECIAL_EXP2_LOW,
};
typedef struct {