-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviews.gem5.org/r/3418/
-----------------------------------------------------------

Review request for Default.


Repository: gem5


Description
-------

Changeset 11420:4330a5015ddb
---------------------------
ruby: fix naming of variables

The way SLICC compiler has been written, it was difficult to use a variable
that appears in the base class AbstractController without adding some special
code to the file src/mem/slicc/ast/ObjDeclAST.py. This patch eliminates the
need for any such special code.

The problem ultimately turned out to be the way SLICC handles pointer and
non-pointer variables. Until now, SLICC tried to handle everything using
pointers, unless some special rules were specified, as was being done for
three variables: version, machineID, and clusterID.

Now the Var class will have a field that indicates whether a variable
is pointer or not. This field is used to differentiate between pointer
variables and other variables.

Pointer-based variables are allocated in the init() function of the
controller, as was the case before. Other variables now need not be pointer
based. Variables that need the constructor to be called on them will now
necessarily be declared as pointers.

The protocols currently in gem5 have been changed accordingly.


Diffs
-----

  src/mem/protocol/GPU_RfO-SQC.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/GPU_RfO-TCC.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/GPU_RfO-TCCdir.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/GPU_RfO-TCP.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/GPU_VIPER-SQC.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/GPU_VIPER-TCC.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/GPU_VIPER-TCP.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/GPU_VIPER_Region-TCC.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MESI_Three_Level-L0cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MESI_Three_Level-L1cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MESI_Two_Level-L1cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MESI_Two_Level-L2cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MESI_Two_Level-dir.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MI_example-cache.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MI_example-dir.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_AMD_Base-CorePair.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_AMD_Base-L3cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_AMD_Base-Region-CorePair.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_AMD_Base-Region-dir.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_AMD_Base-RegionBuffer.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_AMD_Base-RegionDir.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_AMD_Base-dir.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_AMD_Base-probeFilter.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_CMP_directory-L1cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_CMP_directory-L2cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_CMP_directory-dir.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_CMP_directory-dma.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_CMP_token-L1cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_CMP_token-L2cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_CMP_token-dir.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_hammer-cache.sm 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/protocol/MOESI_hammer-dir.sm cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/ast/ActionDeclAST.py cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/ast/EnqueueStatementAST.py 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/ast/FormalParamAST.py cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/ast/InPortDeclAST.py cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/ast/LocalVariableAST.py 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/ast/ObjDeclAST.py cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/ast/OutPortDeclAST.py cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/ast/PeekStatementAST.py 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/symbols/StateMachine.py 
cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/symbols/Type.py cfad34a15729e1d5e096245f5a80ded6e2c379ca 
  src/mem/slicc/symbols/Var.py cfad34a15729e1d5e096245f5a80ded6e2c379ca 

Diff: http://reviews.gem5.org/r/3418/diff/


Testing
-------


Thanks,

Brandon Potter

_______________________________________________
gem5-dev mailing list
gem5-dev@gem5.org
http://m5sim.org/mailman/listinfo/gem5-dev

Reply via email to