summaryrefslogtreecommitdiff
path: root/src/mem/slicc
AgeCommit message (Collapse)Author
2009-11-18ruby: added error message to isinstance checkBrad Beckmann
Added error message when a symbol is not an instance of a particular expected type.
2009-11-18ruby: Added boolean to State Machine parametersBrad Beckmann
* * * ruby: Removed primitive .hh includes
2009-11-18ruby: slicc method error fixBrad Beckmann
Added error message when a method call is not supported by an object.
2009-11-18ruby: slicc action error fixBrad Beckmann
Small fix to the State Machine error message when duplicate actions are defined.
2009-11-18ruby: slicc state machine error fixesBrad Beckmann
Added error messages when: - a state does not exist in a machine's list of known states. - an event does not exist in a machine - the actions of a certain machine have not been declared
2009-11-05slicc: tweak file enumeration for sconsSteve Reinhardt
Right now .cc and .hh files are handled separately, but then they're just munged together at the end by scons, so it doesn't buy us anything. Might as well munge from the start since we'll eventually be adding generated Python files to the list too.
2009-10-26fixed error message generation bug in SLICC ast filesBrad Beckmann
2009-09-22slicc: Pure python implementation of slicc.Nathan Binkert
This is simply a translation of the C++ slicc into python with very minimal reorganization of the code. The output can be verified as nearly identical by doing a "diff -wBur". Slicc can easily be run manually by using util/slicc
2009-08-28Reset the atomics flags if RMW_Read is not followed by a RMW_Read or RMW_WritePolina Dudnik
2009-08-15Made servicing_atomic a counter and added started writes:Polina Dudnik
a function for setting the flag to indicate that the rmw_writes started issuing
2009-08-14Bug fix: indicate when writes started coming inPolina Dudnik
2009-08-14Added proc_id to CacheMsg for SMT.Polina Dudnik
Not yet necessary, but in case each of the threads is allowed to initiate an atomic, will come in handy
2009-08-14Multi-line RMW handlingPolina Dudnik
2009-08-05mergeDerek Hower
2009-08-04slicc: added MOESI_CMP_directory, DMA SequencerMsg, parameterized controllersDerek Hower
This changeset contains a lot of different changes that are too mingled to separate. They are: 1. Added MOESI_CMP_directory I made the changes necessary to bring back MOESI_CMP_directory, including adding a DMA controller. I got rid of MOESI_CMP_directory_m and made MOESI_CMP_directory use a memory controller. Added a new configuration for two level protocols in general, and MOESI_CMP_directory in particular. 2. DMA Sequencer uses a generic SequencerMsg I will eventually make the cache Sequencer use this type as well. It doesn't contain an offset field, just a physical address and a length. MI_example has been updated to deal with this. 3. Parameterized Controllers SLICC controllers can now take custom parameters to use for mapping, latencies, etc. Currently, only int parameters are supported.
2009-08-04slicc: better error messages when the python parser failsNathan Binkert
2009-07-22Fixed the licences plus minor fixes for compilationPolina Dudnik
2009-07-18ruby: removed all refs to old RubyConfigDerek Hower
2009-07-18mergeDerek Hower
2009-07-18slicc: made coherence profilers per-controllerDerek Hower
2009-07-13Changed the state machine to generate code such that multiple processors can ↵Polina Dudnik
make atomic requests at once
2009-07-13Added atomics implementation which would work for MI_examplePolina Dudnik
2009-07-06ruby: apply some fixes that were overwritten by the recent ruby import.Nathan Binkert
2009-07-06slicc: update parser.py for changes in slicc language.Nathan Binkert
2009-07-06scons: update SCons files for changes in ruby.Nathan Binkert
2009-07-06ruby: Import the latest ruby changes from gems.Nathan Binkert
This was done with an automated process, so there could be things that were done in this tree in the past that didn't make it. One known regression is that atomic memory operations do not seem to work properly anymore.
2009-07-06ruby: replace strings that were missed in original ruby import.Nathan Binkert
2009-05-17includes: sort includes againNathan Binkert
2009-05-12ruby: remove random uint typedef and use unsignedNathan Binkert
2009-05-12slicc: work around improper initialization of a global in slicc.Nathan Binkert
2009-05-12slicc: clean up the slicc environment so things build properly on mac.Nathan Binkert
2009-05-11ruby: add RUBY sticky option that must be set to add ruby to the buildNathan Binkert
Default is false
2009-05-11ruby: Check stderr and not stdin before hanging on an assert.Steve Reinhardt
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: 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: 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.