Home | History | Annotate | Download | only in CodeGen

Lines Matching defs:Dest

36   AggValueSlot Dest;
39 /// We want to use 'dest' as the return slot except under two
45 return !(Dest.requiresGCollection() || Dest.isPotentiallyAliased());
52 return ReturnValueSlot(Dest.getAddress(), Dest.isVolatile(),
57 if (!Dest.isIgnored()) return Dest;
61 if (!Dest.isIgnored()) return;
62 Dest = CGF.CreateAggTemp(T, "agg.tmp.ensured");
66 AggExprEmitter(CodeGenFunction &cgf, AggValueSlot Dest, bool IsResultUnused)
67 : CGF(cgf), Builder(CGF.Builder), Dest(Dest),
82 void EmitCopy(QualType type, const AggValueSlot &dest,
220 CGF.EmitAtomicLoad(LV, E->getExprLoc(), Dest);
256 // Logically, Dest.getAddr() should equal Src.getAggregateAddr().
263 assert(Dest.getPointer() != src.getAggregatePointer());
276 // If Dest is ignored, then we're evaluating an aggregate expression
280 if (Dest.isIgnored())
286 EmitCopy(type, Dest, srcAgg);
293 void AggExprEmitter::EmitCopy(QualType type, const AggValueSlot &dest,
295 if (dest.requiresGCollection()) {
299 dest.getAddress(),
308 CGF.EmitAggregateCopy(dest.getAddress(), src.getAddress(), type,
309 dest.isVolatile() || src.isVolatile());
343 AggValueSlot Dest = EnsureSlot(E->getType());
344 LValue DestLV = CGF.MakeAddrLValue(Dest.getAddress(), E->getType());
478 !(Dest.isZeroed() && hasTrivialFiller &&
547 if (Dest.isPotentiallyAliased() &&
589 if (!Dest.isIgnored())
596 if (Dest.isIgnored()) {
605 Builder.CreateElementBitCast(Dest.getAddress(), CGF.ConvertType(Ty));
633 if (Dest.isIgnored() || !CGF.CGM.isPaddedAtomicType(atomicType)) {
651 AggValueSlot valueDest = Dest;
655 if (!Dest.isZeroed())
656 CGF.EmitNullInitialization(Dest.getAddress(), atomicType);
777 CGF.EmitCompoundStmt(*E->getSubStmt(), true, Dest);
882 CGF.EmitAtomicStore(Dest.asRValue(), LHS, /*isInit*/ false);
890 Dest);
902 CGF.EmitAtomicStore(Dest.asRValue(), LHS, /*isInit*/ false);
936 bool isExternallyDestructed = Dest.isExternallyDestructed();
951 Dest.setExternallyDestructed(isExternallyDestructed);
973 if (!Dest.isIgnored())
974 Builder.CreateStore(Val, Dest.getAddress());
984 bool wasExternallyDestructed = Dest.isExternallyDestructed();
988 Dest.setExternallyDestructed();
994 CGF.EmitCXXTemporary(E->getTemporary(), E->getType(), Dest.getAddress());
1060 if (Dest.isZeroed() && isSimpleZero(E, CGF)) {
1082 Dest.isZeroed()));
1100 if (Dest.isZeroed() && CGF.getTypes().isZeroInitializable(type))
1140 AggValueSlot Dest = EnsureSlot(E->getType());
1142 LValue DestLV = CGF.MakeAddrLValue(Dest.getAddress(), E->getType());
1152 auto AType = cast<llvm::ArrayType>(Dest.getAddress().getElementType());
1153 EmitArrayInit(Dest.getAddress(), AType, elementType, E);
1177 CodeGenFunction::FieldConstructionScope FCS(CGF, Dest.getAddress());
1229 if (curInitIndex == NumInitElements && Dest.isZeroed() &&
1287 AggValueSlot Dest = EnsureSlot(E->getType());
1289 LValue DestLV = CGF.MakeAddrLValue(Dest.getAddress(), E->getType());