From fc4f64eed018d60953bb848505f2d9b388e4a3aa Mon Sep 17 00:00:00 2001 From: Bill Wendling Date: Fri, 22 Aug 2008 20:51:05 +0000 Subject: Reverting r55190, r55191, and r55192. They broke the build with this error message: {standard input}:17:bad register name `%sil' make[4]: *** [libgcc/./_addvsi3.o] Error 1 make[4]: *** Waiting for unfinished jobs.... {standard input}:23:bad register name `%dil' {standard input}:28:bad register name `%dil' make[4]: *** [libgcc/./_addvdi3.o] Error 1 {standard input}:18:bad register name `%sil' make[4]: *** [libgcc/./_subvsi3.o] Error 1 llvm-svn: 55200 --- llvm/lib/CodeGen/SelectionDAG/FastISel.cpp | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) (limited to 'llvm/lib/CodeGen/SelectionDAG/FastISel.cpp') diff --git a/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp b/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp index fb4de574a85..1462472ea4a 100644 --- a/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp @@ -145,8 +145,6 @@ BasicBlock::iterator FastISel::SelectInstructions(BasicBlock::iterator Begin, BasicBlock::iterator End, DenseMap &ValueMap, - std::map &MBBMap, MachineBasicBlock *mbb) { MBB = mbb; BasicBlock::iterator I = Begin; @@ -197,24 +195,19 @@ FastISel::SelectInstructions(BasicBlock::iterator Begin, case Instruction::Br: { BranchInst *BI = cast(I); + // For now, check for and handle just the most trivial case: an + // unconditional fall-through branch. if (BI->isUnconditional()) { - MachineFunction::iterator NextMBB = + MachineFunction::iterator NextMBB = next(MachineFunction::iterator(MBB)); - BasicBlock *LLVMSucc = BI->getSuccessor(0); - MachineBasicBlock *MSucc = MBBMap[LLVMSucc]; - - if (NextMBB != MF.end() && MSucc == NextMBB) { - // The unconditional fall-through case, which needs no instructions. - } else { - // The unconditional branch case. - TII.InsertBranch(*MBB, MSucc, NULL, SmallVector()); + if (NextMBB != MF.end() && + NextMBB->getBasicBlock() == BI->getSuccessor(0)) { + MBB->addSuccessor(NextMBB); + break; } - MBB->addSuccessor(MSucc); - break; } - // Conditional branches are not handed yet. - // Halt "fast" selection and bail. + // Something more complicated. Halt "fast" selection and bail. return I; } -- cgit v1.2.3