(&mut self, a: Value, b: Value)
| 812 | } |
| 813 | |
| 814 | fn compile_sub(&mut self, a: Value, b: Value) -> Value { |
| 815 | let (out, carry) = self.builder.ins().ssub_overflow(a, b); |
| 816 | self.builder.ins().trapnz(carry, TrapCode::INTEGER_OVERFLOW); |
| 817 | out |
| 818 | } |
| 819 | |
| 820 | /// Creates a double–double (DDValue) from a regular f64 constant. |
| 821 | /// The high part is set to x and the low part is set to 0.0. |