diff --git a/lib/Target/Mips/MipsInstrInfo.cpp b/lib/Target/Mips/MipsInstrInfo.cpp index be08f837d59..ad92d41209e 100644 --- a/lib/Target/Mips/MipsInstrInfo.cpp +++ b/lib/Target/Mips/MipsInstrInfo.cpp @@ -226,8 +226,6 @@ AnalyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, return BT_None; } - BranchInstrs.insert(BranchInstrs.begin(), SecondLastInst); - // If there is only one terminator instruction, process it. if (!SecondLastOpc) { // Unconditional branch @@ -246,6 +244,8 @@ AnalyzeBranch(MachineBasicBlock &MBB, MachineBasicBlock *&TBB, if (++I != REnd && isUnpredicatedTerminator(&*I)) return BT_None; + BranchInstrs.insert(BranchInstrs.begin(), SecondLastInst); + // If second to last instruction is an unconditional branch, // analyze it and remove the last instruction. if (SecondLastOpc == UncondBrOpc) {