gem5 v24.0.0.0
|
Forward flowing data between Fetch2,Decode,Execute carrying a packet of instructions of a width appropriate to the configured stage widths. More...
#include <pipe_data.hh>
Public Member Functions | |
ForwardInstData (unsigned int width=0, ThreadID tid=InvalidThreadID) | |
ForwardInstData (const ForwardInstData &src) | |
unsigned int | width () const |
Number of instructions carried by this object. | |
ForwardInstData & | operator= (const ForwardInstData &src) |
Copy the inst array only as far as numInsts. | |
void | resize (unsigned int width) |
Resize a bubble/empty ForwardInstData and fill with bubbles. | |
void | bubbleFill () |
Fill with bubbles from 0 to width() - 1. | |
bool | isBubble () const |
BubbleIF interface. | |
void | reportData (std::ostream &os) const |
ReportIF interface. | |
Public Attributes | |
MinorDynInstPtr | insts [MAX_FORWARD_INSTS] |
Array of carried insts, ref counted. | |
unsigned int | numInsts |
The number of insts slots that can be expected to be valid insts. | |
ThreadID | threadId |
Thread associated with these instructions. | |
Forward flowing data between Fetch2,Decode,Execute carrying a packet of instructions of a width appropriate to the configured stage widths.
Also carries exception information where instructions are not valid
Definition at line 283 of file pipe_data.hh.
|
explicit |
Definition at line 227 of file pipe_data.cc.
References bubbleFill().
gem5::minor::ForwardInstData::ForwardInstData | ( | const ForwardInstData & | src | ) |
Definition at line 233 of file pipe_data.cc.
void gem5::minor::ForwardInstData::bubbleFill | ( | ) |
Fill with bubbles from 0 to width() - 1.
Definition at line 256 of file pipe_data.cc.
References gem5::minor::MinorDynInst::bubble(), gem5::ArmISA::i, insts, and numInsts.
Referenced by ForwardInstData(), and resize().
bool gem5::minor::ForwardInstData::isBubble | ( | ) | const |
BubbleIF interface.
Definition at line 250 of file pipe_data.cc.
References insts, and numInsts.
Referenced by gem5::minor::Decode::evaluate(), gem5::minor::Fetch2::evaluate(), gem5::minor::Decode::getInput(), gem5::minor::Execute::getInput(), and reportData().
ForwardInstData & gem5::minor::ForwardInstData::operator= | ( | const ForwardInstData & | src | ) |
Copy the inst array only as far as numInsts.
Definition at line 239 of file pipe_data.cc.
References gem5::ArmISA::i, insts, and numInsts.
void gem5::minor::ForwardInstData::reportData | ( | std::ostream & | os | ) | const |
ReportIF interface.
Definition at line 272 of file pipe_data.cc.
References gem5::ArmISA::i, insts, isBubble(), numInsts, and gem5::X86ISA::os.
void gem5::minor::ForwardInstData::resize | ( | unsigned int | width | ) |
Resize a bubble/empty ForwardInstData and fill with bubbles.
Definition at line 263 of file pipe_data.cc.
References bubbleFill(), gem5::minor::MAX_FORWARD_INSTS, numInsts, and width().
Referenced by gem5::minor::Decode::evaluate(), and gem5::minor::Fetch2::evaluate().
|
inline |
Number of instructions carried by this object.
Definition at line 303 of file pipe_data.hh.
References numInsts.
Referenced by gem5::minor::Decode::evaluate(), gem5::minor::Execute::issue(), and resize().
MinorDynInstPtr gem5::minor::ForwardInstData::insts[MAX_FORWARD_INSTS] |
Array of carried insts, ref counted.
Definition at line 287 of file pipe_data.hh.
Referenced by bubbleFill(), gem5::minor::Execute::commit(), gem5::minor::Decode::evaluate(), gem5::minor::Execute::evaluate(), gem5::minor::Fetch2::evaluate(), isBubble(), gem5::minor::Execute::issue(), operator=(), and reportData().
unsigned int gem5::minor::ForwardInstData::numInsts |
The number of insts slots that can be expected to be valid insts.
Definition at line 290 of file pipe_data.hh.
Referenced by bubbleFill(), isBubble(), operator=(), reportData(), resize(), and width().
ThreadID gem5::minor::ForwardInstData::threadId |
Thread associated with these instructions.
Definition at line 293 of file pipe_data.hh.
Referenced by gem5::minor::Decode::evaluate(), and gem5::minor::Fetch2::evaluate().