summaryrefslogtreecommitdiff
path: root/src/mem/slicc/ast/MachineAST.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mem/slicc/ast/MachineAST.py')
-rw-r--r--src/mem/slicc/ast/MachineAST.py23
1 files changed, 8 insertions, 15 deletions
diff --git a/src/mem/slicc/ast/MachineAST.py b/src/mem/slicc/ast/MachineAST.py
index 5d14f7688..4487b094e 100644
--- a/src/mem/slicc/ast/MachineAST.py
+++ b/src/mem/slicc/ast/MachineAST.py
@@ -29,11 +29,10 @@ from slicc.ast.DeclAST import DeclAST
from slicc.symbols import StateMachine, Type
class MachineAST(DeclAST):
- def __init__(self, slicc, idents, pairs_ast, config_parameters, decls):
+ def __init__(self, slicc, ident, pairs_ast, config_parameters, decls):
super(MachineAST, self).__init__(slicc, pairs_ast)
- self.ident = idents[0]
- self.machine_types = idents
+ self.ident = ident
self.pairs_ast = pairs_ast
self.config_parameters = config_parameters
self.decls = decls
@@ -71,19 +70,13 @@ class MachineAST(DeclAST):
self.symtab.popFrame()
def findMachines(self):
- # Add to MachineType enumeration
- for mtype in self.machine_types:
- machine_type = self.symtab.find("MachineType", Type)
- pairs = self.pairs_ast.pairs
+ mtype = self.ident
+ machine_type = self.symtab.find("MachineType", Type)
+ pairs = self.pairs_ast.pairs
- if mtype == self.ident:
- pairs["Primary"] = True
- else:
- pairs["Primary"] = False
-
- if not machine_type.addEnum(mtype, pairs):
- self.error("Duplicate machine name: %s:%s" % (
- machine_type, mtype))
+ pairs["Primary"] = True
+ if not machine_type.addEnum(mtype, pairs):
+ self.error("Duplicate machine name: %s:%s" % (machine_type, mtype))
# Generate code for all the internal decls
self.decls.findMachines()