Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:CGM

66       CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
69 llvm::AttributeSet::get(CGM.getLLVMContext(),
81 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(CGM.VoidTy,
94 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(CGM.DoubleTy,
111 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(resultType,
123 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
134 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
145 return CGM.CreateRuntimeFunction(
146 llvm::FunctionType::get(CGM.VoidTy, params, true),
156 return CGM.CreateRuntimeFunction(
157 llvm::FunctionType::get(CGM.VoidTy, params, true),
172 CodeGen::CodeGenModule &CGM;
198 CodeGen::CodeGenTypes &Types = CGM.getTypes();
199 ASTContext &Ctx = CGM.getContext();
236 CodeGen::CodeGenTypes &Types = CGM.getTypes();
237 ASTContext &Ctx = CGM.getContext();
250 return CGM.CreateRuntimeFunction(FTy, "objc_getProperty");
254 CodeGen::CodeGenTypes &Types = CGM.getTypes();
255 ASTContext &Ctx = CGM.getContext();
271 return CGM.CreateRuntimeFunction(FTy, "objc_setProperty");
275 CodeGen::CodeGenTypes &Types = CGM.getTypes();
276 ASTContext &Ctx = CGM.getContext();
308 return CGM.CreateRuntimeFunction(FTy, name);
312 CodeGen::CodeGenTypes &Types = CGM.getTypes();
313 ASTContext &Ctx = CGM.getContext();
326 return CGM.CreateRuntimeFunction(FTy, "objc_copyStruct");
334 CodeGen::CodeGenTypes &Types = CGM.getTypes();
335 ASTContext &Ctx = CGM.getContext();
346 return CGM.CreateRuntimeFunction(FTy, "objc_copyCppObjectAtomic");
350 CodeGen::CodeGenTypes &Types = CGM.getTypes();
351 ASTContext &Ctx = CGM.getContext();
360 return CGM.CreateRuntimeFunction(FTy, "objc_enumerationMutation");
369 return CGM.CreateRuntimeFunction(FTy, "objc_read_weak");
378 return CGM.CreateRuntimeFunction(FTy, "objc_assign_weak");
387 return CGM.CreateRuntimeFunction(FTy, "objc_assign_global");
396 return CGM.CreateRuntimeFunction(FTy, "objc_assign_threadlocal");
403 CGM.PtrDiffTy };
406 return CGM.CreateRuntimeFunction(FTy, "objc_assign_ivar");
414 return CGM.CreateRuntimeFunction(FTy, "objc_memmove_collectable");
423 return CGM.CreateRuntimeFunction(FTy, "objc_assign_strongCast");
431 llvm::FunctionType::get(CGM.VoidTy, args, false);
432 return CGM.CreateRuntimeFunction(FTy, "objc_exception_throw");
438 llvm::FunctionType *FTy = llvm::FunctionType::get(CGM.VoidTy, false);
439 return CGM.CreateRuntimeFunction(FTy, "objc_exception_rethrow");
447 llvm::FunctionType::get(CGM.IntTy, args, false);
448 return CGM.CreateRuntimeFunction(FTy, "objc_sync_enter");
456 llvm::FunctionType::get(CGM.IntTy, args, false);
457 return CGM.CreateRuntimeFunction(FTy, "objc_sync_exit");
492 ObjCCommonTypesHelper(CodeGen::CodeGenModule &cgm);
557 return CGM.CreateRuntimeFunction(
558 llvm::FunctionType::get(CGM.VoidTy, params, false),
565 return CGM.CreateRuntimeFunction(
566 llvm::FunctionType::get(CGM.VoidTy, params, false),
573 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
581 return CGM.CreateRuntimeFunction(
582 llvm::FunctionType::get(CGM.Int32Ty, params, false),
590 llvm::Type *params[] = { CGM.Int32Ty->getPointerTo() };
592 CGM.CreateRuntimeFunction(llvm::FunctionType::get(CGM.Int32Ty,
595 llvm::AttributeSet::get(CGM.getLLVMContext(),
601 ObjCTypesHelper(CodeGen::CodeGenModule &cgm);
684 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
692 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
700 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
709 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
718 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy,
724 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(CGM.VoidTy, false),
731 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(Int8PtrTy,
739 ObjCNonFragileABITypesHelper(CodeGen::CodeGenModule &cgm);
1045 CGObjCCommonMac(CodeGen::CodeGenModule &cgm) :
1046 CGObjCRuntime(cgm), VMContext(cgm.getLLVMContext()) { }
1065 llvm::Constant *BuildGCBlockLayout(CodeGen::CodeGenModule &CGM,
1067 llvm::Constant *BuildRCBlockLayout(CodeGen::CodeGenModule &CGM,
1070 llvm::Constant *BuildByrefLayout(CodeGen::CodeGenModule &CGM,
1185 CGObjCMac(CodeGen::CodeGenModule &cgm);
1425 IdentifierInfo* II = &CGM.getContext().Idents.get(name);
1426 return CGM.getContext().Selectors.getSelector(0, &II);
1430 IdentifierInfo* II = &CGM.getContext().Idents.get(name);
1431 return CGM.getContext().Selectors.getSelector(1, &II);
1459 CGObjCNonFragileABIMac(CodeGen::CodeGenModule &cgm);
1634 llvm::Constant *null = CGF.CGM.EmitNullConstant(resultType);
1706 CGObjCMac::CGObjCMac(CodeGen::CodeGenModule &cgm) : CGObjCCommonMac(cgm),
1707 ObjCTypes(cgm) {
1732 return CGM.GetAddrOfRTTIDescriptor(
1733 CGM.getContext().getObjCIdRedefinitionType(), /*ForEH=*/true);
1737 return CGM.GetAddrOfRTTIDescriptor(
1738 CGM.getContext().getObjCClassRedefinitionType(), /*ForEH=*/true);
1741 return CGM.GetAddrOfRTTIDescriptor(T, /*ForEH=*/true);
1767 return (CGM.getLangOpts().NoConstantCFStrings == 0 ?
1768 CGM.GetAddrOfConstantCFString(SL) :
1769 CGM.GetAddrOfConstantString(SL));
1829 CGM.getTypes().ConvertType(CGF.getContext().getObjCClassType());
1876 assert(CGM.getContext().getCanonicalType(Method->getReturnType()) ==
1877 CGM.getContext().getCanonicalType(ResultType) &&
1883 if (CGM.ReturnSlotInterferesWithArgs(MSI.CallInfo)) {
1887 } else if (CGM.ReturnTypeUsesFPRet(ResultType)) {
1890 } else if (CGM.ReturnTypeUsesFP2Ret(ResultType)) {
1896 if (!IsSuper && CGM.ReturnTypeUsesSRet(MSI.CallInfo))
1903 if (CGM.getLangOpts().ObjCAutoRefCount && Method)
1939 llvm::Constant *CGObjCCommonMac::BuildGCBlockLayout(CodeGenModule &CGM,
1942 llvm::Constant *nullPtr = llvm::Constant::getNullValue(CGM.Int8PtrTy);
1943 if (CGM.getLangOpts().getGC() == LangOptions::NonGC &&
1944 !CGM.getLangOpts().ObjCAutoRefCount)
1950 unsigned WordSizeInBits = CGM.getTarget().getPointerWidth(0);
1951 unsigned ByteSizeInBits = CGM.getTarget().getCharWidth();
1961 CGM.getDataLayout().getStructLayout(blockInfo.StructureType);
1990 Qualifiers::GC GCAttr = GetGCAttrTypeForType(CGM.getContext(), type);
1991 unsigned fieldSize = CGM.getContext().getTypeSize(type);
2011 if (CGM.getLangOpts().ObjCGCBitmapPrint) {
2030 if (CGM.getLangOpts().ObjCAutoRefCount)
2077 unsigned ByteSizeInBits = CGM.getTarget().getCharWidth();
2083 const ASTRecordLayout &RL = CGM.getContext().getASTRecordLayout(RD);
2085 CGM.getContext().toCharUnitsFromBits(RL.getFieldOffset(i));
2105 if (const ArrayType *Array = CGM.getContext().getAsArrayType(FQT)) {
2111 while (const ArrayType *Array = CGM.getContext().getAsArrayType(FQT)) {
2127 CharUnits Size = CGM.getContext().getTypeSizeInChars(RT);
2137 CharUnits FieldSize = CGM.getContext().getTypeSizeInChars(Field->getType());
2157 = LastFieldBitfieldOrUnnamed->getBitWidthValue(CGM.getContext());
2171 = CGM.getContext().getTypeSizeInChars(LastFieldBitfieldOrUnnamed->getType());
2193 llvm::Type *Ty = CGM.getTypes().ConvertType(QualType(RT, 0));
2195 CGM.getDataLayout().getStructLayout(cast<llvm::StructType>(Ty));
2307 llvm::Constant *nullPtr = llvm::Constant::getNullValue(CGM.Int8PtrTy);
2310 unsigned WordSizeInBits = CGM.getTarget().getPointerWidth(0);
2311 unsigned ByteSizeInBits = CGM.getTarget().getCharWidth();
2382 if (CGM.getLangOpts().ObjCGCBitmapPrint) {
2391 return llvm::Constant::getIntegerValue(CGM.Int64Ty, Instruction);
2395 return llvm::Constant::getIntegerValue(CGM.Int32Ty, Instruction);
2405 if (CGM.getLangOpts().ObjCGCBitmapPrint) {
2455 llvm::Constant *CGObjCCommonMac::BuildRCBlockLayout(CodeGenModule &CGM,
2457 assert(CGM.getLangOpts().getGC() == LangOptions::NonGC);
2462 unsigned WordSizeInBits = CGM.getTarget().getPointerWidth(0);
2463 unsigned ByteSizeInBits = CGM.getTarget().getCharWidth();
2470 CGM.getDataLayout().getStructLayout(blockInfo.StructureType);
2501 fieldSize = CGM.getContext().getTypeSizeInChars(type);
2509 llvm::Constant *CGObjCCommonMac::BuildByrefLayout(CodeGen::CodeGenModule &CGM,
2511 assert(CGM.getLangOpts().getGC() == LangOptions::NonGC);
2521 llvm::Constant *nullPtr = llvm::Constant::getNullValue(CGM.Int8PtrTy);
2529 LazySymbols.insert(&CGM.getContext().Idents.get("Protocol"));
2587 LazySymbols.insert(&CGM.getContext().Idents.get("Protocol"));
2647 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ProtocolTy, false,
2658 CGM.addCompilerUsedGlobal(Entry);
2671 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ProtocolTy, false,
2699 CGM.getDataLayout().getTypeAllocSize(ObjCTypes.ProtocolExtensionTy);
2828 CGM.getDataLayout().getTypeAllocSize(ObjCTypes.PropertyTy);
2915 unsigned Size = CGM.getDataLayout().getTypeAllocSize(ObjCTypes.CategoryTy);
3048 CGM.getContext().getASTObjCImplementationLayout(ID).getSize().getQuantity();
3109 llvm::GlobalVariable *GV = CGM.getModule().getGlobalVariable(Name, true);
3116 CGM.addCompilerUsedGlobal(GV);
3130 unsigned Size = CGM.getDataLayout().getTypeAllocSize(ObjCTypes.ClassTy);
3177 llvm::GlobalVariable *GV = CGM.getModule().getGlobalVariable(Name, true);
3183 GV = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ClassTy, false,
3190 CGM.addCompilerUsedGlobal(GV);
3206 llvm::GlobalVariable *GV = CGM.getModule().getGlobalVariable(Name, true);
3208 GV = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ClassTy, false,
3220 llvm::GlobalVariable *GV = CGM.getModule().getGlobalVariable(Name, true);
3223 GV = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ClassTy, false,
3243 CGM.getDataLayout().getTypeAllocSize(ObjCTypes.ClassExtensionTy);
3297 ComputeIvarBaseOffset(CGM, OID, IVD))
3380 CodeGenTypes &Types = CGM.getTypes();
3387 &CGM.getModule());
3400 new llvm::GlobalVariable(CGM.getModule(), Ty, false,
3408 CGM.addCompilerUsedGlobal(GV);
4139 unsigned Size = CGM.getDataLayout().getTypeAllocSize(SrcTy);
4161 unsigned Size = CGM.getDataLayout().getTypeAllocSize(SrcTy);
4188 unsigned Size = CGM.getDataLayout().getTypeAllocSize(SrcTy);
4208 unsigned Size = CGM.getDataLayout().getTypeAllocSize(SrcTy);
4248 uint64_t Offset = ComputeIvarBaseOffset(CGM, Interface, Ivar);
4250 CGM.getTypes().ConvertType(CGM.getContext().LongTy),
4284 llvm::Module &Mod = CGM.getModule();
4293 if (CGM.getLangOpts().getGC() == LangOptions::NonGC) {
4303 if (CGM.getLangOpts().getGC() == LangOptions::GCOnly) {
4320 const llvm::Triple &Triple = CGM.getTarget().getTriple();
4339 uint64_t Size = CGM.getDataLayout().getTypeAllocSize(ObjCTypes.ModuleTy);
4345 GetClassName(&CGM.getContext().Idents.get("")),
4426 IdentifierInfo *II = &CGM.getContext().Idents.get("NSAutoreleasePool");
4487 llvm::Type *Ty = CGM.getTypes().ConvertType(QualType(RT, 0));
4489 CGM.getDataLayout().getStructLayout(cast<llvm::StructType>(Ty));
4514 unsigned WordSizeInBits = CGM.getTarget().getPointerWidth(0);
4515 unsigned ByteSizeInBits = CGM.getTarget().getCharWidth();
4516 if (!RD && CGM.getLangOpts().ObjCAutoRefCount) {
4519 ComputeIvarBaseOffset(CGM, OI, cast<ObjCIvarDecl>(FirstField));
4528 const ASTRecordLayout &RL = CGM.getContext().getASTRecordLayout(RD);
4532 ComputeIvarBaseOffset(CGM, OI, cast<ObjCIvarDecl>(Field)) - FirstFieldDelta;
4553 if (const ArrayType *Array = CGM.getContext().getAsArrayType(FQT)) {
4559 while (const ArrayType *Array = CGM.getContext().getAsArrayType(FQT)) {
4578 uint64_t Size = CGM.getContext().getTypeSize(RT)/ByteSizeInBits;
4591 Qualifiers::GC GCAttr = GetGCAttrTypeForType(CGM.getContext(), FQT);
4593 unsigned FieldSize = CGM.getContext().getTypeSize(Field->getType());
4631 = LastFieldBitfieldOrUnnamed->getBitWidthValue(CGM.getContext());
4641 = CGM.getContext().getTypeSize(LastFieldBitfieldOrUnnamed->getType());
4662 llvm::Type *PtrTy = CGM.Int8PtrTy;
4667 CGM.getTypes().getDataLayout().getTypeAllocSize(PtrTy);
4806 llvm::Type *PtrTy = CGM.Int8PtrTy;
4807 if (CGM.getLangOpts().getGC() == LangOptions::NonGC &&
4808 !CGM.getLangOpts().ObjCAutoRefCount)
4813 if (CGM.getLangOpts().ObjCAutoRefCount) {
4820 CGM.getContext().DeepCollectObjCIvars(OI, true, Ivars);
4846 if (CGM.getLangOpts().ObjCGCBitmapPrint) {
4878 return GetMethodVarName(CGM.getContext().Selectors.getNullarySelector(ID));
4883 CGM.getContext().getObjCEncodingForType(Field->getType(), TypeStr, Field);
4901 if (CGM.getContext().getObjCEncodingForMethodDecl(D, TypeStr, Extended))
4936 CGM.getContext().getObjCEncodingForPropertyDecl(PD, Container, TypeStr);
4937 return GetPropertyName(&CGM.getContext().Idents.get(TypeStr));
4972 CGM.addCompilerUsedGlobal(I->second);
4982 Asm += CGM.getModule().getModuleInlineAsm();
5001 CGM.getModule().setModuleInlineAsm(OS.str());
5005 CGObjCNonFragileABIMac::CGObjCNonFragileABIMac(CodeGen::CodeGenModule &cgm)
5006 : CGObjCCommonMac(cgm),
5007 ObjCTypes(cgm) {
5014 ObjCCommonTypesHelper::ObjCCommonTypesHelper(CodeGen::CodeGenModule &cgm)
5015 : VMContext(cgm.getLLVMContext()), CGM(cgm), ExternalProtocolPtrTy(nullptr)
5017 CodeGen::CodeGenTypes &Types = CGM.getTypes();
5018 ASTContext &Ctx = CGM.getContext();
5024 Int8PtrTy = CGM.Int8PtrTy;
5025 Int8PtrPtrTy = CGM.Int8PtrPtrTy;
5029 if (CGM.getTarget().getTriple().getArch() == llvm::Triple::arm64 ||
5030 CGM.getTarget().getTriple().getArch() == llvm::Triple::aarch64)
5102 ObjCTypesHelper::ObjCTypesHelper(CodeGen::CodeGenModule &cgm)
5103 : ObjCCommonTypesHelper(cgm) {
5276 llvm::Type *StackPtrTy = llvm::ArrayType::get(CGM.Int8PtrTy, 4);
5280 llvm::ArrayType::get(CGM.Int32Ty,SetJmpBufferSize),
5285 ObjCNonFragileABITypesHelper::ObjCNonFragileABITypesHelper(CodeGen::CodeGenModule &cgm)
5286 : ObjCCommonTypesHelper(cgm) {
5423 CodeGen::CodeGenTypes &Types = CGM.getTypes();
5424 ASTContext &Ctx = CGM.getContext();
5502 new llvm::GlobalVariable(CGM.getModule(), Init->getType(), false,
5507 GV->setAlignment(CGM.getDataLayout().getABITypeAlignment(Init->getType()));
5509 CGM.addCompilerUsedGlobal(GV);
5554 switch (CGM.getCodeGenOpts().getObjCDispatchMethod()) {
5575 if (CGM.getLangOpts().getGC() != LangOptions::GCOnly) {
5591 if (CGM.getLangOpts().getGC() != LangOptions::NonGC) {
5597 &CGM.getContext().Idents.get("countByEnumeratingWithState"),
5598 &CGM.getContext().Idents.get("objects"),
5599 &CGM.getContext().Idents.get("count")
5602 CGM.getContext().Selectors.getSelector(3, KeyIdents));
5632 if (CGM.getLangOpts().ObjCAutoRefCount)
5693 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ClassRonfABITy, false,
5701 CGM.getDataLayout().getABITypeAlignment(ObjCTypes.ClassRonfABITy));
5738 CGM.getDataLayout().getABITypeAlignment(ObjCTypes.ClassnfABITy));
5753 CGM.getContext().getASTObjCImplementationLayout(OID);
5762 InstanceStart = RL.getFieldOffset(0) / CGM.getContext().getCharWidth();
5769 CGM.getModule(),
5778 const llvm::Triple &Triple = CGM
5784 CGM.getModule(),
5795 CGM.getDataLayout().getTypeAllocSize(ObjCTypes.ClassnfABITy);
5871 if (hasObjCExceptionAttribute(CGM.getContext(), ID->getClassInterface()))
5931 llvm::GlobalVariable *PTGV = CGM.getModule().getGlobalVariable(ProtocolName);
5935 CGM.getModule(),
5942 CGM.addCompilerUsedGlobal(PTGV);
6017 = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.CategorynfABITy,
6024 CGM.getDataLayout().getABITypeAlignment(ObjCTypes.CategorynfABITy));
6026 CGM.addCompilerUsedGlobal(GCATV);
6071 unsigned Size = CGM.getDataLayout().getTypeAllocSize(ObjCTypes.MethodTy);
6081 new llvm::GlobalVariable(CGM.getModule(), Init->getType(), false,
6084 GV->setAlignment(CGM.getDataLayout().getABITypeAlignment(Init->getType()));
6086 CGM.addCompilerUsedGlobal(GV);
6099 CGM.getModule().getGlobalVariable(Name);
6102 CGM.getModule(), ObjCTypes.IvarOffsetVarTy, false,
6115 CGM.getDataLayout().getABITypeAlignment(ObjCTypes.IvarOffsetVarTy));
6163 ComputeIvarBaseOffset(CGM, ID, IVD));
6167 CGM.getTypes().ConvertTypeForMem(IVD->getType());
6168 unsigned Size = CGM.getDataLayout().getTypeAllocSize(FieldTy);
6169 unsigned Align = CGM.getContext().getPreferredTypeAlign(
6186 unsigned Size = CGM.getDataLayout().getTypeAllocSize(ObjCTypes.IvarnfABITy);
6195 new llvm::GlobalVariable(CGM.getModule(), Init->getType(), false,
6201 CGM.getDataLayout().getABITypeAlignment(Init->getType()));
6204 CGM.addCompilerUsedGlobal(GV);
6217 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ProtocolnfABITy,
6319 CGM.getDataLayout().getTypeAllocSize(ObjCTypes.ProtocolnfABITy);
6334 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ProtocolnfABITy,
6338 CGM.getDataLayout().getABITypeAlignment(ObjCTypes.ProtocolnfABITy));
6344 CGM.addCompilerUsedGlobal(Entry);
6349 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ProtocolnfABIPtrTy,
6353 CGM.getDataLayout().getABITypeAlignment(ObjCTypes.ProtocolnfABIPtrTy));
6356 CGM.addCompilerUsedGlobal(PTGV);
6382 CGM.getModule().getGlobalVariable(TmpName.str(), true);
6402 GV = new llvm::GlobalVariable(CGM.getModule(), Init->getType(), false,
6408 CGM.getDataLayout().getABITypeAlignment(Init->getType()));
6409 CGM.addCompilerUsedGlobal(GV);
6462 ->setMetadata(CGM.getModule().getMDKindID("invariant.load"),
6534 if (CGM.ReturnSlotInterferesWithArgs(MSI.CallInfo)) {
6543 } else if (!isSuper && CGM.ReturnTypeUsesFPRet(resultType)) {
6563 = CGM.getModule().getGlobalVariable(messageRefName);
6568 CGM.getModule(),
6580 if (CGM.getLangOpts().ObjCAutoRefCount && method)
6633 llvm::GlobalVariable *GV = CGM.getModule().getGlobalVariable(Name);
6636 GV = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ClassnfABITy,
6652 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ClassnfABIPtrTy,
6657 CGM.getDataLayout().getABITypeAlignment(
6660 CGM.addCompilerUsedGlobal(Entry);
6673 IdentifierInfo *II = &CGM.getContext().Idents.get("NSAutoreleasePool");
6687 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ClassnfABIPtrTy,
6692 CGM.getDataLayout().getABITypeAlignment(
6695 CGM.addCompilerUsedGlobal(Entry);
6714 Entry = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.ClassnfABIPtrTy,
6719 CGM.getDataLayout().getABITypeAlignment(ObjCTypes.ClassnfABIPtrTy));
6722 CGM.addCompilerUsedGlobal(Entry);
6779 CGM.getTypes().ConvertType(CGF.getContext().getObjCClassType());
6803 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.SelectorPtrTy, false,
6808 CGM.addCompilerUsedGlobal(Entry);
6816 LI->setMetadata(CGM.getModule().getMDKindID("invariant.load"),
6830 unsigned Size = CGM.getDataLayout().getTypeAllocSize(SrcTy);
6850 unsigned Size = CGM.getDataLayout().getTypeAllocSize(SrcTy);
6897 unsigned Size = CGM.getDataLayout().getTypeAllocSize(SrcTy);
6918 unsigned Size = CGM.getDataLayout().getTypeAllocSize(SrcTy);
6949 CGM.getModule().getGlobalVariable("OBJC_EHTYPE_id");
6952 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.EHTypeTy,
7008 if (hasObjCExceptionAttribute(CGM.getContext(), ID))
7010 new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.EHTypeTy, false,
7023 CGM.getModule().getGlobalVariable(VTableName);
7025 VTableGV = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.Int8PtrTy,
7030 llvm::Value *VTableIdx = llvm::ConstantInt::get(CGM.Int32Ty, 2);
7046 Entry = new llvm::GlobalVariable(CGM.getModule(), ObjCTypes.EHTypeTy, false,
7056 Entry->setAlignment(CGM.getDataLayout().getABITypeAlignment(
7070 CodeGen::CreateMacObjCRuntime(CodeGen::CodeGenModule &CGM) {
7071 switch (CGM.getLangOpts().ObjCRuntime.getKind()) {
7073 return new CGObjCMac(CGM);
7077 return new CGObjCNonFragileABIMac(CGM);