Hi dblaikie, echristo,

Attirbute 'nodebug' means no llvm.dbg.* intrinsics, no !dbg annotations, and no 
DISubprogram for the function.

http://reviews.llvm.org/D10747

Files:
  test/CodeGen/attr-nodebug.c

Index: test/CodeGen/attr-nodebug.c
===================================================================
--- test/CodeGen/attr-nodebug.c
+++ test/CodeGen/attr-nodebug.c
@@ -1,5 +1,4 @@
-// RUN: %clang_cc1 -g -emit-llvm -o %t %s
-// RUN: not grep 'call void @llvm.dbg.func.start' %t
+// RUN: %clang_cc1 -g -emit-llvm -o - %s | FileCheck %s
 
 void t1() __attribute__((nodebug));
 
@@ -10,3 +9,10 @@
   a++;
 }
 
+// IR should have no llvm.dbg.* calls, or !dbg annotations.
+// CHECK-LABEL: @t1
+// CHECK-NOT:   dbg
+// CHECK:       }
+
+// And no function description for debug info.
+// CHECK-NOT: DISubprogram

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
Index: test/CodeGen/attr-nodebug.c
===================================================================
--- test/CodeGen/attr-nodebug.c
+++ test/CodeGen/attr-nodebug.c
@@ -1,5 +1,4 @@
-// RUN: %clang_cc1 -g -emit-llvm -o %t %s
-// RUN: not grep 'call void @llvm.dbg.func.start' %t
+// RUN: %clang_cc1 -g -emit-llvm -o - %s | FileCheck %s
 
 void t1() __attribute__((nodebug));
 
@@ -10,3 +9,10 @@
   a++;
 }
 
+// IR should have no llvm.dbg.* calls, or !dbg annotations.
+// CHECK-LABEL: @t1
+// CHECK-NOT:   dbg
+// CHECK:       }
+
+// And no function description for debug info.
+// CHECK-NOT: DISubprogram
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to