----- Original Message -----
Sent: Thursday, January 18, 2007 11:34
PM
Subject: [Gems-users] How to add to
CoherenceRequestType?
Dear List,
I wanted to add a new type for
CoherenceRequestType and use that in my slicc .sm file. I did this by adding
a new enum in generated file CoherenceRequestType.h as follows:
enum CoherenceRequestType {
CoherenceRequestType_FIRST,
CoherenceRequestType_GETX =
CoherenceRequestType_FIRST,
CoherenceRequestType_UPGRADE,
CoherenceRequestType_GETS,
CoherenceRequestType_GET_INSTR,
CoherenceRequestType_PUTX,
CoherenceRequestType_PUTS,
CoherenceRequestType_INV,
CoherenceRequestType_INV_S,
CoherenceRequestType_L1_DG,
CoherenceRequestType_WB_ACK,
CoherenceRequestType_EXE_ACK,
CoherenceRequestType_NUM,
// a
new request type
CoherenceRequestType_FRED
};
Then when I attempt to compile the protocol, I
got an error message indicating that Type 'CoherenceRequestType' does not
have enumeration 'FRED'. I also tried to modify
protocols/RubySlicc_Exports.sm,
enumeration(GenericRequestType, desc="...",
default="GenericRequestType_NULL") {
GETS, desc="gets
request";
GET_INSTR, desc="get instr
request";
GETX,
desc="getx request";
UPGRADE,
desc="upgrade request";
DOWNGRADE, desc="downgrade
request";
INV,
desc="invalidate request";
INV_S, desc="invalidate shared copy
request";
PUTS,
desc="puts request";
PUTO, desc="puto
request";
PUTX,
desc="putx request";
L2_PF,
desc="L2 prefetch";
LD,
desc="Load";
ST,
desc="Store";
ATOMIC, desc="Atomic
Load/Store";
IFETCH,
desc="Instruction fetch";
IO,
desc="I/O";
// a new request type
FRED, desc="FRED
request";
NACK,
desc="Nack";
REPLACEMENT, desc="Replacement";
WB_ACK, desc="WriteBack ack";
EXE_ACK, desc="Execlusive ack";
COMMIT, desc="Commit version";
LD_XACT, desc="Transactional Load";
LDX_XACT, desc="Transactional
Load-Intend-Modify";
ST_XACT,
desc="Transactional Store";
BEGIN_XACT, desc="Begin
Transaction";
COMMIT_XACT, desc="Commit Transaction";
ABORT_XACT, desc="Abort Transaction";
NULL, desc="null request
type";
}
That gives me the same error. I suspect that this is a slicc
limitation. Could anyone please give me a hint on how to add a new type to
CoherenceRequestType?
Thanks in advance!
Lei
_______________________________________________
Gems-users mailing
list
Gems-users@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/gems-users
Use
Google to search the GEMS Users mailing list by adding
"site:https://lists.cs.wisc.edu/archive/gems-users/" to your
search.