Lines Matching full:bitfields
40 /// * LLVM does not have bitfields - Bitfields are collected into contiguous
44 /// * It is desired that, when possible, bitfields use the appropriate iN type
48 /// 3] instead of i24. This is computed when accumulating bitfields in
56 /// * Clang ignores 0 sized bitfields and 0 sized bases but *not* zero sized
62 /// code to access fields. Bitfields in tail position with tail padding may
146 /// for itanium bitfields that are smaller than their declared type.
220 llvm::DenseMap<const FieldDecl *, CGBitFieldInfo> BitFields; member
242 CGBitFieldInfo &Info = BitFields[FD->getCanonicalDecl()]; in setBitFieldInfo()
365 // case of packed bitfields on Itanium) then just use an I8 array. in lowerUnion()
387 "Failed to accumulate all the bitfields"); in accumulateFields()
405 // Create members for bitfields. Field is a bitfield, and FieldEnd is the end
414 // Run stores the first element of the current run of bitfields. FieldEnd is in accumulateBitFields()
416 // bitfield run is a contiguous collection of bitfields that can be stored in accumulateBitFields()
417 // in the same storage block. Zero-sized bitfields and bitfields that would in accumulateBitFields()
421 // used to determine if the ASTRecordLayout is treating these two bitfields in accumulateBitFields()
425 // Zero-width bitfields end runs. in accumulateBitFields()
440 // the bitfields it contains get laid out. in accumulateBitFields()
443 // Bitfields get the offset of their storage but come afterward and remain in accumulateBitFields()
453 // of bitfields mustn't interfere with adjacent non-bitfields -- they're in accumulateBitFields()
486 // Bitfields that share parts of a single byte are, of necessity, placed in in accumulateBitFields()
488 // adjacent bitfields share parts of a byte. (The first bitfield of such an in accumulateBitFields()
523 // since Begin. If this is Begin, we're gathering the initial set of bitfields in accumulateBitFields()
533 // span (or the end of the bitfields). When true, LimitOffset is the in accumulateBitFields()
551 // part of the same span. This can include zero-length bitfields, should in accumulateBitFields()
554 // bitfields be a barrier between access units. But of course we can't in accumulateBitFields()
557 "Concatenating non-contiguous bitfields"); in accumulateBitFields()
560 // bitfields on non-aligning targets that lie at character boundaries in accumulateBitFields()
581 // Field is the start of a new span or the end of the bitfields. The in accumulateBitFields()
685 // bitfields get the offset of their storage but come afterward and in accumulateBitFields()
709 "Accumulating past end of bitfields"); in accumulateBitFields()
759 for (auto &I : BitFields) { in computeVolatileBitfields()
1125 RL->BitFields.swap(Builder.BitFields); in ComputeRecordLayout()
1223 OS << " BitFields:[\n"; in print()
1228 it = BitFields.begin(), ie = BitFields.end(); in print()