Lines Matching defs:lvalue

43     AtomicInfo(CodeGenFunction &CGF, LValue &lvalue)
46 assert(!lvalue.isGlobalReg());
48 if (lvalue.isSimple()) {
49 AtomicTy = lvalue.getType();
71 if (lvalue.getAlignment().isZero())
72 lvalue.setAlignment(AtomicAlign);
74 LVal = lvalue;
75 } else if (lvalue.isBitField()) {
76 ValueTy = lvalue.getType();
78 auto &OrigBFI = lvalue.getBitFieldInfo();
79 auto Offset = OrigBFI.Offset % C.toBits(lvalue.getAlignment());
82 .alignTo(lvalue.getAlignment()));
83 llvm::Value *BitFieldPtr = lvalue.getRawBitFieldPointer(CGF);
85 (C.toCharUnitsFromBits(OrigBFI.Offset) / lvalue.getAlignment()) *
86 lvalue.getAlignment();
97 Address(StoragePtr, StorageTy, lvalue.getAlignment()), BFI,
98 lvalue.getType(), lvalue.getBaseInfo(), lvalue.getTBAAInfo());
108 AtomicAlign = ValueAlign = lvalue.getAlignment();
109 } else if (lvalue.isVectorElt()) {
110 ValueTy = lvalue.getType()->castAs<VectorType>()->getElementType();
112 AtomicTy = lvalue.getType();
114 AtomicAlign = ValueAlign = lvalue.getAlignment();
115 LVal = lvalue;
117 assert(lvalue.isExtVectorElt());
118 ValueTy = lvalue.getType();
121 lvalue.getType(), cast<llvm::FixedVectorType>(
122 lvalue.getExtVectorAddress().getElementType())
125 AtomicAlign = ValueAlign = lvalue.getAlignment();
126 LVal = lvalue;
129 AtomicSizeInBits, C.toBits(lvalue.getAlignment()));
244 /// \param UpdateOp Update operation for the current lvalue.
831 LValue lvalue = MakeAddrLValue(Ptr, AtomicTy);
832 EmitAtomicInit(E->getVal1(), lvalue);
1720 // Build new lvalue for temp address.
1834 // Build new lvalue for temp address.
1929 void CodeGenFunction::EmitAtomicStore(RValue rvalue, LValue lvalue,
1931 bool IsVolatile = lvalue.isVolatileQualified();
1933 if (lvalue.getType()->isAtomicType()) {
1939 return EmitAtomicStore(rvalue, lvalue, AO, IsVolatile, isInit);