Lines Matching defs:BaseOffset
30 /// BaseOffset - Represents an offset from a derived class to a direct or
32 struct BaseOffset {
47 BaseOffset() : DerivedClass(0), VirtualBase(0),
49 BaseOffset(const CXXRecordDecl *DerivedClass,
134 CharUnits BaseOffset) const {
135 assert(OverridersMap.count(std::make_pair(MD, BaseOffset)) &&
138 return OverridersMap.lookup(std::make_pair(MD, BaseOffset));
184 CharUnits BaseOffset = SubobjectOffsets[std::make_pair(MD->getParent(),
198 OverriderInfo& Overrider = OverridersMap[std::make_pair(MD, BaseOffset)];
212 static BaseOffset ComputeBaseOffset(ASTContext &Context,
247 return BaseOffset(DerivedRD, VirtualBase, NonVirtualOffset);
251 static BaseOffset ComputeBaseOffset(ASTContext &Context,
263 static BaseOffset
282 return BaseOffset();
305 return BaseOffset();
344 CharUnits BaseOffset;
354 BaseOffset = MostDerivedClassLayout.getVBaseClassOffset(BaseDecl);
361 BaseOffset = Base.getBaseOffset() + Offset;
365 ComputeBaseOffsets(BaseSubobject(BaseDecl, BaseOffset),
385 CharUnits BaseOffset;
392 BaseOffset = MostDerivedClassLayout.getVBaseClassOffset(BaseDecl);
394 BaseOffset = Layout.getBaseClassOffset(BaseDecl) + Base.getBaseOffset();
397 dump(Out, BaseSubobject(BaseDecl, BaseOffset), VisitedVirtualBases);
417 BaseOffset Offset;
729 CharUnits BaseOffset = Base.getBaseOffset() +
732 AddVCallOffsets(BaseSubobject(BaseDecl, BaseOffset),
831 /// BaseOffset - The base offset of this method.
832 const CharUnits BaseOffset;
842 MethodInfo(CharUnits BaseOffset, CharUnits BaseOffsetInLayoutClass,
844 : BaseOffset(BaseOffset),
849 : BaseOffset(CharUnits::Zero()),
892 ReturnAdjustment ComputeReturnAdjustment(BaseOffset Offset);
896 BaseOffset ComputeThisAdjustmentBaseOffset(BaseSubobject Base,
1138 Overriders.getOverrider(MD, MethodInfo.BaseOffset);
1201 ReturnAdjustment VTableBuilder::ComputeReturnAdjustment(BaseOffset Offset) {
1224 BaseOffset
1240 BaseOffset Offset = ComputeBaseOffset(Context, DerivedRD, *I);
1269 return BaseOffset();
1287 BaseOffset Offset = ComputeThisAdjustmentBaseOffset(OverriddenBaseSubobject,
1574 BaseOffset ReturnAdjustmentOffset =
1635 BaseOffset ReturnAdjustmentOffset;
1812 CharUnits BaseOffset = Base.getBaseOffset() + RelativeBaseOffset;
1820 LayoutSecondaryVTables(BaseSubobject(BaseDecl, BaseOffset),
1827 BaseSubobject(BaseDecl, BaseOffset),
1909 CharUnits BaseOffset =
1918 BaseSubobject(BaseDecl, BaseOffset),
2100 CharUnits BaseOffset =
2108 assert(I->second.getBaseOffset() == BaseOffset &&
2117 Out << ", " << BaseOffset.getQuantity() << ") vtable address --\n";
2895 BaseOffset ReturnAdjustmentOffset;