[clang] 40cef5a - [clang] Add a test for CGDebugInfo treatment of blocks
    Scott Linder via cfe-commits 
    cfe-commits at lists.llvm.org
       
    Fri Oct  9 12:09:20 PDT 2020
    
    
  
Author: Scott Linder
Date: 2020-10-09T19:03:21Z
New Revision: 40cef5a00eb83f44e946912b74be83e8dc02effb
URL: https://github.com/llvm/llvm-project/commit/40cef5a00eb83f44e946912b74be83e8dc02effb
DIFF: https://github.com/llvm/llvm-project/commit/40cef5a00eb83f44e946912b74be83e8dc02effb.diff
LOG: [clang] Add a test for CGDebugInfo treatment of blocks
There doesn't seem to be a direct test of this, and I'm planning to make
future changes which will affect it.
I'm not particularly familiar with the blocks extension, so suggestions
for better tests are welcome.
Differential Revision: https://reviews.llvm.org/D88754
Added: 
    clang/test/CodeGen/debug-info-block-expr.c
Modified: 
    
Removed: 
    
################################################################################
diff  --git a/clang/test/CodeGen/debug-info-block-expr.c b/clang/test/CodeGen/debug-info-block-expr.c
new file mode 100644
index 000000000000..009e7800b6ee
--- /dev/null
+++ b/clang/test/CodeGen/debug-info-block-expr.c
@@ -0,0 +1,9 @@
+// RUN: %clang_cc1 -fblocks -debug-info-kind=limited -emit-llvm -o - %s | FileCheck %s
+// Verify that the desired DIExpression are generated for blocks.
+
+void test() {
+// CHECK: call void @llvm.dbg.declare({{.*}}!DIExpression(DW_OP_plus_uconst, {{[0-9]+}}, DW_OP_deref, DW_OP_plus_uconst, {{[0-9]+}}){{.*}})
+  __block int i;
+// CHECK: call void @llvm.dbg.declare({{.*}}!DIExpression(DW_OP_deref, DW_OP_plus_uconst, {{[0-9]+}}, DW_OP_deref, DW_OP_plus_uconst, {{[0-9]+}}, DW_OP_deref, DW_OP_plus_uconst, {{[0-9]+}}){{.*}})
+  ^ { i = 1; }();
+}
        
    
    
More information about the cfe-commits
mailing list