Sign extend byte immediates as well. There might need to be a fancier system in place to handle this in the future.

--HG--
extra : convert_revision : 2c5bd719c770d9a93a57bd29782842f82384863d
This commit is contained in:
Gabe Black 2007-06-14 20:52:24 +00:00
parent 7213944110
commit dad3058224

View file

@ -390,8 +390,15 @@ namespace X86ISA
//Instructions which use true 64 bit immediates won't be
//affected, and instructions that use true 32 bit immediates
//won't notice.
if(immediateSize == 4)
switch(immediateSize)
{
case 4:
emi.immediate = sext<32>(emi.immediate);
break;
case 1:
emi.immediate = sext<8>(emi.immediate);
}
DPRINTF(Predecoder, "Collected immediate %#x.\n",
emi.immediate);
emiIsReady = true;