Skip to content

Commit 75af694

Browse files
committed
[CodeGenObjC] Place property names in __objc_methname
This allows the property name to deduplicate with the accessor method name. rdar://58927964
1 parent 9769e1e commit 75af694

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

clang/lib/CodeGen/CGObjCMac.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4225,7 +4225,8 @@ CGObjCCommonMac::CreateCStringLiteral(StringRef Name, ObjCLabelType Type,
42254225
: "__TEXT,__cstring,cstring_literals";
42264226
break;
42274227
case ObjCLabelType::PropertyName:
4228-
Section = "__TEXT,__cstring,cstring_literals";
4228+
Section = NonFragile ? "__TEXT,__objc_methname,cstring_literals"
4229+
: "__TEXT,__cstring,cstring_literals";
42294230
break;
42304231
}
42314232

clang/test/CodeGenObjC/metadata-symbols-64.m

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
// CHECK: @"_OBJC_METACLASS_RO_$_A" = internal global {{.*}} section "__DATA, __objc_const", align 8
1818
// CHECK: @"_OBJC_$_INSTANCE_METHODS_A" = internal global {{.*}} section "__DATA, __objc_const", align 8
1919
// CHECK: @"_OBJC_$_INSTANCE_VARIABLES_A" = internal global {{.*}} section "__DATA, __objc_const", align 8
20-
// CHECK: @OBJC_PROP_NAME_ATTR_{{[0-9]*}} = private unnamed_addr constant {{.*}} section "__TEXT,__cstring,cstring_literals", align 1
20+
// CHECK: @OBJC_PROP_NAME_ATTR_{{[0-9]*}} = private unnamed_addr constant {{.*}} section "__TEXT,__objc_methname,cstring_literals", align 1
2121
// CHECK: @"_OBJC_$_PROP_LIST_A" = internal global {{.*}} section "__DATA, __objc_const", align 8
2222
// CHECK: @"_OBJC_CLASS_RO_$_A" = internal global {{.*}} section "__DATA, __objc_const", align 8
2323
// CHECK: @"_OBJC_$_CATEGORY_INSTANCE_METHODS_A_$_Cat" = internal global {{.*}} section "__DATA, __objc_const", align 8

0 commit comments

Comments
 (0)