|
clang 24.0.0git
|
#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/AST/ByteCode/Pointer.h"
Public Attributes | |
| Block * | Pointee |
| unsigned | Base |
| uint64_t | Offset |
Static Public Attributes | |
| static constexpr unsigned | PastEndMark = ~0u |
| void PtrView::activate | ( | ) | const |
Definition at line 913 of file Pointer.cpp.
References activate(), atField(), Base, std::function, getArray(), getBase(), getFieldDesc(), getInlineDesc(), getRecord(), inUnion(), clang::interp::InlineDescriptor::IsActive, isArrayElement(), clang::interp::Descriptor::isPrimitiveArray(), isRoot(), clang::interp::Record::isUnion(), and startLifetime().
Referenced by activate(), and clang::interp::copyRecord().
| bool PtrView::allElementsInitialized | ( | ) | const |
Definition at line 880 of file Pointer.cpp.
References clang::interp::InitMapPtr::allInitialized(), Base, getFieldDesc(), getInitMap(), clang::interp::Initialized, clang::interp::GlobalInlineDescriptor::InitState, isArrayRoot(), isRoot(), Offset, and Pointee.
Referenced by clang::interp::CheckArrayInitialized().
Definition at line 277 of file Pointer.h.
References Offset, and Pointee.
Referenced by activate(), clang::interp::CheckFieldsInitialized(), clang::interp::copyRecord(), enumerateData(), clang::interp::GetField(), clang::interp::GetFieldPop(), and clang::interp::zeroAll().
Definition at line 213 of file Pointer.h.
References Base, elemSize(), getFieldDesc(), clang::Off, and Pointee.
Referenced by clang::interp::CheckArrayInitialized(), clang::interp::CopyArray(), clang::interp::copyComposite(), enumerateData(), clang::interp::interp__builtin_strlen(), and clang::interp::zeroAll().
|
inline |
Definition at line 60 of file Pointer.h.
References Pointee.
Referenced by clang::interp::copyRecord(), and clang::interp::DynamicCast().
|
inline |
Definition at line 59 of file Pointer.h.
Referenced by clang::interp::copyRecord().
Definition at line 248 of file Pointer.h.
References Base, isArrayRoot(), isLive(), Offset, Pointee, and clang::T.
Referenced by clang::interp::copyComposite(), clang::interp::copyRecord(), clang::interp::DoBitCastPtr(), clang::interp::finishGlobalRecurse(), clang::interp::GetField(), clang::interp::GetFieldPop(), clang::interp::GetThisField(), clang::interp::interp__builtin_strlen(), clang::interp::readPointerToBuffer(), clang::interp::SetThreeWayComparisonField(), and toRValue().
Definition at line 259 of file Pointer.h.
References Base, clang::interp::Descriptor::getElemSize(), getFieldDesc(), getNumElems(), isLive(), Pointee, and clang::T.
Referenced by clang::interp::copyComposite().
|
inline |
Definition at line 91 of file Pointer.h.
References clang::interp::Descriptor::getElemSize(), and getFieldDesc().
Referenced by atIndex(), clang::interp::Pointer::computeOffsetForComparison(), getIndex(), and getNumElems().
|
inline |
Definition at line 335 of file Pointer.h.
References clang::interp::Ended, and setLifeState().
|
inlinenodiscard |
Definition at line 117 of file Pointer.h.
References Base, clang::interp::InlineDescriptor::Desc, getDeclDesc(), getDescriptor(), getInlineDesc(), getSize(), inPrimitiveArray(), clang::interp::Descriptor::IsArray, isElementPastEnd(), isRoot(), Next, clang::interp::InlineDescriptor::Offset, Offset, and Pointee.
Referenced by clang::interp::Pointer::computeLayoutOffset(), and clang::interp::Pointer::computeOffsetForComparison().
|
inlinenodiscard |
Definition at line 152 of file Pointer.h.
References Base, Offset, and Pointee.
Referenced by activate(), clang::interp::Pointer::computeLayoutOffset(), clang::interp::Pointer::computeOffsetForComparison(), and getLifetime().
|
inlinenodiscard |
Definition at line 272 of file Pointer.h.
References Base, getInlineDesc(), clang::interp::InlineDescriptor::Offset, and Pointee.
Referenced by activate(), clang::interp::CheckActive(), clang::interp::CheckMutable(), clang::interp::CheckVolatile(), clang::interp::Pointer::computeLayoutOffset(), clang::interp::Pointer::computeOffsetForComparison(), and clang::interp::getDynamicDecl().
|
inline |
Definition at line 89 of file Pointer.h.
References Pointee.
Referenced by clang::interp::CheckFieldsInitialized(), clang::interp::Pointer::computeLayoutOffset(), clang::interp::Pointer::computeOffsetForComparison(), expand(), getType(), isConst(), and isVolatile().
|
inline |
|
inline |
Definition at line 158 of file Pointer.h.
References clang::interp::Descriptor::ElemDesc, clang::interp::Descriptor::ElemRecord, and getFieldDesc().
|
inline |
|
inline |
Definition at line 162 of file Pointer.h.
References clang::interp::Descriptor::asFieldDecl(), and getFieldDesc().
Referenced by clang::interp::CheckArrayInitialized(), clang::interp::CheckMutable(), clang::interp::CheckVolatile(), clang::interp::Pointer::computeLayoutOffset(), clang::interp::Pointer::computeOffsetForComparison(), and clang::interp::DoBitCastPtr().
|
inline |
Definition at line 83 of file Pointer.h.
References clang::interp::InlineDescriptor::Desc, getInlineDesc(), isRoot(), and Pointee.
Referenced by activate(), allElementsInitialized(), atIndex(), clang::interp::CheckArrayInitialized(), clang::interp::CheckFieldsInitialized(), clang::interp::CheckVolatile(), clang::interp::Pointer::computeLayoutOffset(), clang::interp::Pointer::computeSplitPoint(), clang::interp::copyComposite(), clang::interp::copyRecord(), elem(), elemSize(), enumerateData(), getElemRecord(), getField(), getOffset(), getRecord(), getSize(), getType(), inArray(), initialize(), initializeElement(), inPrimitiveArray(), isElementInitialized(), isField(), isInitialized(), isOnePastEnd(), isUnknownSizeArray(), isZeroSizeArray(), setLifeState(), clang::interp::SetThreeWayComparisonField(), toRValue(), and clang::interp::zeroAll().
|
inline |
Definition at line 222 of file Pointer.h.
References Base, elemSize(), getOffset(), isZero(), and Offset.
Referenced by clang::interp::Pointer::computeLayoutOffset(), clang::interp::Pointer::computeOffsetForComparison(), enumerateData(), getLifetime(), initialize(), isInitialized(), and setLifeState().
|
inline |
Definition at line 326 of file Pointer.h.
Referenced by allElementsInitialized(), getLifetime(), initializeElement(), isElementInitialized(), and setLifeState().
|
inline |
Definition at line 70 of file Pointer.h.
References Base, getDescriptor(), and getSize().
Referenced by activate(), clang::interp::Pointer::computeOffsetForComparison(), expand(), getBase(), getFieldDesc(), getLifetime(), initialize(), inUnion(), isActive(), isArrayElement(), isBaseClass(), isConst(), isInitialized(), isMutable(), isVirtualBaseClass(), isVolatile(), and setLifeState().
| Lifetime PtrView::getLifetime | ( | ) | const |
Definition at line 790 of file Pointer.cpp.
References clang::interp::InitMapPtr::allInitialized(), Base, clang::interp::Ended, getArray(), getIndex(), getInitMap(), getInlineDesc(), getLifetime(), clang::interp::InitMapPtr::hasInitMap(), inArray(), isArrayRoot(), clang::interp::InitMap::isElementAlive(), clang::interp::InlineDescriptor::LifeState, and clang::interp::Started.
Referenced by clang::interp::copyRecord(), getLifetime(), setLifeState(), and clang::interp::startLifetimeRecurse().
|
inline |
Definition at line 234 of file Pointer.h.
References elemSize(), and getSize().
Referenced by elem(), and initializeElement().
|
inline |
Definition at line 178 of file Pointer.h.
References Base, getFieldDesc(), Offset, and PastEndMark.
Referenced by getIndex().
|
inline |
Definition at line 157 of file Pointer.h.
References clang::interp::Descriptor::ElemRecord, and getFieldDesc().
Referenced by activate(), clang::interp::CheckActive(), clang::interp::CheckFieldsInitialized(), clang::interp::Pointer::computeOffsetForComparison(), clang::interp::DynamicCast(), and clang::interp::initBasesRecurse().
|
inline |
Definition at line 190 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::getSize().
Referenced by expand(), getInlineDesc(), and getNumElems().
|
inline |
Definition at line 282 of file Pointer.h.
References Base, getDeclDesc(), getFieldDesc(), clang::interp::Descriptor::getType(), getType(), inPrimitiveArray(), isRoot(), and Offset.
Referenced by clang::interp::CheckVolatile(), clang::interp::DynamicCast(), clang::interp::getDynamicDecl(), and getType().
|
inline |
Definition at line 57 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::IsArray.
Referenced by getLifetime(), isArrayElement(), isArrayRoot(), narrow(), and setLifeState().
| void PtrView::initialize | ( | ) | const |
Definition at line 831 of file Pointer.cpp.
References Base, getFieldDesc(), getIndex(), getInlineDesc(), clang::interp::Descriptor::getNumElems(), clang::interp::Initialized, initializeElement(), clang::interp::GlobalInlineDescriptor::InitState, clang::interp::InlineDescriptor::IsInitialized, clang::interp::Descriptor::isPrimitiveArray(), isRoot(), clang::interp::InlineDescriptor::LifeState, Offset, Pointee, and clang::interp::Started.
Referenced by clang::interp::copyRecord(), clang::interp::DoBitCastPtr(), enumerateData(), clang::interp::initBasesRecurse(), and clang::interp::SetThreeWayComparisonField().
| void PtrView::initializeElement | ( | unsigned | Index | ) | const |
Definition at line 852 of file Pointer.cpp.
References clang::interp::InitMapPtr::allInitialized(), Base, getFieldDesc(), getInitMap(), clang::interp::Descriptor::getNumElems(), getNumElems(), clang::interp::InitMapPtr::hasInitMap(), clang::interp::InitMap::initializeElement(), clang::interp::InitMapPtr::noteAllInitialized(), Pointee, and clang::interp::InitMapPtr::setInitMap().
Referenced by clang::interp::copyComposite(), and initialize().
|
inline |
Definition at line 58 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::isPrimitiveArray().
|
inline |
Definition at line 56 of file Pointer.h.
References getInlineDesc(), and clang::interp::InlineDescriptor::InUnion.
Referenced by activate().
|
inline |
Definition at line 45 of file Pointer.h.
References getInlineDesc(), clang::interp::InlineDescriptor::IsActive, and isRoot().
Referenced by clang::interp::CheckActive(), clang::interp::CheckFieldsInitialized(), clang::interp::copyRecord(), and toRValue().
|
inline |
Definition at line 236 of file Pointer.h.
References Base, getInlineDesc(), inArray(), and Offset.
Referenced by activate(), clang::interp::Pointer::computeLayoutOffset(), and clang::interp::Pointer::computeOffsetForComparison().
|
inline |
Definition at line 46 of file Pointer.h.
References Base, inArray(), and Offset.
Referenced by allElementsInitialized(), deref(), getLifetime(), and setLifeState().
|
inline |
Definition at line 168 of file Pointer.h.
References getInlineDesc(), clang::interp::InlineDescriptor::IsBase, and isField().
Referenced by clang::interp::Pointer::computeLayoutOffset(), and clang::interp::Pointer::computeOffsetForComparison().
|
inline |
Definition at line 66 of file Pointer.h.
References getDeclDesc(), getInlineDesc(), clang::interp::Descriptor::IsConst, clang::interp::InlineDescriptor::IsConst, and isRoot().
Referenced by clang::interp::getDynamicDecl().
Definition at line 752 of file Pointer.cpp.
References clang::interp::InitMapPtr::allInitialized(), Base, getFieldDesc(), getInitMap(), clang::interp::InitMapPtr::hasInitMap(), clang::interp::Initialized, clang::interp::GlobalInlineDescriptor::InitState, clang::interp::InitMap::isElementInitialized(), isInitialized(), clang::interp::Descriptor::isPrimitiveArray(), isRoot(), Offset, and Pointee.
Referenced by isInitialized().
|
inline |
Definition at line 47 of file Pointer.h.
References Offset, and PastEndMark.
Referenced by expand().
|
inline |
|
inline |
Definition at line 164 of file Pointer.h.
References clang::interp::Descriptor::asDecl(), getFieldDesc(), isRoot(), and isZero().
Referenced by isBaseClass(), and isVirtualBaseClass().
|
inline |
Definition at line 305 of file Pointer.h.
References Base, getFieldDesc(), getIndex(), getInlineDesc(), clang::interp::Initialized, clang::interp::GlobalInlineDescriptor::InitState, isElementInitialized(), clang::interp::InlineDescriptor::IsInitialized, clang::interp::Descriptor::isPrimitiveArray(), isRoot(), Offset, and Pointee.
Referenced by clang::interp::CheckFieldsInitialized(), clang::interp::copyRecord(), enumerateData(), isElementInitialized(), and clang::interp::readPointerToBuffer().
|
inline |
|
inline |
Definition at line 49 of file Pointer.h.
References getInlineDesc(), clang::interp::InlineDescriptor::IsFieldMutable, and isRoot().
Referenced by clang::interp::CheckMutable().
|
inline |
Definition at line 192 of file Pointer.h.
References Base, clang::interp::Descriptor::ElemDesc, getFieldDesc(), clang::interp::Descriptor::getSize(), isPastEnd(), clang::interp::Descriptor::isUnknownSizeArray(), clang::Off, Offset, and Pointee.
Referenced by clang::interp::Pointer::computeLayoutOffset(), clang::interp::Pointer::computeOffsetForComparison(), and narrow().
|
inline |
Definition at line 176 of file Pointer.h.
References Offset, and Pointee.
Referenced by clang::interp::Pointer::computeLayoutOffset(), and isOnePastEnd().
|
inline |
Definition at line 64 of file Pointer.h.
Referenced by activate(), allElementsInitialized(), clang::interp::CheckActive(), clang::interp::CheckMutable(), clang::interp::CheckVolatile(), clang::interp::Pointer::computeLayoutOffset(), clang::interp::Pointer::computeOffsetForComparison(), clang::interp::Pointer::computeSplitPoint(), expand(), getFieldDesc(), getType(), initialize(), isActive(), isConst(), isElementInitialized(), isField(), isInitialized(), isMutable(), and isVolatile().
|
inline |
Definition at line 172 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::isUnknownSizeArray().
Referenced by narrow().
|
inline |
Definition at line 169 of file Pointer.h.
References getInlineDesc(), isField(), and clang::interp::InlineDescriptor::IsVirtualBase.
Referenced by clang::interp::Pointer::computeLayoutOffset(), and clang::interp::Pointer::computeOffsetForComparison().
|
inline |
Definition at line 53 of file Pointer.h.
References getDeclDesc(), getInlineDesc(), isRoot(), clang::interp::Descriptor::IsVolatile, and clang::interp::InlineDescriptor::IsVolatile.
|
inline |
|
inline |
Definition at line 48 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::isZeroSizeArray().
|
inlinenodiscard |
Definition at line 93 of file Pointer.h.
References Base, inArray(), inPrimitiveArray(), isOnePastEnd(), isUnknownSizeArray(), isZero(), Offset, PastEndMark, and Pointee.
Referenced by clang::interp::CheckArrayInitialized(), clang::interp::copyComposite(), enumerateData(), and clang::interp::zeroAll().
Definition at line 342 of file Pointer.h.
References clang::Other.
| void PtrView::setLifeState | ( | Lifetime | L | ) | const |
Definition at line 809 of file Pointer.cpp.
References clang::interp::InitMapPtr::allInitialized(), Base, clang::interp::Ended, clang::interp::InitMap::endElementLifetime(), getFieldDesc(), getIndex(), getInitMap(), getInlineDesc(), getLifetime(), clang::interp::Descriptor::getNumElems(), clang::interp::InitMapPtr::hasInitMap(), inArray(), isArrayRoot(), clang::interp::InlineDescriptor::LifeState, clang::interp::InitMapPtr::setInitMap(), clang::interp::Started, and clang::interp::InitMap::startElementLifetime().
Referenced by endLifetime(), and startLifetime().
|
inline |
Definition at line 334 of file Pointer.h.
References setLifeState(), and clang::interp::Started.
Referenced by activate(), enumerateData(), and clang::interp::initBasesRecurse().
|
inlinenodiscard |
Definition at line 145 of file Pointer.h.
References V.
Referenced by clang::interp::getDynamicDecl().
| unsigned clang::interp::PtrView::Base |
Definition at line 40 of file Pointer.h.
Referenced by activate(), allElementsInitialized(), atIndex(), canBeInitialized(), clang::interp::Pointer::computeSplitPoint(), deref(), elem(), expand(), getArray(), getBase(), getIndex(), getInitMap(), getInlineDesc(), getLifetime(), getOffset(), getType(), initialize(), initializeElement(), isArrayElement(), isArrayRoot(), isElementInitialized(), isInitialized(), isOnePastEnd(), isRoot(), narrow(), operator==(), and setLifeState().
| uint64_t clang::interp::PtrView::Offset |
Definition at line 41 of file Pointer.h.
Referenced by allElementsInitialized(), atField(), deref(), expand(), getArray(), getDescriptor(), getIndex(), getOffset(), getType(), initialize(), isArrayElement(), isArrayRoot(), isElementInitialized(), isElementPastEnd(), isInitialized(), isOnePastEnd(), isPastEnd(), narrow(), and operator==().
|
staticconstexpr |
Definition at line 37 of file Pointer.h.
Referenced by clang::interp::Pointer::getByteOffset(), clang::interp::Pointer::getOffset(), getOffset(), clang::interp::Pointer::isElementPastEnd(), isElementPastEnd(), and narrow().
| Block* clang::interp::PtrView::Pointee |
Definition at line 39 of file Pointer.h.
Referenced by allElementsInitialized(), atField(), atIndex(), block(), canBeInitialized(), deref(), elem(), expand(), getArray(), getBase(), getDeclDesc(), getDescriptor(), clang::interp::getDynamicDecl(), getEvalID(), getFieldDesc(), getInitMap(), initialize(), initializeElement(), isElementInitialized(), isExtern(), isInitialized(), isLive(), isOnePastEnd(), isPastEnd(), isRoot(), isZero(), narrow(), and operator==().