performance improvements

This commit is contained in:
2020-10-07 23:40:00 +02:00
parent a3eae0a8a9
commit e3fe3c6d72
18 changed files with 151 additions and 90 deletions
+4 -4
View File
@@ -64,13 +64,13 @@ impl OpTrait for ArithOp {
state.clear_status();
let x = state.read(*a)?;
let y = state.read(*b)?;
let (res, ov) = if let Some(v) = x.checked_mul(y) {
(v, false)
let res = if let Some(v) = x.checked_mul(y) {
v
} else {
(x.wrapping_mul(y), true)
state.set_flag(Cond::Overflow, true);
x.wrapping_mul(y)
};
state.update_status(res);
state.set_flag(Cond::Overflow, ov);
state.write(*dst, res)?;
}
ArithOp::Div { dst, rem, a, div } => {