[clang] [clang][DebugInfo][test] Convert Objective-C property2.m test to check LLVM IR (PR #165297)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Oct 27 12:14:37 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Michael Buch (Michael137)
<details>
<summary>Changes</summary>
This patch series renames these Objective-C property tests to something more descriptive and adjusts them to check IR. Currently the tests check raw assembly output (not even dwarfdump). Which most likely hid some bugs around property debug-info.
---
Full diff: https://github.com/llvm/llvm-project/pull/165297.diff
2 Files Affected:
- (added) clang/test/DebugInfo/ObjC/property-explicit-ivar.m (+22)
- (removed) clang/test/DebugInfo/ObjC/property2.m (-15)
``````````diff
diff --git a/clang/test/DebugInfo/ObjC/property-explicit-ivar.m b/clang/test/DebugInfo/ObjC/property-explicit-ivar.m
new file mode 100644
index 0000000000000..5092e23e195f8
--- /dev/null
+++ b/clang/test/DebugInfo/ObjC/property-explicit-ivar.m
@@ -0,0 +1,22 @@
+// RUN: %clang_cc1 -emit-llvm -debug-info-kind=limited %s -o - | FileCheck %s
+
+// CHECK: ![[BASE_PROP:[0-9]+]] = !DIObjCProperty(name: "base"
+// CHECK-SAME: attributes: 2316
+// CHECK-SAME: type: ![[P1_TYPE:[0-9]+]]
+//
+// CHECK: ![[P1_TYPE]] = !DIBasicType(name: "int"
+//
+// CHECK: !DIDerivedType(tag: DW_TAG_member, name: "_customIvar"
+// CHECK-SAME: extraData: ![[BASE_PROP]]
+
+ at interface C {
+ int _customIvar;
+}
+ at property int base;
+ at end
+
+ at implementation C
+ at synthesize base = _customIvar;
+ at end
+
+void foo(C *cptr) {}
diff --git a/clang/test/DebugInfo/ObjC/property2.m b/clang/test/DebugInfo/ObjC/property2.m
deleted file mode 100644
index 7e0a5e9f954ba..0000000000000
--- a/clang/test/DebugInfo/ObjC/property2.m
+++ /dev/null
@@ -1,15 +0,0 @@
-// FIXME: Check IR rather than asm, then triple is not needed.
-// RUN: %clang_cc1 -triple %itanium_abi_triple -S -debug-info-kind=limited %s -o - | FileCheck %s
-
-// CHECK: AT_APPLE_property_name
- at interface C {
- int _base;
-}
- at property int base;
- at end
-
- at implementation C
- at synthesize base = _base;
- at end
-
-void foo(C *cptr) {}
``````````
</details>
https://github.com/llvm/llvm-project/pull/165297
More information about the cfe-commits
mailing list