|
gem5
|
#include <faults.hh>
Public Member Functions | |
| VirtualDataAbort (Addr _addr, TlbEntry::DomainType _domain, bool _write, uint8_t _source) | |
| void | invoke (ThreadContext *tc, const StaticInstPtr &inst) |
Public Member Functions inherited from ArmISA::AbortFault< VirtualDataAbort > | |
| AbortFault (Addr _faultAddr, bool _write, TlbEntry::DomainType _domain, uint8_t _source, bool _stage2, ArmFault::TranMethod _tranMethod=ArmFault::UnknownTran) | |
| void | invoke (ThreadContext *tc, const StaticInstPtr &inst=StaticInst::nullStaticInstPtr) |
| FSR | getFsr (ThreadContext *tc) |
| bool | abortDisable (ThreadContext *tc) |
| uint32_t | iss () const |
| bool | isStage2 () const |
| void | annotate (ArmFault::AnnotationIDs id, uint64_t val) |
| bool | isMMUFault () const |
Public Member Functions inherited from ArmISA::ArmFaultVals< VirtualDataAbort > | |
| ArmFaultVals (ExtMachInst _machInst=0, uint32_t _iss=0) | |
| FaultName | name () const |
| FaultStat & | countStat () |
| FaultOffset | offset (ThreadContext *tc) |
| FaultOffset | offset64 () |
| OperatingMode | nextMode () |
| virtual bool | routeToMonitor (ThreadContext *tc) const |
| uint8_t | armPcOffset (bool isHyp) |
| uint8_t | thumbPcOffset (bool isHyp) |
| uint8_t | armPcElrOffset () |
| uint8_t | thumbPcElrOffset () |
| virtual bool | fiqDisable (ThreadContext *tc) |
| virtual ExceptionClass | ec (ThreadContext *tc) const |
Public Member Functions inherited from ArmISA::ArmFault | |
| ArmFault (ExtMachInst _machInst=0, uint32_t _iss=0) | |
| MiscRegIndex | getSyndromeReg64 () const |
| MiscRegIndex | getFaultAddrReg64 () const |
| void | invoke64 (ThreadContext *tc, const StaticInstPtr &inst=StaticInst::nullStaticInstPtr) |
| virtual bool | routeToHyp (ThreadContext *tc) const |
| virtual void | setSyndrome (ThreadContext *tc, MiscRegIndex syndrome_reg) |
Static Public Attributes | |
| static const MiscRegIndex | FsrIndex = MISCREG_DFSR |
| static const MiscRegIndex | FarIndex = MISCREG_DFAR |
| static const MiscRegIndex | HFarIndex = MISCREG_HDFAR |
Static Public Attributes inherited from ArmISA::ArmFault | |
| static uint8_t | shortDescFaultSources [NumFaultSources] |
| Encodings of the fault sources when the short-desc. More... | |
| static uint8_t | longDescFaultSources [NumFaultSources] |
| Encodings of the fault sources when the long-desc. More... | |
| static uint8_t | aarch64FaultSources [NumFaultSources] |
| Encodings of the fault sources in AArch64 state. More... | |
Additional Inherited Members | |
Public Types inherited from ArmISA::ArmFault | |
| enum | FaultSource { AlignmentFault = 0, InstructionCacheMaintenance, SynchExtAbtOnTranslTableWalkLL, SynchPtyErrOnTranslTableWalkLL = SynchExtAbtOnTranslTableWalkLL + 4, TranslationLL = SynchPtyErrOnTranslTableWalkLL + 4, AccessFlagLL = TranslationLL + 4, DomainLL = AccessFlagLL + 4, PermissionLL = DomainLL + 4, DebugEvent = PermissionLL + 4, SynchronousExternalAbort, TLBConflictAbort, SynchPtyErrOnMemoryAccess, AsynchronousExternalAbort, AsynchPtyErrOnMemoryAccess, AddressSizeLL, PrefetchTLBMiss = AddressSizeLL + 4, PrefetchUncacheable, NumFaultSources, FaultSourceInvalid = 0xff } |
| Generic fault source enums used to index into {short/long/aarch64}DescFaultSources[] to get the actual encodings based on the current register width state and the translation table format in use. More... | |
| enum | AnnotationIDs { S1PTW, OVA, SAS, SSE, SRT, SF, AR } |
| enum | TranMethod { LpaeTran, VmsaTran, UnknownTran } |
Protected Member Functions inherited from ArmISA::ArmFault | |
| Addr | getVector (ThreadContext *tc) |
| Addr | getVector64 (ThreadContext *tc) |
Protected Attributes inherited from ArmISA::AbortFault< VirtualDataAbort > | |
| Addr | faultAddr |
| The virtual address the fault occured at. More... | |
| Addr | OVAddr |
| Original virtual address. More... | |
| bool | write |
| TlbEntry::DomainType | domain |
| uint8_t | source |
| uint8_t | srcEncoded |
| bool | stage2 |
| bool | s1ptw |
| ArmFault::TranMethod | tranMethod |
Protected Attributes inherited from ArmISA::ArmFault | |
| ExtMachInst | machInst |
| uint32_t | issRaw |
| bool | from64 |
| bool | to64 |
| ExceptionLevel | fromEL |
| ExceptionLevel | toEL |
| OperatingMode | fromMode |
Static Protected Attributes inherited from ArmISA::ArmFaultVals< VirtualDataAbort > | |
| static FaultVals | vals |
|
inline |
|
virtual |
Reimplemented from ArmISA::ArmFault.
Definition at line 1258 of file faults.cc.
References ArmISA::AbortFault< T >::invoke(), ArmISA::MISCREG_HCR, ThreadContext::readMiscRegNoEffect(), and ThreadContext::setMiscRegNoEffect().
|
static |
|
static |
|
static |