slicc: Fix bug in enqueue and peek statements.
authorDavid Hashe <david.hashe@amd.com>
Mon, 20 Jul 2015 14:15:18 +0000 (09:15 -0500)
committerDavid Hashe <david.hashe@amd.com>
Mon, 20 Jul 2015 14:15:18 +0000 (09:15 -0500)
These were not generating the correct c names for types declared within a
machine scope.

src/mem/slicc/ast/EnqueueStatementAST.py
src/mem/slicc/ast/PeekStatementAST.py

index e08e498087ab4ac3d84ed6c8a07a76428a825712..930540494fa1111b3ac8726a5f59ee169df9f7ff 100644 (file)
@@ -1,3 +1,4 @@
+# Copyright (c) 2013 Advanced Micro Devices, Inc.
 # Copyright (c) 1999-2008 Mark D. Hill and David A. Wood
 # Copyright (c) 2009 The Hewlett-Packard Development Company
 # All rights reserved.
@@ -54,8 +55,8 @@ class EnqueueStatementAST(StatementAST):
         self.symtab.newSymbol(v)
 
         # Declare message
-        code("std::shared_ptr<${{msg_type.ident}}> out_msg = "\
-             "std::make_shared<${{msg_type.ident}}>(clockEdge());")
+        code("std::shared_ptr<${{msg_type.c_ident}}> out_msg = "\
+             "std::make_shared<${{msg_type.c_ident}}>(clockEdge());")
 
         # The other statements
         t = self.statements.generate(code, None)
index cecb9aa9fc091373d6dc9863eb74b48b85150497..f5ef91daf249e3328bfdd56c4798dcd4fd287719 100644 (file)
@@ -1,3 +1,4 @@
+# Copyright (c) 2013 Advanced Micro Devices, Inc.
 # Copyright (c) 1999-2008 Mark D. Hill and David A. Wood
 # Copyright (c) 2009 The Hewlett-Packard Development Company
 # All rights reserved.
@@ -55,7 +56,7 @@ class PeekStatementAST(StatementAST):
         self.queue_name.assertType("InPort")
 
         # Declare the new "in_msg_ptr" variable
-        mtid = msg_type.ident
+        mtid = msg_type.c_ident
         qcode = self.queue_name.var.code
         code('''
 {