reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
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 auto VoidPtrAddr = CGF.EmitCastToVoidPtr(lvalue.getBitFieldPointer()); 85 (C.toCharUnitsFromBits(OrigBFI.Offset) / lvalue.getAlignment()) * 86 lvalue.getAlignment(); 97 LVal = LValue::MakeBitfield(Address(Addr, lvalue.getAlignment()), 98 BFI, lvalue.getType(), lvalue.getBaseInfo(), 98 BFI, lvalue.getType(), lvalue.getBaseInfo(), 99 lvalue.getTBAAInfo()); 109 AtomicAlign = ValueAlign = lvalue.getAlignment(); 110 } else if (lvalue.isVectorElt()) { 111 ValueTy = lvalue.getType()->castAs<VectorType>()->getElementType(); 113 AtomicTy = lvalue.getType(); 115 AtomicAlign = ValueAlign = lvalue.getAlignment(); 116 LVal = lvalue; 118 assert(lvalue.isExtVectorElt()); 119 ValueTy = lvalue.getType(); 122 lvalue.getType(), lvalue.getExtVectorAddress() 122 lvalue.getType(), lvalue.getExtVectorAddress() 125 AtomicAlign = ValueAlign = lvalue.getAlignment(); 126 LVal = lvalue; 129 AtomicSizeInBits, C.toBits(lvalue.getAlignment()));