[Mesa-dev] [PATCH 1/2] nir: make is_comparison() a non-static helper function
Samuel Pitoiset
samuel.pitoiset at gmail.com
Wed May 30 12:21:41 UTC 2018
Rename and change the prototype for consistency regarding
nir_tex_instr_is_query(). This function will be used in the
following patch.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
---
src/compiler/nir/nir.h | 24 +++++++++++++++++++
src/compiler/nir/nir_opt_move_comparisons.c | 26 +--------------------
2 files changed, 25 insertions(+), 25 deletions(-)
diff --git a/src/compiler/nir/nir.h b/src/compiler/nir/nir.h
index f6086bd6c0..5a1f79515a 100644
--- a/src/compiler/nir/nir.h
+++ b/src/compiler/nir/nir.h
@@ -1374,6 +1374,30 @@ nir_tex_instr_is_query(const nir_tex_instr *instr)
}
}
+static inline bool
+nir_alu_instr_is_comparison(const nir_alu_instr *instr)
+{
+ switch (instr->op) {
+ case nir_op_flt:
+ case nir_op_fge:
+ case nir_op_feq:
+ case nir_op_fne:
+ case nir_op_ilt:
+ case nir_op_ult:
+ case nir_op_ige:
+ case nir_op_uge:
+ case nir_op_ieq:
+ case nir_op_ine:
+ case nir_op_i2b:
+ case nir_op_f2b:
+ case nir_op_inot:
+ case nir_op_fnot:
+ return true;
+ default:
+ return false;
+ }
+}
+
static inline nir_alu_type
nir_tex_instr_src_type(const nir_tex_instr *instr, unsigned src)
{
diff --git a/src/compiler/nir/nir_opt_move_comparisons.c b/src/compiler/nir/nir_opt_move_comparisons.c
index 617c2ca998..5da57dc921 100644
--- a/src/compiler/nir/nir_opt_move_comparisons.c
+++ b/src/compiler/nir/nir_opt_move_comparisons.c
@@ -50,30 +50,6 @@
* lower register pressure.
*/
-static bool
-is_comparison(nir_op op)
-{
- switch (op) {
- case nir_op_flt:
- case nir_op_fge:
- case nir_op_feq:
- case nir_op_fne:
- case nir_op_ilt:
- case nir_op_ult:
- case nir_op_ige:
- case nir_op_uge:
- case nir_op_ieq:
- case nir_op_ine:
- case nir_op_i2b:
- case nir_op_f2b:
- case nir_op_inot:
- case nir_op_fnot:
- return true;
- default:
- return false;
- }
-}
-
static bool
move_comparison_source(nir_src *src, nir_block *block, nir_instr *before)
{
@@ -84,7 +60,7 @@ move_comparison_source(nir_src *src, nir_block *block, nir_instr *before)
if (src_instr->block == block &&
src_instr->type == nir_instr_type_alu &&
- is_comparison(nir_instr_as_alu(src_instr)->op)) {
+ nir_alu_instr_is_comparison(nir_instr_as_alu(src_instr))) {
exec_node_remove(&src_instr->node);
--
2.17.0
More information about the mesa-dev
mailing list