38 #ifndef __ARCH_GENERIC_DEBUGFAULTS_HH__
39 #define __ARCH_GENERIC_DEBUGFAULTS_HH__
73 template <
class ...Args>
91 template <
class Flavor>
97 template <
class F,
class OnceToken>
101 static std::map<OnceToken, bool> tokenMap;
102 return tokenMap[
token];
106 template <
class OnceToken,
class ...Args>
108 const Args &...args) :
140 template <
class Base>
152 template <
class Base>
164 template <
class Base>
M5DebugFault(std::string _m)
virtual void debugFunc()=0
void advancePC(ThreadContext *tc, const StaticInstPtr &inst)
M5DebugFault(const std::string &format, const Args &...args)
void invoke(ThreadContext *tc, const StaticInstPtr &inst=nullStaticInstPtr) override
M5DebugOnceFault(const OnceToken &token, const std::string &format, const Args &...args)
void invoke(ThreadContext *tc, const StaticInstPtr &inst=nullStaticInstPtr) override
static bool & lookUpToken(const OnceToken &token)
void debugFunc() override
FaultName name() const override
void debugFunc() override
FaultName name() const override
FaultName name() const override
void debugFunc() override
FaultName name() const override
void debugFunc() override
virtual PCStateBase * clone() const =0
virtual void advancePC(PCStateBase &pc_state) const =0
ThreadContext is the external interface to all thread state for anything outside of the CPU.
virtual const PCStateBase & pcState() const =0
#define panic(...)
This implements a cprintf based panic() function.
#define fatal(...)
This implements a cprintf based fatal() function.
Bitfield< 31, 29 > format
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
std::string csprintf(const char *format, const Args &...args)
const StaticInstPtr nullStaticInstPtr
Statically allocated null StaticInstPtr.