aboutsummaryrefslogtreecommitdiff
path: root/test/DebugInfo
diff options
context:
space:
mode:
authorRoman Divacky <rdivacky@FreeBSD.org>2009-10-23 14:19:52 +0000
committerRoman Divacky <rdivacky@FreeBSD.org>2009-10-23 14:19:52 +0000
commit4a142eb28942073eb27a112b5ca1cca3f01beb9c (patch)
tree22cc59e4b240d84c3a5a60531119c4eca914a256 /test/DebugInfo
parent5cd822fa9bbb9622241e3bf4d7674ed49ccde5b9 (diff)
Notes
Diffstat (limited to 'test/DebugInfo')
-rw-r--r--test/DebugInfo/2009-10-16-Phi.ll13
-rw-r--r--test/DebugInfo/2009-10-16-Scope.ll33
2 files changed, 46 insertions, 0 deletions
diff --git a/test/DebugInfo/2009-10-16-Phi.ll b/test/DebugInfo/2009-10-16-Phi.ll
new file mode 100644
index 000000000000..fc0375186df9
--- /dev/null
+++ b/test/DebugInfo/2009-10-16-Phi.ll
@@ -0,0 +1,13 @@
+; RUN: llvm-as %s -disable-output
+
+define i32 @foo() {
+E:
+ br label %B2
+B1:
+ br label %B2
+B2:
+ %0 = phi i32 [ 0, %E ], [ 1, %B1 ], !dbg !0
+ ret i32 %0
+}
+
+!0 = metadata !{i32 42} \ No newline at end of file
diff --git a/test/DebugInfo/2009-10-16-Scope.ll b/test/DebugInfo/2009-10-16-Scope.ll
new file mode 100644
index 000000000000..ea43249668a4
--- /dev/null
+++ b/test/DebugInfo/2009-10-16-Scope.ll
@@ -0,0 +1,33 @@
+; RUN: llc %s -O0 -o /dev/null
+; PR 5197
+; There is not any llvm instruction assocated with !5. The code generator
+; should be able to handle this.
+
+define void @bar() nounwind ssp {
+entry:
+ %count_ = alloca i32, align 4 ; <i32*> [#uses=2]
+ br label %do.body, !dbg !0
+
+do.body: ; preds = %entry
+ %0 = bitcast i32* %count_ to { }* ; <{ }*> [#uses=1]
+ call void @llvm.dbg.declare({ }* %0, metadata !4)
+ %conv = ptrtoint i32* %count_ to i32, !dbg !0 ; <i32> [#uses=1]
+ %call = call i32 @foo(i32 %conv) ssp, !dbg !0 ; <i32> [#uses=0]
+ br label %do.end, !dbg !0
+
+do.end: ; preds = %do.body
+ ret void, !dbg !7
+}
+
+declare void @llvm.dbg.declare({ }*, metadata) nounwind readnone
+
+declare i32 @foo(i32) ssp
+
+!0 = metadata !{i32 5, i32 2, metadata !1, null}
+!1 = metadata !{i32 458763, metadata !2}; [DW_TAG_lexical_block ]
+!2 = metadata !{i32 458798, i32 0, metadata !3, metadata !"bar", metadata !"bar", metadata !"bar", metadata !3, i32 4, null, i1 false, i1 true}; [DW_TAG_subprogram ]
+!3 = metadata !{i32 458769, i32 0, i32 12, metadata !"genmodes.i", metadata !"/Users/yash/Downloads", metadata !"clang 1.1", i1 true, i1 false, metadata !"", i32 0}; [DW_TAG_compile_unit ]
+!4 = metadata !{i32 459008, metadata !5, metadata !"count_", metadata !3, i32 5, metadata !6}; [ DW_TAG_auto_variable ]
+!5 = metadata !{i32 458763, metadata !1}; [DW_TAG_lexical_block ]
+!6 = metadata !{i32 458788, metadata !3, metadata !"int", metadata !3, i32 0, i64 32, i64 32, i64 0, i32 0, i32 5}; [DW_TAG_base_type ]
+!7 = metadata !{i32 6, i32 1, metadata !2, null}