[clang] 5d9df8f - [clang][DebugInfo][test] Convert Objective-C property2.m test to check LLVM IR (#165297)
via cfe-commits
cfe-commits at lists.llvm.org
Mon Oct 27 12:43:58 PDT 2025
Author: Michael Buch
Date: 2025-10-27T19:43:54Z
New Revision: 5d9df8f29ab46156d6f6decb43a3b364f88a9587
URL: https://github.com/llvm/llvm-project/commit/5d9df8f29ab46156d6f6decb43a3b364f88a9587
DIFF: https://github.com/llvm/llvm-project/commit/5d9df8f29ab46156d6f6decb43a3b364f88a9587.diff
LOG: [clang][DebugInfo][test] Convert Objective-C property2.m test to check LLVM IR (#165297)
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.
Added:
clang/test/DebugInfo/ObjC/property-explicit-ivar.m
Modified:
Removed:
clang/test/DebugInfo/ObjC/property2.m
################################################################################
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) {}
More information about the cfe-commits
mailing list