diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/cpu/testers/rubytest/RubyTester.hh | 1 | ||||
-rw-r--r-- | src/mem/ruby/common/DataBlock.cc | 56 | ||||
-rw-r--r-- | src/mem/ruby/common/DataBlock.hh | 56 |
3 files changed, 57 insertions, 56 deletions
diff --git a/src/cpu/testers/rubytest/RubyTester.hh b/src/cpu/testers/rubytest/RubyTester.hh index 53341bce9..ac023b43f 100644 --- a/src/cpu/testers/rubytest/RubyTester.hh +++ b/src/cpu/testers/rubytest/RubyTester.hh @@ -37,7 +37,6 @@ #include "cpu/testers/rubytest/CheckTable.hh" #include "mem/mem_object.hh" #include "mem/packet.hh" -#include "mem/ruby/common/DataBlock.hh" #include "mem/ruby/common/Global.hh" #include "mem/ruby/common/SubBlock.hh" #include "mem/ruby/system/RubyPort.hh" diff --git a/src/mem/ruby/common/DataBlock.cc b/src/mem/ruby/common/DataBlock.cc index 8d3c81242..5aba4332a 100644 --- a/src/mem/ruby/common/DataBlock.cc +++ b/src/mem/ruby/common/DataBlock.cc @@ -27,6 +27,62 @@ */ #include "mem/ruby/common/DataBlock.hh" +#include "mem/ruby/system/System.hh" + +DataBlock::DataBlock(const DataBlock &cp) +{ + m_data = new uint8[RubySystem::getBlockSizeBytes()]; + memcpy(m_data, cp.m_data, RubySystem::getBlockSizeBytes()); + m_alloc = true; +} + +void +DataBlock::alloc() +{ + m_data = new uint8[RubySystem::getBlockSizeBytes()]; + m_alloc = true; + clear(); +} + +void +DataBlock::clear() +{ + memset(m_data, 0, RubySystem::getBlockSizeBytes()); +} + +bool +DataBlock::equal(const DataBlock& obj) const +{ + return !memcmp(m_data, obj.m_data, RubySystem::getBlockSizeBytes()); +} + +void +DataBlock::print(std::ostream& out) const +{ + using namespace std; + + int size = RubySystem::getBlockSizeBytes(); + out << "[ "; + for (int i = 0; i < size; i++) { + out << setw(2) << setfill('0') << hex << "0x" << (int)m_data[i] << " "; + out << setfill(' '); + } + out << dec << "]" << flush; +} + +const uint8* +DataBlock::getData(int offset, int len) const +{ + assert(offset + len <= RubySystem::getBlockSizeBytes()); + return &m_data[offset]; +} + +void +DataBlock::setData(uint8* data, int offset, int len) +{ + assert(offset + len <= RubySystem::getBlockSizeBytes()); + memcpy(&m_data[offset], data, len); +} DataBlock & DataBlock::operator=(const DataBlock & obj) diff --git a/src/mem/ruby/common/DataBlock.hh b/src/mem/ruby/common/DataBlock.hh index 007040930..1d6abcfee 100644 --- a/src/mem/ruby/common/DataBlock.hh +++ b/src/mem/ruby/common/DataBlock.hh @@ -33,7 +33,6 @@ #include <iostream> #include "mem/ruby/common/Global.hh" -#include "mem/ruby/system/System.hh" class DataBlock { @@ -43,12 +42,7 @@ class DataBlock alloc(); } - DataBlock(const DataBlock &cp) - { - m_data = new uint8[RubySystem::getBlockSizeBytes()]; - memcpy(m_data, cp.m_data, RubySystem::getBlockSizeBytes()); - m_alloc = true; - } + DataBlock(const DataBlock &cp); ~DataBlock() { @@ -85,53 +79,12 @@ DataBlock::assign(uint8* data) m_alloc = false; } -inline void -DataBlock::alloc() -{ - m_data = new uint8[RubySystem::getBlockSizeBytes()]; - m_alloc = true; - clear(); -} - -inline void -DataBlock::clear() -{ - memset(m_data, 0, RubySystem::getBlockSizeBytes()); -} - -inline bool -DataBlock::equal(const DataBlock& obj) const -{ - return !memcmp(m_data, obj.m_data, RubySystem::getBlockSizeBytes()); -} - -inline void -DataBlock::print(std::ostream& out) const -{ - using namespace std; - - int size = RubySystem::getBlockSizeBytes(); - out << "[ "; - for (int i = 0; i < size; i++) { - out << setw(2) << setfill('0') << hex << "0x" << (int)m_data[i] << " "; - out << setfill(' '); - } - out << dec << "]" << flush; -} - inline uint8 DataBlock::getByte(int whichByte) const { return m_data[whichByte]; } -inline const uint8* -DataBlock::getData(int offset, int len) const -{ - assert(offset + len <= RubySystem::getBlockSizeBytes()); - return &m_data[offset]; -} - inline void DataBlock::setByte(int whichByte, uint8 data) { @@ -139,13 +92,6 @@ DataBlock::setByte(int whichByte, uint8 data) } inline void -DataBlock::setData(uint8* data, int offset, int len) -{ - assert(offset + len <= RubySystem::getBlockSizeBytes()); - memcpy(&m_data[offset], data, len); -} - -inline void DataBlock::copyPartial(const DataBlock & dblk, int offset, int len) { setData(&dblk.m_data[offset], offset, len); |