summaryrefslogtreecommitdiffstats
path: root/test/CodeGen/debug-info-gline-tables-only.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/debug-info-gline-tables-only.c')
-rw-r--r--test/CodeGen/debug-info-gline-tables-only.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/CodeGen/debug-info-gline-tables-only.c b/test/CodeGen/debug-info-gline-tables-only.c
new file mode 100644
index 0000000..067d8e7
--- /dev/null
+++ b/test/CodeGen/debug-info-gline-tables-only.c
@@ -0,0 +1,33 @@
+// RUN: %clang_cc1 %s -gline-tables-only -S -emit-llvm -o - | FileCheck %s
+// Checks that clang with "-gline-tables-only" doesn't emit debug info
+// for variables and types.
+
+// CHECK-NOT: DW_TAG_variable
+int global = 42;
+
+// CHECK-NOT: DW_TAG_typedef
+// CHECK-NOT: DW_TAG_const_type
+// CHECK-NOT: DW_TAG_pointer_type
+// CHECK-NOT: DW_TAG_array_type
+typedef const char* constCharPtrArray[10];
+
+// CHECK-NOT: DW_TAG_structure_type
+struct S {
+ // CHECK-NOT: DW_TAG_member
+ char a;
+ double b;
+ constCharPtrArray c;
+};
+
+// CHECK-NOT: DW_TAG_enumerator
+// CHECK-NOT: DW_TAG_enumeration_type
+enum E { ZERO = 0, ONE = 1 };
+
+// CHECK-NOT: DW_TAG_arg_variable
+int sum(int p, int q) {
+ // CHECK-NOT: DW_TAG_auto_variable
+ int r = p + q;
+ struct S s;
+ enum E e;
+ return r;
+}
OpenPOWER on IntegriCloud