Home
last modified time | relevance | path

Searched refs:BaseSubobject (Results 1 – 15 of 15) sorted by relevance

/llvm-project-15.0.7/clang/include/clang/AST/
H A DBaseSubobject.h30 class BaseSubobject {
38 BaseSubobject() = default;
39 BaseSubobject(const CXXRecordDecl *Base, CharUnits BaseOffset) in BaseSubobject() function
48 friend bool operator==(const BaseSubobject &LHS, const BaseSubobject &RHS) {
57 template<> struct DenseMapInfo<clang::BaseSubobject> {
58 static clang::BaseSubobject getEmptyKey() {
59 return clang::BaseSubobject(
64 static clang::BaseSubobject getTombstoneKey() {
65 return clang::BaseSubobject(
77 static bool isEqual(const clang::BaseSubobject &LHS,
[all …]
H A DVTTBuilder.h40 VTTVTable(BaseSubobject Base, bool BaseIsVirtual) in VTTVTable()
56 BaseSubobject getBaseSubobject() const { in getBaseSubobject()
57 return BaseSubobject(getBase(), getBaseOffset()); in getBaseSubobject()
63 BaseSubobject VTableBase;
66 VTTComponent(uint64_t VTableIndex, BaseSubobject VTableBase) in VTTComponent()
95 llvm::DenseMap<BaseSubobject, uint64_t> SubVTTIndicies;
109 void LayoutSecondaryVTTs(BaseSubobject Base);
116 void LayoutSecondaryVirtualPointers(BaseSubobject Base,
124 void LayoutSecondaryVirtualPointers(BaseSubobject Base,
134 void LayoutVTT(BaseSubobject Base, bool BaseIsVirtual);
[all …]
H A DVTableBuilder.h239 typedef llvm::DenseMap<BaseSubobject, AddressPointLocation>
280 AddressPointLocation getAddressPoint(BaseSubobject Base) const { in getAddressPoint()
/llvm-project-15.0.7/clang/lib/AST/
H A DVTTBuilder.cpp38 LayoutVTT(BaseSubobject(MostDerivedClass, CharUnits::Zero()), in VTTBuilder()
42 void VTTBuilder::AddVTablePointer(BaseSubobject Base, uint64_t VTableIndex, in AddVTablePointer()
59 void VTTBuilder::LayoutSecondaryVTTs(BaseSubobject Base) { in LayoutSecondaryVTTs()
75 LayoutVTT(BaseSubobject(BaseDecl, BaseOffset), /*BaseIsVirtual=*/false); in LayoutSecondaryVTTs()
80 VTTBuilder::LayoutSecondaryVirtualPointers(BaseSubobject Base, in LayoutSecondaryVirtualPointers()
135 AddVTablePointer(BaseSubobject(BaseDecl, BaseOffset), VTableIndex, in LayoutSecondaryVirtualPointers()
140 LayoutSecondaryVirtualPointers(BaseSubobject(BaseDecl, BaseOffset), in LayoutSecondaryVirtualPointers()
147 VTTBuilder::LayoutSecondaryVirtualPointers(BaseSubobject Base, in LayoutSecondaryVirtualPointers()
169 LayoutVTT(BaseSubobject(BaseDecl, BaseOffset), /*BaseIsVirtual=*/true); in LayoutVirtualVTTs()
179 void VTTBuilder::LayoutVTT(BaseSubobject Base, bool BaseIsVirtual) { in LayoutVTT()
H A DVTableBuilder.cpp131 void dump(raw_ostream &Out, BaseSubobject Base,
652 BaseSubobject(PrimaryBase,PrimaryBaseOffset), in AddVCallAndVBaseOffsets()
1210 BaseSubobject Base, BaseSubobject Derived) const { in ComputeThisAdjustmentBaseOffset()
1638 BaseSubobject Base, bool BaseIsMorallyVirtual, in LayoutPrimaryAndSecondaryVTables()
1784 BaseSubobject(BaseDecl, BaseOffset), in LayoutSecondaryVTables()
1872 BaseSubobject(BaseDecl, BaseOffset), in LayoutVTablesForVirtualBases()
1908 const BaseSubobject &Base = AP.first; in dumpLayout()
2047 const BaseSubobject &Base = in dumpLayout()
3415 typedef llvm::SetVector<BaseSubobject, std::vector<BaseSubobject>,
3468 for (const BaseSubobject &BSO : FullPath) { in getOffsetOfFullPath()
[all …]
/llvm-project-15.0.7/clang/lib/CodeGen/
H A DCGVTables.h40 typedef std::pair<const CXXRecordDecl *, BaseSubobject> BaseSubobjectPairTy;
111 uint64_t getSubVTTIndex(const CXXRecordDecl *RD, BaseSubobject Base);
116 BaseSubobject Base);
121 GenerateConstructionVTable(const CXXRecordDecl *RD, const BaseSubobject &Base,
H A DCGVTT.cpp127 BaseSubobject Base) { in getSubVTTIndex()
136 for (llvm::DenseMap<BaseSubobject, uint64_t>::const_iterator I = in getSubVTTIndex()
153 BaseSubobject Base) { in getSecondaryVirtualPointerIndex()
163 for (llvm::DenseMap<BaseSubobject, uint64_t>::const_iterator I = in getSecondaryVirtualPointerIndex()
166 std::pair<const CXXRecordDecl *, BaseSubobject> Pair = in getSecondaryVirtualPointerIndex()
H A DCGCXXABI.h449 getVTableAddressPoint(BaseSubobject Base,
456 BaseSubobject Base,
462 getVTableAddressPointForConstExpr(BaseSubobject Base,
H A DCGCXX.cpp261 VTLayout.getAddressPoint(BaseSubobject(RD, CharUnits::Zero())); in BuildAppleKextVirtualCall()
H A DItaniumCXXABI.cpp253 getVTableAddressPoint(BaseSubobject Base,
258 BaseSubobject Base, const CXXRecordDecl *NearestVBase) override;
262 BaseSubobject Base, const CXXRecordDecl *NearestVBase);
265 getVTableAddressPointForConstExpr(BaseSubobject Base,
1784 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass, BaseSubobject Base, in getVTableAddressPointInStructor()
1796 ItaniumCXXABI::getVTableAddressPoint(BaseSubobject Base, in getVTableAddressPoint()
1841 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass, BaseSubobject Base, in getVTableAddressPointInStructorWithVTT()
1862 BaseSubobject Base, const CXXRecordDecl *VTableClass) { in getVTableAddressPointForConstExpr()
H A DCGClass.cpp490 CGM.getVTables().getSubVTTIndex(RD, BaseSubobject(Base, BaseOffset)); in GetVTTParameter()
2563 getVTablePointers(BaseSubobject(VTableClass, CharUnits::Zero()), in getVTablePointers()
2571 void CodeGenFunction::getVTablePointers(BaseSubobject Base, in getVTablePointers()
2622 BaseSubobject(BaseDecl, BaseOffset), in getVTablePointers()
H A DMicrosoftCXXABI.cpp298 getVTableAddressPoint(BaseSubobject Base,
303 BaseSubobject Base, const CXXRecordDecl *NearestVBase) override;
306 getVTableAddressPointForConstExpr(BaseSubobject Base,
1752 CodeGenFunction &CGF, const CXXRecordDecl *VTableClass, BaseSubobject Base, in getVTableAddressPointInStructor()
1770 MicrosoftCXXABI::getVTableAddressPoint(BaseSubobject Base, in getVTableAddressPoint()
1778 BaseSubobject Base, const CXXRecordDecl *VTableClass) { in getVTableAddressPointForConstExpr()
H A DCGVTables.cpp859 const CXXRecordDecl *RD, const BaseSubobject &Base, bool BaseIsVirtual, in GenerateConstructionVTable()
H A DCodeGenFunction.h2268 BaseSubobject Base;
2282 void getVTablePointers(BaseSubobject Base, const CXXRecordDecl *NearestVBase,
H A DCGExprConstant.cpp802 BaseSubobject(CD, Offset), VTableClass); in Build()