From: Chris Lattner Date: Sun, 22 Feb 2004 17:05:38 +0000 (+0000) Subject: Fix bug in previous checkout: leave the iterator at the first instruction X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=827832c705fb5dae4929fc139c3ff828a61d3331;p=oota-llvm.git Fix bug in previous checkout: leave the iterator at the first instruction AFTER the GEP that was emitted. :( git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11712 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/X86/InstSelectSimple.cpp b/lib/Target/X86/InstSelectSimple.cpp index 97f14d21ea7..4aced20f954 100644 --- a/lib/Target/X86/InstSelectSimple.cpp +++ b/lib/Target/X86/InstSelectSimple.cpp @@ -212,7 +212,7 @@ namespace { /// emitGEPOperation - Common code shared between visitGetElementPtrInst and /// constant expression GEP support. /// - void emitGEPOperation(MachineBasicBlock *BB, MachineBasicBlock::iterator&IP, + void emitGEPOperation(MachineBasicBlock *BB, MachineBasicBlock::iterator IP, Value *Src, User::op_iterator IdxBegin, User::op_iterator IdxEnd, unsigned TargetReg); @@ -2202,13 +2202,12 @@ void ISel::visitVAArgInst(VAArgInst &I) { void ISel::visitGetElementPtrInst(GetElementPtrInst &I) { unsigned outputReg = getReg(I); - MachineBasicBlock::iterator MI = BB->end(); - emitGEPOperation(BB, MI, I.getOperand(0), + emitGEPOperation(BB, BB->end(), I.getOperand(0), I.op_begin()+1, I.op_end(), outputReg); } void ISel::emitGEPOperation(MachineBasicBlock *MBB, - MachineBasicBlock::iterator &IP, + MachineBasicBlock::iterator IP, Value *Src, User::op_iterator IdxBegin, User::op_iterator IdxEnd, unsigned TargetReg) { const TargetData &TD = TM.getTargetData(); diff --git a/lib/Target/X86/X86ISelSimple.cpp b/lib/Target/X86/X86ISelSimple.cpp index 97f14d21ea7..4aced20f954 100644 --- a/lib/Target/X86/X86ISelSimple.cpp +++ b/lib/Target/X86/X86ISelSimple.cpp @@ -212,7 +212,7 @@ namespace { /// emitGEPOperation - Common code shared between visitGetElementPtrInst and /// constant expression GEP support. /// - void emitGEPOperation(MachineBasicBlock *BB, MachineBasicBlock::iterator&IP, + void emitGEPOperation(MachineBasicBlock *BB, MachineBasicBlock::iterator IP, Value *Src, User::op_iterator IdxBegin, User::op_iterator IdxEnd, unsigned TargetReg); @@ -2202,13 +2202,12 @@ void ISel::visitVAArgInst(VAArgInst &I) { void ISel::visitGetElementPtrInst(GetElementPtrInst &I) { unsigned outputReg = getReg(I); - MachineBasicBlock::iterator MI = BB->end(); - emitGEPOperation(BB, MI, I.getOperand(0), + emitGEPOperation(BB, BB->end(), I.getOperand(0), I.op_begin()+1, I.op_end(), outputReg); } void ISel::emitGEPOperation(MachineBasicBlock *MBB, - MachineBasicBlock::iterator &IP, + MachineBasicBlock::iterator IP, Value *Src, User::op_iterator IdxBegin, User::op_iterator IdxEnd, unsigned TargetReg) { const TargetData &TD = TM.getTargetData();