diff --git a/src/mem/ruby/common/Address.cc b/src/mem/ruby/common/Address.cc index 40ce0feb07..39de974a57 100644 --- a/src/mem/ruby/common/Address.cc +++ b/src/mem/ruby/common/Address.cc @@ -56,6 +56,12 @@ makeLineAddress(Addr addr) return mbits(addr, 63, RubySystem::getBlockSizeBits()); } +Addr +makeLineAddress(Addr addr, int cacheLineBits) +{ + return maskLowOrderBits(addr, cacheLineBits); +} + // returns the next stride address based on line address Addr makeNextStrideAddress(Addr addr, int stride) diff --git a/src/mem/ruby/common/Address.hh b/src/mem/ruby/common/Address.hh index 30682fab0c..e5e320f3bb 100644 --- a/src/mem/ruby/common/Address.hh +++ b/src/mem/ruby/common/Address.hh @@ -40,6 +40,7 @@ Addr bitSelect(Addr addr, unsigned int small, unsigned int big); Addr maskLowOrderBits(Addr addr, unsigned int number); Addr getOffset(Addr addr); Addr makeLineAddress(Addr addr); +Addr makeLineAddress(Addr addr, int cacheLineBits); Addr makeNextStrideAddress(Addr addr, int stride); std::string printAddress(Addr addr);