Home | History | Annotate | Download | only in CodeGen

Lines Matching defs:Ivar

348 static void emitStructGetterCall(CodeGenFunction &CGF, ObjCIvarDecl *ivar, 
354 ivar, 0).getAddress();
357 // sizeof (Type of Ivar), isAtomic, false);
366 CharUnits size = CGF.getContext().getTypeSizeInChars(ivar->getType());
454 // Evaluate the ivar's size and alignment.
455 ObjCIvarDecl *ivar = propImpl->getPropertyIvarDecl();
456 QualType ivarType = ivar->getType();
502 if (ivar->isBitField()) {
517 // Compute whether the ivar has strong members.
531 // alignment of the ivar.
533 // If the size of the ivar is not a power of two, give up. We don't
551 // If the ivar's size exceeds the architecture's maximum atomic
581 // Sema only makes only of these when the ivar has a C++ class type,
615 ObjCIvarDecl *ivar = propImpl->getPropertyIvarDecl();
621 LValue LV = EmitLValueForIvar(TypeOfSelfObject(), LoadObjCSelf(), ivar, 0);
655 // Return (ivar-type) objc_getProperty((id) self, _cmd, offset, true).
662 EmitIvarOffset(classImpl->getClassInterface(), ivar);
692 emitStructGetterCall(*this, ivar, strategy.isAtomic(),
698 LValue LV = EmitLValueForIvar(TypeOfSelfObject(), LoadObjCSelf(), ivar, 0);
700 QualType ivarType = ivar->getType();
739 /// from the first formal parameter into the given ivar.
741 ObjCIvarDecl *ivar) {
746 // The first argument is the address of the ivar.
748 CGF.LoadObjCSelf(), ivar, 0)
762 CGF.CGM.getSize(CGF.getContext().getTypeSizeInChars(ivar->getType()));
782 // Sema only makes only of these when the ivar has a C++ class type,
813 ObjCIvarDecl *ivar = propImpl->getPropertyIvarDecl();
822 EmitLValueForIvar(TypeOfSelfObject(), LoadObjCSelf(), ivar, /*quals*/ 0);
862 EmitIvarOffset(classImpl->getClassInterface(), ivar);
884 emitStructSetterCall(*this, setterMethod, ivar);
897 ObjCIvarRefExpr ivarRef(ivar, ivar->getType().getNonReferenceType(),
907 // The property type can differ from the ivar type in some situations with
960 const ObjCIvarDecl *ivar;
964 DestroyIvar(llvm::Value *addr, const ObjCIvarDecl *ivar,
967 : addr(addr), ivar(ivar), destroyer(*destroyer),
972 = CGF.EmitLValueForIvar(CGF.TypeOfSelfObject(), addr, ivar, /*CVR*/ 0);
973 CGF.emitDestroy(lvalue.getAddress(), ivar->getType(), destroyer,
994 for (const ObjCIvarDecl *ivar = iface->all_declared_ivar_begin();
995 ivar; ivar = ivar->getNextIvar()) {
996 QualType type = ivar->getType();
998 // Check whether the ivar is a destructible type.
1016 CGF.EHStack.pushCleanup<DestroyIvar>(cleanupKind, self, ivar, destroyer,
1039 ObjCIvarDecl *Ivar = cast<ObjCIvarDecl>(Field);
1041 LoadObjCSelf(), Ivar, 0);