Home | History | Annotate | Download | only in AST

Lines Matching refs:AT

58 /// as DWARF, lacks all the information that was available at compile time, such
103 /// EmptySubobjectMap - Keeps track of which empty subobjects exist at different
145 "Field offset not at char boundary!");
175 /// at the given offset.
181 /// CanPlaceFieldAtOffset - Return whether a field can be placed at the given
245 // There is already an empty class of the same type at this offset.
320 // subobject of non-empty bases, are empty bases that can be placed at
369 // We are able to place the base at this offset. Make sure to update the
440 // If we have an array type we need to look at every element.
441 if (const ConstantArrayType *AT = Context.getAsConstantArrayType(T)) {
442 QualType ElemTy = Context.getBaseElementType(AT);
450 uint64_t NumElements = Context.getConstantArrayElementCount(AT);
474 // We are able to place the member variable at this offset.
484 // field subobjects are subobjects of empty bases that can be placed at offset
538 if (const ConstantArrayType *AT = Context.getAsConstantArrayType(T)) {
539 QualType ElemTy = Context.getBaseElementType(AT);
547 uint64_t NumElements = Context.getConstantArrayElementCount(AT);
552 // field subobjects are subobjects of empty bases that can be placed at
1019 assert(DataSize == 0 && "Vtable pointer must be at offset zero!");
1179 // If we have an empty base class, try to place it at offset 0.
1205 assert(Allowed && "Base subobject externally placed at overlapping offset");
1331 // We start laying out ivars not at the end of the superclass
1332 // structure, but at the next byte following the last field.
1411 // The bitfield is allocated starting at the next offset aligned
1422 // Place this field at the current location.
1454 // System V is to place bitfields at the next available bit offset
1460 // the bitfield at the next available bit offset.
1634 // Okay, place the bitfield at the calculated offset.
1785 // Record the fact that we're placing a field at this offset.
1792 // Check if we can place the field at this offset.
1794 // We couldn't place the field at the offset. Try again at a new offset.
1800 // Place this field at the current location.
1996 // at least, there's no point to assigning a key function to such a class;
2108 // consistently semantics to the type-traits intrinsics (or at
2134 // always occur at offset 0. vbptrs can occur at an arbitrary offset and are
2144 // align())). The vtordisp always occur at the end of the allocation block,
2150 // vfptrs are always injected at offset 0.
2157 // the vbptr is placed at the next properly aligned location. Enough padding
2159 // * The last zero sized non-virtual base can be placed at the end of the
2162 // * The last zero size virtual base may be placed at the end of the struct
2173 // of the object but is at least 4 bytes (in both 32 and 64 bit modes).
2187 // still active at the time of use.
2202 // vfptr, leaving the vfprt at a non-zero location which results in a fault if
2254 /// \brief Places a field at an offset in CharUnits.
2258 /// \brief Places a bitfield at a bit offset.
2341 // doesn't actually apply to the struct alignment at this point.
2538 // Set our VBPtroffset if we know it at this point.
2592 // Otherwise, lay the base out at the end of the MDC.
2696 // Inject the VBPointer at the injection site.
2752 // The alignment of the vtordisp is at least the required alignment of the