request.hh (11248:f6db1e80a878) request.hh (11253:daf9f91b11e9)
1/*
2 * Copyright (c) 2012-2013 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

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

295 ContextID _contextId;
296 /** The thread ID (id within this CPU) */
297 ThreadID _threadId;
298
299 /** program counter of initiating access; for tracing/debugging */
300 Addr _pc;
301
302 /** Sequence number of the instruction that creates the request */
1/*
2 * Copyright (c) 2012-2013 ARM Limited
3 * All rights reserved
4 *
5 * The license below extends only to copyright in the software and shall
6 * not be construed as granting a license to any other intellectual
7 * property including but not limited to intellectual property relating
8 * to a hardware implementation of the functionality of the software

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

295 ContextID _contextId;
296 /** The thread ID (id within this CPU) */
297 ThreadID _threadId;
298
299 /** program counter of initiating access; for tracing/debugging */
300 Addr _pc;
301
302 /** Sequence number of the instruction that creates the request */
303 const InstSeqNum _reqInstSeqNum;
303 InstSeqNum _reqInstSeqNum;
304
305 public:
306
307 /**
308 * Minimal constructor. No fields are initialized. (Note that
309 * _flags and privateFlags are cleared by Flags default
310 * constructor.)
311 */

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

670
671 InstSeqNum
672 getReqInstSeqNum() const
673 {
674 assert(privateFlags.isSet(VALID_INST_SEQ_NUM));
675 return _reqInstSeqNum;
676 }
677
304
305 public:
306
307 /**
308 * Minimal constructor. No fields are initialized. (Note that
309 * _flags and privateFlags are cleared by Flags default
310 * constructor.)
311 */

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

670
671 InstSeqNum
672 getReqInstSeqNum() const
673 {
674 assert(privateFlags.isSet(VALID_INST_SEQ_NUM));
675 return _reqInstSeqNum;
676 }
677
678 void
679 setReqInstSeqNum(const InstSeqNum seq_num)
680 {
681 privateFlags.set(VALID_INST_SEQ_NUM);
682 _reqInstSeqNum = seq_num;
683 }
684
678 /** Accessor functions for flags. Note that these are for testing
679 only; setting flags should be done via setFlags(). */
680 bool isUncacheable() const { return _flags.isSet(UNCACHEABLE); }
681 bool isStrictlyOrdered() const { return _flags.isSet(STRICT_ORDER); }
682 bool isInstFetch() const { return _flags.isSet(INST_FETCH); }
683 bool isPrefetch() const { return _flags.isSet(PREFETCH); }
684 bool isLLSC() const { return _flags.isSet(LLSC); }
685 bool isPriv() const { return _flags.isSet(PRIVILEGED); }
686 bool isLockedRMW() const { return _flags.isSet(LOCKED_RMW); }
687 bool isSwap() const { return _flags.isSet(MEM_SWAP|MEM_SWAP_COND); }
688 bool isCondSwap() const { return _flags.isSet(MEM_SWAP_COND); }
689 bool isMmappedIpr() const { return _flags.isSet(MMAPPED_IPR); }
690 bool isSecure() const { return _flags.isSet(SECURE); }
691 bool isPTWalk() const { return _flags.isSet(PT_WALK); }
692};
693
694#endif // __MEM_REQUEST_HH__
685 /** Accessor functions for flags. Note that these are for testing
686 only; setting flags should be done via setFlags(). */
687 bool isUncacheable() const { return _flags.isSet(UNCACHEABLE); }
688 bool isStrictlyOrdered() const { return _flags.isSet(STRICT_ORDER); }
689 bool isInstFetch() const { return _flags.isSet(INST_FETCH); }
690 bool isPrefetch() const { return _flags.isSet(PREFETCH); }
691 bool isLLSC() const { return _flags.isSet(LLSC); }
692 bool isPriv() const { return _flags.isSet(PRIVILEGED); }
693 bool isLockedRMW() const { return _flags.isSet(LOCKED_RMW); }
694 bool isSwap() const { return _flags.isSet(MEM_SWAP|MEM_SWAP_COND); }
695 bool isCondSwap() const { return _flags.isSet(MEM_SWAP_COND); }
696 bool isMmappedIpr() const { return _flags.isSet(MMAPPED_IPR); }
697 bool isSecure() const { return _flags.isSet(SECURE); }
698 bool isPTWalk() const { return _flags.isSet(PT_WALK); }
699};
700
701#endif // __MEM_REQUEST_HH__