153 return te->valid &&
te->asid ==
asid &&
199 return te->valid &&
te->nstid &&
209 lookup_data.
vmid = vmid;
233 return te->match(lookup_data) && (!
lastLevel || !
te->partial);
243 lookup_data.
vmid = vmid;
268 return te->match(lookup_data) && (!
lastLevel || !
te->partial);
312 auto addr_match =
te->match(lookup_data) && (!
lastLevel || !
te->partial);
328 auto addr_match =
te->match(lookup_data) && (!
lastLevel || !
te->partial);
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void flushStage2(const OP &tlbi_op)
void iflush(const OP &tlbi_op)
void flushStage1(const OP &tlbi_op)
void flush(const OP &tlbi_op)
void dflush(const OP &tlbi_op)
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
virtual TLBIMVAA makeStage2() const
TLBIIPA is basically a TLBIMVAA for stage2 TLBs.
TlbEntry::Lookup lookupGen(vmid_t vmid) const
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
TlbEntry::Lookup lookupGen(vmid_t vmid) const
void operator()(ThreadContext *tc) override
TranslationRegime targetRegime
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
bool resTLBIttl(uint8_t tg, uint8_t ttl) const
bool match(TlbEntry *entry, vmid_t curr_vmid) const override
void operator()(ThreadContext *tc) override
ThreadContext is the external interface to all thread state for anything outside of the CPU.
virtual CheckerCPU * getCheckerCpuPtr()=0
constexpr uint64_t sext(uint64_t val)
Sign-extend an N-bit value to 64 bits.
static bool useVMID(TranslationRegime regime)
ExceptionLevel currEL(const ThreadContext *tc)
Returns the current Exception Level (EL) of the provided ThreadContext.
bool EL2Enabled(ThreadContext *tc)
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
TranslationRegime targetRegime
The file contains the definition of a set of TLB Invalidate Instructions.