• Home
  • History
  • Annotate
  • Raw
  • Download

Lines Matching refs:instr

36 is_pos_power_of_two(UNUSED struct hash_table *ht, nir_alu_instr *instr,  in is_pos_power_of_two()  argument
41 if (!nir_src_is_const(instr->src[src].src)) in is_pos_power_of_two()
45 nir_alu_type type = nir_op_infos[instr->op].input_types[src]; in is_pos_power_of_two()
48 int64_t val = nir_src_comp_as_int(instr->src[src].src, swizzle[i]); in is_pos_power_of_two()
54 uint64_t val = nir_src_comp_as_uint(instr->src[src].src, swizzle[i]); in is_pos_power_of_two()
68 is_neg_power_of_two(UNUSED struct hash_table *ht, nir_alu_instr *instr, in is_neg_power_of_two() argument
73 if (!nir_src_is_const(instr->src[src].src)) in is_neg_power_of_two()
77 nir_alu_type type = nir_op_infos[instr->op].input_types[src]; in is_neg_power_of_two()
80 int64_t val = nir_src_comp_as_int(instr->src[src].src, swizzle[i]); in is_neg_power_of_two()
95 is_unsigned_multiple_of_ ## test(UNUSED struct hash_table *ht, nir_alu_instr *instr, \
100 if (!nir_src_is_const(instr->src[src].src)) \
104 uint64_t val = nir_src_comp_as_uint(instr->src[src].src, swizzle[i]); \
120 is_zero_to_one(UNUSED struct hash_table *ht, nir_alu_instr *instr, unsigned src, in is_zero_to_one() argument
125 if (!nir_src_is_const(instr->src[src].src)) in is_zero_to_one()
129 switch (nir_op_infos[instr->op].input_types[src]) { in is_zero_to_one()
131 double val = nir_src_comp_as_float(instr->src[src].src, swizzle[i]); in is_zero_to_one()
151 is_gt_0_and_lt_1(UNUSED struct hash_table *ht, nir_alu_instr *instr, in is_gt_0_and_lt_1() argument
156 if (!nir_src_is_const(instr->src[src].src)) in is_gt_0_and_lt_1()
160 switch (nir_op_infos[instr->op].input_types[src]) { in is_gt_0_and_lt_1()
162 double val = nir_src_comp_as_float(instr->src[src].src, swizzle[i]); in is_gt_0_and_lt_1()
176 is_not_const_zero(UNUSED struct hash_table *ht, nir_alu_instr *instr, in is_not_const_zero() argument
180 if (nir_src_as_const_value(instr->src[src].src) == NULL) in is_not_const_zero()
184 nir_alu_type type = nir_op_infos[instr->op].input_types[src]; in is_not_const_zero()
187 if (nir_src_comp_as_float(instr->src[src].src, swizzle[i]) == 0.0) in is_not_const_zero()
193 if (nir_src_comp_as_uint(instr->src[src].src, swizzle[i]) == 0) in is_not_const_zero()
205 is_not_const(UNUSED struct hash_table *ht, nir_alu_instr *instr, unsigned src, in is_not_const() argument
209 return !nir_src_is_const(instr->src[src].src); in is_not_const()
213 is_not_fmul(struct hash_table *ht, nir_alu_instr *instr, unsigned src, in is_not_fmul() argument
217 nir_src_as_alu_instr(instr->src[src].src); in is_not_fmul()
229 is_fmul(struct hash_table *ht, nir_alu_instr *instr, unsigned src, in is_fmul() argument
233 nir_src_as_alu_instr(instr->src[src].src); in is_fmul()
245 is_fsign(nir_alu_instr *instr, unsigned src, in is_fsign() argument
249 nir_src_as_alu_instr(instr->src[src].src); in is_fsign()
261 is_not_const_and_not_fsign(struct hash_table *ht, nir_alu_instr *instr, unsigned src, in is_not_const_and_not_fsign() argument
264 return is_not_const(ht, instr, src, num_components, swizzle) && in is_not_const_and_not_fsign()
265 !is_fsign(instr, src, num_components, swizzle); in is_not_const_and_not_fsign()
269 is_used_once(nir_alu_instr *instr) in is_used_once() argument
271 bool zero_if_use = list_is_empty(&instr->dest.dest.ssa.if_uses); in is_used_once()
272 bool zero_use = list_is_empty(&instr->dest.dest.ssa.uses); in is_used_once()
277 if (!zero_if_use && list_is_singular(&instr->dest.dest.ssa.uses)) in is_used_once()
280 if (!zero_use && list_is_singular(&instr->dest.dest.ssa.if_uses)) in is_used_once()
283 if (!list_is_singular(&instr->dest.dest.ssa.if_uses) && in is_used_once()
284 !list_is_singular(&instr->dest.dest.ssa.uses)) in is_used_once()
291 is_used_by_if(nir_alu_instr *instr) in is_used_by_if() argument
293 return !list_is_empty(&instr->dest.dest.ssa.if_uses); in is_used_by_if()
297 is_not_used_by_if(nir_alu_instr *instr) in is_not_used_by_if() argument
299 return list_is_empty(&instr->dest.dest.ssa.if_uses); in is_not_used_by_if()
303 is_used_by_non_fsat(nir_alu_instr *instr) in is_used_by_non_fsat() argument
305 nir_foreach_use(src, &instr->dest.dest.ssa) { in is_used_by_non_fsat()
313 assert(instr != user_alu); in is_used_by_non_fsat()
328 nir_alu_instr *instr, unsigned src, in is_upper_half_zero() argument
331 if (nir_src_as_const_value(instr->src[src].src) == NULL) in is_upper_half_zero()
335 unsigned half_bit_size = nir_src_bit_size(instr->src[src].src) / 2; in is_upper_half_zero()
337 if ((nir_src_comp_as_uint(instr->src[src].src, in is_upper_half_zero()
353 nir_alu_instr *instr, unsigned src, in is_lower_half_zero() argument
356 if (nir_src_as_const_value(instr->src[src].src) == NULL) in is_lower_half_zero()
361 (1 << (nir_src_bit_size(instr->src[src].src) / 2)) - 1; in is_lower_half_zero()
362 if ((nir_src_comp_as_int(instr->src[src].src, swizzle[i]) & low_bits) != 0) in is_lower_half_zero()
370 no_signed_wrap(nir_alu_instr *instr) in no_signed_wrap() argument
372 return instr->no_signed_wrap; in no_signed_wrap()
376 no_unsigned_wrap(nir_alu_instr *instr) in no_unsigned_wrap() argument
378 return instr->no_unsigned_wrap; in no_unsigned_wrap()
382 is_integral(struct hash_table *ht, nir_alu_instr *instr, unsigned src, in is_integral() argument
385 const struct ssa_result_range r = nir_analyze_range(ht, instr, src); in is_integral()
392 is_ ## r (struct hash_table *ht, nir_alu_instr *instr, unsigned src, \
395 const struct ssa_result_range v = nir_analyze_range(ht, instr, src); \
406 is_not_negative(struct hash_table *ht, nir_alu_instr *instr, unsigned src, in RELATION()
409 const struct ssa_result_range v = nir_analyze_range(ht, instr, src); in RELATION()
414 is_not_positive(struct hash_table *ht, nir_alu_instr *instr, unsigned src, in is_not_positive() argument
417 const struct ssa_result_range v = nir_analyze_range(ht, instr, src); in is_not_positive()
422 is_not_zero(struct hash_table *ht, nir_alu_instr *instr, unsigned src, in is_not_zero() argument
425 const struct ssa_result_range v = nir_analyze_range(ht, instr, src); in is_not_zero()