Lines Matching defs:This

9 // This provides C++ code generation targeting the Microsoft Visual C++ ABI.
182 GetVirtualBaseClassOffset(CodeGenFunction &CGF, Address This,
282 Address This,
304 bool Delegating, Address This,
334 Address This, llvm::Type *Ty,
339 CXXDtorType DtorType, Address This,
383 // This map would be useless, don't use it.
417 llvm::Value *performThisAdjustment(CodeGenFunction &CGF, Address This,
720 Address This, llvm::Value *&ThisPtrForCall,
805 LoadVTablePtr(CodeGenFunction &CGF, Address This,
819 /// This set holds the record decls we've deferred vtable emission for.
869 // FIXME: This is incompatible with MSVC for arguments with a dtor and no
953 // If the class itself has a vfptr, great. This check implicitly
1022 CodeGenFunction &CGF, Address This, QualType SrcRecordTy, QualType DestTy,
1030 std::tie(This, Offset, std::ignore) =
1031 performBaseAdjustment(CGF, This, SrcRecordTy);
1032 llvm::Value *ThisPtr = This.emitRawPointer(CGF);
1073 CodeGenFunction &CGF, Address This, const CXXRecordDecl *ClassDecl,
1087 GetVBaseOffsetFromVBPtr(CGF, This, VBPtrOffset, VBTableOffset);
1134 // This is handled by the `needsImplicitCopyAssignment()` check below.
1139 // assignment operator. This is handled by the `isDeleted()` check below.
1308 // real default constructor. This thunk is the default constructor closure.
1321 Address This = getThisAddress(CGF);
1322 This = This.withElementType(CGM.Int8Ty);
1336 Address VBPtr = CGF.Builder.CreateConstInBoundsByteGEP(This, Offs);
1404 // imported and therefore must be exported as well. This requires changing
1471 CodeGenFunction &CGF, GlobalDecl GD, Address This,
1478 return This;
1480 This = This.withElementType(CGF.Int8Ty);
1482 return CGF.Builder.CreateConstByteGEP(This, Adjustment);
1492 return This;
1509 Address Result = This;
1585 llvm::Value *This = loadIncomingCXXThis(CGF);
1591 This = CGF.Builder.CreateConstInBoundsGEP1_32(CGF.Int8Ty, This,
1595 setCXXABIThisValue(CGF, This);
1659 bool Delegating, Address This,
1662 // if the class has no virtual bases. This effectively implements some of the
1673 This = adjustThisArgumentForVirtualFunctionCall(CGF, GlobalDecl(DD, Type),
1674 This, false);
1685 CGF.EmitCXXDestructorCall(GD, Callee, CGF.getAsNaturalPointerTo(This, ThisTy),
1717 // aka the "address point" on Itanium. This is at offset 0 if RTTI is
1954 Address This,
1961 adjustThisArgumentForVirtualFunctionCall(CGF, GD, This, true);
2004 Address This, DeleteOrMemberCallExpr E) {
2017 CGCallee Callee = CGCallee::forVirtual(CE, GD, This, Ty);
2031 This = adjustThisArgumentForVirtualFunctionCall(CGF, GD, This, true);
2033 CGF.EmitCXXDestructorCall(GD, Callee, This.emitRawPointer(CGF), ThisTy,
2229 CodeGenFunction &CGF, Address This,
2231 const ThisAdjustment &TA = TI.This;
2233 return This.emitRawPointer(CGF);
2235 This = This.withElementType(CGF.Int8Ty);
2239 V = This.emitRawPointer(CGF);
2244 CGF.Builder.CreateConstInBoundsByteGEP(This,
2248 V = CGF.Builder.CreateGEP(This.getElementType(), This.emitRawPointer(CGF),
2405 // This will create a GV in the .CRT$XDU section. It will point to our
2414 // This variable has discardable linkage, we have to add it to @llvm.used to
2744 // This BasicBLock determines whether or not we have any work to do.
2756 // This BasicBlock attempts to determine whether or not this thread is
3139 Address This,
3146 CGM.Int8Ty, This.emitRawPointer(CGF), VBPtrOffset, "vbptr");
3152 VBPtrAlign = This.getAlignment().alignmentAtOffset(
3372 // is non-virtual. This is accounted for by adjusting the non-virtual offset
3515 CodeGenFunction &CGF, const Expr *E, Address This,
3545 ThisPtrForCall = AdjustVirtualBase(CGF, E, RD, This,
3548 ThisPtrForCall = This.emitRawPointer(CGF);
4050 // equivalent. This effectively implements -mconstructor-aliases as part of
4134 llvm::Value *This = getThisValue(CGF);
4143 Args.add(RValue::get(This), CD->getThisType());
4394 // This is used as a component of the mangled name which means that we need to
4431 // This is unused as far as we can tell, initialize it to null.
4472 MicrosoftCXXABI::LoadVTablePtr(CodeGenFunction &CGF, Address This,
4474 std::tie(This, std::ignore, RD) =
4475 performBaseAdjustment(CGF, This, QualType(RD->getTypeForDecl(), 0));
4476 return {CGF.GetVTablePtr(This, CGM.Int8PtrTy, RD), RD};