/external/clang/lib/CodeGen/ |
H A D | CGOpenCLRuntime.h | 34 CodeGenModule &CGM; member in class:clang::CodeGen::CGOpenCLRuntime 37 CGOpenCLRuntime(CodeGenModule &CGM) : CGM(CGM) {} argument
|
H A D | CGCUDARuntime.h | 33 CodeGenModule &CGM; member in class:clang::CodeGen::CGCUDARuntime 36 CGCUDARuntime(CodeGenModule &CGM) : CGM(CGM) {} argument 49 CGCUDARuntime *CreateNVCUDARuntime(CodeGenModule &CGM);
|
H A D | CGOpenCLRuntime.cpp | 42 CGM.getLLVMContext(), "opencl.image1d_t"), 0); 45 CGM.getLLVMContext(), "opencl.image1d_array_t"), 0); 48 CGM.getLLVMContext(), "opencl.image1d_buffer_t"), 0); 51 CGM.getLLVMContext(), "opencl.image2d_t"), 0); 54 CGM.getLLVMContext(), "opencl.image2d_array_t"), 0); 57 CGM.getLLVMContext(), "opencl.image3d_t"), 0); 59 return llvm::IntegerType::get(CGM.getLLVMContext(),32); 62 CGM.getLLVMContext(), "opencl.event_t"), 0);
|
H A D | MicrosoftVBTables.cpp | 40 VBTableBuilder::VBTableBuilder(CodeGenModule &CGM, argument 42 : CGM(CGM), MostDerived(MostDerived), 43 DerivedLayout(CGM.getContext().getASTRecordLayout(MostDerived)) {} 58 const ASTRecordLayout &Layout = CGM.getContext().getASTRecordLayout(RD); 79 const ASTRecordLayout &Layout = CGM.getContext().getASTRecordLayout(CurBase); 173 MangleContext &Mangler = CGM.getCXXABI().getMangleContext(); 179 llvm::ArrayType::get(CGM.IntTy, 1 + ReusingBase->getNumVBases()); 181 assert(!CGM.getModule().getNamedGlobal(Name) && 184 CGM 190 EmitVBTableDefinition( CodeGenModule &CGM, const CXXRecordDecl *RD, llvm::GlobalVariable::LinkageTypes Linkage) const argument [all...] |
H A D | CGVTables.cpp | 31 CodeGenVTables::CodeGenVTables(CodeGenModule &CGM) argument 32 : CGM(CGM), VTContext(CGM.getContext()) { 33 if (CGM.getTarget().getCXXABI().isMicrosoft()) { 37 VFTContext.reset(new MicrosoftVFTableContext(CGM.getContext())); 106 static void setThunkVisibility(CodeGenModule &CGM, const CXXMethodDecl *MD, argument 108 CGM.setGlobalVisibility(Fn, MD); 110 if (!CGM.getCodeGenOpts().HiddenWeakVTables) 232 llvm::Type *Ty = CGM 895 shouldEmitVTableAtEndOfTranslationUnit(CodeGenModule &CGM, const CXXRecordDecl *RD) argument [all...] |
H A D | CGExprConstant.cpp | 37 CodeGenModule &CGM; member in class:__anon16117::ConstStructBuilder 45 static llvm::Constant *BuildStruct(CodeGenModule &CGM, CodeGenFunction *CGF, 47 static llvm::Constant *BuildStruct(CodeGenModule &CGM, CodeGenFunction *CGF, 51 ConstStructBuilder(CodeGenModule &CGM, CodeGenFunction *CGF) argument 52 : CGM(CGM), CGF(CGF), Packed(false), 82 CGM.getDataLayout().getABITypeAlignment(C->getType())); 87 CGM.getDataLayout().getTypeAllocSize(C->getType())); 96 CGM.getVTableContext().getVTableLayout(VTableClass).getAddressPoint(Base); 98 llvm::ConstantInt::get(CGM 544 BuildStruct(CodeGenModule &CGM, CodeGenFunction *CGF, InitListExpr *ILE) argument 555 BuildStruct(CodeGenModule &CGM, CodeGenFunction *CGF, const APValue &Val, QualType ValTy) argument 583 CodeGenModule &CGM; member in class:__anon16117::ConstExprEmitter 1266 FillInNullDataMemberPointers(CodeGenModule &CGM, QualType T, SmallVectorImpl<llvm::Constant *> &Elements, uint64_t StartOffset) argument 1347 EmitNullConstant(CodeGenModule &CGM, const CXXRecordDecl *record, bool asCompleteObject) argument 1427 EmitNullConstantForBase(CodeGenModule &CGM, llvm::Type *baseType, const CXXRecordDecl *base) argument [all...] |
H A D | CGObjCRuntime.cpp | 28 static uint64_t LookupFieldBitOffset(CodeGen::CodeGenModule &CGM, argument 42 RL = &CGM.getContext().getASTObjCImplementationLayout(ID); 44 RL = &CGM.getContext().getASTObjCInterfaceLayout(Container); 64 uint64_t CGObjCRuntime::ComputeIvarBaseOffset(CodeGen::CodeGenModule &CGM, argument 67 return LookupFieldBitOffset(CGM, OID, 0, Ivar) / 68 CGM.getContext().getCharWidth(); 71 uint64_t CGObjCRuntime::ComputeIvarBaseOffset(CodeGen::CodeGenModule &CGM, argument 74 return LookupFieldBitOffset(CGM, OID->getClassInterface(), OID, Ivar) / 75 CGM.getContext().getCharWidth(); 79 CodeGen::CodeGenModule &CGM, 78 ComputeBitfieldBitOffset( CodeGen::CodeGenModule &CGM, const ObjCInterfaceDecl *ID, const ObjCIvarDecl *Ivar) argument [all...] |
H A D | CGCUDANV.cpp | 40 CGNVCUDARuntime(CodeGenModule &CGM); 47 CGNVCUDARuntime::CGNVCUDARuntime(CodeGenModule &CGM) : CGCUDARuntime(CGM) { argument 48 CodeGen::CodeGenTypes &Types = CGM.getTypes(); 49 ASTContext &Ctx = CGM.getContext(); 64 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(IntTy, 73 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(IntTy, 123 CGCUDARuntime *CodeGen::CreateNVCUDARuntime(CodeGenModule &CGM) { argument 124 return new CGNVCUDARuntime(CGM);
|
H A D | CGDeclCXX.cpp | 39 CodeGenModule &CGM = CGF.CGM; local 41 CGM.getObjCRuntime().EmitObjCGlobalAssign(CGF, CGF.EmitScalarExpr(Init), 44 CGM.getObjCRuntime().EmitObjCWeakAssign(CGF, CGF.EmitScalarExpr(Init), 66 CodeGenModule &CGM = CGF.CGM; local 98 function = CGM.GetAddrOfCXXDestructor(dtor, Dtor_Complete); 103 function = CodeGenFunction(CGM).generateDestroyHelper(addr, type, 109 CGM.getCXXABI().registerGlobalDtor(CGF, D, function, argument); 117 if (!CGF.CGM 164 createAtExitStub(CodeGenModule &CGM, llvm::Constant *dtor, llvm::Constant *addr) argument 227 CreateGlobalInitOrDestructFunction(CodeGenModule &CGM, llvm::FunctionType *FTy, const Twine &Name, bool TLS) argument [all...] |
H A D | CGException.cpp | 26 static llvm::Constant *getAllocateExceptionFn(CodeGenModule &CGM) { argument 30 llvm::FunctionType::get(CGM.Int8PtrTy, CGM.SizeTy, /*IsVarArgs=*/false); 32 return CGM.CreateRuntimeFunction(FTy, "__cxa_allocate_exception"); 35 static llvm::Constant *getFreeExceptionFn(CodeGenModule &CGM) { argument 39 llvm::FunctionType::get(CGM.VoidTy, CGM.Int8PtrTy, /*IsVarArgs=*/false); 41 return CGM.CreateRuntimeFunction(FTy, "__cxa_free_exception"); 44 static llvm::Constant *getThrowFn(CodeGenModule &CGM) { argument 48 llvm::Type *Args[3] = { CGM 55 getReThrowFn(CodeGenModule &CGM) argument 64 getGetExceptionPtrFn(CodeGenModule &CGM) argument 73 getBeginCatchFn(CodeGenModule &CGM) argument 82 getEndCatchFn(CodeGenModule &CGM) argument 91 getUnexpectedFn(CodeGenModule &CGM) argument 118 getTerminateFn(CodeGenModule &CGM) argument 137 getCatchallRethrowFn(CodeGenModule &CGM, StringRef Name) argument 249 getPersonalityFn(CodeGenModule &CGM, const EHPersonality &Personality) argument 257 getOpaquePersonalityFn(CodeGenModule &CGM, const EHPersonality &Personality) argument 1522 useClangCallTerminate(CodeGenModule &CGM) argument 1531 getClangCallTerminateFn(CodeGenModule &CGM) argument [all...] |
H A D | CGRTTI.cpp | 26 CodeGenModule &CGM; // Per-module state. member in class:__anon16132::RTTIBuilder 65 RTTIBuilder(CodeGenModule &CGM) : CGM(CGM), argument 66 VMContext(CGM.getModule().getContext()) { } 117 CGM.getCXXABI().getMangleContext().mangleCXXRTTIName(Ty, Out); 128 CGM.CreateOrReplaceCXXRuntimeVariable(Name, Init->getType(), Linkage); 139 CGM.getCXXABI().getMangleContext().mangleCXXRTTI(Ty, Out); 144 llvm::GlobalVariable *GV = CGM.getModule().getNamedGlobal(Name); 148 GV = new llvm::GlobalVariable(CGM 255 ShouldUseExternalRTTIDescriptor(CodeGenModule &CGM, QualType Ty) argument 320 getTypeInfoLinkage(CodeGenModule &CGM, QualType Ty) argument [all...] |
H A D | CGObjCRuntime.h | 65 CodeGen::CodeGenModule &CGM; member in class:clang::CodeGen::CGObjCRuntime 66 CGObjCRuntime(CodeGen::CodeGenModule &CGM) : CGM(CGM) {} argument 78 uint64_t ComputeIvarBaseOffset(CodeGen::CodeGenModule &CGM, 81 uint64_t ComputeIvarBaseOffset(CodeGen::CodeGenModule &CGM, 265 virtual llvm::Constant *BuildGCBlockLayout(CodeGen::CodeGenModule &CGM, 267 virtual llvm::Constant *BuildRCBlockLayout(CodeGen::CodeGenModule &CGM, 269 virtual llvm::Constant *BuildByrefLayout(CodeGen::CodeGenModule &CGM, 288 unsigned ComputeBitfieldBitOffset(CodeGen::CodeGenModule &CGM, [all...] |
H A D | MicrosoftVBTables.h | 46 void EmitVBTableDefinition(CodeGenModule &CGM, const CXXRecordDecl *RD, 95 VBTableBuilder(CodeGenModule &CGM, const CXXRecordDecl *MostDerived); 116 CodeGenModule &CGM; member in class:clang::CodeGen::VBTableBuilder
|
H A D | ItaniumCXXABI.cpp | 42 ItaniumCXXABI(CodeGen::CodeGenModule &CGM, argument 45 CGCXXABI(CGM), UseARMMethodPtrABI(UseARMMethodPtrABI), 184 ARMCXXABI(CodeGen::CodeGenModule &CGM) : argument 185 ItaniumCXXABI(CGM, /* UseARMMethodPtrABI = */ true, 207 CodeGen::CGCXXABI *CodeGen::CreateItaniumCXXABI(CodeGenModule &CGM) { argument 208 switch (CGM.getTarget().getCXXABI().getKind()) { 213 return new ARMCXXABI(CGM); 219 return new ItaniumCXXABI(CGM, /* UseARMMethodPtrABI = */ true, 223 if (CGM.getContext().getTargetInfo().getTriple().getArch() 228 return new ItaniumCXXABI(CGM, /* UseARMMethodPtrAB 1047 getGuardAcquireFn(CodeGenModule &CGM, llvm::PointerType *GuardPtrTy) argument 1059 getGuardReleaseFn(CodeGenModule &CGM, llvm::PointerType *GuardPtrTy) argument 1070 getGuardAbortFn(CodeGenModule &CGM, llvm::PointerType *GuardPtrTy) argument [all...] |
H A D | CGBlocks.cpp | 46 static llvm::Constant *buildGlobalBlock(CodeGenModule &CGM, 51 static llvm::Constant *buildCopyHelper(CodeGenModule &CGM, argument 53 return CodeGenFunction(CGM).GenerateCopyHelperFunction(blockInfo); 57 static llvm::Constant *buildDisposeHelper(CodeGenModule &CGM, argument 59 return CodeGenFunction(CGM).GenerateDestroyHelperFunction(blockInfo); 76 static llvm::Constant *buildBlockDescriptor(CodeGenModule &CGM, argument 78 ASTContext &C = CGM.getContext(); 80 llvm::Type *ulong = CGM.getTypes().ConvertType(C.UnsignedLongTy); 81 llvm::Type *i8p = CGM.getTypes().ConvertType(C.VoidPtrTy); 98 elements.push_back(buildCopyHelper(CGM, blockInf 266 tryCaptureAsConstant(CodeGenModule &CGM, CodeGenFunction *CGF, const VarDecl *var) argument 297 initializeForBlockHeader(CodeGenModule &CGM, CGBlockInfo &info, SmallVectorImpl<llvm::Type*> &elementTypes) argument 331 computeBlockInfo(CodeGenModule &CGM, CodeGenFunction *CGF, CGBlockInfo &info) argument 1042 buildGlobalBlock(CodeGenModule &CGM, const CGBlockInfo &blockInfo, llvm::Constant *blockFn) argument 1814 buildByrefCopyHelper(CodeGenModule &CGM, llvm::StructType &byrefType, unsigned byrefValueIndex, CodeGenModule::ByrefHelpers &info) argument 1878 buildByrefDisposeHelper(CodeGenModule &CGM, llvm::StructType &byrefType, unsigned byrefValueIndex, CodeGenModule::ByrefHelpers &info) argument 1888 buildByrefHelpers(CodeGenModule &CGM, llvm::StructType &byrefTy, unsigned byrefValueIndex, T &byrefInfo) argument 2253 configureBlocksRuntimeObject(CodeGenModule &CGM, llvm::Constant *C) argument [all...] |
H A D | CGObjCMac.cpp | 65 CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy, 68 llvm::AttributeSet::get(CGM.getLLVMContext(), 80 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(CGM.VoidTy, 93 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(CGM.DoubleTy, 110 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(resultType, 122 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy, 133 return CGM.CreateRuntimeFunction(llvm::FunctionType::get(ObjectPtrTy, 144 return CGM 171 CodeGen::CodeGenModule &CGM; member in class:__anon16127::ObjCCommonTypesHelper 1941 BuildGCBlockLayout(CodeGenModule &CGM, const CGBlockInfo &blockInfo) argument 2464 BuildRCBlockLayout(CodeGenModule &CGM, const CGBlockInfo &blockInfo) argument 2519 BuildByrefLayout(CodeGen::CodeGenModule &CGM, QualType T) argument 7074 CreateMacObjCRuntime(CodeGen::CodeGenModule &CGM) argument [all...] |
H A D | CGDebugInfo.cpp | 43 CGDebugInfo::CGDebugInfo(CodeGenModule &CGM) argument 44 : CGM(CGM), DebugKind(CGM.getCodeGenOpts().getDebugInfo()), 45 DBuilder(CGM.getModule()) { 103 CurLoc = CGM.getContext().getSourceManager().getExpansionLoc(Loc); 110 SourceManager &SM = CGM.getContext().getSourceManager(); 155 return getOrCreateType(CGM.getContext().getTypeDeclType(RDecl), 181 PrintingPolicy Policy(CGM.getLangOpts()); 253 PrintingPolicy Policy(CGM [all...] |
H A D | CGVTT.cpp | 44 VTTBuilder Builder(CGM.getContext(), RD, /*GenerateDefinition=*/true); 46 llvm::Type *Int8PtrTy = CGM.Int8PtrTy, *Int64Ty = CGM.Int64Ty; 96 CGM.setTypeVisibility(VTT, RD, CodeGenModule::TVK_ForVTT); 104 CGM.getCXXABI().getMangleContext().mangleCXXVTT(RD, Out); 111 VTTBuilder Builder(CGM.getContext(), RD, /*GenerateDefinition=*/false); 114 llvm::ArrayType::get(CGM.Int8PtrTy, Builder.getVTTComponents().size()); 117 CGM.CreateOrReplaceCXXRuntimeVariable(Name, ArrayType, 131 VTTBuilder Builder(CGM.getContext(), RD, /*GenerateDefinition=*/false); 157 VTTBuilder Builder(CGM [all...] |
H A D | CGCXXABI.cpp | 23 DiagnosticsEngine &Diags = CGF.CGM.getDiags(); 32 return llvm::Constant::getNullValue(CGM.getTypes().ConvertType(T)); 37 return CGM.getTypes().ConvertType(CGM.getContext().getPointerDiffType()); 50 llvm::FunctionType *FTy = CGM.getTypes().GetFunctionType( 51 CGM.getTypes().arrangeCXXMethodType(RD, FPT)); 101 CGM.getContext().getMemberPointerType(MD->getType(), 125 = ImplicitParamDecl::Create(CGM.getContext(), 0, MD->getLocation(), 126 &CGM.getContext().Idents.get("this"), 127 MD->getThisType(CGM [all...] |
H A D | CodeGenFunction.cpp | 34 : CodeGenTypeCache(cgm), CGM(cgm), Target(cgm.getTarget()), 37 SanitizePerformTypeCheck(CGM.getSanOpts().Null | 38 CGM.getSanOpts().Alignment | 39 CGM.getSanOpts().ObjectSize | 40 CGM.getSanOpts().Vptr), 41 SanOpts(&CGM.getSanOpts()), 54 CGM.getCXXABI().getMangleContext().startNewFunction(); 57 if (CGM.getLangOpts().FastMath) 59 if (CGM.getLangOpts().FiniteMathOnly) { 78 return CGM 325 GenOpenCLArgMetadata(const FunctionDecl *FD, llvm::Function *Fn, CodeGenModule &CGM,llvm::LLVMContext &Context, SmallVector <llvm::Value*, 5> &kernelMDArgs, CGBuilderTy& Builder, ASTContext &ASTCtx) argument [all...] |
H A D | CGBuiltin.cpp | 161 llvm::Value *Fn = CGF.CGM.CreateRuntimeFunction(FT, FnName); 190 llvm::Value *Callee = CGF.CGM.getIntrinsic(IntrinsicID, X->getType()); 200 if (E->EvaluateAsRValue(Result, CGM.getContext()) && 214 return RValue::get(CGM.EmitConstantExpr(E, E->getType(), 0)); 226 return RValue::get(Builder.CreateCall(CGM.getIntrinsic(inst), ArgValue)); 236 return RValue::get(Builder.CreateCall2(CGM.getIntrinsic(Intrinsic::vacopy), 296 Value *F = CGM.getIntrinsic(Intrinsic::cttz, ArgType); 313 Value *F = CGM.getIntrinsic(Intrinsic::ctlz, ArgType); 330 Value *F = CGM.getIntrinsic(Intrinsic::cttz, ArgType); 351 Value *F = CGM [all...] |
H A D | CGObjC.cpp | 50 CGM.getObjCRuntime().GenerateConstantString(E->getString()); 72 CGObjCRuntime &Runtime = CGM.getObjCRuntime(); 91 ASTContext &Context = CGM.getContext(); 118 CGM.getCodeGenOpts().OptimizationLevel != 0); 174 llvm::ConstantInt::get(CGM.getTypes().ConvertType(ArgQT), NumElements); 184 CGObjCRuntime &Runtime = CGM.getObjCRuntime(); 222 return CGM.getObjCRuntime().GetSelector(*this, E->getSelector()); 227 return CGM.getObjCRuntime().GenerateProtocolRef(*this, E->getProtocol()); 312 CGM.getLangOpts().ObjCAutoRefCount && 316 CGObjCRuntime &Runtime = CGM 555 getMaxAtomicAccessSize(CodeGenModule &CGM, llvm::Triple::ArchType arch) argument 612 PropertyImplStrategy(CodeGenModule &CGM, const ObjCPropertyImplDecl *propImpl) argument 1080 UseOptimizedSetter(CodeGenModule &CGM) argument 1757 createARCRuntimeFunction(CodeGenModule &CGM, llvm::FunctionType *type, StringRef fnName) argument [all...] |
H A D | CGObjCGNU.cpp | 48 CodeGenModule *CGM; member in class:__anon16126::LazyRuntimeFunction 56 LazyRuntimeFunction() : CGM(0), FunctionName(0), Function(0) {} 63 CGM =Mod; 85 cast<llvm::Constant>(CGM->CreateRuntimeFunction(FTy, FunctionName)); 173 llvm::Constant *ConstStr = CGM.GetAddrOfConstantCString(Str, Name.c_str()); 228 const ObjCRuntime &R = CGM.getLangOpts().ObjCRuntime; 233 CGM.getContext().getObjCEncodingForPropertyDecl(PD, Container, TypeStr); 241 CGM.GetAddrOfConstantString(NameAndAttributes), Zeros); 563 virtual llvm::Constant *BuildGCBlockLayout(CodeGenModule &CGM, argument 567 virtual llvm::Constant *BuildRCBlockLayout(CodeGenModule &CGM, argument 572 BuildByrefLayout(CodeGenModule &CGM, QualType T) argument 2879 CreateGNUObjCRuntime(CodeGenModule &CGM) argument [all...] |
H A D | MicrosoftCXXABI.cpp | 32 MicrosoftCXXABI(CodeGenModule &CGM) : CGCXXABI(CGM) {} argument 178 return llvm::ConstantInt::get(CGM.IntTy, 0); 182 return llvm::Constant::getAllOnesValue(CGM.IntTy); 327 llvm::Value *VBPtrOffset = llvm::ConstantInt::get(CGM.PtrDiffTy, VBPtrChars); 331 llvm::ConstantInt::get(CGM.IntTy, VBTableChars.getQuantity()); 336 CGF.Builder.CreateSExtOrBitCast(VBPtrToNewBase, CGM.PtrDiffTy); 353 ArgTys.push_back(CGM.getContext().IntTy); 383 CGM.EmitGlobal(GlobalDecl(D, Ctor_Complete)); 389 CGF.Builder.CreateBitCast(getThisValue(CGF), CGM 1317 CreateMicrosoftCXXABI(CodeGenModule &CGM) argument [all...] |
H A D | CGDecl.cpp | 148 return CGM.getOpenCLRuntime().EmitWorkGroupLocalVarDecl(*this, D); 156 CodeGenModule &CGM = CGF.CGM; local 158 StringRef Name = CGM.getMangledName(&D); 169 CGM.getBlockMangledName(GlobalDecl(), Name, BD); 175 StringRef Name = CGM.getMangledName(FD); 195 Name = CGM.getMangledName(&D); 199 llvm::Type *LTy = CGM.getTypes().ConvertTypeForMem(Ty); 201 CGM.GetGlobalVarAddressSpace(&D, CGM [all...] |