summaryrefslogtreecommitdiff
path: root/src/mem
AgeCommit message (Collapse)Author
2009-05-11ruby: Removed g_SIMULATING flagPolina Dudnik
1. removed checks from tester files 2. removed else clause in Sequencer and DirectoryMemory else clause is needed by the tester, it is up to Derek to revive it elsewhere when he gets to it Also: 1. Changed m_entries in DirectoryMemory to a map 2. And replaced SIMICS_read_physical_memory with a call to now-dummy Derek's-to-be readPhysMem function
2009-05-11ruby: Remove transactional access types (e.g. LD_XACT) from CacheRequestTypePolina Dudnik
1. Modified enumeration 2. Also modified profiler 3. Remove transactions from Tester 4. Edited XACT_MEM out of Synthetic Driver
2009-05-11ruby: reordered Debug and RubyConfig::init to fix segfaultPolina Dudnik
due to uninitialized output file pointer.
2009-05-11ruby: Disabled RubyEventQueue's deletion of its home-grown priority heap.Dan Gibson
Temporarily to fix unusual memory problem.
2009-05-11ruby: Migrate all of ruby and slicc to SCons.Nathan Binkert
Add the PROTOCOL sticky option sets the coherence protocol that slicc will parse and therefore ruby will use. This whole process was made difficult by the fact that the set of files that are output by slicc are not easily known ahead of time. The easiest thing wound up being to write a parser for slicc that would tell me. Incidentally this means we now have a slicc grammar written in python.
2009-05-11ruby: clean up a few warningsNathan Binkert
2009-05-11ruby: Fixed some unresolved references.Dan Gibson
2009-05-11ruby: Make ruby #includes use full paths to the files they're including.Nathan Binkert
This basically means changing all #include statements and changing autogenerated code so that it generates the correct paths. Because slicc generates #includes, I had to hard code the include paths to mem/protocol.
2009-05-11ruby: remove unnecessary code.Dan Gibson
1) Removing files from the ruby build left some unresovled symbols. Those have been fixed. 2) Most of the dependencies on Simics data types and the simics interface files have been removed. 3) Almost all mention of opal is gone. 4) Huge chunks of LogTM are now gone. 5) Handling 1-4 left ~hundreds of unresolved references, which were fixed, yielding a snowball effect (and the massive size of this delta).
2009-05-11ruby: Cleaned up sequencer. Removed LogTM specific code.Derek Hower
2009-05-11ruby: added Packet interface to makeRequest and isReady.Derek Hower
Also pushed Packet usage into the Sequencer
2009-05-11ruby: fold the debugging options into Debug.ccNathan Binkert
2009-05-11ruby: Renamed Ruby's EventQueue to RubyEventQueueDerek Hower
--HG-- rename : src/mem/ruby/eventqueue/EventQueue.cc => src/mem/ruby/eventqueue/RubyEventQueue.cc rename : src/mem/ruby/eventqueue/EventQueue.hh => src/mem/ruby/eventqueue/RubyEventQueue.hh rename : src/mem/ruby/eventqueue/EventQueueNode.cc => src/mem/ruby/eventqueue/RubyEventQueueNode.cc rename : src/mem/ruby/eventqueue/EventQueueNode.hh => src/mem/ruby/eventqueue/RubyEventQueueNode.hh
2009-05-11ruby: Removed System name clash by renaming ruby's System to RubySystemDaniel Sanchez
2009-05-11ruby: rename config.include to config.hh and clean up the macro stuff.Nathan Binkert
I did the macro cleanup because I was worried that the SCons scanner would get confused. This code will hopefully go away soon anyway. --HG-- rename : src/mem/ruby/config/config.include => src/mem/ruby/config/config.hh
2009-05-11ruby: strip out some unused definesNathan Binkert
2009-05-11ruby: Import ruby and slicc from GEMSNathan Binkert
We eventually plan to replace the m5 cache hierarchy with the GEMS hierarchy, but for now we will make both live alongside eachother.
2009-04-23request: reorganize flags to group related flags together.Steve Reinhardt
2008-07-16mem: use single BadAddr responder per system.Steve Reinhardt
Previously there was one per bus, which caused some coherence problems when more than one decided to respond. Now there is just one on the main memory bus. The default bus responder on all other buses is now the downstream cache's cpu_side port. Caches no longer need to do address range filtering; instead, we just have a simple flag to prevent snoops from propagating to the I/O bus.
2009-04-21Minor tweaks for future Ruby compatibility.Steve Reinhardt
2009-04-21request: add PREFETCH flag.Steve Reinhardt
2009-04-20request: rename INST_READ to INST_FETCH.Steve Reinhardt
2009-04-20request: split public and private flags into separate fields.Steve Reinhardt
This frees up needed space for more public flags. Also: - remove unused Request accessor methods - make Packet use public Request accessors, so it need not be a friend
2009-04-19Mem: Fill out the comment that describes the LOCKED request flag.Gabe Black
2009-04-19Mem: Change isLlsc to isLLSC.Gabe Black
2009-04-19Memory: Add a LOCKED flag back in for x86 style locking.Gabe Black
2009-04-19Memory: Rename LOCKED for load locked store conditional to LLSC.Gabe Black
2009-04-19X86: Add a function which gets called when an interrupt message has been ↵Gabe Black
delivered.
2009-04-19X86: Fix the flags for interrupt response messages.Gabe Black
2009-03-11cache: set dirty bit on swaps (oops!)Steve Reinhardt
2009-03-10prefetch: don't panic on requests w/o contextID (e.g., writebacks).Steve Reinhardt
2009-03-05stats: Fix all stats usages to deal with template fixesNathan Binkert
2009-02-25CPU: Get rid of translate... functions from various interface classes.Gabe Black
2009-02-16sycalls: implement mremap() and add DATA flag for getrlimit(). mremap has ↵Lisa Hsu
been tested on Alpha, compiles for the rest but not tested. I don't see why it wouldn't work though.
2009-02-16Fixes to get prefetching working again.Steve Reinhardt
Apparently we broke it with the cache rewrite and never noticed. Thanks to Bao Yungang <baoyungang@gmail.com> for a significant part of these changes (and for inspiring me to work on the rest). Some other overdue cleanup on the prefetch code too.
2009-01-13SCons: centralize the Dir() workaround for newer versions of scons.Nathan Binkert
Scons bug id: 2006 M5 Bug id: 308
2008-12-06flags: Change naming of functions to be clearerNathan Binkert
2008-11-15syscalls: fix latent brk/obreak bug.Steve Reinhardt
Bogus calls to ChunkGenerator with negative size were triggering a new assertion that was added there. Also did a little renaming and cleanup in the process.
2008-11-14Cache: get rid of obsolete Tag methods.Steve Reinhardt
I think readData() and writeData() were used for Erik's compression work, but that code is gone, these aren't called anymore, and they don't even really do what their names imply.
2008-11-14Fix a bunch of bugs I introduced when I changed the flags stuff for packets.Nathan Binkert
I did some of the flags and assertions wrong. Thanks to Brad Beckmann for pointing this out. I should have run the opt regressions instead of the fast. I also screwed up some of the logical functions in the Flags class.
2008-11-13CPU: Refactor read/write in the simple timing CPU.Gabe Black
2008-11-10Clean up the SimpleTimingPort class a little bit.Nathan Binkert
Move the constructor into the .cc file and get rid of the typedef for SendEvent.
2008-11-10style: clean up the Packet stuffNathan Binkert
2008-11-10mem: Assert that requests have non-negative size.Steve Reinhardt
Would have saved me much debugging time if these had been in there previously.
2008-11-10Cache: Refactor packet forwarding a bit.Steve Reinhardt
Makes adding write-through operations easier.
2008-11-04decouple eviction from insertion in the cache.Lisa Hsu
2008-11-04Change the findBlock(addr, lat) to accessBlock, which I think has better ↵Lisa Hsu
connotations for what is really happening and how it should be used.
2008-11-04get rid of all instances of readTid() and getThreadNum(). Unify and eliminateLisa Hsu
redundancies with threadId() as their replacement.
2008-11-02Add in Context IDs to the simulator. From now on, cpuId is almost never used,Lisa Hsu
the primary identifier for a hardware context should be contextId(). The concept of threads within a CPU remains, in the form of threadId() because sometimes you need to know which context within a cpu to manipulate.
2008-10-23s/cpu_id/cpuId in o3 (to be consistent and match style), also fix some typos inLisa Hsu
comments.