[llvm-commits] [llvm] r90247 - in /llvm/trunk: lib/CodeGen/AsmPrinter/DwarfDebug.cpp test/DebugInfo/2009-12-01-CurrentFn.ll
Devang Patel
dpatel at apple.com
Tue Dec 1 10:13:48 PST 2009
Author: dpatel
Date: Tue Dec 1 12:13:48 2009
New Revision: 90247
URL: http://llvm.org/viewvc/llvm-project?rev=90247&view=rev
Log:
Clear function specific containers while processing end of a function, even if DW_TAG_subprogram for current function is not found.
Added:
llvm/trunk/test/DebugInfo/2009-12-01-CurrentFn.ll
Modified:
llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
Modified: llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp?rev=90247&r1=90246&r2=90247&view=diff
==============================================================================
--- llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp (original)
+++ llvm/trunk/lib/CodeGen/AsmPrinter/DwarfDebug.cpp Tue Dec 1 12:13:48 2009
@@ -2092,17 +2092,15 @@
MMI->getFrameMoves()));
// Clear debug info
- if (CurrentFnDbgScope) {
- CurrentFnDbgScope = NULL;
- DbgScopeMap.clear();
- DbgScopeBeginMap.clear();
- DbgScopeEndMap.clear();
- ConcreteScopes.clear();
- AbstractScopesList.clear();
- }
+ CurrentFnDbgScope = NULL;
+ DbgScopeMap.clear();
+ DbgScopeBeginMap.clear();
+ DbgScopeEndMap.clear();
+ ConcreteScopes.clear();
+ AbstractScopesList.clear();
Lines.clear();
-
+
if (TimePassesIsEnabled)
DebugTimer->stopTimer();
}
Added: llvm/trunk/test/DebugInfo/2009-12-01-CurrentFn.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/2009-12-01-CurrentFn.ll?rev=90247&view=auto
==============================================================================
--- llvm/trunk/test/DebugInfo/2009-12-01-CurrentFn.ll (added)
+++ llvm/trunk/test/DebugInfo/2009-12-01-CurrentFn.ll Tue Dec 1 12:13:48 2009
@@ -0,0 +1,17 @@
+; RUN: llc < %s | grep "func_end1:" | count 1
+
+declare void @foo()
+
+define void @bar(i32 %i) nounwind ssp {
+entry:
+ tail call void @foo() nounwind, !dbg !0
+ ret void, !dbg !0
+}
+
+!0 = metadata !{i32 9, i32 0, metadata !1, null}
+!1 = metadata !{i32 458798, i32 0, metadata !2, metadata !"baz", metadata !"baz", metadata !"baz", metadata !2, i32 8, metadata !3, i1 true, i1 true}; [DW_TAG_subprogram ]
+!2 = metadata !{i32 458769, i32 0, i32 1, metadata !"2007-12-VarArrayDebug.c", metadata !"/Volumes/Data/ddunbar/llvm/test/FrontendC", metadata !"4.2.1 (Based on Apple Inc. build 5653) (LLVM build)", i1 true, i1 true, metadata !"", i32 0}; [DW_TAG_compile_unit ]
+!3 = metadata !{i32 458773, metadata !2, metadata !"", metadata !2, i32 0, i64 0, i64 0, i64 0, i32 0, null, metadata !4, i32 0}; [DW_TAG_subroutine_type ]
+!4 = metadata !{null, metadata !5}
+!5 = metadata !{i32 458788, metadata !2, metadata !"int", metadata !2, i32 0, i64 32, i64 32, i64 0, i32 0, i32 5}; [DW_TAG_base_type ]
+
More information about the llvm-commits
mailing list