ruby: automate permission setting
authorBrad Beckmann <Brad.Beckmann@amd.com>
Thu, 24 Feb 2011 00:41:59 +0000 (16:41 -0800)
committerBrad Beckmann <Brad.Beckmann@amd.com>
Thu, 24 Feb 2011 00:41:59 +0000 (16:41 -0800)
commit12a05c23b7d351afee4b0c531021d8fb8ea5f57d
tree99a18647ecf642166068187915f2816a1007567d
parent7842e955193c3fba850201acc45001306fe2ff9b
ruby: automate permission setting

This patch integrates permissions with cache and memory states, and then
automates the setting of permissions within the generated code.  No longer
does one need to manually set the permissions within the setState funciton.
This patch will faciliate easier functional access support by always correctly
setting permissions for both cache and memory states.

--HG--
rename : src/mem/slicc/ast/EnumDeclAST.py => src/mem/slicc/ast/StateDeclAST.py
rename : src/mem/slicc/ast/TypeFieldEnumAST.py => src/mem/slicc/ast/TypeFieldStateAST.py
30 files changed:
src/mem/protocol/MESI_CMP_directory-L1cache.sm
src/mem/protocol/MESI_CMP_directory-L2cache.sm
src/mem/protocol/MESI_CMP_directory-dir.sm
src/mem/protocol/MESI_CMP_directory-dma.sm
src/mem/protocol/MI_example-cache.sm
src/mem/protocol/MI_example-dir.sm
src/mem/protocol/MI_example-dma.sm
src/mem/protocol/MOESI_CMP_directory-L1cache.sm
src/mem/protocol/MOESI_CMP_directory-L2cache.sm
src/mem/protocol/MOESI_CMP_directory-dir.sm
src/mem/protocol/MOESI_CMP_directory-dma.sm
src/mem/protocol/MOESI_CMP_token-L1cache.sm
src/mem/protocol/MOESI_CMP_token-L2cache.sm
src/mem/protocol/MOESI_CMP_token-dir.sm
src/mem/protocol/MOESI_CMP_token-dma.sm
src/mem/protocol/MOESI_hammer-cache.sm
src/mem/protocol/MOESI_hammer-dir.sm
src/mem/protocol/MOESI_hammer-dma.sm
src/mem/protocol/RubySlicc_Types.sm
src/mem/ruby/slicc_interface/AbstractCacheEntry.cc
src/mem/ruby/slicc_interface/AbstractCacheEntry.hh
src/mem/ruby/slicc_interface/AbstractEntry.cc
src/mem/ruby/slicc_interface/AbstractEntry.hh
src/mem/slicc/ast/StateDeclAST.py [new file with mode: 0644]
src/mem/slicc/ast/TypeFieldEnumAST.py
src/mem/slicc/ast/TypeFieldStateAST.py [new file with mode: 0644]
src/mem/slicc/ast/__init__.py
src/mem/slicc/parser.py
src/mem/slicc/symbols/StateMachine.py
src/mem/slicc/symbols/Type.py