Lines Matching defs:This
9 // This provides C++ code generation targeting the Itanium C++ ABI. The class
126 Address This,
247 GetVirtualBaseClassOffset(CodeGenFunction &CGF, Address This,
286 bool Delegating, Address This,
315 Address This, llvm::Type *Ty,
320 CXXDtorType DtorType, Address This,
339 llvm::Value *performThisAdjustment(CodeGenFunction &CGF, Address This,
428 LoadVTablePtr(CodeGenFunction &CGF, Address This,
450 // This checks if virtual inline function has already been emitted.
654 llvm::Value *This = ThisAddr.emitRawPointer(CGF);
655 This = Builder.CreateInBoundsGEP(Builder.getInt8Ty(), This, Adj);
656 ThisPtrForCall = This;
671 // In the virtual path, the adjustment left 'This' pointing to the
682 Address(This, ThisAddr.getElementType(), VTablePtrAlign), VTableTy, RD);
728 // and pass 0 as the offset to the intrinsic. This is because every
920 /// This is why -1 is a reasonable choice for null data member
1153 // This ABI specifies that adj contains twice the this
1164 // and store it as if it were a non-virtual member function. This means
1279 // This condition tests whether L.ptr == R.ptr. This must always be
1283 // This condition, together with the assumption that L.ptr == R.ptr,
1289 // This condition tests whether L.adj == R.adj. If this isn't
1793 Address This,
1796 llvm::Value *VTablePtr = CGF.GetVTablePtr(This, CGM.Int8PtrTy, ClassDecl);
1946 bool Delegating, Address This,
1960 CGF.EmitCXXDestructorCall(GD, Callee, CGF.getAsNaturalPointerTo(This, ThisTy),
2027 // we will emit the typeinfo for the fundamental types. This is the
2114 NeedsVTTParameter(CGF.CurGD) && "This class doesn't have VTT");
2182 Address This,
2187 llvm::Value *VTable = CGF.GetVTablePtr(This, PtrTy, MethodDecl->getParent());
2243 Address This, DeleteOrMemberCallExpr E) {
2254 CGCallee Callee = CGCallee::forVirtual(CE, GD, This, Ty);
2263 CGF.EmitCXXDestructorCall(GD, Callee, This.emitRawPointer(CGF), ThisTy,
2391 ItaniumCXXABI::performThisAdjustment(CodeGenFunction &CGF, Address This,
2394 return performTypeAdjustment(CGF, This, UnadjustedClass, TI.This.NonVirtual,
2395 TI.This.Virtual.Itanium.VCallOffsetOffset,
2743 // This ABI instead only specifies the value bit 0 of the static guard
2806 // Call __cxa_guard_release. This cannot throw.
3026 /// Get the appropriate linkage for the wrapper function. This is essentially
3159 // the thread wrapper. This means that we cannot attempt to create a thread
3202 // This function will not exist if the TU defining the thread_local
3225 // This is needed whenever a thread wrapper function is not used, and
3267 // unconditionally call it without testing for its existance. This
3761 /// incomplete class type. This is true if
4097 // for global pointers. This is very ARM64-specific.
4245 // manipulating pointers to those class types. This allows the
5029 /// This code is used only in C++.
5094 ItaniumCXXABI::LoadVTablePtr(CodeGenFunction &CGF, Address This,
5096 return {CGF.GetVTablePtr(This, CGM.Int8PtrTy, RD), RD};