| Manman Ren | 3f93d3d | 2013-07-24 01:26:37 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as < %s | llvm-dis | FileCheck %s |
| Victor Hernandez | dc6e65a | 2010-01-05 22:22:14 +0000 | [diff] [blame] | 2 | |
| 3 | define void @Foo(i32 %a, i32 %b) { |
| 4 | entry: |
| Manman Ren | 3f93d3d | 2013-07-24 01:26:37 +0000 | [diff] [blame] | 5 | call void @llvm.dbg.value(metadata !{ i32* %1 }, i64 16, metadata !2) |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 6 | ; CHECK: call void @llvm.dbg.value(metadata !{i32* %1}, i64 16, metadata ![[ID2:[0-9]+]]) |
| Victor Hernandez | b658d30 | 2010-01-14 01:51:28 +0000 | [diff] [blame] | 7 | %0 = add i32 %a, 1 ; <i32> [#uses=1] |
| 8 | %two = add i32 %b, %0 ; <i32> [#uses=0] |
| 9 | %1 = alloca i32 ; <i32*> [#uses=1] |
| Victor Hernandez | dc6e65a | 2010-01-05 22:22:14 +0000 | [diff] [blame] | 10 | |
| Victor Hernandez | b324e66 | 2010-01-15 19:04:09 +0000 | [diff] [blame] | 11 | call void @llvm.dbg.declare(metadata !{i32* %1}, metadata !{i32* %1}) |
| 12 | ; CHECK: metadata !{i32* %1}, metadata !{i32* %1} |
| 13 | call void @llvm.dbg.declare(metadata !{i32 %two}, metadata !{i32 %0}) |
| 14 | ; CHECK: metadata !{i32 %two}, metadata !{i32 %0} |
| 15 | call void @llvm.dbg.declare(metadata !{i32 %0}, metadata !{i32* %1, i32 %0}) |
| 16 | ; CHECK: metadata !{i32 %0}, metadata !{i32* %1, i32 %0} |
| 17 | call void @llvm.dbg.declare(metadata !{i32* %1}, metadata !{i32 %b, i32 %0}) |
| 18 | ; CHECK: metadata !{i32* %1}, metadata !{i32 %b, i32 %0} |
| 19 | call void @llvm.dbg.declare(metadata !{i32 %a}, metadata !{i32 %a, metadata !"foo"}) |
| 20 | ; CHECK: metadata !{i32 %a}, metadata !{i32 %a, metadata !"foo"} |
| 21 | call void @llvm.dbg.declare(metadata !{i32 %b}, metadata !{metadata !0, i32 %two}) |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 22 | ; CHECK: metadata !{i32 %b}, metadata !{metadata ![[ID0:[0-9]+]], i32 %two} |
| Victor Hernandez | dc6e65a | 2010-01-05 22:22:14 +0000 | [diff] [blame] | 23 | |
| Victor Hernandez | d2b4f36 | 2010-01-14 02:12:41 +0000 | [diff] [blame] | 24 | call void @llvm.dbg.value(metadata !{ i32 %a }, i64 0, metadata !1) |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 25 | ; CHECK: metadata !{i32 %a}, i64 0, metadata ![[ID1:[0-9]+]] |
| Victor Hernandez | d2b4f36 | 2010-01-14 02:12:41 +0000 | [diff] [blame] | 26 | call void @llvm.dbg.value(metadata !{ i32 %0 }, i64 25, metadata !0) |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 27 | ; CHECK: metadata !{i32 %0}, i64 25, metadata ![[ID0]] |
| Manman Ren | 3f93d3d | 2013-07-24 01:26:37 +0000 | [diff] [blame] | 28 | call void @llvm.dbg.value(metadata !{ i32* %1 }, i64 16, metadata !3) |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 29 | ; CHECK: call void @llvm.dbg.value(metadata !{i32* %1}, i64 16, metadata ![[ID3:[0-9]+]]) |
| Manman Ren | 3f93d3d | 2013-07-24 01:26:37 +0000 | [diff] [blame] | 30 | call void @llvm.dbg.value(metadata !3, i64 12, metadata !2) |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 31 | ; CHECK: metadata ![[ID3]], i64 12, metadata ![[ID2]] |
| Victor Hernandez | d2b4f36 | 2010-01-14 02:12:41 +0000 | [diff] [blame] | 32 | |
| Victor Hernandez | dc6e65a | 2010-01-05 22:22:14 +0000 | [diff] [blame] | 33 | ret void, !foo !0, !bar !1 |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 34 | ; CHECK: ret void, !foo ![[FOO:[0-9]+]], !bar ![[BAR:[0-9]+]] |
| Victor Hernandez | dc6e65a | 2010-01-05 22:22:14 +0000 | [diff] [blame] | 35 | } |
| 36 | |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 37 | !llvm.module.flags = !{!4} |
| 38 | |
| Victor Hernandez | dc6e65a | 2010-01-05 22:22:14 +0000 | [diff] [blame] | 39 | !0 = metadata !{i32 662302, i32 26, metadata !1, null} |
| 40 | !1 = metadata !{i32 4, metadata !"foo"} |
| Manman Ren | 3f93d3d | 2013-07-24 01:26:37 +0000 | [diff] [blame] | 41 | !2 = metadata !{metadata !"bar"} |
| 42 | !3 = metadata !{metadata !"foo"} |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 43 | !4 = metadata !{i32 1, metadata !"Debug Info Version", i32 1} |
| Victor Hernandez | dc6e65a | 2010-01-05 22:22:14 +0000 | [diff] [blame] | 44 | |
| Victor Hernandez | b324e66 | 2010-01-15 19:04:09 +0000 | [diff] [blame] | 45 | declare void @llvm.dbg.declare(metadata, metadata) nounwind readnone |
| Victor Hernandez | d2b4f36 | 2010-01-14 02:12:41 +0000 | [diff] [blame] | 46 | declare void @llvm.dbg.value(metadata, i64, metadata) nounwind readnone |
| Victor Hernandez | dc6e65a | 2010-01-05 22:22:14 +0000 | [diff] [blame] | 47 | |
| 48 | !foo = !{ !0 } |
| 49 | !bar = !{ !1 } |
| Manman Ren | d664bd7 | 2013-11-23 01:16:29 +0000 | [diff] [blame] | 50 | |
| 51 | ; CHECK: !foo = !{![[FOO]]} |
| 52 | ; CHECK: !bar = !{![[BAR]]} |
| 53 | ; CHECK: ![[ID0]] = metadata !{i32 662302, i32 26, metadata ![[ID1]], null} |
| 54 | ; CHECK: ![[ID1]] = metadata !{i32 4, metadata !"foo"} |
| 55 | ; CHECK: ![[ID2]] = metadata !{metadata !"bar"} |
| Benjamin Kramer | c10563d | 2014-01-11 21:06:00 +0000 | [diff] [blame] | 56 | ; CHECK: ![[ID3]] = metadata !{metadata !"foo"} |