Skip to content

Commit b08960f

Browse files
committed
[CGObjCMac] Replace calls to ConstantAggregateBuilderBase::addBitCast (NFC)
Replace calls to `ConstantAggregateBuilderBase::addBitCast` that involve a no-op ptr-to-ptr bitcast. Opaque ptr cleanup effort (NFC)
1 parent aeccab5 commit b08960f

File tree

1 file changed

+11
-17
lines changed

1 file changed

+11
-17
lines changed

clang/lib/CodeGen/CGObjCMac.cpp

Lines changed: 11 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2014,7 +2014,7 @@ CGObjCCommonMac::GenerateConstantNSString(const StringLiteral *Literal) {
20142014
// Don't enforce the target's minimum global alignment, since the only use
20152015
// of the string is via this class initializer.
20162016
GV->setAlignment(llvm::Align(1));
2017-
Fields.addBitCast(GV, CGM.Int8PtrTy);
2017+
Fields.add(GV);
20182018

20192019
// String length.
20202020
Fields.addInt(CGM.IntTy, StringLength);
@@ -3557,8 +3557,7 @@ void CGObjCMac::GenerateClass(const ObjCImplementationDecl *ID) {
35573557
// Record a reference to the super class.
35583558
LazySymbols.insert(Super->getIdentifier());
35593559

3560-
values.addBitCast(GetClassName(Super->getObjCRuntimeNameAsString()),
3561-
ObjCTypes.ClassPtrTy);
3560+
values.add(GetClassName(Super->getObjCRuntimeNameAsString()));
35623561
} else {
35633562
values.addNullPointer(ObjCTypes.ClassPtrTy);
35643563
}
@@ -3612,14 +3611,12 @@ llvm::Constant *CGObjCMac::EmitMetaClass(const ObjCImplementationDecl *ID,
36123611
const ObjCInterfaceDecl *Root = ID->getClassInterface();
36133612
while (const ObjCInterfaceDecl *Super = Root->getSuperClass())
36143613
Root = Super;
3615-
values.addBitCast(GetClassName(Root->getObjCRuntimeNameAsString()),
3616-
ObjCTypes.ClassPtrTy);
3614+
values.add(GetClassName(Root->getObjCRuntimeNameAsString()));
36173615
// The super class for the metaclass is emitted as the name of the
36183616
// super class. The runtime fixes this up to point to the
36193617
// *metaclass* for the super class.
36203618
if (ObjCInterfaceDecl *Super = ID->getClassInterface()->getSuperClass()) {
3621-
values.addBitCast(GetClassName(Super->getObjCRuntimeNameAsString()),
3622-
ObjCTypes.ClassPtrTy);
3619+
values.add(GetClassName(Super->getObjCRuntimeNameAsString()));
36233620
} else {
36243621
values.addNullPointer(ObjCTypes.ClassPtrTy);
36253622
}
@@ -3815,8 +3812,7 @@ llvm::Constant *CGObjCMac::EmitIvarList(const ObjCImplementationDecl *ID,
38153812
void CGObjCMac::emitMethodDescriptionConstant(ConstantArrayBuilder &builder,
38163813
const ObjCMethodDecl *MD) {
38173814
auto description = builder.beginStruct(ObjCTypes.MethodDescriptionTy);
3818-
description.addBitCast(GetMethodVarName(MD->getSelector()),
3819-
ObjCTypes.SelectorPtrTy);
3815+
description.add(GetMethodVarName(MD->getSelector()));
38203816
description.add(GetMethodVarType(MD));
38213817
description.finishAndAddTo(builder);
38223818
}
@@ -3834,10 +3830,9 @@ void CGObjCMac::emitMethodConstant(ConstantArrayBuilder &builder,
38343830
assert(fn && "no definition registered for method");
38353831

38363832
auto method = builder.beginStruct(ObjCTypes.MethodTy);
3837-
method.addBitCast(GetMethodVarName(MD->getSelector()),
3838-
ObjCTypes.SelectorPtrTy);
3833+
method.add(GetMethodVarName(MD->getSelector()));
38393834
method.add(GetMethodVarType(MD));
3840-
method.addBitCast(fn, ObjCTypes.Int8PtrTy);
3835+
method.add(fn);
38413836
method.finishAndAddTo(builder);
38423837
}
38433838

@@ -5191,10 +5186,10 @@ llvm::Constant *CGObjCMac::EmitModuleSymbols() {
51915186
if (ID->isWeakImported() && !IMP->isWeakImported())
51925187
DefinedClasses[i]->setLinkage(llvm::GlobalVariable::ExternalLinkage);
51935188

5194-
array.addBitCast(DefinedClasses[i], ObjCTypes.Int8PtrTy);
5189+
array.add(DefinedClasses[i]);
51955190
}
51965191
for (unsigned i=0; i<NumCategories; i++)
5197-
array.addBitCast(DefinedCategories[i], ObjCTypes.Int8PtrTy);
5192+
array.add(DefinedCategories[i]);
51985193

51995194
array.finishAndAddTo(values);
52005195

@@ -6735,8 +6730,7 @@ void CGObjCNonFragileABIMac::emitMethodConstant(ConstantArrayBuilder &builder,
67356730
const ObjCMethodDecl *MD,
67366731
bool forProtocol) {
67376732
auto method = builder.beginStruct(ObjCTypes.MethodTy);
6738-
method.addBitCast(GetMethodVarName(MD->getSelector()),
6739-
ObjCTypes.SelectorPtrTy);
6733+
method.add(GetMethodVarName(MD->getSelector()));
67406734
method.add(GetMethodVarType(MD));
67416735

67426736
if (forProtocol) {
@@ -6745,7 +6739,7 @@ void CGObjCNonFragileABIMac::emitMethodConstant(ConstantArrayBuilder &builder,
67456739
} else {
67466740
llvm::Function *fn = GetMethodDefinition(MD);
67476741
assert(fn && "no definition for method?");
6748-
method.addBitCast(fn, ObjCTypes.Int8PtrProgramASTy);
6742+
method.add(fn);
67496743
}
67506744

67516745
method.finishAndAddTo(builder);

0 commit comments

Comments
 (0)