|
clang 23.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 637 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 clang::interp::Pointer::activate(), activate(), and clang::interp::copyRecord().
| bool PtrView::allElementsInitialized | ( | ) | const |
Definition at line 604 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::Pointer::allElementsInitialized(), and clang::interp::CheckArrayInitialized().
Definition at line 252 of file Pointer.h.
References Offset, and Pointee.
Referenced by activate(), clang::interp::CheckFieldsInitialized(), clang::interp::collectBlocks(), clang::interp::copyRecord(), enumerateData(), clang::interp::setLifeStateRecurse(), clang::interp::SetThreeWayComparisonField(), clang::interp::startLifetimeRecurse(), clang::interp::Pointer::toRValue(), and clang::interp::zeroAll().
Definition at line 188 of file Pointer.h.
References Base, elemSize(), getFieldDesc(), and Pointee.
Referenced by clang::interp::CheckArrayInitialized(), clang::interp::collectBlocks(), clang::interp::copyComposite(), enumerateData(), clang::interp::interp__builtin_strcmp(), clang::interp::interp__builtin_strlen(), clang::interp::setLifeStateRecurse(), clang::interp::startLifetimeRecurse(), and clang::interp::zeroAll().
|
inline |
Definition at line 223 of file Pointer.h.
References Base, isArrayRoot(), isLive(), Offset, and Pointee.
Referenced by clang::interp::collectBlocks(), clang::interp::copyComposite(), clang::interp::copyRecord(), clang::interp::Pointer::deref(), clang::interp::DoBitCastPtr(), clang::interp::interp__builtin_strcmp(), clang::interp::interp__builtin_strlen(), clang::interp::readPointerToBuffer(), clang::interp::SetThreeWayComparisonField(), and clang::interp::Pointer::toRValue().
|
inline |
Definition at line 234 of file Pointer.h.
References Base, clang::interp::Descriptor::getElemSize(), getFieldDesc(), getNumElems(), isLive(), and Pointee.
Referenced by clang::interp::collectBlocks(), clang::interp::copyComposite(), and clang::interp::Pointer::elem().
|
inline |
Definition at line 84 of file Pointer.h.
References clang::interp::Descriptor::getElemSize(), and getFieldDesc().
Referenced by atIndex(), clang::interp::Pointer::computeOffsetForComparison(), clang::interp::Pointer::elemSize(), getIndex(), and getNumElems().
|
inline |
Definition at line 310 of file Pointer.h.
References clang::interp::Ended, and setLifeState().
|
inlinenodiscard |
Definition at line 110 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::computeOffsetForComparison(), and clang::interp::Pointer::toAPValue().
|
inlinenodiscard |
Definition at line 139 of file Pointer.h.
References Base, Offset, and Pointee.
Referenced by activate(), clang::interp::Pointer::computeOffsetForComparison(), getLifetime(), and clang::interp::Pointer::toAPValue().
|
inlinenodiscard |
Definition at line 247 of file Pointer.h.
References Base, getInlineDesc(), clang::interp::InlineDescriptor::Offset, and Pointee.
Referenced by activate(), clang::interp::Pointer::computeOffsetForComparison(), and clang::interp::Pointer::toAPValue().
|
inline |
Definition at line 82 of file Pointer.h.
References Pointee.
Referenced by clang::interp::CheckFieldsInitialized(), clang::interp::Pointer::computeOffsetForComparison(), expand(), and getType().
|
inline |
|
inline |
Definition at line 145 of file Pointer.h.
References clang::interp::Descriptor::ElemDesc, clang::interp::Descriptor::ElemRecord, and getFieldDesc().
Referenced by clang::interp::Pointer::getElemRecord().
|
inline |
Definition at line 57 of file Pointer.h.
References Pointee.
Referenced by clang::interp::CheckMutable().
|
inline |
Definition at line 149 of file Pointer.h.
References clang::interp::Descriptor::asFieldDecl(), and getFieldDesc().
Referenced by clang::interp::CheckArrayInitialized(), clang::interp::CheckMutable(), clang::interp::Pointer::computeOffsetForComparison(), and clang::interp::DoBitCastPtr().
|
inline |
Definition at line 76 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::collectBlocks(), 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(), isUnknownSizeArray(), isZeroSizeArray(), setLifeState(), clang::interp::setLifeStateRecurse(), clang::interp::SetThreeWayComparisonField(), clang::interp::startLifetimeRecurse(), clang::interp::Pointer::toAPValue(), clang::interp::Pointer::toRValue(), and clang::interp::zeroAll().
|
inline |
Definition at line 197 of file Pointer.h.
References Base, elemSize(), getOffset(), isZero(), and Offset.
Referenced by clang::interp::Pointer::computeOffsetForComparison(), enumerateData(), clang::interp::Pointer::getIndex(), getLifetime(), initialize(), isInitialized(), setLifeState(), and clang::interp::Pointer::toAPValue().
|
inline |
Definition at line 301 of file Pointer.h.
Referenced by allElementsInitialized(), getLifetime(), initializeElement(), isElementInitialized(), and setLifeState().
|
inline |
Definition at line 63 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(), isInitialized(), isMutable(), isVirtualBaseClass(), and setLifeState().
| Lifetime PtrView::getLifetime | ( | ) | const |
Definition at line 514 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 getLifetime(), setLifeState(), clang::interp::setLifeStateRecurse(), and clang::interp::startLifetimeRecurse().
|
inline |
Definition at line 209 of file Pointer.h.
References elemSize(), and getSize().
Referenced by elem(), clang::interp::Pointer::getNumElems(), initializeElement(), and clang::interp::Pointer::toAPValue().
|
inline |
Definition at line 165 of file Pointer.h.
References Base, getFieldDesc(), Offset, and PastEndMark.
Referenced by getIndex(), clang::interp::Pointer::getOffset(), and isOnePastEnd().
|
inline |
Definition at line 144 of file Pointer.h.
References clang::interp::Descriptor::ElemRecord, and getFieldDesc().
Referenced by activate(), clang::interp::CheckFieldsInitialized(), clang::interp::Pointer::computeOffsetForComparison(), clang::interp::Pointer::getRecord(), clang::interp::setLifeStateRecurse(), clang::interp::startLifetimeRecurse(), and clang::interp::Pointer::toAPValue().
|
inline |
Definition at line 177 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::getSize().
Referenced by expand(), getInlineDesc(), getNumElems(), and isOnePastEnd().
|
inline |
Definition at line 257 of file Pointer.h.
References Base, getDeclDesc(), getFieldDesc(), clang::interp::Descriptor::getType(), getType(), inPrimitiveArray(), isRoot(), and Offset.
Referenced by clang::interp::Pointer::getType(), and getType().
|
inline |
Definition at line 54 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::IsArray.
Referenced by getLifetime(), clang::interp::Pointer::inArray(), isArrayElement(), isArrayRoot(), narrow(), and setLifeState().
| void PtrView::initialize | ( | ) | const |
Definition at line 555 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::Pointer::initialize(), and clang::interp::SetThreeWayComparisonField().
| void PtrView::initializeElement | ( | unsigned | Index | ) | const |
Definition at line 576 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(), initialize(), and clang::interp::Pointer::initializeElement().
|
inline |
Definition at line 55 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::isPrimitiveArray().
Referenced by expand(), getType(), clang::interp::Pointer::inPrimitiveArray(), and narrow().
|
inline |
Definition at line 53 of file Pointer.h.
References getInlineDesc(), and clang::interp::InlineDescriptor::InUnion.
Referenced by activate(), and clang::interp::Pointer::inUnion().
|
inline |
Definition at line 46 of file Pointer.h.
References getInlineDesc(), clang::interp::InlineDescriptor::IsActive, and isRoot().
Referenced by clang::interp::CheckFieldsInitialized(), clang::interp::copyRecord(), clang::interp::Pointer::isActive(), and clang::interp::Pointer::toRValue().
|
inline |
Definition at line 211 of file Pointer.h.
References Base, getInlineDesc(), inArray(), and Offset.
Referenced by activate(), clang::interp::Pointer::computeOffsetForComparison(), clang::interp::Pointer::isArrayElement(), and clang::interp::Pointer::toAPValue().
|
inline |
Definition at line 47 of file Pointer.h.
References Base, inArray(), and Offset.
Referenced by allElementsInitialized(), deref(), getLifetime(), clang::interp::Pointer::isArrayRoot(), setLifeState(), and clang::interp::Pointer::toAPValue().
|
inline |
Definition at line 155 of file Pointer.h.
References getInlineDesc(), clang::interp::InlineDescriptor::IsBase, and isField().
Referenced by clang::interp::Pointer::computeOffsetForComparison(), and clang::interp::Pointer::isBaseClass().
|
inline |
Definition at line 45 of file Pointer.h.
References Pointee.
Referenced by clang::interp::Pointer::isDummy().
Definition at line 476 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 clang::interp::Pointer::isElementInitialized(), and isInitialized().
|
inline |
Definition at line 48 of file Pointer.h.
References Offset, and PastEndMark.
Referenced by expand().
|
inline |
Definition at line 151 of file Pointer.h.
References clang::interp::Descriptor::asDecl(), getFieldDesc(), isRoot(), and isZero().
Referenced by isBaseClass(), clang::interp::Pointer::isField(), isVirtualBaseClass(), and clang::interp::Pointer::toAPValue().
|
inline |
Definition at line 280 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 |
Definition at line 44 of file Pointer.h.
References Pointee.
Referenced by clang::interp::CheckMutable(), clang::interp::copyComposite(), deref(), elem(), and clang::interp::Pointer::isLive().
|
inline |
Definition at line 50 of file Pointer.h.
References getInlineDesc(), clang::interp::InlineDescriptor::IsFieldMutable, and isRoot().
Referenced by clang::interp::CheckMutable(), and clang::interp::Pointer::isMutable().
|
inline |
Definition at line 179 of file Pointer.h.
References getOffset(), getSize(), isPastEnd(), isUnknownSizeArray(), and Pointee.
Referenced by clang::interp::CheckRange(), clang::interp::Pointer::computeOffsetForComparison(), narrow(), and clang::interp::Pointer::toAPValue().
|
inline |
Definition at line 163 of file Pointer.h.
References Offset, and Pointee.
Referenced by isOnePastEnd().
|
inline |
Definition at line 59 of file Pointer.h.
Referenced by activate(), allElementsInitialized(), clang::interp::Pointer::computeOffsetForComparison(), clang::interp::Pointer::computeSplitPoint(), expand(), getFieldDesc(), getType(), initialize(), isActive(), isElementInitialized(), isField(), isInitialized(), isMutable(), and clang::interp::Pointer::isRoot().
|
inline |
Definition at line 159 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::isUnknownSizeArray().
Referenced by isOnePastEnd(), and narrow().
|
inline |
Definition at line 156 of file Pointer.h.
References getInlineDesc(), isField(), and clang::interp::InlineDescriptor::IsVirtualBase.
Referenced by clang::interp::Pointer::computeOffsetForComparison(), clang::interp::Pointer::isVirtualBaseClass(), and clang::interp::Pointer::toAPValue().
|
inline |
|
inline |
Definition at line 49 of file Pointer.h.
References getFieldDesc(), and clang::interp::Descriptor::isZeroSizeArray().
Referenced by clang::interp::CheckRange().
|
inlinenodiscard |
Definition at line 86 of file Pointer.h.
References Base, inArray(), inPrimitiveArray(), isOnePastEnd(), isUnknownSizeArray(), isZero(), Offset, PastEndMark, and Pointee.
Referenced by clang::interp::CheckArrayInitialized(), clang::interp::collectBlocks(), clang::interp::copyComposite(), enumerateData(), clang::interp::setLifeStateRecurse(), clang::interp::startLifetimeRecurse(), and clang::interp::zeroAll().
Definition at line 317 of file Pointer.h.
References clang::Other.
| void PtrView::setLifeState | ( | Lifetime | L | ) | const |
Definition at line 533 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(), clang::interp::Pointer::setLifeState(), clang::interp::setLifeStateRecurse(), and startLifetime().
|
inline |
Definition at line 309 of file Pointer.h.
References setLifeState(), and clang::interp::Started.
Referenced by activate(), enumerateData(), and clang::interp::startLifetimeRecurse().
| unsigned clang::interp::PtrView::Base |
Definition at line 40 of file Pointer.h.
Referenced by activate(), allElementsInitialized(), atIndex(), clang::interp::Pointer::computeSplitPoint(), deref(), elem(), expand(), getArray(), getBase(), getIndex(), getInitMap(), getInlineDesc(), getLifetime(), getOffset(), getType(), initialize(), initializeElement(), isArrayElement(), isArrayRoot(), isElementInitialized(), isInitialized(), 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(), 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(), clang::interp::collectBlocks(), deref(), elem(), expand(), getArray(), getBase(), getDeclDesc(), getDescriptor(), getEvalID(), getFieldDesc(), getInitMap(), initialize(), initializeElement(), isDummy(), isElementInitialized(), isInitialized(), isLive(), isOnePastEnd(), isPastEnd(), isRoot(), isZero(), narrow(), and operator==().