From 69618a867858cceeaa59eca732eb76c7677e73a8 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Thu, 18 Oct 2018 22:31:08 -0500 Subject: [PATCH] nir/algebraic: Use bool internally instead of bool32 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Reviewed-by: Samuel Iglesias Gonsálvez --- src/compiler/nir/nir_algebraic.py | 4 ++-- src/compiler/nir/nir_search.c | 9 +++------ 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/compiler/nir/nir_algebraic.py b/src/compiler/nir/nir_algebraic.py index 3055937029c..eccef0d2c97 100644 --- a/src/compiler/nir/nir_algebraic.py +++ b/src/compiler/nir/nir_algebraic.py @@ -165,7 +165,7 @@ class Constant(Value): def type(self): if isinstance(self.value, (bool)): - return "nir_type_bool32" + return "nir_type_bool" elif isinstance(self.value, integer_types): return "nir_type_int" elif isinstance(self.value, float): @@ -199,7 +199,7 @@ class Variable(Value): def type(self): if self.required_type == 'bool': - return "nir_type_bool32" + return "nir_type_bool" elif self.required_type in ('int', 'uint'): return "nir_type_int" elif self.required_type == 'float': diff --git a/src/compiler/nir/nir_search.c b/src/compiler/nir/nir_search.c index 9c5cb547a70..1686b6bd0de 100644 --- a/src/compiler/nir/nir_search.c +++ b/src/compiler/nir/nir_search.c @@ -56,10 +56,6 @@ src_is_type(nir_src src, nir_alu_type type) if (!src.is_ssa) return false; - /* Turn nir_type_bool32 into nir_type_bool...they're the same thing. */ - if (nir_alu_type_get_base_type(type) == nir_type_bool) - type = nir_type_bool; - if (src.ssa->parent_instr->type == nir_instr_type_alu) { nir_alu_instr *src_alu = nir_instr_as_alu(src.ssa->parent_instr); nir_alu_type output_type = nir_op_infos[src_alu->op].output_type; @@ -196,7 +192,7 @@ match_value(const nir_search_value *value, nir_alu_instr *instr, unsigned src, case nir_type_int: case nir_type_uint: - case nir_type_bool32: { + case nir_type_bool: { unsigned bit_size = nir_src_bit_size(instr->src[src].src); uint64_t mask = bit_size == 64 ? UINT64_MAX : (1ull << bit_size) - 1; for (unsigned i = 0; i < num_components; ++i) { @@ -535,7 +531,8 @@ construct_value(const nir_search_value *value, } break; - case nir_type_bool32: + case nir_type_bool: + assert(bitsize->dest_size == 32); load->value.u32[0] = c->data.u; break; default: -- 2.30.2