| 1260 | } |
| 1261 | |
| 1262 | expr expr::fneg() const { |
| 1263 | if (isBV()) { |
| 1264 | auto signbit = bits() - 1; |
| 1265 | return (extract(signbit, signbit) ^ mkUInt(1, 1)) |
| 1266 | .concat(extract(signbit - 1, 0)); |
| 1267 | } |
| 1268 | return unop_fold(Z3_mk_fpa_neg); |
| 1269 | } |
| 1270 | |
| 1271 | expr expr::copysign(const expr &sign) const { |
| 1272 | auto sign_bit = sign.bits() - 1; |
no test coverage detected