summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/debug-label.c
diff options
context:
space:
mode:
authorHsiangkai Wang <hsiangkai@gmail.com>2018-10-23 08:06:21 +0000
committerHsiangkai Wang <hsiangkai@gmail.com>2018-10-23 08:06:21 +0000
commit63b099050c890ca7a29e369ae25aa42d286fe5dd (patch)
treed8ffb419c25de12d5f8485db561fa7489126adef /clang/test/CodeGen/debug-label.c
parent7d9b3a682e4375e6db9d5e945f19c5da3c4eabef (diff)
downloadbcm5719-llvm-63b099050c890ca7a29e369ae25aa42d286fe5dd.tar.gz
bcm5719-llvm-63b099050c890ca7a29e369ae25aa42d286fe5dd.zip
[DebugInfo] Generate debug information for labels. (After fix PR39094)
Generate DILabel metadata and call llvm.dbg.label after label statement to associate the metadata with the label. After fixing PR37395. After fixing problems in LiveDebugVariables. After fixing NULL symbol problems in AddressPool when enabling split-dwarf-file. After fixing PR39094. Differential Revision: https://reviews.llvm.org/D45045 llvm-svn: 345009
Diffstat (limited to 'clang/test/CodeGen/debug-label.c')
-rw-r--r--clang/test/CodeGen/debug-label.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/CodeGen/debug-label.c b/clang/test/CodeGen/debug-label.c
new file mode 100644
index 00000000000..20efa49b0a4
--- /dev/null
+++ b/clang/test/CodeGen/debug-label.c
@@ -0,0 +1,16 @@
+// This test will test the correstness of generating DILabel and
+// llvm.dbg.label for labels.
+//
+// RUN: %clang_cc1 -emit-llvm %s -o - -emit-llvm -debug-info-kind=limited | FileCheck %s
+
+int f1(int a, int b) {
+ int sum;
+
+top:
+ // CHECK: call void @llvm.dbg.label(metadata [[LABEL_METADATA:!.*]]), !dbg [[LABEL_LOCATION:!.*]]
+ sum = a + b;
+ return sum;
+}
+
+// CHECK: [[LABEL_METADATA]] = !DILabel({{.*}}, name: "top", {{.*}}, line: 9)
+// CHECK: [[LABEL_LOCATION]] = !DILocation(line: 9,
OpenPOWER on IntegriCloud