performance improvements
This commit is contained in:
@@ -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 } => {
|
||||
|
||||
Reference in New Issue
Block a user