diff options
author | Devang Patel <dpatel@apple.com> | 2011-03-30 00:08:31 +0000 |
---|---|---|
committer | Devang Patel <dpatel@apple.com> | 2011-03-30 00:08:31 +0000 |
commit | acd723666777b4ac1f79a97b6a300e6cf919d519 (patch) | |
tree | 0f2e9e1e654130ef44c8bcf5a18adeebe199cd3f /lib/CodeGen/CGStmt.cpp | |
parent | 1b02dcdbe0aa9733b4ff2657216bd52a493f5627 (diff) |
Fix in r128471 is very broad. Some of the unconditional branches need line number information for better user experience.
Restrict the fix. This fixes break.exp failures from gdb testsuite.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@128513 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGStmt.cpp')
-rw-r--r-- | lib/CodeGen/CGStmt.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/CodeGen/CGStmt.cpp b/lib/CodeGen/CGStmt.cpp index add85a2a06..e72d5c73f5 100644 --- a/lib/CodeGen/CGStmt.cpp +++ b/lib/CodeGen/CGStmt.cpp @@ -270,9 +270,6 @@ void CodeGenFunction::EmitBranch(llvm::BasicBlock *Target) { // terminated, don't touch it. } else { // Otherwise, create a fall-through branch. - // There is no need to emit line number for unconditional branch. - if (getDebugInfo()) - Builder.SetCurrentDebugLocation(llvm::DebugLoc()); Builder.CreateBr(Target); } @@ -400,11 +397,17 @@ void CodeGenFunction::EmitIfStmt(const IfStmt &S) { // Emit the 'else' code if present. if (const Stmt *Else = S.getElse()) { + // There is no need to emit line number for unconditional branch. + if (getDebugInfo()) + Builder.SetCurrentDebugLocation(llvm::DebugLoc()); EmitBlock(ElseBlock); { RunCleanupsScope ElseScope(*this); EmitStmt(Else); } + // There is no need to emit line number for unconditional branch. + if (getDebugInfo()) + Builder.SetCurrentDebugLocation(llvm::DebugLoc()); EmitBranch(ContBlock); } |