I'm trying to understand how this line works:
lea (%eax, %eax, 4), %eax
So it looks like this essentially says:
%eax = 5* %eax
But does LEA treat as signed or unsigned?
LEA is not really intended to do arithmetic operations but to calculate the absolute address of a memory operation.
There would be no difference between a signed and an unsigned operation; the result for a signed operation and an unsigned operation is the same in this case.
As far as I know there is no possibility to multiply a register with a negative constant using the LEA instruction
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With