summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorAdrian Prantl <aprantl@apple.com>2013-04-02 01:00:48 +0000
committerAdrian Prantl <aprantl@apple.com>2013-04-02 01:00:48 +0000
commit2832b4e8cb2da0a3d06646fb6b3d5d4a92b30364 (patch)
tree7e3b7e98a93e8070fc4b836979649eedc6166b70 /clang/lib
parente189b869c552167bbb7fad22549a6703d6c9f9fc (diff)
downloadbcm5719-llvm-2832b4e8cb2da0a3d06646fb6b3d5d4a92b30364.tar.gz
bcm5719-llvm-2832b4e8cb2da0a3d06646fb6b3d5d4a92b30364.zip
un-break remaining gdb buildbot testcases.
Make sure we do not generate line info for debugging-related frame setup. Follow-up to r178361 / rdar://problem/12767564 llvm-svn: 178517
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/CodeGen/CGBlocks.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CGBlocks.cpp b/clang/lib/CodeGen/CGBlocks.cpp
index d702b856cdc..374c824a204 100644
--- a/clang/lib/CodeGen/CGBlocks.cpp
+++ b/clang/lib/CodeGen/CGBlocks.cpp
@@ -1147,7 +1147,13 @@ CodeGenFunction::GenerateBlockFunction(GlobalDecl GD,
"block.addr");
unsigned Align = getContext().getDeclAlign(&selfDecl).getQuantity();
Alloca->setAlignment(Align);
+ // Set the DebugLocation to empty, so the store is recognized as a
+ // frame setup instruction by llvm::DwarfDebug::beginFunction().
+ llvm::DebugLoc Empty;
+ llvm::DebugLoc Loc = Builder.getCurrentDebugLocation();
+ Builder.SetCurrentDebugLocation(Empty);
Builder.CreateAlignedStore(BlockPointer, Alloca, Align);
+ Builder.SetCurrentDebugLocation(Loc);
BlockPointerDbgLoc = Alloca;
}
OpenPOWER on IntegriCloud