summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2018-10-18 22:31:08 -0500
committerJason Ekstrand <[email protected]>2018-10-22 16:00:18 -0500
commit69618a867858cceeaa59eca732eb76c7677e73a8 (patch)
tree36dfb05742cf8d95af6b7af9b306fe62563dbc9d
parent00103db04ab879fc19f305e23ac384d843241b6c (diff)
nir/algebraic: Use bool internally instead of bool32
Reviewed-by: Samuel Iglesias Gonsálvez <[email protected]>
-rw-r--r--src/compiler/nir/nir_algebraic.py4
-rw-r--r--src/compiler/nir/nir_search.c9
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: