Sorry, just realised that the poly_int_tree_p tests are redundant. The caller has already checked that.
Indeed, I will removed poly_int_tree_p tests like the following code. Thanks for timely remind.
/* Returns true if we know who is smaller or equal, ARG1 or ARG2, and set the
min value to RES. */ bool can_min_p (const_tree arg1, const_tree arg2, poly_wide_int &res) { if (known_le (wi::to_poly_widest (arg1), wi::to_poly_widest (arg2))) { res = wi::to_poly_wide (arg1); return true; } else if (known_le (wi::to_poly_widest (arg2), wi::to_poly_widest (arg1))) { res = wi::to_poly_wide (arg2); return true; } return false; } -- Best, Lehua