reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/CodeGen/CGObjCMac.cpp
 1642     return ObjCTypes.getGetPropertyFn();
 1645     return ObjCTypes.getSetPropertyFn();
 1650     return ObjCTypes.getOptimizedSetPropertyFn(atomic, copy);
 1654     return ObjCTypes.getCopyStructFn();
 1658     return ObjCTypes.getCopyStructFn();
 1662     return ObjCTypes.getCppAtomicObjectFunction();
 1666     return ObjCTypes.getCppAtomicObjectFunction();
 1670     return ObjCTypes.getEnumerationMutationFn();
 6061                                                 ObjCTypes.Int8PtrTy);
 6063     llvm::ConstantArray::get(llvm::ArrayType::get(ObjCTypes.Int8PtrTy,
 6217   auto values = builder.beginStruct(ObjCTypes.ClassRonfABITy);
 6219   values.addInt(ObjCTypes.IntTy, flags);
 6220   values.addInt(ObjCTypes.IntTy, InstanceStart);
 6221   values.addInt(ObjCTypes.IntTy, InstanceSize);
 6223                 ? GetIvarLayoutName(nullptr, ObjCTypes)
 6264     values.addNullPointer(ObjCTypes.IvarListnfABIPtrTy);
 6265     values.add(GetIvarLayoutName(nullptr, ObjCTypes));
 6268         ID, ID->getClassInterface(), ObjCTypes, true));
 6274         ID, ID->getClassInterface(), ObjCTypes, false));
 6304   auto values = builder.beginStruct(ObjCTypes.ClassnfABITy);
 6309     values.addNullPointer(ObjCTypes.ClassnfABIPtrTy);
 6322       CGM.getDataLayout().getABITypeAlignment(ObjCTypes.ClassnfABITy)));
 6375         new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.CacheTy, false,
 6385           new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ImpnfABITy, false,
 6390         llvm::ConstantPointerNull::get(ObjCTypes.ImpnfABITy->getPointerTo());
 6395     CGM.getDataLayout().getTypeAllocSize(ObjCTypes.ClassnfABITy);
 6513                                    ObjCTypes.getExternalProtocolPtrTy());
 6558   auto values = builder.beginStruct(ObjCTypes.CategorynfABITy);
 6592                                 OCD, Category, ObjCTypes, false));
 6594                                 OCD, Category, ObjCTypes, true));
 6596     values.addNullPointer(ObjCTypes.ProtocolListnfABIPtrTy);
 6597     values.addNullPointer(ObjCTypes.PropertyListPtrTy);
 6598     values.addNullPointer(ObjCTypes.PropertyListPtrTy);
 6601   unsigned Size = CGM.getDataLayout().getTypeAllocSize(ObjCTypes.CategorynfABITy);
 6602   values.addInt(ObjCTypes.IntTy, Size);
 6631   auto method = builder.beginStruct(ObjCTypes.MethodTy);
 6633                     ObjCTypes.SelectorPtrTy);
 6638     method.addNullPointer(ObjCTypes.Int8PtrTy);
 6642     method.addBitCast(fn, ObjCTypes.Int8PtrTy);
 6661     return llvm::Constant::getNullValue(ObjCTypes.MethodListnfABIPtrTy);
 6705   unsigned Size = CGM.getDataLayout().getTypeAllocSize(ObjCTypes.MethodTy);
 6706   values.addInt(ObjCTypes.IntTy, Size);
 6708   values.addInt(ObjCTypes.IntTy, methods.size());
 6709   auto methodArray = values.beginArray(ObjCTypes.MethodTy);
 6717   return llvm::ConstantExpr::getBitCast(GV, ObjCTypes.MethodListnfABIPtrTy);
 6733         new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.IvarOffsetVarTy,
 6760       llvm::ConstantInt::get(ObjCTypes.IvarOffsetVarTy, Offset));
 6762       CGM.getDataLayout().getABITypeAlignment(ObjCTypes.IvarOffsetVarTy)));
 6808   ivarList.addInt(ObjCTypes.IntTy,
 6809                   CGM.getDataLayout().getTypeAllocSize(ObjCTypes.IvarnfABITy));
 6811   auto ivars = ivarList.beginArray(ObjCTypes.IvarnfABITy);
 6824     auto ivar = ivars.beginStruct(ObjCTypes.IvarnfABITy);
 6835     ivar.addInt(ObjCTypes.IntTy, Align);
 6841     ivar.addInt(ObjCTypes.IntTy, Size);
 6848     return llvm::Constant::getNullValue(ObjCTypes.IvarListnfABIPtrTy);
 6853   ivarList.fillPlaceholderWithInt(ivarCountSlot, ObjCTypes.IntTy, ivarCount);
 6859   return llvm::ConstantExpr::getBitCast(GV, ObjCTypes.IvarListnfABIPtrTy);
 6874     Entry = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ProtocolnfABITy,
 6920   auto values = builder.beginStruct(ObjCTypes.ProtocolnfABITy);
 6923   values.addNullPointer(ObjCTypes.ObjectPtrTy);
 6939                nullptr, PD, ObjCTypes, false));
 6941     CGM.getDataLayout().getTypeAllocSize(ObjCTypes.ProtocolnfABITy);
 6942   values.addInt(ObjCTypes.IntTy, Size);
 6943   values.addInt(ObjCTypes.IntTy, 0);
 6947                                      ObjCTypes));
 6950   values.addNullPointer(ObjCTypes.Int8PtrTy);
 6954       nullptr, PD, ObjCTypes, true));
 6983     new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ProtocolnfABIPtrTy,
 6989       CGM.getDataLayout().getABITypeAlignment(ObjCTypes.ProtocolnfABIPtrTy)));
 7013     return llvm::Constant::getNullValue(ObjCTypes.ProtocolListnfABIPtrTy);
 7021     return llvm::ConstantExpr::getBitCast(GV, ObjCTypes.ProtocolListnfABIPtrTy);
 7028   auto array = values.beginArray(ObjCTypes.ProtocolnfABIPtrTy);
 7032   array.addNullPointer(ObjCTypes.ProtocolnfABIPtrTy);
 7035   values.fillPlaceholderWithInt(countSlot, ObjCTypes.LongTy, count);
 7040                                         ObjCTypes.ProtocolListnfABIPtrTy);
 7068         ObjCTypes.IvarOffsetVarTy,
 7083   if (ObjCTypes.IvarOffsetVarTy == ObjCTypes.IntTy)
 7083   if (ObjCTypes.IvarOffsetVarTy == ObjCTypes.IntTy)
 7085         IvarOffsetValue, ObjCTypes.LongTy, true, "ivar.conv");
 7127     arg0 = CGF.Builder.CreateBitCast(arg0, ObjCTypes.ObjectPtrTy);
 7132   args.add(RValue::get(nullptr), ObjCTypes.MessageRefCPtrTy);
 7151       fn = ObjCTypes.getMessageSendSuper2StretFixupFn();
 7155       fn = ObjCTypes.getMessageSendStretFixupFn();
 7159     fn = ObjCTypes.getMessageSendFpretFixupFn();
 7163       fn = ObjCTypes.getMessageSendSuper2FixupFn();
 7166       fn = ObjCTypes.getMessageSendFixupFn();
 7205     Address(CGF.Builder.CreateBitCast(messageRef, ObjCTypes.MessageRefPtrTy),
 7240                       false, CallArgs, Method, Class, ObjCTypes);
 7266   if (!GV || GV->getType() != ObjCTypes.ClassnfABITy->getPointerTo()) {
 7267     auto *NewGV = new llvm::GlobalVariable(ObjCTypes.ClassnfABITy, false, L,
 7294   ClassGV = llvm::ConstantExpr::getPointerCast(ClassGV, ObjCTypes.Int8PtrTy);
 7310       ObjCTypes.getLoadClassrefFn(), Entry, "load_classref_result");
 7330       assert(ClassGV->getType() == ObjCTypes.ClassnfABIPtrTy &&
 7355     return EmitClassRefViaRuntime(CGF, ID, ObjCTypes);
 7400         CGM.getModule(), ObjCTypes.ClassnfABIPtrTy, false,
 7443     CGF.CreateTempAlloca(ObjCTypes.SuperTy, CGF.getPointerAlign(),
 7447     CGF.Builder.CreateBitCast(Receiver, ObjCTypes.ObjectPtrTy);
 7467                             ObjCSuper.getPointer(), ObjCTypes.SuperPtrCTy,
 7471                       ObjCSuper.getPointer(), ObjCTypes.SuperPtrCTy,
 7472                       true, CallArgs, Method, Class, ObjCTypes);
 7493                                      ObjCTypes.SelectorPtrTy);
 7497         CGM.getModule(), ObjCTypes.SelectorPtrTy, false,
 7520     src = (Size == 4 ? CGF.Builder.CreateBitCast(src, ObjCTypes.IntTy)
 7521            : CGF.Builder.CreateBitCast(src, ObjCTypes.LongTy));
 7522     src = CGF.Builder.CreateIntToPtr(src, ObjCTypes.Int8PtrTy);
 7524   src = CGF.Builder.CreateBitCast(src, ObjCTypes.ObjectPtrTy);
 7525   dst = CGF.Builder.CreateBitCast(dst, ObjCTypes.PtrObjectPtrTy);
 7527   CGF.EmitNounwindRuntimeCall(ObjCTypes.getGcAssignIvarFn(), args);
 7540     src = (Size == 4 ? CGF.Builder.CreateBitCast(src, ObjCTypes.IntTy)
 7541            : CGF.Builder.CreateBitCast(src, ObjCTypes.LongTy));
 7542     src = CGF.Builder.CreateIntToPtr(src, ObjCTypes.Int8PtrTy);
 7544   src = CGF.Builder.CreateBitCast(src, ObjCTypes.ObjectPtrTy);
 7545   dst = CGF.Builder.CreateBitCast(dst, ObjCTypes.PtrObjectPtrTy);
 7547   CGF.EmitNounwindRuntimeCall(ObjCTypes.getGcAssignStrongCastFn(),
 7556   SrcPtr = CGF.Builder.CreateBitCast(SrcPtr, ObjCTypes.Int8PtrTy);
 7557   DestPtr = CGF.Builder.CreateBitCast(DestPtr, ObjCTypes.Int8PtrTy);
 7559   CGF.EmitNounwindRuntimeCall(ObjCTypes.GcMemmoveCollectableFn(), args);
 7569   AddrWeakObj = CGF.Builder.CreateBitCast(AddrWeakObj, ObjCTypes.PtrObjectPtrTy);
 7571     CGF.EmitNounwindRuntimeCall(ObjCTypes.getGcReadWeakFn(),
 7586     src = (Size == 4 ? CGF.Builder.CreateBitCast(src, ObjCTypes.IntTy)
 7587            : CGF.Builder.CreateBitCast(src, ObjCTypes.LongTy));
 7588     src = CGF.Builder.CreateIntToPtr(src, ObjCTypes.Int8PtrTy);
 7590   src = CGF.Builder.CreateBitCast(src, ObjCTypes.ObjectPtrTy);
 7591   dst = CGF.Builder.CreateBitCast(dst, ObjCTypes.PtrObjectPtrTy);
 7593   CGF.EmitNounwindRuntimeCall(ObjCTypes.getGcAssignWeakFn(),
 7607     src = (Size == 4 ? CGF.Builder.CreateBitCast(src, ObjCTypes.IntTy)
 7608            : CGF.Builder.CreateBitCast(src, ObjCTypes.LongTy));
 7609     src = CGF.Builder.CreateIntToPtr(src, ObjCTypes.Int8PtrTy);
 7611   src = CGF.Builder.CreateBitCast(src, ObjCTypes.ObjectPtrTy);
 7612   dst = CGF.Builder.CreateBitCast(dst, ObjCTypes.PtrObjectPtrTy);
 7615     CGF.EmitNounwindRuntimeCall(ObjCTypes.getGcAssignGlobalFn(),
 7618     CGF.EmitNounwindRuntimeCall(ObjCTypes.getGcAssignThreadLocalFn(),
 7625   EmitAtSynchronizedStmt(CGF, S, ObjCTypes.getSyncEnterFn(),
 7626                          ObjCTypes.getSyncExitFn());
 7636           new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.EHTypeTy, false,
 7657   EmitTryCatchStmt(CGF, S, ObjCTypes.getObjCBeginCatchFn(),
 7658                    ObjCTypes.getObjCEndCatchFn(),
 7659                    ObjCTypes.getExceptionRethrowFn());
 7668     Exception = CGF.Builder.CreateBitCast(Exception, ObjCTypes.ObjectPtrTy);
 7670         CGF.EmitRuntimeCallOrInvoke(ObjCTypes.getExceptionThrowFn(), Exception);
 7674         CGF.EmitRuntimeCallOrInvoke(ObjCTypes.getExceptionRethrowFn());
 7699       Entry = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.EHTypeTy,
 7714         new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.Int8PtrTy, false,
 7723   auto values = builder.beginStruct(ObjCTypes.EHTypeTy);