From 18142df5b9f7fa62e5a66092bb9451f920364018 Mon Sep 17 00:00:00 2001 From: Nilay Vaish Date: Fri, 18 Mar 2011 14:12:04 -0500 Subject: SLICC: Remove external_type for structures In SLICC, in order to define a type a data type for which it should not generate any code, the keyword external_type is used. For those data types for which code should be generated, the keyword structure is used. This patch eliminates the use of keyword external_type for defining structures. structure key word can now have an optional attribute external, which would be used for figuring out whether or not to generate the code for this structure. Also, now structures can have functions as well data members in them. --- src/mem/protocol/MOESI_CMP_token-L1cache.sm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/mem/protocol/MOESI_CMP_token-L1cache.sm') diff --git a/src/mem/protocol/MOESI_CMP_token-L1cache.sm b/src/mem/protocol/MOESI_CMP_token-L1cache.sm index edaf5f8ae..7683b485f 100644 --- a/src/mem/protocol/MOESI_CMP_token-L1cache.sm +++ b/src/mem/protocol/MOESI_CMP_token-L1cache.sm @@ -153,14 +153,14 @@ machine(L1Cache, "Token protocol") PrefetchBit Prefetch, desc="Is this a prefetch request"; } - external_type(TBETable) { + structure(TBETable, external="yes") { TBE lookup(Address); void allocate(Address); void deallocate(Address); bool isPresent(Address); } - external_type(PersistentTable) { + structure(PersistentTable, external="yes") { void persistentRequestLock(Address, MachineID, AccessType); void persistentRequestUnlock(Address, MachineID); bool okToIssueStarving(Address, MachineID); -- cgit v1.2.3