Lines Matching defs:MicrosoftRecordLayoutBuilder
2211 struct MicrosoftRecordLayoutBuilder { struct
2212 struct ElementInfo {
2216 typedef llvm::DenseMap<const CXXRecordDecl *, CharUnits> BaseOffsetsMapTy;
2217 MicrosoftRecordLayoutBuilder(const ASTContext &Context) : Context(Context) {} in MicrosoftRecordLayoutBuilder() argument
2255 void placeFieldAtOffset(CharUnits FieldOffset) { in placeFieldAtOffset()
2259 void placeFieldAtBitOffset(uint64_t FieldOffset) { in placeFieldAtBitOffset()
2266 const ASTContext &Context;
2268 CharUnits Size;
2270 CharUnits NonVirtualSize;
2272 CharUnits DataSize;
2274 CharUnits Alignment;
2276 CharUnits MaxFieldAlignment;
2279 CharUnits RequiredAlignment;
2283 CharUnits CurrentBitfieldSize;
2285 CharUnits VBPtrOffset;
2287 CharUnits MinEmptyStructSize;
2289 ElementInfo PointerInfo;
2291 const CXXRecordDecl *PrimaryBase;
2293 const CXXRecordDecl *SharedVBPtrBase;
2295 SmallVector<uint64_t, 16> FieldOffsets;
2297 BaseOffsetsMapTy Bases;
2299 ASTRecordLayout::VBaseOffsetsMapTy VBases;
2303 unsigned RemainingBitsInField;
2304 bool IsUnion : 1;
2307 bool LastFieldIsNonZeroWidthBitfield : 1;
2309 bool HasOwnVFPtr : 1;
2311 bool HasVBPtr : 1;
2315 bool EndsWithZeroSizedObject : 1;
2318 bool LeadsWithZeroSizedBase : 1;
2321 bool UseExternalLayout : 1;
2325 ExternalLayout External;