Lines Matching full:bitfield
54 /// * The allocation of bitfield access units is described in more detail in
66 /// if we do not clip the tail padding off of the bitfield in the complete
102 /// The Microsoft bitfield layout rule allocates discrete storage
251 // a bitfield as a single large integer load, we can imagine the bits
267 // 3) Clip bitfield storages members if their tail padding is or might be
320 // storage type isn't necessary, the first (non-0-length-bitfield) field's
405 // Create members for bitfields. Field is a bitfield, and FieldEnd is the end
406 // iterator of the record. Return the first non-bitfield encountered. We need
408 // affect the upper bound of bitfield access unit allocation.
416 // bitfield run is a contiguous collection of bitfields that can be stored
439 // record before the bitfield members so that it gets laid out before
451 // The SysV ABI can overlap bitfield storage units with both other bitfield
452 // storage units /and/ other non-bitfield data members. Accessing a sequence
479 // accesses and bit manipulation. If no bitfield straddles across the two
488 // adjacent bitfields share parts of a byte. (The first bitfield of such an
499 // again at the bitfield following that best one.
502 // *) it would cross a character-aigned zero-width bitfield, or
503 // *) fine-grained bitfield access option is in effect.
514 // unit from. Begin is the first bitfield of the span. If Begin is FieldEnd,
517 // include padding when we've advanced to a subsequent bitfield run.
525 // it might extend beyond the last character of the bitfield run, using
550 // Bitfield occupies the same character as previous bitfield, it must be
559 // Bitfield potentially begins a new span. This includes zero-length
567 // We've reached the end of the bitfield run. Either we're done, or this
672 // the (aligned) offset of next bitfield to consider.
681 "Installing but not at an aligned bitfield or limit");
711 // Accumulate this bitfield into the current (potential) span.
754 /// -fno-aapcs-bitfield-width.
960 assert(M.Offset >= Tail && "Bitfield access unit is not clipped");
963 "Bitfield straddles scissor offset");
1037 // A field without storage must be a bitfield.
1064 // if we have a bitfield of type T, with size N:
1076 // a bitfield as a single large integer load, we can imagine the bits
1124 // Add bitfield info.
1195 "Big endian union bitfield does not end at the back");
1198 "Little endian union bitfield with a non-zero offset");
1200 "Union not large enough for bitfield storage");
1208 assert(Info.Size > 0 && "Empty bitfield!");
1210 "Bitfield outside of its allocated storage");