Lines Matching defs:lvalue
424 ComplexPairTy ComplexExprEmitter::EmitLoadOfLValue(LValue lvalue,
426 assert(lvalue.isSimple() && "non-simple complex l-value?");
427 if (lvalue.getType()->isAtomicType())
428 return CGF.EmitAtomicLoad(lvalue, loc).getComplexVal();
430 Address SrcPtr = lvalue.getAddress();
431 bool isVolatile = lvalue.isVolatileQualified();
436 Address RealP = CGF.emitAddrOfRealComponent(SrcPtr, lvalue.getType());
441 Address ImagP = CGF.emitAddrOfImagComponent(SrcPtr, lvalue.getType());
450 void ComplexExprEmitter::EmitStoreOfComplex(ComplexPairTy Val, LValue lvalue,
452 if (lvalue.getType()->isAtomicType() ||
453 (!isInit && CGF.LValueIsSuitableForInlineAtomic(lvalue)))
454 return CGF.EmitAtomicStore(RValue::getComplex(Val), lvalue, isInit);
456 Address Ptr = lvalue.getAddress();
457 Address RealPtr = CGF.emitAddrOfRealComponent(Ptr, lvalue.getType());
458 Address ImagPtr = CGF.emitAddrOfImagComponent(Ptr, lvalue.getType());
460 Builder.CreateStore(Val.first, RealPtr, lvalue.isVolatileQualified());
461 Builder.CreateStore(Val.second, ImagPtr, lvalue.isVolatileQualified());
1290 // Truncate the result and store it into the LHS lvalue.
1317 // If the lvalue is non-volatile, return the computed value of the assignment.
1338 // Store the result value into the LHS lvalue.
1352 // If the lvalue is non-volatile, return the computed value of the assignment.