clang 22.0.0git
clang::interp::InterpState Class Referencefinal

Interpreter context. More...

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/AST/ByteCode/InterpState.h"

Inheritance diagram for clang::interp::InterpState:
[legend]

Public Member Functions

 InterpState (State &Parent, Program &P, InterpStack &Stk, Context &Ctx, SourceMapper *M=nullptr)
 InterpState (State &Parent, Program &P, InterpStack &Stk, Context &Ctx, const Function *Func)
 ~InterpState ()
void cleanup ()
 InterpState (const InterpState &)=delete
InterpStateoperator= (const InterpState &)=delete
bool diagnosing () const
FramegetCurrentFrame () override
unsigned getCallStackDepth () override
const FramegetBottomFrame () const override
Expr::EvalStatusgetEvalStatus () const override
ASTContextgetASTContext () const override
const LangOptionsgetLangOpts () const
bool keepEvaluatingAfterFailure () const override
bool keepEvaluatingAfterSideEffect () const override
bool noteUndefinedBehavior () override
bool inConstantContext () const
bool hasActiveDiagnostic () override
void setActiveDiagnostic (bool Flag) override
void setFoldFailureDiagnostic (bool Flag) override
bool hasPriorDiagnostic () override
bool noteSideEffect () override
void deallocate (Block *B)
 Deallocates a pointer.
SourceInfo getSource (const Function *F, CodePtr PC) const override
 Delegates source mapping to the mapper.
ContextgetContext () const
void setEvalLocation (SourceLocation SL)
DynamicAllocatorgetAllocator ()
bool maybeDiagnoseDanglingAllocations ()
 Diagnose any dynamic allocations that haven't been freed yet.
StdAllocatorCaller getStdAllocatorCaller (StringRef Name) const
void * allocate (size_t Size, unsigned Align=8) const
template<typename T>
Tallocate (size_t Num=1) const
template<typename T>
T allocAP (unsigned BitWidth)
Floating allocFloat (const llvm::fltSemantics &Sem)
Public Member Functions inherited from clang::interp::State
virtual ~State ()
bool checkingPotentialConstantExpression () const
 Are we checking whether the expression is a potential constant expression?
bool checkingForUndefinedBehavior () const
 Are we checking an expression for overflow?
 State ()=default
OptionalDiagnostic FFDiag (SourceLocation Loc, diag::kind DiagId=diag::note_invalid_subexpr_in_const_expr, unsigned ExtraNotes=0)
 Diagnose that the evaluation could not be folded (FF => FoldFailure)
OptionalDiagnostic FFDiag (const Expr *E, diag::kind DiagId=diag::note_invalid_subexpr_in_const_expr, unsigned ExtraNotes=0)
OptionalDiagnostic FFDiag (const SourceInfo &SI, diag::kind DiagId=diag::note_invalid_subexpr_in_const_expr, unsigned ExtraNotes=0)
OptionalDiagnostic CCEDiag (SourceLocation Loc, diag::kind DiagId=diag::note_invalid_subexpr_in_const_expr, unsigned ExtraNotes=0)
 Diagnose that the evaluation does not produce a C++11 core constant expression.
OptionalDiagnostic CCEDiag (const Expr *E, diag::kind DiagId=diag::note_invalid_subexpr_in_const_expr, unsigned ExtraNotes=0)
OptionalDiagnostic CCEDiag (const SourceInfo &SI, diag::kind DiagId=diag::note_invalid_subexpr_in_const_expr, unsigned ExtraNotes=0)
OptionalDiagnostic Note (SourceLocation Loc, diag::kind DiagId)
 Add a note to a prior diagnostic.
void addNotes (ArrayRef< PartialDiagnosticAt > Diags)
 Add a stack of notes to a prior diagnostic.
DiagnosticBuilder report (SourceLocation Loc, diag::kind DiagId)
 Directly reports a diagnostic message.
Public Member Functions inherited from clang::interp::SourceMapper
virtual ~SourceMapper ()
const ExprgetExpr (const Function *F, CodePtr PC) const
 Returns the expression if an opcode belongs to one, null otherwise.
SourceLocation getLocation (const Function *F, CodePtr PC) const
 Returns the location from which an opcode originates.
SourceRange getRange (const Function *F, CodePtr PC) const

Public Attributes

ProgramP
 Reference to the module containing all bytecode.
InterpStackStk
 Temporary stack.
ContextCtx
 Interpreter Context.
InterpFrame BottomFrame
 Bottom function frame.
InterpFrameCurrent = nullptr
 The current frame.
SourceLocation EvalLocation
 Source location of the evaluating expression.
const VarDeclEvaluatingDecl = nullptr
 Declaration we're initializing/evaluting, if any.
SmallVectorImpl< PartialDiagnosticAt > * PrevDiags = nullptr
 Things needed to do speculative execution.
unsigned SpeculationDepth = 0
std::optional< boolConstantContextOverride
llvm::SmallVector< std::pair< const Expr *, const LifetimeExtendedTemporaryDecl * > > SeenGlobalTemporaries
llvm::SmallVector< const Block * > InitializingBlocks
 List of blocks we're currently running either constructors or destructors for.
std::optional< llvm::BumpPtrAllocator > Allocator
Public Attributes inherited from clang::interp::State
bool InConstantContext = false
 Whether or not we're in a context where the front end requires a constant value.
bool CheckingPotentialConstantExpression = false
 Whether we're checking that an expression is a potential constant expression.
bool CheckingForUndefinedBehavior = false
 Whether we're checking for an expression that has undefined behavior.
EvaluationMode EvalMode

Friends

class EvaluationResult
class InterpStateCCOverride

Detailed Description

Interpreter context.

Definition at line 43 of file InterpState.h.

Constructor & Destructor Documentation

◆ InterpState() [1/3]

◆ InterpState() [2/3]

◆ ~InterpState()

InterpState::~InterpState ( )

Definition at line 50 of file InterpState.cpp.

References BottomFrame, Current, Next, and P.

◆ InterpState() [3/3]

clang::interp::InterpState::InterpState ( const InterpState & )
delete

References InterpState().

Member Function Documentation

◆ allocAP()

◆ allocate() [1/2]

template<typename T>
T * clang::interp::InterpState::allocate ( size_t Num = 1) const
inline

Definition at line 132 of file InterpState.h.

References allocate(), clang::Num, and clang::T.

◆ allocate() [2/2]

void * clang::interp::InterpState::allocate ( size_t Size,
unsigned Align = 8 ) const
inline

Definition at line 127 of file InterpState.h.

References Allocator.

Referenced by allocAP(), allocate(), and allocFloat().

◆ allocFloat()

◆ cleanup()

void InterpState::cleanup ( )

Definition at line 71 of file InterpState.cpp.

◆ deallocate()

◆ diagnosing()

bool clang::interp::InterpState::diagnosing ( ) const
inline

◆ getAllocator()

◆ getASTContext()

ASTContext & clang::interp::InterpState::getASTContext ( ) const
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 70 of file InterpState.h.

References Ctx.

Referenced by clang::interp::AllocN(), clang::interp::BitCastPrim(), clang::interp::CallPtr(), clang::interp::CheckArraySize(), CheckBitcastType(), clang::interp::CheckConstant(), clang::interp::CheckDecl(), clang::interp::CheckDeleteSource(), clang::interp::CheckNewDeleteForms(), clang::interp::CheckNewTypeMismatch(), clang::interp::CheckPointerToIntegralCast(), CheckTemporary(), clang::interp::CMP3(), clang::interp::CmpHelper< Pointer >(), clang::interp::CmpHelperEQ< Pointer >(), clang::interp::Destroy(), clang::interp::diagnoseNonConstexprBuiltin(), clang::interp::DiagnoseUninitialized(), clang::interp::DoBitCast(), clang::interp::DoBitCastPtr(), clang::interp::DoBitCastPtr(), clang::interp::Free(), clang::interp::getField(), clang::interp::GetPtrBase(), clang::interp::GetPtrBasePop(), clang::interp::handleFixedPointOverflow(), clang::interp::interp__builtin_assume_aligned(), clang::interp::interp__builtin_atomic_lock_free(), clang::interp::interp__builtin_c11_atomic_is_lock_free(), clang::interp::interp__builtin_eh_return_data_regno(), clang::interp::interp__builtin_elementwise_countzeroes(), clang::interp::interp__builtin_inf(), clang::interp::interp__builtin_is_aligned_up_down(), clang::interp::interp__builtin_memchr(), clang::interp::interp__builtin_memcmp(), clang::interp::interp__builtin_memcpy(), clang::interp::interp__builtin_nan(), clang::interp::interp__builtin_object_size(), clang::interp::interp__builtin_operator_delete(), clang::interp::interp__builtin_operator_new(), clang::interp::interp__builtin_os_log_format_buffer_size(), clang::interp::interp__builtin_overflowop(), clang::interp::interp__builtin_strcmp(), clang::interp::interp__builtin_strlen(), clang::interp::InterpretBuiltin(), clang::interp::InterpretOffsetOf(), clang::interp::PtrPtrCast(), clang::interp::pushInteger(), and clang::interp::SubPtr().

◆ getBottomFrame()

const Frame * clang::interp::InterpState::getBottomFrame ( ) const
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 64 of file InterpState.h.

References BottomFrame.

◆ getCallStackDepth()

unsigned clang::interp::InterpState::getCallStackDepth ( )
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 61 of file InterpState.h.

References Current.

◆ getContext()

Context & clang::interp::InterpState::getContext ( ) const
inline

Definition at line 108 of file InterpState.h.

References Ctx.

Referenced by clang::interp::CallVirt(), clang::interp::CheckArrayInitialized(), clang::interp::compileFunction(), clang::interp::DoBitCast(), clang::interp::DoBitCastPtr(), clang::interp::DoMemcpy(), clang::interp::GetMemberPtrDecl(), clang::interp::GetTypeidPtr(), clang::interp::interp__builtin_abs(), clang::interp::interp__builtin_addressof(), clang::interp::interp__builtin_assume(), clang::interp::interp__builtin_atomic_lock_free(), clang::interp::interp__builtin_bitreverse(), clang::interp::interp__builtin_bswap(), clang::interp::interp__builtin_c11_atomic_is_lock_free(), clang::interp::interp__builtin_carryop(), clang::interp::interp__builtin_clrsb(), clang::interp::interp__builtin_clz(), clang::interp::interp__builtin_ctz(), clang::interp::interp__builtin_eh_return_data_regno(), clang::interp::interp__builtin_elementwise_abs(), clang::interp::interp__builtin_elementwise_countzeroes(), clang::interp::interp__builtin_elementwise_int_binop(), clang::interp::interp__builtin_elementwise_maxmin(), clang::interp::interp__builtin_elementwise_popcount(), clang::interp::interp__builtin_elementwise_triop(), clang::interp::interp__builtin_expect(), clang::interp::interp__builtin_ffs(), clang::interp::interp__builtin_fpclassify(), clang::interp::interp__builtin_ia32_addcarry_subborrow(), clang::interp::interp__builtin_ia32_pmul(), clang::interp::interp__builtin_isfpclass(), clang::interp::interp__builtin_memchr(), clang::interp::interp__builtin_memcmp(), clang::interp::interp__builtin_operator_new(), clang::interp::interp__builtin_overflowop(), clang::interp::interp__builtin_parity(), clang::interp::interp__builtin_popcount(), clang::interp::interp__builtin_rotate(), clang::interp::interp__builtin_strcmp(), clang::interp::interp__builtin_vector_reduce(), clang::interp::popArg(), clang::interp::popToAPSInt(), clang::interp::popToAPSInt(), clang::interp::pushInteger(), clang::interp::runRecordDestructor(), and clang::interp::SetThreeWayComparisonField().

◆ getCurrentFrame()

Frame * InterpState::getCurrentFrame ( )
overridevirtual

Implements clang::interp::State.

Definition at line 78 of file InterpState.cpp.

References Current.

◆ getEvalStatus()

Expr::EvalStatus & clang::interp::InterpState::getEvalStatus ( ) const
inlineoverridevirtual

◆ getLangOpts()

◆ getSource()

SourceInfo clang::interp::InterpState::getSource ( const Function * F,
CodePtr PC ) const
inlineoverridevirtual

Delegates source mapping to the mapper.

Implements clang::interp::SourceMapper.

Definition at line 100 of file InterpState.h.

References clang::interp::Function::getSource().

◆ getStdAllocatorCaller()

◆ hasActiveDiagnostic()

bool clang::interp::InterpState::hasActiveDiagnostic ( )
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 86 of file InterpState.h.

◆ hasPriorDiagnostic()

bool clang::interp::InterpState::hasPriorDiagnostic ( )
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 93 of file InterpState.h.

◆ inConstantContext()

◆ keepEvaluatingAfterFailure()

bool clang::interp::InterpState::keepEvaluatingAfterFailure ( ) const
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 76 of file InterpState.h.

◆ keepEvaluatingAfterSideEffect()

bool clang::interp::InterpState::keepEvaluatingAfterSideEffect ( ) const
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 79 of file InterpState.h.

◆ maybeDiagnoseDanglingAllocations()

bool InterpState::maybeDiagnoseDanglingAllocations ( )

Diagnose any dynamic allocations that haven't been freed yet.

Will return false if there were any allocations to diagnose, true otherwise.

Definition at line 108 of file InterpState.cpp.

References clang::interp::State::CCEDiag(), clang::interp::State::checkingPotentialConstantExpression(), and getLangOpts().

Referenced by clang::interp::CheckAllocations().

◆ noteSideEffect()

bool clang::interp::InterpState::noteSideEffect ( )
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 94 of file InterpState.h.

Referenced by clang::interp::SideEffect().

◆ noteUndefinedBehavior()

◆ operator=()

InterpState & clang::interp::InterpState::operator= ( const InterpState & )
delete

References InterpState().

◆ setActiveDiagnostic()

void clang::interp::InterpState::setActiveDiagnostic ( bool Flag)
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 87 of file InterpState.h.

◆ setEvalLocation()

void clang::interp::InterpState::setEvalLocation ( SourceLocation SL)
inline

Definition at line 110 of file InterpState.h.

References EvalLocation.

◆ setFoldFailureDiagnostic()

void clang::interp::InterpState::setFoldFailureDiagnostic ( bool Flag)
inlineoverridevirtual

Implements clang::interp::State.

Definition at line 90 of file InterpState.h.

◆ EvaluationResult

friend class EvaluationResult
friend

Definition at line 157 of file InterpState.h.

References EvaluationResult.

Referenced by EvaluationResult.

◆ InterpStateCCOverride

friend class InterpStateCCOverride
friend

Definition at line 158 of file InterpState.h.

References InterpStateCCOverride, and clang::interp::State::State().

Referenced by InterpStateCCOverride.

Member Data Documentation

◆ Allocator

std::optional<llvm::BumpPtrAllocator> clang::interp::InterpState::Allocator
mutable

Definition at line 196 of file InterpState.h.

Referenced by allocate().

◆ BottomFrame

InterpFrame clang::interp::InterpState::BottomFrame

Bottom function frame.

Definition at line 176 of file InterpState.h.

Referenced by getBottomFrame(), InterpState(), InterpState(), and ~InterpState().

◆ ConstantContextOverride

std::optional<bool> clang::interp::InterpState::ConstantContextOverride

Definition at line 186 of file InterpState.h.

Referenced by inConstantContext(), clang::interp::PopCC(), and clang::interp::PushCC().

◆ Ctx

◆ Current

InterpFrame* clang::interp::InterpState::Current = nullptr

The current frame.

Definition at line 178 of file InterpState.h.

Referenced by clang::interp::ActivateThisField(), clang::interp::AddSubMulHelper(), clang::interp::AllocN(), clang::interp::ArrayDecay(), clang::interp::Assume(), BCP(), clang::interp::BitCastPrim(), clang::interp::Call(), clang::interp::CallPtr(), clang::interp::CallVar(), clang::interp::CallVirt(), clang::interp::CastFloatingIntegral(), clang::interp::CastPointerIntegral(), clang::interp::CheckActive(), clang::interp::CheckArray(), clang::interp::CheckArraySize(), clang::interp::CheckArraySize(), clang::interp::CheckBitCast(), CheckBitcastType(), clang::interp::CheckCallable(), clang::interp::CheckCallDepth(), clang::interp::CheckConst(), clang::interp::CheckConstant(), clang::interp::checkConstructor(), clang::interp::CheckDeleteSource(), clang::interp::CheckDestructor(), clang::interp::CheckDivRem(), clang::interp::CheckDowncast(), clang::interp::CheckDummy(), clang::interp::CheckDynamicMemoryAllocation(), clang::interp::CheckFloatResult(), CheckGlobal(), clang::interp::CheckGlobalLoad(), clang::interp::CheckLifetime(), clang::interp::CheckLiteralType(), clang::interp::CheckLive(), clang::interp::CheckLoad(), clang::interp::CheckLocalLoad(), clang::interp::CheckMutable(), clang::interp::CheckNewDeleteForms(), clang::interp::CheckNewTypeMismatch(), clang::interp::CheckNonNullArg(), clang::interp::CheckNonNullArgs(), clang::interp::CheckNull(), clang::interp::CheckNull(), clang::interp::CheckPointerToIntegralCast(), clang::interp::CheckPseudoDtor(), clang::interp::CheckRange(), clang::interp::CheckRange(), clang::interp::CheckShift(), clang::interp::CheckSubobject(), CheckTemporary(), clang::interp::CheckThis(), clang::interp::CheckVolatile(), clang::interp::CheckWeak(), clang::interp::cleanupAfterFunctionCall(), clang::interp::CMP3(), clang::interp::CmpHelper< Pointer >(), clang::interp::CmpHelperEQ< MemberPointer >(), clang::interp::CmpHelperEQ< Pointer >(), clang::interp::Destroy(), clang::interp::diagnoseEnumValue(), diagnoseMissingInitializer(), clang::interp::diagnoseNonConstexprBuiltin(), diagnoseNonConstVariable(), clang::interp::DiagnoseUninitialized(), diagnoseUnknownDecl(), clang::interp::DiagTypeid(), clang::interp::Divc(), clang::interp::DoBitCastPtr(), clang::interp::DoShift(), clang::interp::DoShiftAP(), clang::interp::FnPtrCast(), clang::interp::Free(), getCallStackDepth(), getCurrentFrame(), clang::interp::getField(), clang::interp::GetIntPtr(), clang::interp::GetLocal(), clang::interp::GetParam(), clang::interp::GetPtrDerivedPop(), clang::interp::GetPtrLocal(), clang::interp::GetPtrParam(), clang::interp::GetPtrThisBase(), clang::interp::GetPtrThisField(), clang::interp::GetPtrThisVirtBase(), getStdAllocatorCaller(), clang::interp::GetThisField(), clang::interp::GetTypeidPtr(), clang::interp::handleFixedPointOverflow(), clang::interp::handleOverflow(), clang::interp::IncDecHelper(), clang::interp::InitElem(), clang::interp::InitElemPop(), clang::interp::InitScope(), clang::interp::InitThisBitField(), clang::interp::InitThisBitFieldActivate(), clang::interp::InitThisField(), clang::interp::InitThisFieldActivate(), clang::interp::interp__builtin_elementwise_countzeroes(), clang::interp::interp__builtin_is_constant_evaluated(), clang::interp::interp__builtin_is_within_lifetime(), clang::interp::interp__builtin_memchr(), clang::interp::interp__builtin_memcmp(), clang::interp::interp__builtin_memcpy(), clang::interp::interp__builtin_operator_delete(), clang::interp::interp__builtin_operator_new(), clang::interp::Interpret(), clang::interp::InterpretBuiltin(), InterpState(), InterpState(), clang::interp::Invalid(), clang::interp::InvalidCast(), clang::interp::InvalidDeclRef(), clang::interp::InvalidNewDeleteExpr(), clang::interp::InvalidShuffleVectorIndex(), clang::interp::Neg(), clang::interp::NoRet(), clang::interp::OffsetHelper(), clang::interp::PtrPtrCast(), clang::interp::Ret(), clang::interp::RetVoid(), clang::interp::runRecordDestructor(), clang::interp::RVOPtr(), clang::interp::SetLocal(), clang::interp::SetParam(), clang::interp::SetThisField(), clang::interp::ShiftFixedPoint(), clang::interp::SizelessVectorElementSize(), clang::interp::SubPtr(), clang::interp::This(), clang::interp::Unsupported(), and ~InterpState().

◆ EvalLocation

SourceLocation clang::interp::InterpState::EvalLocation

Source location of the evaluating expression.

Definition at line 180 of file InterpState.h.

Referenced by setEvalLocation().

◆ EvaluatingDecl

◆ InitializingBlocks

llvm::SmallVector<const Block *> clang::interp::InterpState::InitializingBlocks

List of blocks we're currently running either constructors or destructors for.

Definition at line 194 of file InterpState.h.

Referenced by clang::interp::Call(), clang::interp::CheckConst(), and clang::interp::interp__builtin_is_within_lifetime().

◆ P

◆ PrevDiags

SmallVectorImpl<PartialDiagnosticAt>* clang::interp::InterpState::PrevDiags = nullptr

Things needed to do speculative execution.

Definition at line 184 of file InterpState.h.

Referenced by clang::interp::EndSpeculation(), and clang::interp::StartSpeculation().

◆ SeenGlobalTemporaries

llvm::SmallVector< std::pair<const Expr *, const LifetimeExtendedTemporaryDecl *> > clang::interp::InterpState::SeenGlobalTemporaries

◆ SpeculationDepth

unsigned clang::interp::InterpState::SpeculationDepth = 0

◆ Stk

InterpStack& clang::interp::InterpState::Stk

Temporary stack.

Definition at line 172 of file InterpState.h.

Referenced by clang::interp::Activate(), clang::interp::Add(), clang::interp::Addf(), clang::interp::AddOffset(), clang::interp::AddSubMulHelper(), clang::interp::Alloc(), clang::interp::AllocCN(), clang::interp::AllocN(), clang::interp::ArrayDecay(), clang::interp::ArrayElem(), clang::interp::ArrayElemPop(), clang::interp::ArrayElemPtr(), clang::interp::ArrayElemPtrPop(), clang::interp::Assume(), BCP(), clang::interp::BitAnd(), clang::interp::BitCast(), clang::interp::BitCastPrim(), clang::interp::BitOr(), clang::interp::BitXor(), clang::interp::Call(), clang::interp::CallPtr(), clang::interp::CallVar(), clang::interp::CallVirt(), clang::interp::Cast(), clang::interp::CastAP(), clang::interp::CastAPS(), clang::interp::CastFixedPoint(), clang::interp::CastFixedPointFloating(), clang::interp::CastFixedPointIntegral(), clang::interp::CastFloatingFixedPoint(), clang::interp::CastFloatingIntegral(), clang::interp::CastFloatingIntegralAP(), clang::interp::CastFloatingIntegralAPS(), clang::interp::CastFP(), clang::interp::CastIntegralFixedPoint(), clang::interp::CastIntegralFloating(), clang::interp::CastMemberPtrPtr(), clang::interp::CastPointerIntegral(), clang::interp::CastPointerIntegralAP(), clang::interp::CastPointerIntegralAPS(), clang::interp::CheckDestruction(), clang::interp::CheckEnumValue(), clang::interp::CheckNewTypeMismatch(), clang::interp::CheckNewTypeMismatchArray(), clang::interp::CheckNonNullArg(), clang::interp::CheckNonNullArgs(), clang::interp::CheckNull(), clang::interp::cleanupAfterFunctionCall(), clang::interp::CMP3(), clang::interp::CmpHelper(), clang::interp::CmpHelper< Pointer >(), clang::interp::CmpHelperEQ< MemberPointer >(), clang::interp::CmpHelperEQ< Pointer >(), clang::interp::Comp(), clang::interp::Const(), clang::interp::ConstFloat(), clang::interp::CopyArray(), clang::interp::Dec(), clang::interp::DecayPtr(), clang::interp::Decf(), clang::interp::DecfPop(), clang::interp::DecPop(), clang::interp::DecPtr(), clang::interp::Div(), clang::interp::Divc(), clang::interp::Divf(), clang::interp::DoShift(), clang::interp::DoShiftAP(), clang::interp::Dump(), clang::interp::Dup(), clang::interp::EndLifetime(), clang::interp::EndLifetimePop(), clang::interp::ExpandPtr(), clang::interp::FinishInit(), clang::interp::FinishInitActivate(), clang::interp::FinishInitActivatePop(), clang::interp::FinishInitGlobal(), clang::interp::FinishInitPop(), clang::interp::Flip(), clang::interp::Free(), clang::interp::GetField(), clang::interp::getField(), clang::interp::GetFieldPop(), clang::interp::GetFnPtr(), clang::interp::GetGlobal(), clang::interp::GetGlobalUnchecked(), clang::interp::GetIntPtr(), clang::interp::GetLocal(), clang::interp::GetMemberPtr(), clang::interp::GetMemberPtrBase(), clang::interp::GetMemberPtrBasePop(), clang::interp::GetMemberPtrDecl(), clang::interp::GetParam(), clang::interp::GetPtrBase(), clang::interp::GetPtrBasePop(), clang::interp::GetPtrDerivedPop(), clang::interp::GetPtrField(), clang::interp::GetPtrFieldPop(), clang::interp::GetPtrGlobal(), clang::interp::GetPtrLocal(), clang::interp::GetPtrParam(), clang::interp::GetPtrThisBase(), clang::interp::GetPtrThisField(), clang::interp::GetPtrVirtBasePop(), clang::interp::GetThisField(), clang::interp::GetTypeid(), clang::interp::GetTypeidPtr(), clang::interp::Inc(), clang::interp::IncDecFloatHelper(), clang::interp::IncDecHelper(), clang::interp::IncDecPtrHelper(), clang::interp::Incf(), clang::interp::IncfPop(), clang::interp::IncPop(), clang::interp::IncPtr(), clang::interp::Init(), clang::interp::InitBitField(), clang::interp::InitBitFieldActivate(), clang::interp::InitElem(), clang::interp::InitElemPop(), clang::interp::InitField(), clang::interp::InitFieldActivate(), clang::interp::InitGlobal(), clang::interp::InitGlobalTemp(), clang::interp::InitGlobalTempComp(), clang::interp::InitPop(), clang::interp::InitThisBitField(), clang::interp::InitThisBitFieldActivate(), clang::interp::InitThisField(), clang::interp::InitThisFieldActivate(), clang::interp::interp__builtin_abs(), clang::interp::interp__builtin_arithmetic_fence(), clang::interp::interp__builtin_assume(), clang::interp::interp__builtin_assume_aligned(), clang::interp::interp__builtin_atomic_lock_free(), clang::interp::interp__builtin_bitreverse(), clang::interp::interp__builtin_blend(), clang::interp::interp__builtin_bswap(), clang::interp::interp__builtin_c11_atomic_is_lock_free(), clang::interp::interp__builtin_carryop(), clang::interp::interp__builtin_clrsb(), clang::interp::interp__builtin_clz(), clang::interp::interp__builtin_complex(), clang::interp::interp__builtin_copysign(), clang::interp::interp__builtin_ctz(), clang::interp::interp__builtin_eh_return_data_regno(), clang::interp::interp__builtin_elementwise_abs(), clang::interp::interp__builtin_elementwise_countzeroes(), clang::interp::interp__builtin_elementwise_int_binop(), clang::interp::interp__builtin_elementwise_maxmin(), clang::interp::interp__builtin_elementwise_popcount(), clang::interp::interp__builtin_elementwise_triop(), clang::interp::interp__builtin_elementwise_triop_fp(), clang::interp::interp__builtin_expect(), clang::interp::interp__builtin_fabs(), clang::interp::interp__builtin_ffs(), clang::interp::interp__builtin_fmax(), clang::interp::interp__builtin_fmin(), clang::interp::interp__builtin_fpclassify(), clang::interp::interp__builtin_ia32_addcarry_subborrow(), clang::interp::interp__builtin_ia32_bextr(), clang::interp::interp__builtin_ia32_pmul(), clang::interp::interp__builtin_inf(), clang::interp::interp__builtin_is_aligned_up_down(), clang::interp::interp__builtin_is_constant_evaluated(), clang::interp::interp__builtin_is_within_lifetime(), clang::interp::interp__builtin_isfinite(), clang::interp::interp__builtin_isfpclass(), clang::interp::interp__builtin_isinf(), clang::interp::interp__builtin_isnan(), clang::interp::interp__builtin_isnormal(), clang::interp::interp__builtin_issignaling(), clang::interp::interp__builtin_issubnormal(), clang::interp::interp__builtin_iszero(), clang::interp::interp__builtin_memchr(), clang::interp::interp__builtin_memcmp(), clang::interp::interp__builtin_memcpy(), clang::interp::interp__builtin_nan(), clang::interp::interp__builtin_object_size(), clang::interp::interp__builtin_operator_delete(), clang::interp::interp__builtin_operator_new(), clang::interp::interp__builtin_overflowop(), clang::interp::interp__builtin_parity(), clang::interp::interp__builtin_popcount(), clang::interp::interp__builtin_ptrauth_string_discriminator(), clang::interp::interp__builtin_rotate(), clang::interp::interp__builtin_select(), clang::interp::interp__builtin_signbit(), clang::interp::interp__builtin_strcmp(), clang::interp::interp__builtin_strlen(), clang::interp::interp__builtin_vector_reduce(), clang::interp::interp__builtin_x86_insert_subvector(), clang::interp::interp_floating_comparison(), InterpState(), InterpState(), clang::interp::Inv(), clang::interp::IsConstantContext(), clang::interp::IsNonNull(), Jf(), Jt(), clang::interp::Load(), clang::interp::LoadPop(), clang::interp::Memcpy(), clang::interp::Mul(), clang::interp::Mulc(), clang::interp::Mulf(), clang::interp::NarrowPtr(), clang::interp::Neg(), clang::interp::Null(), clang::interp::OffsetOf(), clang::interp::Pop(), clang::interp::popArg(), clang::interp::popToAPSInt(), clang::interp::popToAPSInt(), clang::interp::PreDec(), clang::interp::PreInc(), clang::interp::PtrPtrCast(), clang::interp::pushInteger(), clang::interp::Rem(), clang::interp::Ret(), clang::interp::RetVoid(), clang::interp::runRecordDestructor(), clang::interp::RVOPtr(), clang::interp::SetField(), clang::interp::SetLocal(), clang::interp::SetParam(), clang::interp::SetThisField(), clang::interp::ShiftFixedPoint(), clang::interp::Shl(), clang::interp::Shr(), clang::interp::StartLifetime(), clang::interp::Store(), clang::interp::StoreActivate(), clang::interp::StoreActivatePop(), clang::interp::StoreBitField(), clang::interp::StoreBitFieldActivate(), clang::interp::StoreBitFieldActivatePop(), clang::interp::StoreBitFieldPop(), clang::interp::StorePop(), clang::interp::Sub(), clang::interp::Subf(), clang::interp::SubOffset(), clang::interp::SubPtr(), clang::interp::This(), clang::interp::ToMemberPtr(), clang::interp::VirtBaseHelper(), clang::interp::Zero(), clang::interp::ZeroIntAP(), and clang::interp::ZeroIntAPS().


The documentation for this class was generated from the following files: