clang API Documentation
#include <VTableBuilder.h>
Public Types | |
typedef std::pair< uint64_t, ThunkInfo > | VTableThunkTy |
typedef const VTableComponent * | vtable_component_iterator |
typedef const VTableThunkTy * | vtable_thunk_iterator |
typedef llvm::DenseMap < BaseSubobject, uint64_t > | AddressPointsMapTy |
Public Member Functions | |
VTableLayout (uint64_t NumVTableComponents, const VTableComponent *VTableComponents, uint64_t NumVTableThunks, const VTableThunkTy *VTableThunks, const AddressPointsMapTy &AddressPoints, bool IsMicrosoftABI) | |
~VTableLayout () | |
uint64_t | getNumVTableComponents () const |
vtable_component_iterator | vtable_component_begin () const |
vtable_component_iterator | vtable_component_end () const |
uint64_t | getNumVTableThunks () const |
vtable_thunk_iterator | vtable_thunk_begin () const |
vtable_thunk_iterator | vtable_thunk_end () const |
uint64_t | getAddressPoint (BaseSubobject Base) const |
const AddressPointsMapTy & | getAddressPoints () const |
Definition at line 202 of file VTableBuilder.h.
typedef llvm::DenseMap<BaseSubobject, uint64_t> clang::VTableLayout::AddressPointsMapTy |
Definition at line 209 of file VTableBuilder.h.
typedef const VTableComponent* clang::VTableLayout::vtable_component_iterator |
Definition at line 206 of file VTableBuilder.h.
typedef const VTableThunkTy* clang::VTableLayout::vtable_thunk_iterator |
Definition at line 207 of file VTableBuilder.h.
typedef std::pair<uint64_t, ThunkInfo> clang::VTableLayout::VTableThunkTy |
Definition at line 204 of file VTableBuilder.h.
VTableLayout::VTableLayout | ( | uint64_t | NumVTableComponents, |
const VTableComponent * | VTableComponents, | ||
uint64_t | NumVTableThunks, | ||
const VTableThunkTy * | VTableThunks, | ||
const AddressPointsMapTy & | AddressPoints, | ||
bool | IsMicrosoftABI | ||
) |
Definition at line 2235 of file VTableBuilder.cpp.
Definition at line 2261 of file VTableBuilder.cpp.
uint64_t clang::VTableLayout::getAddressPoint | ( | BaseSubobject | Base | ) | const [inline] |
Definition at line 254 of file VTableBuilder.h.
Referenced by BuildAppleKextVirtualCall(), and clang::CodeGen::CodeGenVTables::EmitVTTDefinition().
const AddressPointsMapTy& clang::VTableLayout::getAddressPoints | ( | ) | const [inline] |
Definition at line 265 of file VTableBuilder.h.
uint64_t clang::VTableLayout::getNumVTableComponents | ( | ) | const [inline] |
Definition at line 232 of file VTableBuilder.h.
uint64_t clang::VTableLayout::getNumVTableThunks | ( | ) | const [inline] |
Definition at line 244 of file VTableBuilder.h.
vtable_component_iterator clang::VTableLayout::vtable_component_begin | ( | ) | const [inline] |
Definition at line 236 of file VTableBuilder.h.
vtable_component_iterator clang::VTableLayout::vtable_component_end | ( | ) | const [inline] |
Definition at line 240 of file VTableBuilder.h.
vtable_thunk_iterator clang::VTableLayout::vtable_thunk_begin | ( | ) | const [inline] |
Definition at line 246 of file VTableBuilder.h.
vtable_thunk_iterator clang::VTableLayout::vtable_thunk_end | ( | ) | const [inline] |
Definition at line 250 of file VTableBuilder.h.