MIR: Add remaining arithmetic operations
What
Completed remaining arithmetic operations in MIR as per #6622
How
. Addition and subtraction have direct rust counterparts;
. Edivision was implemented using rust's div_rem which gives the truncated division result. To obtain the Euclidean division result, the code checks the sign of the divisor and quotient to correctly convert one division into the other;
. Shifts for naturals have native rust counterparts, while operations in Bytes required an original solution, performing the operation out of place;
Manually testing the MR
The examples shown in Michelson reference are all already implemented and execute successfully with cargo test.
Edited by Luciano Freitas