}
public:
- void clear();
+ void clear(ThreadContext *tc) { clear(); }
protected:
+ void clear();
void clear32(const ArmISAParams *p, const SCTLR &sctlr_rst);
void clear64(const ArmISAParams *p);
void initID32(const ArmISAParams *p);
std::vector<BankType> bankType;
public:
+ void clear(ThreadContext *tc) { clear(); }
+
+ protected:
void clear();
+ public:
void configCP();
unsigned getVPENum(ThreadID tid) const;
public:
typedef PowerISAParams Params;
+ void
+ clear(ThreadContext *tc)
+ {
+ clear();
+ }
+
+ protected:
void
clear()
{
}
+ public:
RegVal
readMiscRegNoEffect(int misc_reg) const
{
public:
typedef RiscvISAParams Params;
+ void clear(ThreadContext *tc) { clear(); }
+
+ protected:
void clear();
+ public:
RegVal readMiscRegNoEffect(int misc_reg) const;
RegVal readMiscReg(int misc_reg, ThreadContext *tc);
void setMiscRegNoEffect(int misc_reg, RegVal val);
public:
- void clear();
+ void clear(ThreadContext *tc) { clear(); }
void serialize(CheckpointOut &cp) const override;
void unserialize(CheckpointIn &cp) override;
using BaseISA::startup;
protected:
+ void clear();
bool isHyperPriv() { return hpstate.hpriv; }
bool isPriv() { return hpstate.hpriv || pstate.priv; }
bool isNonPriv() { return !isPriv(); }
void updateHandyM5Reg(Efer efer, CR0 cr0,
SegAttr csAttr, SegAttr ssAttr, RFLAGS rflags,
ThreadContext *tc);
+ void clear();
public:
typedef X86ISAParams Params;
- void clear();
+ void clear(ThreadContext *tc) { clear(); }
ISA(Params *p);
const Params *params() const;
void
O3ThreadContext<Impl>::clearArchRegs()
{
- cpu->isa[thread->threadId()]->clear();
+ cpu->isa[thread->threadId()]->clear(this);
}
template <class Impl>
for (auto &pred_reg: vecPredRegs)
pred_reg.reset();
ccRegs.fill(0);
- isa->clear();
+ isa->clear(this);
}
//