Fix a major bug in the signed shr code, which apparently only breaks 134.perl!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17902 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2004-11-16 18:40:52 +00:00
parent be31d2ad78
commit 39a83dc37c
2 changed files with 3 additions and 2 deletions

View File

@ -635,7 +635,8 @@ void Emitter::emitInstruction(const MachineInstr &MI) {
(Desc.TSFlags & X86II::FormMask)-X86II::MRM0r);
if (MI.getOperand(MI.getNumOperands()-1).isImmediate()) {
emitConstant(MI.getOperand(MI.getNumOperands()-1).getImmedValue(), sizeOfImm(Desc));
emitConstant(MI.getOperand(MI.getNumOperands()-1).getImmedValue(),
sizeOfImm(Desc));
}
break;

View File

@ -2984,7 +2984,7 @@ void X86ISel::emitShiftOperation(MachineBasicBlock *MBB,
BuildMI(*MBB, IP, X86::MOV32rr, 1, DestReg+1).addReg(SrcReg);
BuildMI(*MBB, IP, X86::MOV32ri, 1, DestReg).addImm(0);
} else {
BuildMI(*MBB, IP, X86::MOV32rr, 1, DestReg).addReg(SrcReg);
BuildMI(*MBB, IP, X86::MOV32rr, 1, DestReg).addReg(SrcReg+1);
if (!isSigned) {
BuildMI(*MBB, IP, X86::MOV32ri, 1, DestReg+1).addImm(0);
} else {