Lines Matching full:bitfield

629   /// UnfilledBitsInLastUnit - If the last field laid out was a bitfield,
631 /// an adjacent bitfield if necessary. The unit in question is usually
636 /// storage unit of the previous field if it was a bitfield.
1516 // The bitfield is allocated starting at the next offset aligned
1553 // last allocated bitfield (i.e. the first bit offset available for
1563 // in the System V generic ABI. The basic bitfield layout rule in
1565 // where the entire bitfield would fit in an aligned storage unit of
1566 // the declared type; it's okay if an earlier or later non-bitfield
1570 // the bitfield at the next available bit offset.
1575 // the standard algorithm. The basic bitfield layout rule is to
1576 // allocate an entire unit of the bitfield's declared type
1583 // A zero-width bitfield forces the use of a new storage unit for
1586 // place a non-bitfield of the field's formal type. Usually this
1590 // ignored unless they follow a non-zero-width bitfield.
1596 // the bitfield. For ms_struct, this only affects the placement of
1614 // If the previous field was not a bitfield, or was a bitfield
1637 // long long bitfield has length no greater than 32 bits.
1645 // The bitfield alignment should always be greater than or equal to
1653 // On AIX, wide bitfield follows the same rules as normal bitfield.
1663 // Handle targets that don't honor bitfield type alignment.
1668 // Some targets don't honor leading zero-width bitfield.
1722 // Check if we need to add padding to fit the bitfield within an
1726 // If it's not a zero-width bitfield, and we can fit the bitfield
1775 // Okay, place the bitfield at the calculated offset.
1805 // Update DataSize to include the last byte containing (part of) the bitfield.
1810 // is a zero-width bitfield, in which case just use a size of 1.
1817 // the bitfield.
1835 // Otherwise, bump the data size up to include the bitfield,
1845 // zero-width bitfield, which doesn't count as anything for the
1932 // If MS bitfield layout is required, figure out what type is being
2435 // sense of ISO C++ [class]) with a bitfield member whose
2437 // bitfield is not a POD for the purpose of layout. Similarly,
2476 // * The existence of zero-width bitfield that occurs after anything other than
2477 // a non-zero length bitfield is ignored.
2529 // * __declspec(align) on bitfields has the effect of changing the bitfield's
2540 // * 2010 and back: If the last field in a record is a bitfield, every object
2543 // bitfield. 0 sized bitfields don't exhibit this behavior and the extra
2544 // padding can be avoided by adding a 0 sized bitfield after the non-zero-
2545 // sized bitfield.
2549 // suffers from the "last field is a bitfield" bug in 2010 and results in
2610 /// Places a bitfield at a bit offset.
2634 /// The size of the allocation of the currently active bitfield.
2654 /// The number of remaining bits in our last bitfield allocation.
2659 /// True if the last field laid out was a bitfield and was not 0
3032 // Clamp the bitfield to a containable size for the sake of being able
3036 // Check to see if this bitfield fits into an existing allocation. Note:
3058 // TODO: Add a Sema warning that MS ignores bitfield alignment in unions.
3060 // Allocate a new block of memory and place the bitfield in it.
3073 // bitfield.
3085 // TODO: Add a Sema warning that MS ignores bitfield alignment in unions.