gem5
v22.1.0.0
|
#include <self_debug.hh>
Public Member Functions | |
VectorCatch (bool _vcmatch, SelfDebug *s) | |
bool | addressMatching (ThreadContext *tc, Addr addr, ExceptionLevel el) |
bool | exceptionTrapping (ThreadContext *tc, ExceptionLevel el, ArmFault *fault) |
bool | isVCMatch () const |
Private Member Functions | |
std::vector< Fault * > | vectorTypes () |
Addr | getVectorBase (ThreadContext *tc, bool monitor) |
Private Attributes | |
bool | vcmatch |
SelfDebug * | conf |
Definition at line 242 of file self_debug.hh.
|
inline |
Definition at line 250 of file self_debug.hh.
bool gem5::VectorCatch::addressMatching | ( | ThreadContext * | tc, |
Addr | addr, | ||
ExceptionLevel | el | ||
) |
Definition at line 741 of file self_debug.cc.
References gem5::X86ISA::addr, gem5::bits(), conf, gem5::ArmISA::debugTargetFrom(), gem5::ArmISA::el, gem5::ArmISA::EL1, gem5::ArmISA::EL2, gem5::ArmISA::EL3, gem5::ArmISA::ELIs32(), gem5::statistics::enabled(), getVectorBase(), gem5::ArmSystem::haveEL(), gem5::ArmISA::SelfDebug::isAArch32(), gem5::ArmISA::isSecure(), gem5::ArmISA::mask, gem5::ArmISA::MISCREG_DBGVCR, and gem5::ThreadContext::readMiscReg().
Referenced by gem5::ArmISA::SelfDebug::testVectorCatch().
bool gem5::VectorCatch::exceptionTrapping | ( | ThreadContext * | tc, |
ExceptionLevel | el, | ||
ArmFault * | fault | ||
) |
Definition at line 799 of file self_debug.cc.
References conf, gem5::ArmISA::el, gem5::ArmISA::EL1, gem5::ArmISA::EL2, gem5::ArmISA::EL3, gem5::ArmISA::ELIs32(), gem5::ArmISA::ArmFault::getToMode(), gem5::ArmSystem::haveEL(), gem5::ArmISA::SelfDebug::isAArch32(), gem5::ArmISA::isSecure(), gem5::ArmISA::mask, gem5::ArmISA::MISCREG_DBGVCR, gem5::ArmISA::MODE_MON, gem5::ThreadContext::readMiscReg(), and gem5::ArmISA::ArmFault::vectorCatchFlag().
Referenced by gem5::ArmISA::SelfDebug::testVectorCatch().
|
inlineprivate |
Definition at line 261 of file self_debug.hh.
References gem5::ArmISA::MISCREG_MVBAR, gem5::ArmISA::MISCREG_SCTLR_EL1, gem5::ArmISA::MISCREG_VBAR, and gem5::ThreadContext::readMiscReg().
Referenced by addressMatching().
|
inline |
Definition at line 257 of file self_debug.hh.
References vcmatch.
Referenced by gem5::ArmISA::ArmFault::vectorCatch().
|
private |
|
private |
Definition at line 246 of file self_debug.hh.
Referenced by addressMatching(), and exceptionTrapping().
|
private |
Definition at line 245 of file self_debug.hh.
Referenced by isVCMatch().