changeset 722a0d28ee83 in /z/repo/m5 details: http://repo.m5sim.org/m5?cmd=changeset;node=722a0d28ee83 description: Ruby: Make DataBlock.hh independent of RubySystem This patch changes DataBlock.hh so that it is not dependent on RubySystem. This dependence seems unecessary. All those functions that depende on RubySystem have been moved to DataBlock.cc file.
diffstat: src/cpu/testers/rubytest/RubyTester.hh | 1 - src/mem/ruby/common/DataBlock.cc | 56 ++++++++++++++++++++++++++++++++++ src/mem/ruby/common/DataBlock.hh | 56 +--------------------------------- 3 files changed, 57 insertions(+), 56 deletions(-) diffs (170 lines): diff -r 4a59661d3fd1 -r 722a0d28ee83 src/cpu/testers/rubytest/RubyTester.hh --- a/src/cpu/testers/rubytest/RubyTester.hh Fri Feb 25 13:50:29 2011 +0000 +++ b/src/cpu/testers/rubytest/RubyTester.hh Fri Feb 25 17:51:02 2011 -0600 @@ -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 -r 4a59661d3fd1 -r 722a0d28ee83 src/mem/ruby/common/DataBlock.cc --- a/src/mem/ruby/common/DataBlock.cc Fri Feb 25 13:50:29 2011 +0000 +++ b/src/mem/ruby/common/DataBlock.cc Fri Feb 25 17:51:02 2011 -0600 @@ -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 -r 4a59661d3fd1 -r 722a0d28ee83 src/mem/ruby/common/DataBlock.hh --- a/src/mem/ruby/common/DataBlock.hh Fri Feb 25 13:50:29 2011 +0000 +++ b/src/mem/ruby/common/DataBlock.hh Fri Feb 25 17:51:02 2011 -0600 @@ -33,7 +33,6 @@ #include <iostream> #include "mem/ruby/common/Global.hh" -#include "mem/ruby/system/System.hh" class DataBlock { @@ -43,12 +42,7 @@ 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 @@ 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 @@ } 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); _______________________________________________ m5-dev mailing list m5-dev@m5sim.org http://m5sim.org/mailman/listinfo/m5-dev