gem5 v24.0.0.0
|
Namespaces | |
namespace | float_reg |
namespace | int_reg |
Classes | |
class | BlockMem |
class | BlockMemImm |
class | BlockMemImmMicro |
class | BlockMemMicro |
class | Branch |
Base class for branch operations. More... | |
class | BranchDisp |
Base class for branch operations with an immediate displacement. More... | |
class | BranchImm13 |
Base class for branches that use an immediate and a register to compute their displacements. More... | |
class | BranchNBits |
Base class for branches with n bit displacements. More... | |
class | BranchSplit |
Base class for 16bit split displacements. More... | |
class | CleanWindow |
class | CpuMondo |
class | DataAccessError |
class | DataAccessException |
class | DataAccessProtection |
class | DataInvalidTSBEntry |
class | DataRealTranslationMiss |
class | Decoder |
class | DevMondo |
class | DivisionByZero |
class | EmuLinux |
class | EnumeratedFault |
class | ExternallyInitiatedReset |
class | FailUnimplemented |
Static instruction class for unimplemented instructions that cause simulator termination. More... | |
class | FastDataAccessMMUMiss |
class | FastDataAccessProtection |
class | FastInstructionAccessMMUMiss |
class | FillNNormal |
class | FillNOther |
class | FpDisabled |
class | FpExceptionIEEE754 |
class | FpExceptionOther |
class | FpUnimpl |
class | FsWorkload |
class | HstickMatch |
class | IllegalInstruction |
class | InstructionAccessError |
class | InstructionAccessException |
class | InstructionBreakpoint |
class | InstructionInvalidTSBEntry |
class | InstructionRealTranslationMiss |
class | InternalProcessorError |
class | InterruptLevelN |
class | Interrupts |
class | InterruptVector |
class | IntOp |
Base class for integer operations. More... | |
class | IntOpImm |
Base class for immediate integer operations. More... | |
class | IntOpImm10 |
Base class for 10 bit immediate integer operations. More... | |
class | IntOpImm11 |
Base class for 11 bit immediate integer operations. More... | |
class | IntOpImm13 |
Base class for 13 bit immediate integer operations. More... | |
class | IntRegClassOps |
class | ISA |
class | LDDFMemAddressNotAligned |
class | LDQFMemAddressNotAligned |
class | Mem |
Base class for memory operations. More... | |
class | MemAddressNotAligned |
class | MemImm |
Class for memory operations which use an immediate offset. More... | |
class | MMU |
class | Nop |
Nop class. More... | |
class | PageTableEntry |
class | PAWatchpoint |
class | PowerOnReset |
class | Priv |
Base class for privelege mode operations. More... | |
class | PrivilegedAction |
class | PrivilegedOpcode |
class | PrivImm |
Base class for privelege mode operations with immediates. More... | |
class | PrivReg |
class | RdPriv |
class | REDStateException |
class | RemoteGDB |
class | ResumableError |
class | SetHi |
Base class for sethi. More... | |
class | SEWorkload |
class | SoftwareInitiatedReset |
class | SparcDelayedMicroInst |
class | SparcFault |
class | SparcFaultBase |
class | SparcMacroInst |
class | SparcMicroInst |
class | SparcStaticInst |
Base class for all SPARC static instructions. More... | |
class | SpillNNormal |
class | SpillNOther |
class | StackTrace |
class | STDFMemAddressNotAligned |
class | StoreError |
class | STQFMemAddressNotAligned |
class | TagOverflow |
class | TLB |
struct | TlbEntry |
class | TlbMap |
struct | TlbRange |
class | Trap |
Base class for trap instructions, or instructions that always fault. More... | |
class | TrapInstruction |
class | TrapLevelZero |
class | TteTag |
class | Unknown |
Class for Unknown/Illegal instructions. More... | |
class | VAWatchpoint |
class | VecDisabled |
class | WarnUnimplemented |
Base class for unimplemented instructions that cause a warning to be printed (but do not terminate simulation). More... | |
class | WatchDogReset |
class | WrPriv |
class | WrPrivImm |
Typedefs | |
typedef uint32_t | TrapType |
typedef uint32_t | FaultPriority |
typedef GenericISA::DelaySlotUPCState< 4 > | PCState |
typedef uint32_t | MachInst |
typedef uint64_t | ExtMachInst |
Functions | |
bool | asiIsBlock (ASI asi) |
bool | asiIsPrimary (ASI asi) |
bool | asiIsSecondary (ASI asi) |
bool | asiIsNucleus (ASI asi) |
bool | asiIsAsIfUser (ASI asi) |
bool | asiIsIO (ASI asi) |
bool | asiIsReal (ASI asi) |
bool | asiIsLittle (ASI asi) |
bool | asiIsTwin (ASI asi) |
bool | asiIsPartialStore (ASI asi) |
bool | asiIsFloatingLoad (ASI asi) |
bool | asiIsNoFault (ASI asi) |
bool | asiIsScratchPad (ASI asi) |
bool | asiIsCmt (ASI asi) |
bool | asiIsQueue (ASI asi) |
bool | asiIsInterrupt (ASI asi) |
bool | asiIsMmu (ASI asi) |
bool | asiIsUnPriv (ASI asi) |
bool | asiIsPriv (ASI asi) |
bool | asiIsHPriv (ASI asi) |
bool | asiIsReg (ASI asi) |
bool | asiIsSparcError (ASI asi) |
bool | asiIsDtlb (ASI) |
void | enterREDState (ThreadContext *tc) |
This causes the thread context to enter RED state. | |
void | doREDFault (ThreadContext *tc, TrapType tt) |
This sets everything up for a RED state trap except for actually jumping to the handler. | |
void | doNormalFault (ThreadContext *tc, TrapType tt, bool gotoHpriv) |
This sets everything up for a normal trap except for actually jumping to the handler. | |
void | getREDVector (RegVal TT, Addr &PC, Addr &NPC) |
void | getHyperVector (ThreadContext *tc, Addr &PC, Addr &NPC, RegVal TT) |
void | getPrivVector (ThreadContext *tc, Addr &PC, Addr &NPC, RegVal TT, RegVal TL) |
static PSTATE | buildPstateMask () |
static void | copyMiscRegs (ThreadContext *src, ThreadContext *dest) |
static SyscallReturn | unameFunc (SyscallDesc *desc, ThreadContext *tc, VPtr< Linux::utsname > name) |
Target uname() handler. | |
static SyscallReturn | getresuidFunc (SyscallDesc *desc, ThreadContext *tc, VPtr<> ruid, VPtr<> euid, VPtr<> suid) |
constexpr RegClass | floatRegClass (FloatRegClass, FloatRegClassName, float_reg::NumRegs, debug::FloatRegs) |
BitUnion64 (HPSTATE) Bitfield< 0 > tlz | |
EndBitUnion (HPSTATE) BitUnion16(PSTATE) Bitfield< 1 > ie | |
EndBitUnion (PSTATE) BitUnion8(CCR) SubBitUnion(xcc | |
EndSubBitUnion (xcc) SubBitUnion(icc | |
EndSubBitUnion (icc) EndBitUnion(CCR) struct STS | |
constexpr RegClass | miscRegClass (MiscRegClass, MiscRegClassName, NumMiscRegs, debug::MiscRegs) |
Variables | |
const int | numFillInsts = 32 |
const int | numSpillInsts = 32 |
const MachInst | fillHandler64 [numFillInsts] |
const MachInst | fillHandler32 [numFillInsts] |
const MachInst | spillHandler64 [numSpillInsts] |
const MachInst | spillHandler32 [numSpillInsts] |
const char * | CondTestAbbrev [] |
static const PSTATE | PstateMask = buildPstateMask() |
const Addr | PageShift = 13 |
const Addr | PageBytes = 1ULL << PageShift |
constexpr IntRegClassOps | intRegClassOps |
constexpr RegClass | intRegClass |
constexpr RegClass | flatIntRegClass |
constexpr auto & | ReturnAddressReg = int_reg::I7 |
constexpr auto & | ReturnValueReg = int_reg::O0 |
constexpr auto & | StackPointerReg = int_reg::O6 |
constexpr auto & | FramePointerReg = int_reg::I6 |
constexpr auto & | SyscallPseudoReturnReg = int_reg::O1 |
Bitfield< 2 > | hpriv |
Bitfield< 5 > | red |
Bitfield< 10 > | ibe |
Bitfield< 11 > | id |
Bitfield< 2 > | priv |
Bitfield< 3 > | am |
Bitfield< 4 > | pef |
Bitfield< 7, 6 > | mm |
Bitfield< 8 > | tle |
Bitfield< 9 > | cle |
Bitfield< 10 > | pid0 |
Bitfield< 11 > | pid1 |
Bitfield< 7 > | n |
Bitfield< 6 > | z |
Bitfield< 5 > | v |
Bitfield< 4 > | c |
const int | NumMiscRegs = MISCREG_NUMMISCREGS |
const int | MaxPTL = 2 |
const int | MaxTL = 6 |
const int | MaxGL = 3 |
const int | MaxPGL = 2 |
const int | NWindows = 8 |
const Addr | StartVAddrHole = 0x0000800000000000ULL |
const Addr | EndVAddrHole = 0xFFFF7FFFFFFFFFFFULL |
const Addr | VAddrAMask = 0xFFFFFFFFULL |
const Addr | PAddrImplMask = 0x000000FFFFFFFFFFULL |
typedef uint64_t gem5::SparcISA::ExtMachInst |
typedef uint32_t gem5::SparcISA::FaultPriority |
typedef uint32_t gem5::SparcISA::MachInst |
Definition at line 40 of file pcstate.hh.
typedef uint32_t gem5::SparcISA::TrapType |
enum gem5::SparcISA::ASI |
Enumerator | |
---|---|
Always | |
Never | |
NotEqual | |
Equal | |
Greater | |
LessOrEqual | |
GreaterOrEqual | |
Less | |
GreaterUnsigned | |
LessOrEqualUnsigned | |
CarryClear | |
CarrySet | |
Positive | |
Negative | |
OverflowClear | |
OverflowSet |
Definition at line 48 of file static_inst.hh.
Definition at line 70 of file static_inst.hh.
Enumerator | |
---|---|
IT_TRAP_LEVEL_ZERO | |
IT_HINTP | |
IT_INT_VEC | |
IT_CPU_MONDO | |
IT_DEV_MONDO | |
IT_RES_ERROR | |
IT_SOFT_INT | |
NumInterruptTypes |
Definition at line 46 of file interrupts.hh.
Enumerator | |
---|---|
MISCREG_ASI | Ancillary State Registers. |
MISCREG_TICK | |
MISCREG_FPRS | |
MISCREG_PCR | |
MISCREG_PIC | |
MISCREG_GSR | |
MISCREG_SOFTINT_SET | |
MISCREG_SOFTINT_CLR | |
MISCREG_SOFTINT | |
MISCREG_TICK_CMPR | |
MISCREG_STICK | |
MISCREG_STICK_CMPR | |
MISCREG_TPC | Privilged Registers. |
MISCREG_TNPC | |
MISCREG_TSTATE | |
MISCREG_TT | |
MISCREG_PRIVTICK | |
MISCREG_TBA | |
MISCREG_PSTATE | |
MISCREG_TL | |
MISCREG_PIL | |
MISCREG_CWP | |
MISCREG_GL | |
MISCREG_HPSTATE | Hyper privileged registers. |
MISCREG_HTSTATE | |
MISCREG_HINTP | |
MISCREG_HTBA | |
MISCREG_HVER | |
MISCREG_STRAND_STS_REG | |
MISCREG_HSTICK_CMPR | |
MISCREG_FSR | Floating Point Status Register. |
MISCREG_MMU_P_CONTEXT | MMU Internal Registers. |
MISCREG_MMU_S_CONTEXT | |
MISCREG_MMU_PART_ID | |
MISCREG_MMU_LSU_CTRL | |
MISCREG_SCRATCHPAD_R0 | Scratchpad regiscers. |
MISCREG_SCRATCHPAD_R1 | |
MISCREG_SCRATCHPAD_R2 | |
MISCREG_SCRATCHPAD_R3 | |
MISCREG_SCRATCHPAD_R4 | |
MISCREG_SCRATCHPAD_R5 | |
MISCREG_SCRATCHPAD_R6 | |
MISCREG_SCRATCHPAD_R7 | |
MISCREG_QUEUE_CPU_MONDO_HEAD | |
MISCREG_QUEUE_CPU_MONDO_TAIL | |
MISCREG_QUEUE_DEV_MONDO_HEAD | |
MISCREG_QUEUE_DEV_MONDO_TAIL | |
MISCREG_QUEUE_RES_ERROR_HEAD | |
MISCREG_QUEUE_RES_ERROR_TAIL | |
MISCREG_QUEUE_NRES_ERROR_HEAD | |
MISCREG_QUEUE_NRES_ERROR_TAIL | |
MISCREG_TLB_DATA | |
MISCREG_NUMMISCREGS |
bool gem5::SparcISA::asiIsAsIfUser | ( | ASI | asi | ) |
Definition at line 118 of file asi.cc.
References ASI_AIUP, ASI_AIUP_L, ASI_AIUS, ASI_AIUS_L, ASI_BLK_AIUP, ASI_BLK_AIUP_L, ASI_BLK_AIUS, ASI_BLK_AIUS_L, ASI_LDTX_AIUP, ASI_LDTX_AIUP_L, ASI_LDTX_AIUS, and ASI_LDTX_AIUS_L.
bool gem5::SparcISA::asiIsBlock | ( | ASI | asi | ) |
Definition at line 38 of file asi.cc.
References ASI_BLK_AIUP, ASI_BLK_AIUP_L, ASI_BLK_AIUS, ASI_BLK_AIUS_L, ASI_BLK_P, ASI_BLK_PL, ASI_BLK_S, and ASI_BLK_SL.
bool gem5::SparcISA::asiIsCmt | ( | ASI | asi | ) |
Definition at line 249 of file asi.cc.
References ASI_CMT_PER_STRAND, and ASI_CMT_SHARED.
Referenced by asiIsReg().
bool gem5::SparcISA::asiIsDtlb | ( | ASI | ) |
bool gem5::SparcISA::asiIsFloatingLoad | ( | ASI | asi | ) |
Definition at line 220 of file asi.cc.
References ASI_FL16_P, ASI_FL16_PL, ASI_FL16_S, ASI_FL16_SL, ASI_FL8_P, ASI_FL8_PL, ASI_FL8_S, and ASI_FL8_SL.
bool gem5::SparcISA::asiIsInterrupt | ( | ASI | asi | ) |
Definition at line 262 of file asi.cc.
References ASI_SWVR_INTR_RECEIVE, ASI_SWVR_UDB_INTR_R, and ASI_SWVR_UDB_INTR_W.
Referenced by asiIsReg().
bool gem5::SparcISA::asiIsIO | ( | ASI | asi | ) |
Definition at line 135 of file asi.cc.
References ASI_REAL_IO, and ASI_REAL_IO_L.
bool gem5::SparcISA::asiIsLittle | ( | ASI | asi | ) |
Definition at line 153 of file asi.cc.
References ASI_AIUP_L, ASI_AIUS_L, ASI_BLK_AIUP_L, ASI_BLK_AIUS_L, ASI_BLK_PL, ASI_BLK_SL, ASI_FL16_PL, ASI_FL16_SL, ASI_FL8_PL, ASI_FL8_SL, ASI_LDTX_AIUP_L, ASI_LDTX_AIUS_L, ASI_LDTX_NL, ASI_LDTX_PL, ASI_LDTX_REAL_L, ASI_LDTX_SL, ASI_LTX_L, ASI_NL, ASI_PL, ASI_PNFL, ASI_PST16_PL, ASI_PST16_SL, ASI_PST32_PL, ASI_PST32_SL, ASI_PST8_PL, ASI_PST8_SL, ASI_REAL_IO_L, ASI_REAL_L, ASI_SL, and ASI_SNFL.
bool gem5::SparcISA::asiIsMmu | ( | ASI | asi | ) |
Definition at line 270 of file asi.cc.
References ASI_DMMU_CTXT_NONZERO_TSB_BASE_PS0, ASI_DMMU_CTXT_ZERO_TSB_BASE_PS0, ASI_IMMU, ASI_IMMU_CTXT_NONZERO_CONFIG, ASI_IMMU_CTXT_ZERO_CONFIG, ASI_IMMU_TSB_PS1_PTR_REG, ASI_ITLB_DATA_IN_REG, ASI_LSU_CONTROL_REG, ASI_MMU, and ASI_TLB_INVALIDATE_ALL.
Referenced by asiIsReg().
bool gem5::SparcISA::asiIsNoFault | ( | ASI | asi | ) |
bool gem5::SparcISA::asiIsNucleus | ( | ASI | asi | ) |
Definition at line 109 of file asi.cc.
References ASI_LDTX_N, ASI_LDTX_NL, ASI_N, and ASI_NL.
bool gem5::SparcISA::asiIsPartialStore | ( | ASI | asi | ) |
Definition at line 203 of file asi.cc.
References ASI_PST16_P, ASI_PST16_PL, ASI_PST16_S, ASI_PST16_SL, ASI_PST32_P, ASI_PST32_PL, ASI_PST32_S, ASI_PST32_SL, ASI_PST8_P, ASI_PST8_PL, ASI_PST8_S, and ASI_PST8_SL.
bool gem5::SparcISA::asiIsPrimary | ( | ASI | asi | ) |
Definition at line 51 of file asi.cc.
References ASI_AIUP, ASI_AIUP_L, ASI_BLK_AIUP, ASI_BLK_AIUP_L, ASI_BLK_P, ASI_BLK_PL, ASI_FL16_P, ASI_FL16_PL, ASI_FL8_P, ASI_FL8_PL, ASI_LDTX_AIUP, ASI_LDTX_AIUP_L, ASI_LDTX_P, ASI_LDTX_PL, ASI_P, ASI_PL, ASI_PNF, ASI_PNFL, ASI_PST16_P, ASI_PST16_PL, ASI_PST32_P, ASI_PST32_PL, ASI_PST8_P, and ASI_PST8_PL.
bool gem5::SparcISA::asiIsQueue | ( | ASI | asi | ) |
bool gem5::SparcISA::asiIsReal | ( | ASI | asi | ) |
Definition at line 142 of file asi.cc.
References ASI_LDTX_REAL, ASI_LDTX_REAL_L, ASI_REAL, ASI_REAL_IO, ASI_REAL_IO_L, and ASI_REAL_L.
Referenced by gem5::SparcISA::FastDataAccessMMUMiss::invoke().
bool gem5::SparcISA::asiIsReg | ( | ASI | asi | ) |
Definition at line 304 of file asi.cc.
References asiIsCmt(), asiIsInterrupt(), asiIsMmu(), asiIsScratchPad(), and asiIsSparcError().
bool gem5::SparcISA::asiIsScratchPad | ( | ASI | asi | ) |
Definition at line 242 of file asi.cc.
References ASI_HYP_SCRATCHPAD, and ASI_SCRATCHPAD.
Referenced by asiIsReg().
bool gem5::SparcISA::asiIsSecondary | ( | ASI | asi | ) |
Definition at line 80 of file asi.cc.
References ASI_AIUS, ASI_AIUS_L, ASI_BLK_AIUS, ASI_BLK_AIUS_L, ASI_BLK_S, ASI_BLK_SL, ASI_FL16_S, ASI_FL16_SL, ASI_FL8_S, ASI_FL8_SL, ASI_LDTX_AIUS, ASI_LDTX_AIUS_L, ASI_LDTX_S, ASI_LDTX_SL, ASI_PST16_S, ASI_PST16_SL, ASI_PST32_S, ASI_PST32_SL, ASI_PST8_S, ASI_PST8_SL, ASI_S, ASI_SL, ASI_SNF, and ASI_SNFL.
bool gem5::SparcISA::asiIsSparcError | ( | ASI | asi | ) |
Definition at line 312 of file asi.cc.
References ASI_SPARC_ERROR_EN_REG, and ASI_SPARC_ERROR_STATUS_REG.
Referenced by asiIsReg().
bool gem5::SparcISA::asiIsTwin | ( | ASI | asi | ) |
Definition at line 188 of file asi.cc.
References ASI_LDTX_AIUP, ASI_LDTX_AIUP_L, ASI_LDTX_N, ASI_LDTX_NL, ASI_LDTX_P, ASI_LDTX_PL, ASI_LDTX_S, ASI_LDTX_SL, and ASI_QUEUE.
gem5::SparcISA::BitUnion64 | ( | HPSTATE | ) |
|
static |
Definition at line 53 of file isa.cc.
References gem5::ArmISA::mask.
|
static |
Definition at line 97 of file isa.cc.
References gem5::ArmISA::i, MaxTL, MISCREG_ASI, MISCREG_CWP, MISCREG_FPRS, MISCREG_FSR, MISCREG_GL, MISCREG_HINTP, MISCREG_HPSTATE, MISCREG_HSTICK_CMPR, MISCREG_HTBA, MISCREG_MMU_LSU_CTRL, MISCREG_MMU_P_CONTEXT, MISCREG_MMU_PART_ID, MISCREG_MMU_S_CONTEXT, MISCREG_PIL, MISCREG_PSTATE, MISCREG_QUEUE_CPU_MONDO_HEAD, MISCREG_QUEUE_CPU_MONDO_TAIL, MISCREG_QUEUE_DEV_MONDO_HEAD, MISCREG_QUEUE_DEV_MONDO_TAIL, MISCREG_QUEUE_NRES_ERROR_HEAD, MISCREG_QUEUE_NRES_ERROR_TAIL, MISCREG_QUEUE_RES_ERROR_HEAD, MISCREG_QUEUE_RES_ERROR_TAIL, MISCREG_SCRATCHPAD_R0, MISCREG_SCRATCHPAD_R1, MISCREG_SCRATCHPAD_R2, MISCREG_SCRATCHPAD_R3, MISCREG_SCRATCHPAD_R4, MISCREG_SCRATCHPAD_R5, MISCREG_SCRATCHPAD_R6, MISCREG_SCRATCHPAD_R7, MISCREG_SOFTINT, MISCREG_STICK, MISCREG_STICK_CMPR, MISCREG_STRAND_STS_REG, MISCREG_TBA, MISCREG_TICK, MISCREG_TICK_CMPR, MISCREG_TL, MISCREG_TNPC, MISCREG_TPC, MISCREG_TSTATE, MISCREG_TT, gem5::ThreadContext::readMiscRegNoEffect(), gem5::ThreadContext::setMiscReg(), gem5::ThreadContext::setMiscRegNoEffect(), and gem5::MipsISA::tl.
Referenced by gem5::SparcISA::ISA::copyRegsFrom().
void gem5::SparcISA::doNormalFault | ( | ThreadContext * | tc, |
TrapType | tt, | ||
bool | gotoHpriv ) |
This sets everything up for a normal trap except for actually jumping to the handler.
Definition at line 379 of file faults.cc.
References gem5::PCStateBase::as(), gem5::SparcISA::int_reg::Cansave, gem5::SparcISA::int_reg::Ccr, gem5::ThreadContext::getReg(), gem5::ArmISA::mask, MaxGL, MaxPGL, MISCREG_ASI, MISCREG_CWP, MISCREG_GL, MISCREG_HPSTATE, MISCREG_HTSTATE, MISCREG_PSTATE, MISCREG_TL, MISCREG_TNPC, MISCREG_TPC, MISCREG_TSTATE, MISCREG_TT, NWindows, gem5::MipsISA::pc, gem5::ThreadContext::pcState(), gem5::ThreadContext::readMiscRegNoEffect(), gem5::replaceBits(), gem5::ThreadContext::setMiscReg(), and gem5::ThreadContext::setMiscRegNoEffect().
Referenced by gem5::SparcISA::FillNNormal::invoke(), gem5::SparcISA::SparcFaultBase::invoke(), and gem5::SparcISA::SpillNNormal::invoke().
void gem5::SparcISA::doREDFault | ( | ThreadContext * | tc, |
TrapType | tt ) |
This sets everything up for a RED state trap except for actually jumping to the handler.
Definition at line 303 of file faults.cc.
References gem5::PCStateBase::as(), gem5::SparcISA::int_reg::Cansave, gem5::SparcISA::int_reg::Ccr, gem5::ThreadContext::getReg(), gem5::ArmISA::mask, MaxGL, MISCREG_ASI, MISCREG_CWP, MISCREG_GL, MISCREG_HPSTATE, MISCREG_HTSTATE, MISCREG_PSTATE, MISCREG_TNPC, MISCREG_TPC, MISCREG_TSTATE, MISCREG_TT, NWindows, gem5::MipsISA::pc, gem5::ThreadContext::pcState(), priv, gem5::ThreadContext::readMiscRegNoEffect(), gem5::replaceBits(), gem5::ThreadContext::setMiscReg(), and gem5::ThreadContext::setMiscRegNoEffect().
Referenced by gem5::SparcISA::SparcFaultBase::invoke().
gem5::SparcISA::EndBitUnion | ( | HPSTATE | ) |
gem5::SparcISA::EndBitUnion | ( | PSTATE | ) |
gem5::SparcISA::EndSubBitUnion | ( | xcc | ) |
void gem5::SparcISA::enterREDState | ( | ThreadContext * | tc | ) |
This causes the thread context to enter RED state.
This causes the side effects which go with entering RED state because of a trap.
Definition at line 282 of file faults.cc.
References MISCREG_HPSTATE, MISCREG_PSTATE, gem5::ThreadContext::readMiscRegNoEffect(), and gem5::ThreadContext::setMiscReg().
Referenced by gem5::SparcISA::PowerOnReset::invoke(), and gem5::SparcISA::SparcFaultBase::invoke().
|
inlineconstexpr |
void gem5::SparcISA::getHyperVector | ( | ThreadContext * | tc, |
Addr & | PC, | ||
Addr & | NPC, | ||
RegVal | TT ) |
Definition at line 479 of file faults.cc.
References gem5::ArmISA::mask, MISCREG_HTBA, and gem5::ThreadContext::readMiscRegNoEffect().
Referenced by gem5::SparcISA::SparcFaultBase::invoke().
void gem5::SparcISA::getPrivVector | ( | ThreadContext * | tc, |
Addr & | PC, | ||
Addr & | NPC, | ||
RegVal | TT, | ||
RegVal | TL ) |
Definition at line 487 of file faults.cc.
References gem5::ArmISA::mask, MISCREG_TBA, and gem5::ThreadContext::readMiscRegNoEffect().
Referenced by gem5::SparcISA::SparcFaultBase::invoke().
Definition at line 470 of file faults.cc.
Referenced by gem5::SparcISA::FsWorkload::getEntry(), gem5::SparcISA::PowerOnReset::invoke(), and gem5::SparcISA::SparcFaultBase::invoke().
|
static |
Definition at line 60 of file syscalls.cc.
References gem5::BufferArg::bufferPtr(), gem5::BaseBufferArg::copyOut(), and gem5::htobe().
|
inlineconstexpr |
|
static |
Target uname() handler.
Definition at line 45 of file syscalls.cc.
References gem5::ThreadContext::getProcessPtr(), and name().
Bitfield<3> gem5::SparcISA::am |
Definition at line 132 of file misc.hh.
Referenced by gem5::branch_prediction::MultiperspectivePerceptron::GHIST::hash(), gem5::ArmISA::FsLinux::initState(), and gem5::SparcISA::TLB::validVirtualAddress().
Bitfield< 0 > gem5::SparcISA::c |
Definition at line 146 of file misc.hh.
Referenced by gem5::SparcISA::SparcStaticInst::passesCondition().
const char * gem5::SparcISA::CondTestAbbrev |
Definition at line 43 of file static_inst.cc.
const Addr gem5::SparcISA::EndVAddrHole = 0xFFFF7FFFFFFFFFFFULL |
Definition at line 49 of file tlb.hh.
Referenced by gem5::SparcISA::TLB::validVirtualAddress().
const MachInst gem5::SparcISA::fillHandler32[numFillInsts] |
Definition at line 81 of file handlers.hh.
Referenced by gem5::Sparc32Process::argsInit().
const MachInst gem5::SparcISA::fillHandler64[numFillInsts] |
Definition at line 45 of file handlers.hh.
Referenced by gem5::Sparc64Process::argsInit().
|
inlineconstexpr |
Definition at line 83 of file int.hh.
Referenced by gem5::SparcISA::IntRegClassOps::flatten(), and gem5::SparcISA::ISA::ISA().
auto & gem5::SparcISA::FramePointerReg = int_reg::I6 |
Definition at line 171 of file int.hh.
Referenced by gem5::SparcISA::SparcStaticInst::printReg().
Bitfield<2> gem5::SparcISA::hpriv |
Definition at line 123 of file misc.hh.
Referenced by gem5::SparcISA::FastDataAccessMMUMiss::invoke(), and gem5::SparcISA::TLB::translateFunctional().
|
inlineconstexpr |
Definition at line 78 of file int.hh.
Referenced by gem5::SparcLinux::archClone(), gem5::trace::SparcNativeTrace::check(), gem5::SparcISA::ISA::copyRegsFrom(), gem5::SparcISA::SEWorkload::flushWindows(), gem5::SparcISA::int_reg::g(), gem5::SparcISA::int_reg::i(), gem5::SparcISA::int_reg::l(), and gem5::SparcISA::int_reg::o().
|
inlineconstexpr |
const int gem5::SparcISA::MaxGL = 3 |
Definition at line 40 of file sparc_traits.hh.
Referenced by gem5::SparcISA::ISA::copyRegsFrom(), doNormalFault(), doREDFault(), and gem5::SparcISA::PowerOnReset::invoke().
const int gem5::SparcISA::MaxPGL = 2 |
Definition at line 41 of file sparc_traits.hh.
Referenced by doNormalFault().
const int gem5::SparcISA::MaxPTL = 2 |
Definition at line 38 of file sparc_traits.hh.
Referenced by gem5::SparcISA::SparcFaultBase::invoke().
const int gem5::SparcISA::MaxTL = 6 |
Definition at line 39 of file sparc_traits.hh.
Referenced by copyMiscRegs(), gem5::SparcISA::PowerOnReset::invoke(), gem5::SparcISA::SparcFaultBase::invoke(), gem5::SparcISA::ISA::readFSReg(), gem5::SparcISA::ISA::serialize(), and gem5::SparcISA::ISA::unserialize().
Bitfield< 3 > gem5::SparcISA::n |
Definition at line 143 of file misc.hh.
Referenced by gem5::SparcISA::SparcStaticInst::passesCondition().
const int gem5::SparcISA::numFillInsts = 32 |
Definition at line 42 of file handlers.hh.
Referenced by gem5::Sparc32Process::argsInit(), gem5::Sparc64Process::argsInit(), and gem5::SparcProcess::argsInit().
const int gem5::SparcISA::NumMiscRegs = MISCREG_NUMMISCREGS |
Definition at line 175 of file misc.hh.
Referenced by gem5::getMiscRegName().
const int gem5::SparcISA::numSpillInsts = 32 |
Definition at line 43 of file handlers.hh.
Referenced by gem5::Sparc32Process::argsInit(), and gem5::Sparc64Process::argsInit().
const int gem5::SparcISA::NWindows = 8 |
Definition at line 44 of file sparc_traits.hh.
Referenced by gem5::SparcLinux::archClone(), gem5::SparcISA::ISA::copyRegsFrom(), doNormalFault(), doREDFault(), gem5::SparcISA::SEWorkload::flushWindows(), gem5::SparcProcess::initState(), gem5::SparcISA::ISA::readFSReg(), gem5::SparcISA::ISA::reloadRegMap(), and gem5::SparcISA::ISA::setMiscReg().
const Addr gem5::SparcISA::PAddrImplMask = 0x000000FFFFFFFFFFULL |
Definition at line 41 of file page_size.hh.
Referenced by gem5::SparcProcess::argsInit(), gem5::Sparc32Process::Sparc32Process(), gem5::Sparc64Process::Sparc64Process(), and gem5::SparcISA::MMU::translateFunctional().
const Addr gem5::SparcISA::PageShift = 13 |
Definition at line 40 of file page_size.hh.
Bitfield<2> gem5::SparcISA::priv |
Definition at line 131 of file misc.hh.
Referenced by doREDFault(), gem5::ArmISA::MiscRegLUTEntryInitializer::highest(), and gem5::SDMAEngine::registerRLCQueue().
|
static |
Definition at line 67 of file isa.cc.
Referenced by gem5::SparcISA::ISA::setMiscReg(), and gem5::SparcISA::ISA::setMiscRegNoEffect().
Bitfield<5> gem5::SparcISA::red |
Definition at line 124 of file misc.hh.
Referenced by gem5::SparcISA::FastDataAccessMMUMiss::invoke(), gem5::BmpWriter::BmpPixel32::operator=(), gem5::PngWriter::PngPixel24::operator=(), TEST(), and TEST().
|
inlineconstexpr |
auto & gem5::SparcISA::ReturnValueReg = int_reg::O0 |
const MachInst gem5::SparcISA::spillHandler32[numSpillInsts] |
Definition at line 153 of file handlers.hh.
Referenced by gem5::Sparc32Process::argsInit().
const MachInst gem5::SparcISA::spillHandler64[numSpillInsts] |
Definition at line 117 of file handlers.hh.
Referenced by gem5::Sparc64Process::argsInit().
auto & gem5::SparcISA::StackPointerReg = int_reg::O6 |
Definition at line 170 of file int.hh.
Referenced by gem5::SparcLinux::archClone(), gem5::SparcISA::SEWorkload::flushWindows(), and gem5::SparcISA::SparcStaticInst::printReg().
const Addr gem5::SparcISA::StartVAddrHole = 0x0000800000000000ULL |
Definition at line 48 of file tlb.hh.
Referenced by gem5::SparcISA::TLB::validVirtualAddress().
auto & gem5::SparcISA::SyscallPseudoReturnReg = int_reg::O1 |
Definition at line 174 of file int.hh.
Referenced by gem5::SparcLinux::archClone(), and gem5::guest_abi::Result< ABI, SyscallReturn, typename std::enable_if_t< std::is_base_of_v< SparcISA::SEWorkload::BaseSyscallABI, ABI > > >::store().
Bitfield< 1 > gem5::SparcISA::v |
Definition at line 145 of file misc.hh.
Referenced by gem5::SparcISA::SparcStaticInst::passesCondition().
const Addr gem5::SparcISA::VAddrAMask = 0xFFFFFFFFULL |
Definition at line 50 of file tlb.hh.
Referenced by gem5::SparcISA::TLB::translateFunctional().
Bitfield< 2 > gem5::SparcISA::z |
Definition at line 144 of file misc.hh.
Referenced by gem5::SparcISA::SparcStaticInst::passesCondition().