Mesa (master): nir/constant_folding: fix incorrect bit-size check

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Nov 9 07:44:21 UTC 2018


Module: Mesa
Branch: master
Commit: 35baee5dce5eaa8785e0abc09c9a4d5f2aac97d4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=35baee5dce5eaa8785e0abc09c9a4d5f2aac97d4

Author: Iago Toral Quiroga <itoral at igalia.com>
Date:   Wed Oct 31 12:18:34 2018 +0100

nir/constant_folding: fix incorrect bit-size check

nir_alu_type_get_type_size takes a type as parameter and we were
passing a bit-size instead, which did what we wanted by accident,
since a bit-size of zero matches nir_type_invalid, which has a
size of 0 too.

Reviewed-by: Samuel Iglesias Gonsálvez <siglesias at igalia.com>

---

 src/compiler/nir/nir_opt_constant_folding.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/src/compiler/nir/nir_opt_constant_folding.c b/src/compiler/nir/nir_opt_constant_folding.c
index 5929a60aee..1fca530af2 100644
--- a/src/compiler/nir/nir_opt_constant_folding.c
+++ b/src/compiler/nir/nir_opt_constant_folding.c
@@ -63,10 +63,8 @@ constant_fold_alu_instr(nir_alu_instr *instr, void *mem_ctx)
       if (!instr->src[i].src.is_ssa)
          return false;
 
-      if (bit_size == 0 &&
-          !nir_alu_type_get_type_size(nir_op_infos[instr->op].input_sizes[i])) {
+      if (bit_size == 0 && nir_op_infos[instr->op].input_sizes[i] == 0)
          bit_size = instr->src[i].src.ssa->bit_size;
-      }
 
       nir_instr *src_instr = instr->src[i].src.ssa->parent_instr;
 




More information about the mesa-commit mailing list