Lines Matching refs:CharUnits

48   CharUnits NonVirtualOffset;
51 NonVirtualOffset(CharUnits::Zero()) { } in BaseOffset()
53 const CXXRecordDecl *VirtualBase, CharUnits NonVirtualOffset) in BaseOffset()
74 CharUnits Offset;
77 Offset(CharUnits::Zero()) { } in OverriderInfo()
88 const CharUnits MostDerivedClassOffset;
102 typedef std::pair<const CXXMethodDecl *, CharUnits> MethodBaseOffsetPairTy;
115 CharUnits> SubobjectOffsetMapTy;
122 CharUnits OffsetInLayoutClass,
136 CharUnits MostDerivedClassOffset,
142 CharUnits BaseOffset) const { in getOverrider()
152 dump(llvm::errs(), BaseSubobject(MostDerivedClass, CharUnits::Zero()), in dump()
159 CharUnits MostDerivedClassOffset, in FinalOverriders()
170 ComputeBaseOffsets(BaseSubobject(MostDerivedClass, CharUnits::Zero()), in FinalOverriders()
190 CharUnits BaseOffset = SubobjectOffsets[std::make_pair(MD->getParent(), in FinalOverriders()
200 CharUnits OverriderOffset = in FinalOverriders()
222 CharUnits NonVirtualOffset = CharUnits::Zero(); in ComputeBaseOffset()
326 CharUnits OffsetInLayoutClass, in ComputeBaseOffsets()
350 CharUnits BaseOffset; in ComputeBaseOffsets()
351 CharUnits BaseOffsetInLayoutClass; in ComputeBaseOffsets()
365 CharUnits Offset = Layout.getBaseClassOffset(BaseDecl); in ComputeBaseOffsets()
390 CharUnits BaseOffset; in dump()
445 typedef std::pair<const CXXMethodDecl *, CharUnits> MethodAndOffsetPairTy;
460 bool AddVCallOffset(const CXXMethodDecl *MD, CharUnits OffsetOffset);
464 CharUnits getVCallOffsetOffset(const CXXMethodDecl *MD);
510 CharUnits OffsetOffset) { in AddVCallOffset()
522 CharUnits VCallOffsetMap::getVCallOffsetOffset(const CXXMethodDecl *MD) { in getVCallOffsetOffset()
535 typedef llvm::DenseMap<const CXXRecordDecl *, CharUnits>
575 CharUnits RealBaseOffset);
578 void AddVCallOffsets(BaseSubobject Base, CharUnits VBaseOffset);
582 CharUnits OffsetInLayoutClass);
586 CharUnits getCurrentOffsetOffset() const;
594 CharUnits OffsetInLayoutClass) in VCallAndVBaseOffsetBuilder()
617 CharUnits RealBaseOffset) { in AddVCallAndVBaseOffsets()
632 CharUnits PrimaryBaseOffset; in AddVCallAndVBaseOffsets()
663 CharUnits VCallAndVBaseOffsetBuilder::getCurrentOffsetOffset() const { in getCurrentOffsetOffset()
676 CharUnits OffsetWidth = Context.toCharUnitsFromBits( in getCurrentOffsetOffset()
680 CharUnits OffsetOffset = OffsetWidth * OffsetIndex; in getCurrentOffsetOffset()
686 CharUnits VBaseOffset) { in AddVCallOffsets()
710 CharUnits OffsetOffset = getCurrentOffsetOffset(); in AddVCallOffsets()
717 CharUnits Offset = CharUnits::Zero(); in AddVCallOffsets()
743 CharUnits BaseOffset = Base.getBaseOffset() + in AddVCallOffsets()
753 CharUnits OffsetInLayoutClass) { in AddVBaseOffsets()
763 CharUnits Offset = in AddVBaseOffsets()
770 CharUnits VBaseOffsetOffset = getCurrentOffsetOffset(); in AddVBaseOffsets()
791 typedef llvm::DenseMap<const CXXRecordDecl *, CharUnits>
808 const CharUnits MostDerivedClassOffset;
843 const CharUnits BaseOffset;
847 const CharUnits BaseOffsetInLayoutClass;
853 MethodInfo(CharUnits BaseOffset, CharUnits BaseOffsetInLayoutClass, in MethodInfo()
860 : BaseOffset(CharUnits::Zero()), in MethodInfo()
861 BaseOffsetInLayoutClass(CharUnits::Zero()), in MethodInfo()
917 CharUnits BaseOffsetInLayoutClass,
944 CharUnits BaseOffsetInLayoutClass,
946 CharUnits FirstBaseOffsetInLayoutClass) const;
951 void AddMethods(BaseSubobject Base, CharUnits BaseOffsetInLayoutClass,
953 CharUnits FirstBaseOffsetInLayoutClass,
971 CharUnits OffsetInLayoutClass);
979 CharUnits OffsetInLayoutClass);
984 CharUnits OffsetInLayoutClass,
1005 CharUnits MostDerivedClassOffset, in ItaniumVTableBuilder()
1260 CharUnits OffsetToBaseSubobject = Offset.NonVirtualOffset; in ComputeThisAdjustmentBaseOffset()
1291 const CXXMethodDecl *MD, CharUnits BaseOffsetInLayoutClass, in ComputeThisAdjustment()
1321 BaseSubobject(Offset.VirtualBase, CharUnits::Zero()), in ComputeThisAdjustment()
1324 CharUnits::Zero()); in ComputeThisAdjustment()
1385 const CXXMethodDecl *Overrider, CharUnits BaseOffsetInLayoutClass, in IsOverriderUsed()
1387 CharUnits FirstBaseOffsetInLayoutClass) const { in IsOverriderUsed()
1470 BaseSubobject Base, CharUnits BaseOffsetInLayoutClass, in AddMethods()
1472 CharUnits FirstBaseOffsetInLayoutClass, in AddMethods()
1487 CharUnits PrimaryBaseOffset; in AddMethods()
1488 CharUnits PrimaryBaseOffsetInLayoutClass; in AddMethods()
1666 CharUnits::Zero()), in LayoutVTable()
1683 Components.push_back(VTableComponent::MakeVCallOffset(CharUnits::Zero())); in LayoutVTable()
1688 bool BaseIsVirtualInLayoutClass, CharUnits OffsetInLayoutClass) { in LayoutPrimaryAndSecondaryVTables()
1714 CharUnits OffsetToTop = MostDerivedClassOffset - OffsetInLayoutClass; in LayoutPrimaryAndSecondaryVTables()
1786 CharUnits OffsetInLayoutClass) { in LayoutSecondaryVTables()
1818 CharUnits RelativeBaseOffset = Layout.getBaseClassOffset(BaseDecl); in LayoutSecondaryVTables()
1819 CharUnits BaseOffset = Base.getBaseOffset() + RelativeBaseOffset; in LayoutSecondaryVTables()
1821 CharUnits BaseOffsetInLayoutClass = in LayoutSecondaryVTables()
1842 const CXXRecordDecl *RD, CharUnits OffsetInLayoutClass, in DeterminePrimaryVirtualBases()
1859 CharUnits PrimaryBaseOffsetInLayoutClass = in DeterminePrimaryVirtualBases()
1877 CharUnits BaseOffsetInLayoutClass; in DeterminePrimaryVirtualBases()
1913 CharUnits BaseOffset = in LayoutVTablesForVirtualBases()
1918 CharUnits BaseOffsetInLayoutClass = in LayoutVTablesForVirtualBases()
2126 CharUnits BaseOffset = in dumpLayout()
2156 std::map<std::string, CharUnits> ClassNamesAndOffsets; in dumpLayout()
2159 CharUnits OffsetOffset = I.second; in dumpLayout()
2353 CharUnits
2364 BaseSubobject(RD, CharUnits::Zero()), in getVirtualBaseOffsetOffset()
2366 /*OffsetInLayoutClass=*/CharUnits::Zero()); in getVirtualBaseOffsetOffset()
2428 ItaniumVTableBuilder Builder(*this, RD, CharUnits::Zero(), in computeVTableRelatedInformation()
2460 const CXXRecordDecl *MostDerivedClass, CharUnits MostDerivedClassOffset, in createConstructionVTableLayout()
2606 CharUnits ComputeThisOffset(FinalOverriders::OverriderInfo Overrider);
2609 CharUnits ThisOffset, ThisAdjustment &TA);
2639 AddMethods(BaseSubobject(MostDerivedClass, CharUnits::Zero()), 0, nullptr, in LayoutVFTable()
2673 Overriders(MostDerivedClass, CharUnits(), MostDerivedClass) { in VFTableBuilder()
2768 CharUnits
2802 CharUnits Ret; in ComputeThisOffset()
2808 CharUnits ThisOffset = Overrider.Offset; in ComputeThisOffset()
2809 CharUnits LastVBaseOffset; in ComputeThisOffset()
2960 FinalOverriders::OverriderInfo Overrider, CharUnits ThisOffset, in CalculateVtordispAdjustment()
2976 CharUnits OffsetOfVBaseWithVFPtr = VBaseMapEntry->second.VBaseOffset; in CalculateVtordispAdjustment()
3051 CharUnits NextBaseOffset; in AddMethods()
3096 CharUnits ThisOffset = ComputeThisOffset(FinalOverrider); in AddMethods()
3520 const CXXRecordDecl *RD, CharUnits Offset, in findPathsToSubobject()
3533 CharUnits NewOffset = BS.isVirtual() in findPathsToSubobject()
3559 static CharUnits getOffsetOfFullPath(ASTContext &Context, in getOffsetOfFullPath()
3564 CharUnits Offset = CharUnits::fromQuantity(-1); in getOffsetOfFullPath()
3570 Offset = CharUnits::Zero(); in getOffsetOfFullPath()
3610 CharUnits BaseOffset = in selectBestPath()
3612 FinalOverriders Overriders(TopLevelRD, CharUnits::Zero(), TopLevelRD); in selectBestPath()
3669 Context, MostDerivedLayout, RD, CharUnits::Zero(), in computeFullPathsForVFTables()
3686 CharUnits L = LHS.VFPtrOffset; in vfptrIsEarlierInMDC()
3687 CharUnits R = RHS.VFPtrOffset; in vfptrIsEarlierInMDC()
3776 CharUnits LastVFPtrOffset = CharUnits::fromQuantity(-1); in dumpMethodLocations()
3779 CharUnits VFPtrOffset = I.first.VFPtrOffset; in dumpMethodLocations()
3863 CharUnits VFPtrOffset) { in getVFTableLayout()