Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:lv

184       LValue LV = CGF.EmitPseudoObjectLValue(E);
185 return EmitFinalDestCopy(E->getType(), LV);
243 LValue LV = CGF.EmitLValue(E);
246 if (LV.getType()->isAtomicType()) {
247 ValueDestForAtomic valueDest(CGF, Dest, LV.getType());
248 CGF.EmitAtomicLoad(LV, valueDest.getDest());
252 EmitFinalDestCopy(E->getType(), LV);
614 LValue LV = CGF.EmitCheckedLValue(E->getSubExpr(),
617 if (LV.isSimple())
618 CGF.EmitDynamicCast(LV.getAddress(), cast<CXXDynamicCastExpr>(E));
818 LValue LV = CGF.EmitPointerToDataMemberBinaryExpr(E);
819 EmitFinalDestCopy(E->getType(), LV);
1077 AggExprEmitter::EmitInitializationToLValue(Expr* E, LValue LV) {
1078 QualType type = LV.getType();
1085 return EmitNullInitializationToLValue(LV);
1088 return CGF.EmitStoreThroughLValue(RV, LV);
1093 CGF.EmitComplexExprIntoLValue(E, LV, /*isInit*/ true);
1096 CGF.EmitAggExpr(E, AggValueSlot::forLValue(LV,
1103 if (LV.isSimple()) {
1104 CGF.EmitScalarInit(E, /*D=*/0, LV, /*Captured=*/false);
1106 CGF.EmitStoreThroughLValue(RValue::get(CGF.EmitScalarExpr(E)), LV);
1113 void AggExprEmitter::EmitNullInitializationToLValue(LValue lv) {
1114 QualType type = lv.getType();
1126 if (lv.isBitField()) {
1127 CGF.EmitStoreThroughBitfieldLValue(RValue::get(null), lv);
1129 assert(lv.isSimple());
1130 CGF.EmitStoreOfScalar(null, lv, /* isInitialization */ true);
1136 CGF.EmitNullInitialization(lv.getAddress(), lv.getType());
1252 LValue LV = CGF.EmitLValueForFieldInitialization(DestLV, *field);
1254 LV.setNonGC(true);
1258 EmitInitializationToLValue(E->getInit(curInitIndex++), LV);
1261 EmitNullInitializationToLValue(LV);
1270 assert(LV.isSimple());
1275 CGF.pushDestroy(EHCleanup, LV.getAddress(), field->getType(),
1284 if (!pushedCleanup && LV.isSimple())
1286 dyn_cast<llvm::GetElementPtrInst>(LV.getAddress()))
1426 LValue LV = MakeAddrLValue(Temp, E->getType());
1427 EmitAggExpr(E, AggValueSlot::forLValue(LV, AggValueSlot::IsNotDestructed,
1430 return LV;