|
LLVM 24.0.0git
|
This class helps to assign indexes for DIE children. More...
#include "DWARFLinker/Parallel/SyntheticTypeNameBuilder.h"
Public Member Functions | |
| OrderedChildrenIndexAssigner (CompileUnit &CU, const DWARFDebugInfoEntry *DieEntry) | |
| std::optional< std::pair< size_t, size_t > > | getChildIndex (CompileUnit &CU, const DWARFDebugInfoEntry *ChildDieEntry) |
| Returns index of the specified child and width of hexadecimal representation. | |
Protected Types | |
| using | OrderedChildrenIndexesArrayTy = std::array<size_t, 8> |
Protected Member Functions | |
| std::optional< size_t > | tagToArrayIndex (CompileUnit &CU, const DWARFDebugInfoEntry *DieEntry) |
Protected Attributes | |
| bool | NeedCountChildren = false |
| OrderedChildrenIndexesArrayTy | OrderedChildIdxs = {0} |
| OrderedChildrenIndexesArrayTy | ChildIndexesWidth = {0} |
This class helps to assign indexes for DIE children.
Indexes are used to create type name for children which should be presented in the original order(function parameters, array dimensions, enumeration members, class/structure members).
Definition at line 148 of file SyntheticTypeNameBuilder.h.
|
protected |
Definition at line 159 of file SyntheticTypeNameBuilder.h.
| OrderedChildrenIndexAssigner::OrderedChildrenIndexAssigner | ( | CompileUnit & | CU, |
| const DWARFDebugInfoEntry * | DieEntry ) |
Definition at line 747 of file SyntheticTypeNameBuilder.cpp.
References assert(), ChildIndexesWidth, llvm::DWARFDebugInfoEntry::getTag(), NeedCountChildren, and tagToArrayIndex().
| std::optional< std::pair< size_t, size_t > > OrderedChildrenIndexAssigner::getChildIndex | ( | CompileUnit & | CU, |
| const DWARFDebugInfoEntry * | ChildDieEntry ) |
Returns index of the specified child and width of hexadecimal representation.
Definition at line 843 of file SyntheticTypeNameBuilder.cpp.
References assert(), ChildIndexesWidth, OrderedChildIdxs, and tagToArrayIndex().
|
protected |
Definition at line 803 of file SyntheticTypeNameBuilder.cpp.
References llvm::DWARFDebugInfoEntry::getParentIdx(), llvm::DWARFDebugInfoEntry::getTag(), llvm::dwarf_linker::isStaticDataMember(), and NeedCountChildren.
Referenced by getChildIndex(), and OrderedChildrenIndexAssigner().
|
protected |
Definition at line 166 of file SyntheticTypeNameBuilder.h.
Referenced by getChildIndex(), and OrderedChildrenIndexAssigner().
|
protected |
Definition at line 164 of file SyntheticTypeNameBuilder.h.
Referenced by OrderedChildrenIndexAssigner(), and tagToArrayIndex().
|
protected |
Definition at line 165 of file SyntheticTypeNameBuilder.h.
Referenced by getChildIndex().