diff options
| author | Adrian Prantl <aprantl@apple.com> | 2016-07-14 00:41:18 +0000 |
|---|---|---|
| committer | Adrian Prantl <aprantl@apple.com> | 2016-07-14 00:41:18 +0000 |
| commit | 0418ef2691110903254f98214a869ddd682a31e7 (patch) | |
| tree | 17a884c0ac6894929c4f25e220125332d31129da /llvm/test/DebugInfo/dwarfdump-objc.test | |
| parent | ae610ab528a382a393aae26d2d67cee05cabe634 (diff) | |
| download | bcm5719-llvm-0418ef2691110903254f98214a869ddd682a31e7.tar.gz bcm5719-llvm-0418ef2691110903254f98214a869ddd682a31e7.zip | |
Synchronize LLVM and clang's ObjCDeclSpec::ObjCPropertyAttributeKind.
This adds Clang-specific DWARF constants for nullability and ObjC
class properties that are already generated by clang. This patch adds
dwarfdump support and a more comprehensive testcase.
<rdar://problem/27335745>
llvm-svn: 275354
Diffstat (limited to 'llvm/test/DebugInfo/dwarfdump-objc.test')
| -rw-r--r-- | llvm/test/DebugInfo/dwarfdump-objc.test | 47 |
1 files changed, 41 insertions, 6 deletions
diff --git a/llvm/test/DebugInfo/dwarfdump-objc.test b/llvm/test/DebugInfo/dwarfdump-objc.test index 6890c3a0471..60d0d2ff2e5 100644 --- a/llvm/test/DebugInfo/dwarfdump-objc.test +++ b/llvm/test/DebugInfo/dwarfdump-objc.test @@ -6,35 +6,70 @@ CHECK: DW_TAG_APPLE_property CHECK-NOT: TAG CHECK: DW_AT_APPLE_property_name {{.*}} "ReadOnly" CHECK-NOT: TAG -CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x01 (DW_APPLE_PROPERTY_readonly)) +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x0101 (DW_APPLE_PROPERTY_readonly, DW_APPLE_PROPERTY_atomic)) CHECK: DW_TAG_APPLE_property CHECK-NOT: TAG CHECK: DW_AT_APPLE_property_name {{.*}} "Assign" CHECK-NOT: TAG -CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x0c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite)) +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x090c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_atomic, DW_APPLE_PROPERTY_unsafe_unretained)) CHECK: DW_TAG_APPLE_property CHECK-NOT: TAG CHECK: DW_AT_APPLE_property_name {{.*}} "ReadWrite" CHECK-NOT: TAG -CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x0c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite)) +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x090c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_atomic, DW_APPLE_PROPERTY_unsafe_unretained)) CHECK: DW_TAG_APPLE_property CHECK-NOT: TAG CHECK: DW_AT_APPLE_property_name {{.*}} "Retain" CHECK-NOT: TAG -CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x18 (DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_retain)) +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x0118 (DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_retain, DW_APPLE_PROPERTY_atomic)) CHECK: DW_TAG_APPLE_property CHECK-NOT: TAG CHECK: DW_AT_APPLE_property_name {{.*}} "Copy" CHECK-NOT: TAG -CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x28 (DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_copy)) +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x0128 (DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_copy, DW_APPLE_PROPERTY_atomic)) CHECK: DW_TAG_APPLE_property CHECK-NOT: TAG CHECK: DW_AT_APPLE_property_name {{.*}} "NonAtomic" CHECK-NOT: TAG -CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x4c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_nonatomic)) +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x084c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_nonatomic, DW_APPLE_PROPERTY_unsafe_unretained)) +CHECK: DW_TAG_APPLE_property +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_name {{.*}} "Atomic" +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x090c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_atomic, DW_APPLE_PROPERTY_unsafe_unretained)) + +CHECK: DW_TAG_APPLE_property +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_name {{.*}} "Strong" +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x0508 (DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_atomic, DW_APPLE_PROPERTY_strong)) + +CHECK: DW_TAG_APPLE_property +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_name {{.*}} "UnsafeUnretained" +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x090c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_atomic, DW_APPLE_PROPERTY_unsafe_unretained)) + +CHECK: DW_TAG_APPLE_property +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_name {{.*}} "Nullability" +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x190c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_atomic, DW_APPLE_PROPERTY_unsafe_unretained, DW_APPLE_PROPERTY_nullability)) + +CHECK: DW_TAG_APPLE_property +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_name {{.*}} "NullResettable" +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x390c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_atomic, DW_APPLE_PROPERTY_unsafe_unretained, DW_APPLE_PROPERTY_nullability, DW_APPLE_PROPERTY_null_resettable)) + +CHECK: DW_TAG_APPLE_property +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_name {{.*}} "ClassProperty" +CHECK-NOT: TAG +CHECK: DW_AT_APPLE_property_attribute {{.*}} (0x490c (DW_APPLE_PROPERTY_assign, DW_APPLE_PROPERTY_readwrite, DW_APPLE_PROPERTY_atomic, DW_APPLE_PROPERTY_unsafe_unretained, DW_APPLE_PROPERTY_class)) |

