42#ifndef __CPU_O3_COMM_HH__
43#define __CPU_O3_COMM_HH__
171 std::unique_ptr<PCStateBase>
pc;
Defines global host-dependent types: Counter, Tick, and (indirectly) {int,uint}{8,...
static constexpr int MaxThreads
static constexpr int MaxWidth
Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
std::shared_ptr< FaultBase > Fault
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
Struct that defines the information passed from decode to rename.
DynInstPtr insts[MaxWidth]
Struct that defines the information passed from fetch to decode.
DynInstPtr insts[MaxWidth]
Struct that defines the information passed from IEW to commit.
bool includeSquashInst[MaxThreads]
bool branchTaken[MaxThreads]
InstSeqNum squashedSeqNum[MaxThreads]
std::unique_ptr< PCStateBase > pc[MaxThreads]
bool branchMispredict[MaxThreads]
Addr mispredPC[MaxThreads]
DynInstPtr mispredictInst[MaxThreads]
DynInstPtr insts[MaxWidth]
DynInstPtr insts[MaxWidth]
Struct that defines the information passed from rename to IEW.
DynInstPtr insts[MaxWidth]
DynInstPtr strictlyOrderedLoad
Hack for now to send back a strictly ordered access to the IEW stage.
bool usedROB
Rename should re-read number of free rob entries.
unsigned freeROBEntries
Tell Rename how many free entries it has in the ROB.
bool clearInterrupt
If the interrupt ended up being cleared before being handled.
std::unique_ptr< PCStateBase > pc
The pc of the next instruction to execute.
DynInstPtr mispredictInst
Provide fetch the instruction that mispredicted, if this pointer is not-null a misprediction occured.
bool emptyROB
Notify Rename that the ROB is empty.
bool branchTaken
Was the branch taken or not.
InstSeqNum doneSeqNum
Represents the instruction that has either been retired or squashed.
DynInstPtr squashInst
Instruction that caused the a non-mispredict squash.
bool interruptPending
If an interrupt is pending and fetch should stall.
InstSeqNum nonSpecSeqNum
Communication specifically to the IQ to tell the IQ that it can schedule a non-speculative instructio...
bool strictlyOrdered
Hack for now to send back an strictly ordered access to the IEW stage.
DynInstPtr mispredictInst
std::unique_ptr< PCStateBase > nextPC
Struct that defines all backwards communication.
bool iewBlock[MaxThreads]
bool iewUnblock[MaxThreads]
bool decodeBlock[MaxThreads]
DecodeComm decodeInfo[MaxThreads]
RenameComm renameInfo[MaxThreads]
bool renameUnblock[MaxThreads]
bool decodeUnblock[MaxThreads]
IewComm iewInfo[MaxThreads]
bool renameBlock[MaxThreads]
CommitComm commitInfo[MaxThreads]