Lines Matching refs:AggValueSlot
40 AggValueSlot Dest;
43 AggValueSlot EnsureSlot(QualType T) { in EnsureSlot()
62 AggExprEmitter(CodeGenFunction &cgf, AggValueSlot Dest, bool IsResultUnused) in AggExprEmitter()
85 void EmitCopy(QualType type, const AggValueSlot &dest,
86 const AggValueSlot &src);
93 AggValueSlot::NeedsGCBarriers_t needsGC(QualType T) { in needsGC()
95 return AggValueSlot::NeedsGCBarriers; in needsGC()
96 return AggValueSlot::DoesNotNeedGCBarriers; in needsGC()
353 AggValueSlot srcAgg = AggValueSlot::forLValue( in EmitFinalDestCopy()
354 src, CGF, AggValueSlot::IsDestructed, needsGC(type), in EmitFinalDestCopy()
355 AggValueSlot::IsAliased, AggValueSlot::MayOverlap); in EmitFinalDestCopy()
363 void AggExprEmitter::EmitCopy(QualType type, const AggValueSlot &dest, in EmitCopy()
364 const AggValueSlot &src) { in EmitCopy()
415 AggValueSlot Dest = EnsureSlot(E->getType()); in VisitCXXStdInitializerListExpr()
669 AggValueSlot Slot = EnsureSlot(E->getType()); in VisitCompoundLiteralExpr()
721 CGF.EmitAnyExpr(E->getSubExpr(), AggValueSlot::ignored(), in VisitCastExpr()
737 CGF.EmitAnyExpr(E->getSubExpr(), AggValueSlot::ignored(), in VisitCastExpr()
795 AggValueSlot valueDest = Dest; in VisitCastExpr()
805 valueDest = AggValueSlot::forAddr(valueAddr, in VisitCastExpr()
810 AggValueSlot::DoesNotOverlap, in VisitCastExpr()
811 AggValueSlot::IsZeroed); in VisitCastExpr()
820 AggValueSlot atomicSlot = in VisitCastExpr()
1191 AggValueSlot::forLValue(LHS, CGF, AggValueSlot::IsDestructed, in VisitBinAssign()
1193 AggValueSlot::IsAliased, in VisitBinAssign()
1194 AggValueSlot::MayOverlap), in VisitBinAssign()
1212 AggValueSlot LHSSlot = AggValueSlot::forLValue( in VisitBinAssign()
1213 LHS, CGF, AggValueSlot::IsDestructed, needsGC(E->getLHS()->getType()), in VisitBinAssign()
1214 AggValueSlot::IsAliased, AggValueSlot::MayOverlap); in VisitBinAssign()
1314 AggValueSlot Slot = EnsureSlot(E->getType()); in VisitCXXConstructExpr()
1320 AggValueSlot Slot = EnsureSlot(E->getType()); in VisitCXXInheritedCtorInitExpr()
1328 AggValueSlot Slot = EnsureSlot(E->getType()); in VisitLambdaExpr()
1384 AggValueSlot Slot = EnsureSlot(T); in VisitCXXScalarValueInitExpr()
1390 AggValueSlot Slot = EnsureSlot(T); in VisitImplicitValueInitExpr()
1548 E, AggValueSlot::forLValue(LV, CGF, AggValueSlot::IsDestructed, in EmitInitializationToLValue()
1549 AggValueSlot::DoesNotNeedGCBarriers, in EmitInitializationToLValue()
1550 AggValueSlot::IsNotAliased, in EmitInitializationToLValue()
1551 AggValueSlot::MayOverlap, Dest.isZeroed())); in EmitInitializationToLValue()
1612 AggValueSlot Dest = EnsureSlot(E->getType()); in VisitInitListExpr()
1656 AggValueSlot AggSlot = AggValueSlot::forAddr( in VisitInitListExpr()
1658 AggValueSlot::IsDestructed, in VisitInitListExpr()
1659 AggValueSlot::DoesNotNeedGCBarriers, in VisitInitListExpr()
1660 AggValueSlot::IsNotAliased, in VisitInitListExpr()
1838 auto elementSlot = AggValueSlot::forLValue( in VisitArrayInitLoopExpr()
1839 elementLV, CGF, AggValueSlot::IsDestructed, in VisitArrayInitLoopExpr()
1840 AggValueSlot::DoesNotNeedGCBarriers, AggValueSlot::IsNotAliased, in VisitArrayInitLoopExpr()
1841 AggValueSlot::DoesNotOverlap); in VisitArrayInitLoopExpr()
1868 AggValueSlot Dest = EnsureSlot(E->getType()); in VisitDesignatedInitUpdateExpr()
1944 static void CheckAggExprForMemSetUse(AggValueSlot &Slot, const Expr *E, in CheckAggExprForMemSetUse()
1989 void CodeGenFunction::EmitAggExpr(const Expr *E, AggValueSlot Slot) { in EmitAggExpr()
2005 EmitAggExpr(E, AggValueSlot::forLValue( in EmitAggExprToLValue()
2006 LV, *this, AggValueSlot::IsNotDestructed, in EmitAggExprToLValue()
2007 AggValueSlot::DoesNotNeedGCBarriers, in EmitAggExprToLValue()
2008 AggValueSlot::IsNotAliased, AggValueSlot::DoesNotOverlap)); in EmitAggExprToLValue()
2012 AggValueSlot::Overlap_t
2015 return AggValueSlot::DoesNotOverlap; in getOverlapForFieldInit()
2025 return AggValueSlot::DoesNotOverlap; in getOverlapForFieldInit()
2028 return AggValueSlot::MayOverlap; in getOverlapForFieldInit()
2031 AggValueSlot::Overlap_t CodeGenFunction::getOverlapForBaseInit( in getOverlapForBaseInit()
2037 return AggValueSlot::MayOverlap; in getOverlapForBaseInit()
2046 return AggValueSlot::DoesNotOverlap; in getOverlapForBaseInit()
2049 return AggValueSlot::MayOverlap; in getOverlapForBaseInit()
2053 AggValueSlot::Overlap_t MayOverlap, in EmitAggregateCopy()