Lines Matching refs:CodeGenFunction

24 #include "CodeGenFunction.h"
123 EmitLoadOfMemberFunctionPointer(CodeGenFunction &CGF,
131 EmitMemberDataPointerAddress(CodeGenFunction &CGF, const Expr *E,
136 llvm::Value *EmitMemberPointerConversion(CodeGenFunction &CGF,
151 llvm::Value *EmitMemberPointerComparison(CodeGenFunction &CGF,
156 llvm::Value *EmitMemberPointerIsNotNull(CodeGenFunction &CGF,
160 void emitVirtualObjectDelete(CodeGenFunction &CGF, const CXXDeleteExpr *DE,
164 void emitRethrow(CodeGenFunction &CGF, bool isNoReturn) override;
165 void emitThrow(CodeGenFunction &CGF, const CXXThrowExpr *E) override;
167 void emitBeginCatch(CodeGenFunction &CGF, const CXXCatchStmt *C) override;
170 emitTerminateForUnexpectedException(CodeGenFunction &CGF,
182 void EmitBadTypeidCall(CodeGenFunction &CGF) override;
183 llvm::Value *EmitTypeid(CodeGenFunction &CGF, QualType SrcRecordTy,
229 llvm::Value *emitDynamicCastCall(CodeGenFunction &CGF, Address Value,
234 llvm::Value *emitExactDynamicCast(CodeGenFunction &CGF, Address ThisAddr,
240 llvm::Value *emitDynamicCastToVoid(CodeGenFunction &CGF, Address Value,
243 bool EmitBadCastCall(CodeGenFunction &CGF) override;
246 GetVirtualBaseClassOffset(CodeGenFunction &CGF, Address This,
266 void addImplicitStructorParams(CodeGenFunction &CGF, QualType &ResTy,
269 void EmitInstanceFunctionProlog(CodeGenFunction &CGF) override;
271 AddedStructorArgs getImplicitConstructorArgs(CodeGenFunction &CGF,
277 llvm::Value *getCXXDestructorImplicitParam(CodeGenFunction &CGF,
283 void EmitDestructorCall(CodeGenFunction &CGF, const CXXDestructorDecl *DD,
291 bool isVirtualOffsetNeededForVTableField(CodeGenFunction &CGF,
292 CodeGenFunction::VPtr Vptr) override;
303 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass,
307 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass,
313 CGCallee getVirtualFunctionPointer(CodeGenFunction &CGF, GlobalDecl GD,
318 EmitVirtualDestructorCall(CodeGenFunction &CGF, const CXXDestructorDecl *Dtor,
339 llvm::Value *performThisAdjustment(CodeGenFunction &CGF, Address This,
343 llvm::Value *performReturnAdjustment(CodeGenFunction &CGF, Address Ret,
358 Address InitializeArrayCookie(CodeGenFunction &CGF,
363 llvm::Value *readArrayCookieImpl(CodeGenFunction &CGF,
367 void EmitGuardedInit(CodeGenFunction &CGF, const VarDecl &D,
370 void registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
386 LValue EmitThreadLocalVarDeclLValue(CodeGenFunction &CGF, const VarDecl *VD,
428 LoadVTablePtr(CodeGenFunction &CGF, Address This,
492 void EmitReturnFromThunk(CodeGenFunction &CGF, RValue RV,
496 Address InitializeArrayCookie(CodeGenFunction &CGF,
501 llvm::Value *readArrayCookieImpl(CodeGenFunction &CGF, Address allocPtr,
529 void emitBeginCatch(CodeGenFunction &CGF, const CXXCatchStmt *C) override;
531 emitTerminateForUnexpectedException(CodeGenFunction &CGF,
544 void registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
624 CodeGenFunction &CGF, const Expr *E, Address ThisAddr,
706 CodeGenFunction::SanitizerScope SanScope(&CGF);
769 llvm::ConstantInt::get(CGF.Int8Ty, CodeGenFunction::CFITCK_VMFCall),
803 CodeGenFunction::SanitizerScope SanScope(&CGF);
806 llvm::ConstantInt::get(CGF.Int8Ty, CodeGenFunction::CFITCK_NVMFCall),
865 CodeGenFunction &CGF, const Expr *E, Address Base, llvm::Value *MemPtr,
919 ItaniumCXXABI::EmitMemberPointerConversion(CodeGenFunction &CGF,
1238 ItaniumCXXABI::EmitMemberPointerComparison(CodeGenFunction &CGF,
1312 ItaniumCXXABI::EmitMemberPointerIsNotNull(CodeGenFunction &CGF,
1367 void ItaniumCXXABI::emitVirtualObjectDelete(CodeGenFunction &CGF,
1409 void ItaniumCXXABI::emitRethrow(CodeGenFunction &CGF, bool isNoReturn) {
1443 void ItaniumCXXABI::emitThrow(CodeGenFunction &CGF, const CXXThrowExpr *E) {
1485 static llvm::FunctionCallee getItaniumDynamicCastFn(CodeGenFunction &CGF) {
1511 static llvm::FunctionCallee getBadCastFn(CodeGenFunction &CGF) {
1569 static llvm::FunctionCallee getBadTypeidFn(CodeGenFunction &CGF) {
1580 void ItaniumCXXABI::EmitBadTypeidCall(CodeGenFunction &CGF) {
1587 llvm::Value *ItaniumCXXABI::EmitTypeid(CodeGenFunction &CGF,
1616 CodeGenFunction &CGF, Address ThisAddr, QualType SrcRecordTy,
1643 CodeGenFunction::VTableAuthMode::MustTrap);
1668 CodeGenFunction &CGF, Address ThisAddr, QualType SrcRecordTy,
1745 llvm::Value *ItaniumCXXABI::emitDynamicCastToVoid(CodeGenFunction &CGF,
1780 bool ItaniumCXXABI::EmitBadCastCall(CodeGenFunction &CGF) {
1789 ItaniumCXXABI::GetVirtualBaseClassOffset(CodeGenFunction &CGF,
1867 void ItaniumCXXABI::addImplicitStructorParams(CodeGenFunction &CGF,
1889 void ItaniumCXXABI::EmitInstanceFunctionProlog(CodeGenFunction &CGF) {
1917 CodeGenFunction &CGF, const CXXConstructorDecl *D, CXXCtorType Type,
1934 CodeGenFunction &CGF, const CXXDestructorDecl *DD, CXXDtorType Type,
1940 void ItaniumCXXABI::EmitDestructorCall(CodeGenFunction &CGF,
2059 CodeGenFunction &CGF, CodeGenFunction::VPtr Vptr) {
2066 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass, BaseSubobject Base,
2109 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass, BaseSubobject Base,
2178 CGCallee ItaniumCXXABI::getVirtualFunctionPointer(CodeGenFunction &CGF,
2240 CodeGenFunction &CGF, const CXXDestructorDecl *Dtor, CXXDtorType DtorType,
2342 static llvm::Value *performTypeAdjustment(CodeGenFunction &CGF,
2399 ItaniumCXXABI::performThisAdjustment(CodeGenFunction &CGF, Address This,
2408 ItaniumCXXABI::performReturnAdjustment(CodeGenFunction &CGF, Address Ret,
2416 void ARMCXXABI::EmitReturnFromThunk(CodeGenFunction &CGF,
2436 Address ItaniumCXXABI::InitializeArrayCookie(CodeGenFunction &CGF,
2481 llvm::Value *ItaniumCXXABI::readArrayCookieImpl(CodeGenFunction &CGF,
2520 Address ARMCXXABI::InitializeArrayCookie(CodeGenFunction &CGF,
2546 llvm::Value *ARMCXXABI::readArrayCookieImpl(CodeGenFunction &CGF,
2602 void Emit(CodeGenFunction &CGF, Flags flags) override {
2611 void ItaniumCXXABI::EmitGuardedInit(CodeGenFunction &CGF,
2764 CodeGenFunction::GuardKind::VariableGuard, &D);
2829 static void emitGlobalDtorWithCXAAtExit(CodeGenFunction &CGF,
2906 CodeGenFunction CGF(*this);
2961 CodeGenFunction CGF(*this);
2994 void ItaniumCXXABI::registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
3144 CodeGenFunction(CGM).GenerateCXXGlobalInitFunc(
3311 LValue ItaniumCXXABI::EmitThreadLocalVarDeclLValue(CodeGenFunction &CGF,
3382 CodeGenFunction CGF(CGM);
3415 // Finish the function to maintain CodeGenFunction invariants.
4805 void Emit(CodeGenFunction &CGF, Flags flags) override {
4822 static llvm::Value *CallBeginCatch(CodeGenFunction &CGF,
4837 static void InitCatchParam(CodeGenFunction &CGF,
4988 CodeGenFunction::OpaqueValueMapping
5015 void ItaniumCXXABI::emitBeginCatch(CodeGenFunction &CGF,
5048 CodeGenFunction::AutoVarEmission var = CGF.EmitAutoVarAlloca(*CatchParam);
5109 ItaniumCXXABI::emitTerminateForUnexpectedException(CodeGenFunction &CGF,
5120 ItaniumCXXABI::LoadVTablePtr(CodeGenFunction &CGF, Address This,
5137 void WebAssemblyCXXABI::emitBeginCatch(CodeGenFunction &CGF,
5146 WebAssemblyCXXABI::emitTerminateForUnexpectedException(CodeGenFunction &CGF,
5158 void XLCXXABI::registerGlobalDtor(CodeGenFunction &CGF, const VarDecl &D,
5210 CodeGenFunction CGF(CGM);