| 878 | } |
| 879 | |
| 880 | expr expr::add_no_usoverflow(const expr &rhs) const { |
| 881 | if (min_leading_zeros() >= 1 && rhs.min_leading_zeros() >= 1) |
| 882 | return true; |
| 883 | |
| 884 | return (zext(1) + rhs.sext(1)).sign() == 0; |
| 885 | } |
| 886 | |
| 887 | expr expr::sub_no_soverflow(const expr &rhs) const { |
| 888 | if (min_leading_zeros() >= 1 && rhs.min_leading_zeros() >= 1) |
no test coverage detected