diff options
author | Hsiangkai Wang <hsiangkai@gmail.com> | 2019-01-24 05:34:29 +0000 |
---|---|---|
committer | Hsiangkai Wang <hsiangkai@gmail.com> | 2019-01-24 05:34:29 +0000 |
commit | 3575149092ee3b87d063b006dc947263603ec164 (patch) | |
tree | 94445bbdf42ab3e72cc0962f3ed0a3674a0ea4b5 /clang/test/CodeGen/debug-label.c | |
parent | 56515a2c76ff32c451004f8270f2ea59b793ab02 (diff) | |
download | bcm5719-llvm-3575149092ee3b87d063b006dc947263603ec164.tar.gz bcm5719-llvm-3575149092ee3b87d063b006dc947263603ec164.zip |
Reland r345009 "[DebugInfo] Generate debug information for labels."
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.
After landing D54199 and D54465 to fix Chromium build failed.
Differential Revision: https://reviews.llvm.org/D45045
llvm-svn: 352025
Diffstat (limited to 'clang/test/CodeGen/debug-label.c')
-rw-r--r-- | clang/test/CodeGen/debug-label.c | 16 |
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, |