|
gem5 [DEVELOP-FOR-25.0]
|
#include <faults.hh>
Public Member Functions | |
| UndefinedInstruction (ExtMachInst mach_inst, bool _unknown, const char *_mnemonic=NULL, bool _disabled=false) | |
| UndefinedInstruction (ExtMachInst mach_inst, uint32_t _iss, ExceptionClass _overrideEc, const char *_mnemonic=NULL) | |
| void | invoke (ThreadContext *tc, const StaticInstPtr &inst=nullStaticInstPtr) override |
| bool | routeToHyp (ThreadContext *tc) const override |
| uint32_t | vectorCatchFlag () const override |
| ExceptionClass | ec (ThreadContext *tc) const override |
| Syndrome methods. | |
| uint32_t | iss () const override |
Public Member Functions inherited from gem5::ArmISA::ArmFaultVals< UndefinedInstruction > | |
| ArmFaultVals (ExtMachInst mach_inst=0, uint32_t _iss=0) | |
| FaultName | name () const override |
| FaultOffset | offset (ThreadContext *tc) override |
| FaultOffset | offset64 (ThreadContext *tc) override |
| OperatingMode | nextMode () override |
| virtual bool | routeToMonitor (ThreadContext *tc) const override |
| uint8_t | armPcOffset (bool is_hyp) override |
| uint8_t | thumbPcOffset (bool is_hyp) override |
| uint8_t | armPcElrOffset () override |
| uint8_t | thumbPcElrOffset () override |
| bool | abortDisable (ThreadContext *tc) override |
| bool | fiqDisable (ThreadContext *tc) override |
| bool | il (ThreadContext *tc) const override |
Public Member Functions inherited from gem5::ArmISA::ArmFault | |
| ArmFault (ExtMachInst mach_inst=0, uint32_t _iss=0) | |
| MiscRegIndex | getSyndromeReg64 () const |
| void | invoke32 (ThreadContext *tc, const StaticInstPtr &inst=nullStaticInstPtr) |
| void | invoke64 (ThreadContext *tc, const StaticInstPtr &inst=nullStaticInstPtr) |
| virtual void | update (ThreadContext *tc) |
| bool | isResetSPSR () |
| bool | vectorCatch (ThreadContext *tc, const StaticInstPtr &inst) |
| ArmStaticInst * | instrAnnotate (const StaticInstPtr &inst) |
| virtual void | annotate (AnnotationIDs id, uint64_t val) |
| virtual bool | isStage2 () const |
| virtual FSR | getFsr (ThreadContext *tc) const |
| virtual void | setSyndrome (ThreadContext *tc, MiscRegIndex syndrome_reg) |
| virtual bool | getFaultVAddr (Addr &va) const |
| OperatingMode | getToMode () const |
| virtual bool | isExternalAbort () const |
Public Member Functions inherited from gem5::FaultBase | |
| virtual | ~FaultBase () |
Protected Attributes | |
| bool | unknown |
| bool | disabled |
| ExceptionClass | overrideEc |
| const char * | mnemonic |
Protected Attributes inherited from gem5::ArmISA::ArmFault | |
| ExtMachInst | machInst |
| uint32_t | issRaw |
| bool | bStep |
| bool | from64 |
| bool | to64 |
| ExceptionLevel | fromEL |
| ExceptionLevel | toEL |
| OperatingMode | fromMode |
| OperatingMode | toMode |
| bool | faultUpdated |
| bool | hypRouted |
| bool | span |
|
inline |
Definition at line 327 of file faults.hh.
References gem5::ArmISA::ArmFaultVals< UndefinedInstruction >::ArmFaultVals(), disabled, gem5::ArmISA::INVALID, mnemonic, overrideEc, UndefinedInstruction(), and unknown.
Referenced by UndefinedInstruction(), and UndefinedInstruction().
|
inline |
Definition at line 335 of file faults.hh.
References gem5::ArmISA::ArmFaultVals< UndefinedInstruction >::ArmFaultVals(), disabled, mnemonic, overrideEc, UndefinedInstruction(), and unknown.
|
overridevirtual |
Syndrome methods.
Reimplemented from gem5::ArmISA::ArmFaultVals< UndefinedInstruction >.
Definition at line 880 of file faults.cc.
References gem5::ArmISA::ArmFault::hypRouted, gem5::ArmISA::INVALID, overrideEc, gem5::ArmISA::UNKNOWN, and gem5::ArmISA::ArmFaultVals< UndefinedInstruction >::vals().
|
overridevirtual |
Reimplemented from gem5::ArmISA::ArmFault.
Definition at line 770 of file faults.cc.
References disabled, gem5::ArmISA::ArmStaticInst::encoding(), gem5::FullSystem, gem5::RefCountingPtr< T >::get(), gem5::ArmISA::ArmFault::invoke(), mnemonic, panic, and unknown.
|
overridevirtual |
Reimplemented from gem5::ArmISA::ArmFaultVals< UndefinedInstruction >.
Definition at line 801 of file faults.cc.
References gem5::bits(), gem5::ArmISA::ArmFault::hypRouted, gem5::ArmISA::INVALID, gem5::ArmISA::ArmFault::issRaw, gem5::ArmISA::ArmFault::machInst, and overrideEc.
|
overridevirtual |
Reimplemented from gem5::ArmISA::ArmFault.
Definition at line 793 of file faults.cc.
References gem5::ArmISA::EL0, gem5::ArmISA::EL2, gem5::ArmISA::EL2Enabled(), gem5::ArmISA::ArmFault::fromEL, gem5::ArmISA::MISCREG_HCR_EL2, and gem5::ThreadContext::readMiscRegNoEffect().
|
inlineoverridevirtual |
Reimplemented from gem5::ArmISA::ArmFault.
|
protected |
Definition at line 322 of file faults.hh.
Referenced by invoke(), UndefinedInstruction(), and UndefinedInstruction().
|
protected |
Definition at line 324 of file faults.hh.
Referenced by invoke(), UndefinedInstruction(), and UndefinedInstruction().
|
protected |
Definition at line 323 of file faults.hh.
Referenced by ec(), iss(), UndefinedInstruction(), and UndefinedInstruction().
|
protected |
Definition at line 321 of file faults.hh.
Referenced by invoke(), UndefinedInstruction(), and UndefinedInstruction().