Lines Matching refs:CGM
40 CodeGenModule &CGM = CGF.CGM; in EmitDeclInit() local
42 CGM.getObjCRuntime().EmitObjCGlobalAssign(CGF, CGF.EmitScalarExpr(Init), in EmitDeclInit()
45 CGM.getObjCRuntime().EmitObjCWeakAssign(CGF, CGF.EmitScalarExpr(Init), in EmitDeclInit()
67 CodeGenModule &CGM = CGF.CGM; in EmitDeclDestroy() local
99 function = CGM.GetAddrOfCXXDestructor(dtor, Dtor_Complete); in EmitDeclDestroy()
105 function = CodeGenFunction(CGM) in EmitDeclDestroy()
111 CGM.getCXXABI().registerGlobalDtor(CGF, D, function, argument); in EmitDeclDestroy()
119 if (!CGF.CGM.getCodeGenOpts().OptimizationLevel) in EmitDeclInvariant()
124 llvm::Constant *InvariantStart = CGF.CGM.getIntrinsic(InvStartID); in EmitDeclInvariant()
144 if (CGM.isTypeConstant(D.getType(), true)) in EmitCXXGlobalVarDeclInit()
159 CreateGlobalInitOrDestructFunction(CodeGenModule &CGM,
166 static llvm::Constant *createAtExitStub(CodeGenModule &CGM, const VarDecl &VD, in createAtExitStub() argument
170 llvm::FunctionType *ty = llvm::FunctionType::get(CGM.VoidTy, false); in createAtExitStub()
174 CGM.getCXXABI().getMangleContext().mangleDynamicAtExitDestructor(&VD, Out); in createAtExitStub()
177 CreateGlobalInitOrDestructFunction(CGM, ty, FnName.str()); in createAtExitStub()
179 CodeGenFunction CGF(CGM); in createAtExitStub()
181 CGF.StartFunction(&VD, CGM.getContext().VoidTy, fn, in createAtExitStub()
182 CGM.getTypes().arrangeNullaryFunction(), FunctionArgList()); in createAtExitStub()
201 llvm::Constant *dtorStub = createAtExitStub(CGM, VD, dtor, addr); in registerGlobalDtorWithAtExit()
208 CGM.CreateRuntimeFunction(atexitTy, "atexit"); in registerGlobalDtorWithAtExit()
221 if (CGM.getCodeGenOpts().ForbidGuardVariables) in EmitCXXGuardedInit()
222 CGM.Error(D.getLocation(), in EmitCXXGuardedInit()
226 CGM.getCXXABI().EmitGuardedInit(*this, D, DeclPtr, PerformInit); in EmitCXXGuardedInit()
230 CreateGlobalInitOrDestructFunction(CodeGenModule &CGM, in CreateGlobalInitOrDestructFunction() argument
235 Name, &CGM.getModule()); in CreateGlobalInitOrDestructFunction()
236 if (!CGM.getLangOpts().AppleKext && !TLS) { in CreateGlobalInitOrDestructFunction()
239 CGM.getTarget().getStaticInitSectionSpecifier()) in CreateGlobalInitOrDestructFunction()
243 Fn->setCallingConv(CGM.getRuntimeCC()); in CreateGlobalInitOrDestructFunction()
245 if (!CGM.getLangOpts().Exceptions) in CreateGlobalInitOrDestructFunction()
248 if (!CGM.getSanitizerBlacklist().isIn(*Fn)) { in CreateGlobalInitOrDestructFunction()
249 if (CGM.getLangOpts().Sanitize.Address) in CreateGlobalInitOrDestructFunction()
251 if (CGM.getLangOpts().Sanitize.Thread) in CreateGlobalInitOrDestructFunction()
253 if (CGM.getLangOpts().Sanitize.Memory) in CreateGlobalInitOrDestructFunction()
532 const CGFunctionInfo &FI = CGM.getTypes().arrangeFreeFunctionDeclaration( in generateDestroyHelper()
534 llvm::FunctionType *FTy = CGM.getTypes().GetFunctionType(FI); in generateDestroyHelper()
536 CreateGlobalInitOrDestructFunction(CGM, FTy, "__cxx_global_array_dtor"); in generateDestroyHelper()