On 2/15/22 10:56, Jakub Jelinek wrote:
+bool +gori_compute::condexpr_adjust (irange &r1, irange &r2, gimple *, tree cond, + tree op1, tree op2, fur_source &src) +{ + int_range_max tmp, cond_true, cond_false; + tree ssa1 = gimple_range_ssa_p (op1); + tree ssa2 = gimple_range_ssa_p (op2); + if (!ssa1 && !ssa2) + return false; + if (!COMPARISON_CLASS_P (cond)) + return false; + range_operator *hand = range_op_handler (TREE_CODE (cond), TREE_TYPE (op1));Maybe I'm missing something, but I would expect calling range_op_handler with the type of the comparison operands, i.e. TREE_TYPE (TREE_OPERAND (cond, 0)) or so, rather than the type of lhs/op1/op2. The comparison arguments could have a different type from lhs/op1/op2...
mmmm, true that. I will make that adjustment. Andrew
