Lines Matching refs:Dest
46 AggValueSlot Dest; member in __anon66bd1ef60111::AggExprEmitter
50 if (!Dest.isIgnored()) return Dest; in EnsureSlot()
54 if (!Dest.isIgnored()) return; in EnsureDest()
55 Dest = CGF.CreateAggTemp(T, "agg.tmp.ensured"); in EnsureDest()
68 AggExprEmitter(CodeGenFunction &cgf, AggValueSlot Dest, bool IsResultUnused) in AggExprEmitter() argument
69 : CGF(cgf), Builder(CGF.Builder), Dest(Dest), in AggExprEmitter()
119 CGF.EmitCoawaitExpr(*E, Dest, IsResultUnused); in VisitCoawaitExpr()
122 CGF.EmitCoyieldExpr(*E, Dest, IsResultUnused); in VisitCoyieldExpr()
135 Result, Dest.getAddress(), in VisitConstantExpr()
137 Dest.getPreferredSize(CGF.getContext(), E->getType()) in VisitConstantExpr()
255 CGF.EmitAtomicLoad(LV, E->getExprLoc(), Dest); in EmitAggLoadOfLValue()
283 !Dest.isExternallyDestructed() && in withReturnValueSlot()
291 bool UseTemp = Dest.isPotentiallyAliased() || Dest.requiresGCollection() || in withReturnValueSlot()
292 (RequiresDestruction && Dest.isIgnored()); in withReturnValueSlot()
301 RetAddr = Dest.getAddress(); in withReturnValueSlot()
321 EmitCall(ReturnValueSlot(RetAddr, Dest.isVolatile(), IsResultUnused, in withReturnValueSlot()
322 Dest.isExternallyDestructed())); in withReturnValueSlot()
327 assert(Dest.isIgnored() || Dest.emitRawPointer(CGF) != in withReturnValueSlot()
355 if (Dest.isIgnored()) in EmitFinalDestCopy()
360 Dest.getAddress(), Dest.isVolatile() ? type.withVolatile() : type); in EmitFinalDestCopy()
364 if (Dest.isPotentiallyAliased()) in EmitFinalDestCopy()
372 if (Dest.isPotentiallyAliased()) in EmitFinalDestCopy()
383 EmitCopy(type, Dest, srcAgg); in EmitFinalDestCopy()
434 AggValueSlot Dest = EnsureSlot(E->getType()); in VisitCXXStdInitializerListExpr() local
435 LValue DestLV = CGF.MakeAddrLValue(Dest.getAddress(), E->getType()); in VisitCXXStdInitializerListExpr()
616 !(Dest.isZeroed() && hasTrivialFiller && in EmitArrayInit()
698 if (Dest.isPotentiallyAliased() && in VisitCompoundLiteralExpr()
750 if (!Dest.isIgnored()) in VisitCastExpr()
757 if (Dest.isIgnored()) { in VisitCastExpr()
765 Address CastPtr = Dest.getAddress().withElementType(CGF.ConvertType(Ty)); in VisitCastExpr()
772 if (Dest.isIgnored()) { in VisitCastExpr()
780 Address DestAddress = Dest.getAddress().withElementType(CGF.Int8Ty); in VisitCastExpr()
810 if (Dest.isIgnored() || !CGF.CGM.isPaddedAtomicType(atomicType)) { in VisitCastExpr()
829 AggValueSlot valueDest = Dest; in VisitCastExpr()
833 if (!Dest.isZeroed()) in VisitCastExpr()
834 CGF.EmitNullInitialization(Dest.getAddress(), atomicType); in VisitCastExpr()
870 !Dest.isExternallyDestructed() && in VisitCastExpr()
873 Dest.setExternallyDestructed(); in VisitCastExpr()
878 CGF.pushDestroy(QualType::DK_nontrivial_c_struct, Dest.getAddress(), in VisitCastExpr()
983 CGF.EmitCompoundStmt(*E->getSubStmt(), true, Dest); in VisitStmtExpr()
1111 LValue DestLV = CGF.MakeAddrLValue(Dest.getAddress(), E->getType()); in VisitBinCmp()
1224 CGF.EmitAtomicStore(Dest.asRValue(), LHS, /*isInit*/ false); in VisitBinAssign()
1233 Dest); in VisitBinAssign()
1245 CGF.EmitAtomicStore(Dest.asRValue(), LHS, /*isInit*/ false); in VisitBinAssign()
1263 if (!Dest.isIgnored() && !Dest.isExternallyDestructed() && in VisitBinAssign()
1265 CGF.pushDestroy(QualType::DK_nontrivial_c_struct, Dest.getAddress(), in VisitBinAssign()
1283 bool isExternallyDestructed = Dest.isExternallyDestructed(); in VisitAbstractConditionalOperator()
1288 Dest.setExternallyDestructed(isExternallyDestructed); in VisitAbstractConditionalOperator()
1306 Dest.setExternallyDestructed(isExternallyDestructed); in VisitAbstractConditionalOperator()
1316 CGF.pushDestroy(QualType::DK_nontrivial_c_struct, Dest.getAddress(), in VisitAbstractConditionalOperator()
1330 CGF.EmitVAArg(VE, ArgValue, Dest); in VisitVAArgExpr()
1342 bool wasExternallyDestructed = Dest.isExternallyDestructed(); in VisitCXXBindTemporaryExpr()
1346 Dest.setExternallyDestructed(); in VisitCXXBindTemporaryExpr()
1352 CGF.EmitCXXTemporary(E->getTemporary(), E->getType(), Dest.getAddress()); in VisitCXXBindTemporaryExpr()
1557 if (Dest.isZeroed() && isSimpleZero(E, CGF)) { in EmitInitializationToLValue()
1579 AggValueSlot::MayOverlap, Dest.isZeroed())); in EmitInitializationToLValue()
1597 if (Dest.isZeroed() && CGF.getTypes().isZeroInitializable(type)) in EmitNullInitializationToLValue()
1656 AggValueSlot Dest = EnsureSlot(ExprToVisit->getType()); in VisitCXXParenListOrInitListExpr() local
1658 LValue DestLV = CGF.MakeAddrLValue(Dest.getAddress(), ExprToVisit->getType()); in VisitCXXParenListOrInitListExpr()
1662 auto AType = cast<llvm::ArrayType>(Dest.getAddress().getElementType()); in VisitCXXParenListOrInitListExpr()
1663 EmitArrayInit(Dest.getAddress(), AType, ExprToVisit->getType(), ExprToVisit, in VisitCXXParenListOrInitListExpr()
1672 CGF.EmitNullInitialization(Dest.getAddress(), ExprToVisit->getType()); in VisitCXXParenListOrInitListExpr()
1701 Dest.getAddress(), CXXRD, BaseRD, in VisitCXXParenListOrInitListExpr()
1718 CodeGenFunction::FieldConstructionScope FCS(CGF, Dest.getAddress()); in VisitCXXParenListOrInitListExpr()
1766 if (curInitIndex == NumInitElements && Dest.isZeroed() && in VisitCXXParenListOrInitListExpr()
1895 AggValueSlot Dest = EnsureSlot(E->getType()); in VisitDesignatedInitUpdateExpr() local
1897 LValue DestLV = CGF.MakeAddrLValue(Dest.getAddress(), E->getType()); in VisitDesignatedInitUpdateExpr()
2038 void CodeGenFunction::EmitAggFinalDestCopy(QualType Type, AggValueSlot Dest, in EmitAggFinalDestCopy() argument
2041 return AggExprEmitter(*this, Dest, Dest.isIgnored()) in EmitAggFinalDestCopy()
2093 void CodeGenFunction::EmitAggregateCopy(LValue Dest, LValue Src, QualType Ty, in EmitAggregateCopy() argument
2098 Address DestPtr = Dest.getAddress(); in EmitAggregateCopy()
2119 if (getTargetHooks().emitCUDADeviceBuiltinSurfaceDeviceCopy(*this, Dest, in EmitAggregateCopy()
2123 if (getTargetHooks().emitCUDADeviceBuiltinTextureDeviceCopy(*this, Dest, in EmitAggregateCopy()
2214 Dest.getTBAAInfo(), Src.getTBAAInfo()); in EmitAggregateCopy()