Lines Matching refs:BaseDecl
348 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in ComputeBaseOffsets() local
354 if (SubobjectOffsets.count(std::make_pair(BaseDecl, 0))) in ComputeBaseOffsets()
360 BaseOffset = MostDerivedClassLayout.getVBaseClassOffset(BaseDecl); in ComputeBaseOffsets()
362 LayoutClassLayout.getVBaseClassOffset(BaseDecl); in ComputeBaseOffsets()
365 CharUnits Offset = Layout.getBaseClassOffset(BaseDecl); in ComputeBaseOffsets()
371 ComputeBaseOffsets(BaseSubobject(BaseDecl, BaseOffset), in ComputeBaseOffsets()
384 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in dump() local
387 if (!BaseDecl->isPolymorphic()) in dump()
392 if (!VisitedVirtualBases.insert(BaseDecl).second) { in dump()
397 BaseOffset = MostDerivedClassLayout.getVBaseClassOffset(BaseDecl); in dump()
399 BaseOffset = Layout.getBaseClassOffset(BaseDecl) + Base.getBaseOffset(); in dump()
402 dump(Out, BaseSubobject(BaseDecl, BaseOffset), VisitedVirtualBases); in dump()
725 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in AddVCallOffsets() local
726 if (BaseDecl == PrimaryBase) in AddVCallOffsets()
731 Layout.getBaseClassOffset(BaseDecl); in AddVCallOffsets()
733 AddVCallOffsets(BaseSubobject(BaseDecl, BaseOffset), in AddVCallOffsets()
746 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in AddVBaseOffsets() local
749 if (B.isVirtual() && VisitedVirtualBases.insert(BaseDecl).second) { in AddVBaseOffsets()
751 LayoutClassLayout.getVBaseClassOffset(BaseDecl) - OffsetInLayoutClass; in AddVBaseOffsets()
754 assert(!VBaseOffsetOffsets.count(BaseDecl) && in AddVBaseOffsets()
759 std::make_pair(BaseDecl, VBaseOffsetOffset)); in AddVBaseOffsets()
766 AddVBaseOffsets(BaseDecl, OffsetInLayoutClass); in AddVBaseOffsets()
1746 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in LayoutSecondaryVTables() local
1749 if (!BaseDecl->isDynamicClass()) in LayoutSecondaryVTables()
1758 if (!BaseIsMorallyVirtual && !BaseDecl->getNumVBases()) in LayoutSecondaryVTables()
1763 CharUnits RelativeBaseOffset = Layout.getBaseClassOffset(BaseDecl); in LayoutSecondaryVTables()
1771 if (BaseDecl == PrimaryBase) { in LayoutSecondaryVTables()
1772 LayoutSecondaryVTables(BaseSubobject(BaseDecl, BaseOffset), in LayoutSecondaryVTables()
1779 BaseSubobject(BaseDecl, BaseOffset), in LayoutSecondaryVTables()
1820 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in DeterminePrimaryVirtualBases() local
1825 if (!VBases.insert(BaseDecl).second) in DeterminePrimaryVirtualBases()
1832 LayoutClassLayout.getVBaseClassOffset(BaseDecl); in DeterminePrimaryVirtualBases()
1835 OffsetInLayoutClass + Layout.getBaseClassOffset(BaseDecl); in DeterminePrimaryVirtualBases()
1838 DeterminePrimaryVirtualBases(BaseDecl, BaseOffsetInLayoutClass, VBases); in DeterminePrimaryVirtualBases()
1849 const CXXRecordDecl *BaseDecl = B.getType()->getAsCXXRecordDecl(); in LayoutVTablesForVirtualBases() local
1853 if (B.isVirtual() && BaseDecl->isDynamicClass() && in LayoutVTablesForVirtualBases()
1854 !PrimaryVirtualBases.count(BaseDecl) && in LayoutVTablesForVirtualBases()
1855 VBases.insert(BaseDecl).second) { in LayoutVTablesForVirtualBases()
1859 MostDerivedClassLayout.getVBaseClassOffset(BaseDecl); in LayoutVTablesForVirtualBases()
1864 LayoutClassLayout.getVBaseClassOffset(BaseDecl); in LayoutVTablesForVirtualBases()
1867 BaseSubobject(BaseDecl, BaseOffset), in LayoutVTablesForVirtualBases()
1875 if (BaseDecl->getNumVBases()) in LayoutVTablesForVirtualBases()
1876 LayoutVTablesForVirtualBases(BaseDecl, VBases); in LayoutVTablesForVirtualBases()