Lines Matching refs:baserange
80 ir_rvalue *prune_expression(ir_expression *expr, minmax_range baserange);
353 * @param baserange the range that the parents of this min/max expression
357 ir_minmax_visitor::prune_expression(ir_expression *expr, minmax_range baserange)
397 /* If this operand is always greater than baserange, then even if
401 if (!is_redundant && limits[i].low && baserange.high) {
402 cr = compare_components(limits[i].low, baserange.high);
415 /* If this operand is always lower than baserange, then even if
419 if (!is_redundant && limits[i].high && baserange.low) {
420 cr = compare_components(limits[i].high, baserange.low);
433 return prune_expression(op_expr, baserange);
455 /* Now recurse to operands giving them the proper baserange. The baserange
456 * to pass is the intersection of our baserange and the other operand's
458 * intersection, we use the current baserange.
464 /* We can only compute a new baserange for this operand if we managed
471 minmax_range base = range_intersection(limits[1 - i], baserange);