nir/algebraic: Use bool internally instead of bool32

Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
This commit is contained in:
Jason Ekstrand
2018-10-18 22:31:08 -05:00
parent 00103db04a
commit 69618a8678
2 changed files with 5 additions and 8 deletions

View File

@@ -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':

View File

@@ -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: