From f5f04c312096e56f09ea27e84d3d2d2a97be97f9 Mon Sep 17 00:00:00 2001 From: David Hashe Date: Mon, 20 Jul 2015 09:15:18 -0500 Subject: mem: add request types for acquire and release Add support for acquire and release requests. These synchronization operations are commonly supported by several modern instruction sets. --- src/mem/request.hh | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/mem') diff --git a/src/mem/request.hh b/src/mem/request.hh index 287a823ad..ef58686d6 100644 --- a/src/mem/request.hh +++ b/src/mem/request.hh @@ -155,6 +155,10 @@ class Request PF_EXCLUSIVE = 0x02000000, /** The request should be marked as LRU. */ EVICT_NEXT = 0x04000000, + /** The request should be marked with ACQUIRE. */ + ACQUIRE = 0x00020000, + /** The request should be marked with RELEASE. */ + RELEASE = 0x00040000, /** * The request should be handled by the generic IPR code (only @@ -696,6 +700,8 @@ class Request bool isMmappedIpr() const { return _flags.isSet(MMAPPED_IPR); } bool isSecure() const { return _flags.isSet(SECURE); } bool isPTWalk() const { return _flags.isSet(PT_WALK); } + bool isAcquire() const { return _flags.isSet(ACQUIRE); } + bool isRelease() const { return _flags.isSet(RELEASE); } }; #endif // __MEM_REQUEST_HH__ -- cgit v1.2.3