diff -r 5c248f09514d -r 243a8cee6d6f configs/ruby/MOESI_hammer.py --- a/configs/ruby/MOESI_hammer.py Tue Jan 03 18:14:44 2012 -0600 +++ b/configs/ruby/MOESI_hammer.py Tue Jan 03 18:18:39 2012 -0600 @@ -88,7 +88,8 @@ # l1i_cache = L1Cache(size = options.l1i_size, assoc = options.l1i_assoc, - start_index_bit = block_size_bits) + start_index_bit = block_size_bits, + is_icache = True) l1d_cache = L1Cache(size = options.l1d_size, assoc = options.l1d_assoc, start_index_bit = block_size_bits) diff -r 5c248f09514d -r 243a8cee6d6f src/mem/ruby/system/Cache.py --- a/src/mem/ruby/system/Cache.py Tue Jan 03 18:14:44 2012 -0600 +++ b/src/mem/ruby/system/Cache.py Tue Jan 03 18:18:39 2012 -0600 @@ -39,3 +39,4 @@ assoc = Param.Int(""); replacement_policy = Param.String("PSEUDO_LRU", ""); start_index_bit = Param.Int(6, "index start, default 6 for 64-byte line"); + is_icache = Param.Bool(False, "is instruction only cache"); diff -r 5c248f09514d -r 243a8cee6d6f src/mem/ruby/system/CacheMemory.cc --- a/src/mem/ruby/system/CacheMemory.cc Tue Jan 03 18:14:44 2012 -0600 +++ b/src/mem/ruby/system/CacheMemory.cc Tue Jan 03 18:18:39 2012 -0600 @@ -55,6 +55,7 @@ m_policy = p->replacement_policy; m_profiler_ptr = new CacheProfiler(name()); m_start_index_bit = p->start_index_bit; + m_is_instruction_only_cache = p->is_icache; } void