diff options
Diffstat (limited to 'lib/CodeGen/CGStmt.cpp')
-rw-r--r-- | lib/CodeGen/CGStmt.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/CodeGen/CGStmt.cpp b/lib/CodeGen/CGStmt.cpp index e40508669a..a66b6fec04 100644 --- a/lib/CodeGen/CGStmt.cpp +++ b/lib/CodeGen/CGStmt.cpp @@ -250,13 +250,12 @@ void CodeGenFunction::EmitIfStmt(const IfStmt &S) { // Otherwise, the condition did not fold, or we couldn't elide it. Just emit // the conditional branch. - llvm::BasicBlock *ThenBlock = createBasicBlock("ifthen"); - llvm::BasicBlock *ElseBlock = createBasicBlock("ifelse"); - EmitBranchOnBoolExpr(S.getCond(), ThenBlock, ElseBlock); - - llvm::BasicBlock *ContBlock = ElseBlock; + llvm::BasicBlock *ThenBlock = createBasicBlock("if.then"); + llvm::BasicBlock *ContBlock = createBasicBlock("if.end"); + llvm::BasicBlock *ElseBlock = ContBlock; if (S.getElse()) - ContBlock = createBasicBlock("ifend"); + ElseBlock = createBasicBlock("if.else"); + EmitBranchOnBoolExpr(S.getCond(), ThenBlock, ElseBlock); // Emit the 'then' code. EmitBlock(ThenBlock); |