Lines Matching defs:RV
779 void CodeGenFunction::EmitReturnOfRValue(RValue RV, QualType Ty) {
780 if (RV.isScalar()) {
781 Builder.CreateStore(RV.getScalarVal(), ReturnValue);
782 } else if (RV.isAggregate()) {
783 EmitAggregateCopy(ReturnValue, RV.getAggregateAddr(), Ty);
785 EmitStoreOfComplex(RV.getComplexVal(),
797 const Expr *RV = S.getRetValue();
805 dyn_cast_or_null<ExprWithCleanups>(RV)) {
807 RV = cleanups->getSubExpr();
824 if (RV)
825 EmitAnyExpr(RV);
826 } else if (RV == 0) {
831 RValue Result = EmitReferenceBindingToExpr(RV);
834 switch (getEvaluationKind(RV->getType())) {
836 Builder.CreateStore(EmitScalarExpr(RV), ReturnValue);
839 EmitComplexExprIntoLValue(RV,
840 MakeNaturalAlignAddrLValue(ReturnValue, RV->getType()),
844 CharUnits Alignment = getContext().getTypeAlignInChars(RV->getType());
845 EmitAggExpr(RV, AggValueSlot::forAddr(ReturnValue, Alignment,
856 if (RV == 0 || RV->isEvaluatable(getContext()))