Deleted Added
sdiff udiff text old ( 7464:8d92c2737ac8 ) new ( 7465:f97b62be544f )
full compact
1/*
2 * Copyright (c) 2006 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;
9 * redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the

--- 65 unchanged lines hidden (view full) ---

76 Writeback,
77 SoftPFReq,
78 HardPFReq,
79 SoftPFResp,
80 HardPFResp,
81 WriteInvalidateReq,
82 WriteInvalidateResp,
83 UpgradeReq,
84 UpgradeResp,
85 ReadExReq,
86 ReadExResp,
87 LoadLockedReq,
88 StoreCondReq,
89 StoreCondResp,
90 SwapReq,
91 SwapResp,
92 MessageReq,

--- 13 unchanged lines hidden (view full) ---

106 private:
107 /**
108 * List of command attributes.
109 */
110 enum Attribute
111 {
112 IsRead, //!< Data flows from responder to requester
113 IsWrite, //!< Data flows from requester to responder
114 IsPrefetch, //!< Not a demand access
115 IsInvalidate,
116 NeedsExclusive, //!< Requires exclusive copy to complete in-cache
117 IsRequest, //!< Issued by requester
118 IsResponse, //!< Issue by responder
119 NeedsResponse, //!< Requester needs response from target
120 IsSWPrefetch,
121 IsHWPrefetch,

--- 30 unchanged lines hidden (view full) ---

152 testCmdAttrib(MemCmd::Attribute attrib) const
153 {
154 return commandInfo[cmd].attributes[attrib] != 0;
155 }
156
157 public:
158
159 bool isRead() const { return testCmdAttrib(IsRead); }
160 bool isWrite() const { return testCmdAttrib(IsWrite); }
161 bool isRequest() const { return testCmdAttrib(IsRequest); }
162 bool isResponse() const { return testCmdAttrib(IsResponse); }
163 bool needsExclusive() const { return testCmdAttrib(NeedsExclusive); }
164 bool needsResponse() const { return testCmdAttrib(NeedsResponse); }
165 bool isInvalidate() const { return testCmdAttrib(IsInvalidate); }
166 bool hasData() const { return testCmdAttrib(HasData); }
167 bool isReadWrite() const { return isRead() && isWrite(); }
168 bool isLLSC() const { return testCmdAttrib(IsLlsc); }

--- 218 unchanged lines hidden (view full) ---

387 /// Return the string name of the cmd field (for debugging and
388 /// tracing).
389 const std::string &cmdString() const { return cmd.toString(); }
390
391 /// Return the index of this command.
392 inline int cmdToIndex() const { return cmd.toInt(); }
393
394 bool isRead() const { return cmd.isRead(); }
395 bool isWrite() const { return cmd.isWrite(); }
396 bool isRequest() const { return cmd.isRequest(); }
397 bool isResponse() const { return cmd.isResponse(); }
398 bool needsExclusive() const { return cmd.needsExclusive(); }
399 bool needsResponse() const { return cmd.needsResponse(); }
400 bool isInvalidate() const { return cmd.isInvalidate(); }
401 bool hasData() const { return cmd.hasData(); }
402 bool isReadWrite() const { return cmd.isReadWrite(); }
403 bool isLLSC() const { return cmd.isLLSC(); }

--- 380 unchanged lines hidden ---