gem5 v24.0.0.0
|
Functions | |
gem5::ChunkGenerator::ChunkGenerator (Addr _startAddr, Addr totalSize, Addr _chunkSize) | |
Constructor. | |
Addr | gem5::ChunkGenerator::addr () const |
Return starting address of current chunk. | |
Addr | gem5::ChunkGenerator::size () const |
Return size in bytes of current chunk. | |
Addr | gem5::ChunkGenerator::complete () const |
Number of bytes we have already chunked up. | |
bool | gem5::ChunkGenerator::done () const |
Are we done? That is, did the last call to next() advance past the end of the region? | |
bool | gem5::ChunkGenerator::last () const |
Is this the last chunk? | |
void | gem5::ChunkGenerator::setNext (Addr next) |
Grow this chunk to cover additional bytes which are already handled. | |
bool | gem5::ChunkGenerator::next () |
Advance generator to next chunk. | |
These methods relate to the ChunkGenerator interface.
|
inline |
Return starting address of current chunk.
Definition at line 119 of file chunk_generator.hh.
References gem5::ChunkGenerator::curAddr.
Referenced by gem5::DmaPort::DmaReqState::createPacket(), gem5::IdeDisk::doDmaRead(), gem5::IdeDisk::doDmaWrite(), gem5::AMDGPUMemoryManager::readRequest(), gem5::GPUCommandProcessor::submitDispatchPkt(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and gem5::AMDGPUMemoryManager::writeRequest().
Constructor.
_startAddr | The starting address of the region. |
totalSize | The total size of the region. |
_chunkSize | The size/alignment of chunks into which the region should be decomposed. |
Definition at line 87 of file chunk_generator.hh.
References gem5::ChunkGenerator::chunkSize, gem5::ChunkGenerator::curAddr, gem5::ChunkGenerator::curSize, gem5::isPowerOf2(), gem5::ChunkGenerator::nextAddr, gem5::ChunkGenerator::nextSize, gem5::roundUp(), gem5::ChunkGenerator::sizeLeft, and gem5::ChunkGenerator::startAddr.
|
inline |
Number of bytes we have already chunked up.
Definition at line 132 of file chunk_generator.hh.
References gem5::ChunkGenerator::curAddr, and gem5::ChunkGenerator::startAddr.
Referenced by gem5::DmaPort::DmaReqState::createPacket(), gem5::IdeDisk::doDmaRead(), gem5::IdeDisk::doDmaWrite(), gem5::GPUCommandProcessor::submitDispatchPkt(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and gem5::AMDGPUMemoryManager::writeRequest().
|
inline |
Are we done? That is, did the last call to next() advance past the end of the region?
Definition at line 141 of file chunk_generator.hh.
References gem5::ChunkGenerator::curSize.
Referenced by gem5::ArmISA::RemoteGDB::acc(), gem5::Shader::AccessMem(), gem5::IdeDisk::doDmaRead(), gem5::IdeDisk::doDmaWrite(), gem5::PortProxy::readBlobPhys(), gem5::AMDGPUMemoryManager::readRequest(), gem5::DmaPort::sendDma(), gem5::GPUCommandProcessor::submitDispatchPkt(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), gem5::PortProxy::writeBlobPhys(), and gem5::AMDGPUMemoryManager::writeRequest().
|
inline |
Is this the last chunk?
Definition at line 149 of file chunk_generator.hh.
References gem5::ChunkGenerator::sizeLeft.
Referenced by gem5::ChunkGenerator::next(), gem5::AMDGPUMemoryManager::readRequest(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and gem5::AMDGPUMemoryManager::writeRequest().
|
inline |
Advance generator to next chunk.
Definition at line 185 of file chunk_generator.hh.
References gem5::ChunkGenerator::chunkSize, gem5::ChunkGenerator::curAddr, gem5::ChunkGenerator::curSize, gem5::ChunkGenerator::last(), gem5::ChunkGenerator::nextAddr, gem5::ChunkGenerator::nextSize, and gem5::ChunkGenerator::sizeLeft.
Referenced by gem5::IdeDisk::doDmaRead(), gem5::IdeDisk::doDmaWrite(), gem5::AMDGPUMemoryManager::readRequest(), gem5::ChunkGenerator::setNext(), gem5::GPUCommandProcessor::submitDispatchPkt(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and gem5::AMDGPUMemoryManager::writeRequest().
|
inline |
Grow this chunk to cover additional bytes which are already handled.
next | The first byte of the next chunk. |
Definition at line 158 of file chunk_generator.hh.
References gem5::ChunkGenerator::chunkSize, gem5::ChunkGenerator::curSize, gem5::ChunkGenerator::next(), gem5::ChunkGenerator::nextAddr, gem5::ChunkGenerator::nextSize, gem5::roundUp(), and gem5::ChunkGenerator::sizeLeft.
Referenced by TEST().
|
inline |
Return size in bytes of current chunk.
Definition at line 125 of file chunk_generator.hh.
References gem5::ChunkGenerator::curSize.
Referenced by gem5::DmaPort::DmaReqState::createPacket(), gem5::IdeDisk::doDmaRead(), gem5::IdeDisk::doDmaWrite(), gem5::AMDGPUMemoryManager::readRequest(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and gem5::AMDGPUMemoryManager::writeRequest().