summaryrefslogtreecommitdiff
path: root/clang/test/DebugInfo/KeyInstructions/array-cookie.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/DebugInfo/KeyInstructions/array-cookie.cpp')
-rw-r--r--clang/test/DebugInfo/KeyInstructions/array-cookie.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/test/DebugInfo/KeyInstructions/array-cookie.cpp b/clang/test/DebugInfo/KeyInstructions/array-cookie.cpp
new file mode 100644
index 000000000000..cfa343551d16
--- /dev/null
+++ b/clang/test/DebugInfo/KeyInstructions/array-cookie.cpp
@@ -0,0 +1,12 @@
+// RUN: %clang_cc1 -triple x86_64-linux-gnu -gkey-instructions %s -debug-info-kind=line-tables-only -gno-column-info -emit-llvm -o - \
+// RUN: | FileCheck %s
+
+// Array cookie store doesn't need to be a key instruction.
+
+struct a { char c; ~a(); };
+void b() { new a[2]; }
+
+// CHECK: %call = call {{.*}}ptr @_Znam(i64 noundef 10)
+// CHECK-NEXT: store i64 2, ptr %call, align 8, !dbg [[DBG:!.*]]
+
+// CHECK: [[DBG]] = !DILocation(line: 7, scope: ![[#]])