summaryrefslogtreecommitdiff
path: root/src/mem/ruby/system
diff options
context:
space:
mode:
authorNilay Vaish <nilay@cs.wisc.edu>2013-01-31 09:44:20 -0600
committerNilay Vaish <nilay@cs.wisc.edu>2013-01-31 09:44:20 -0600
commit6aed4d4f931f0eca15d1211e7e28a06d66f16d32 (patch)
tree9403aa34b2adbb83ae9eb04f86fd062deaa53ebe /src/mem/ruby/system
parenta4288dabf9e0154757bc092a8917cbaf85be9150 (diff)
downloadgem5-6aed4d4f931f0eca15d1211e7e28a06d66f16d32.tar.xz
ruby: correct computation of number of bits required for address
The number of bits required for an address was set to floorLog2(memory size). This is correct under the assumption that the memory size is a power of 2, which is not always true. Hence, floorLog2 is being replaced with ceilLog2.
Diffstat (limited to 'src/mem/ruby/system')
-rw-r--r--src/mem/ruby/system/System.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mem/ruby/system/System.cc b/src/mem/ruby/system/System.cc
index 6a0721217..01e50ef0b 100644
--- a/src/mem/ruby/system/System.cc
+++ b/src/mem/ruby/system/System.cc
@@ -69,7 +69,7 @@ RubySystem::RubySystem(const Params *p)
if (m_memory_size_bytes == 0) {
m_memory_size_bits = 0;
} else {
- m_memory_size_bits = floorLog2(m_memory_size_bytes);
+ m_memory_size_bits = ceilLog2(m_memory_size_bytes);
}
g_system_ptr = this;