dyninstAPI: fix EmitterIA32::emitDivImm for powers of 2
authorJosh Stone <jistone@redhat.com>
Tue, 4 Aug 2015 17:58:31 +0000 (10:58 -0700)
committerJosh Stone <jistone@redhat.com>
Thu, 6 Aug 2015 05:39:57 +0000 (22:39 -0700)
commit6d0d022d191eaa752c375f4e645b445da082daf3
tree6520a55aeaf077a045f54129084bb2a94b9aa5a3
parent97b2ae0725aa25ce525bb37f2dc97d5999b872d7
dyninstAPI: fix EmitterIA32::emitDivImm for powers of 2

This tries to be clever and convert power-of-2 division into shifting
right, but the ia32 version had two bugs.  The call to emitMovRegToReg
should have had dest, then src, but this case was reversed.  Then the
raw opcodes for the intended SAR were accidentally encoding SAL.

The dest/src bug was reported by Coverity as SWAPPED_ARGUMENTS.
dyninstAPI/src/emit-x86.C