Change-Id: Ieeb68b405a68226077a2ffee231408f554e758a5
Signed-off-by: Tiago Mück <tiago.muck@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/41154
Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com>
Maintainer: Matt Sinclair <mattdsinclair@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
/*
- * Copyright (c) 2020 ARM Limited
+ * Copyright (c) 2020,2021 ARM Limited
* All rights reserved.
*
* The license below extends only to copyright in the software and shall
return true;
}
+ void
+ andMask(const WriteMask & writeMask)
+ {
+ assert(mSize == writeMask.mSize);
+ for (int i = 0; i < mSize; i++) {
+ mMask[i] = (mMask.at(i)) & (writeMask.mMask.at(i));
+ }
+
+ if (writeMask.mAtomic) {
+ mAtomic = true;
+ mAtomicOp = writeMask.mAtomicOp;
+ }
+ }
+
void
orMask(const WriteMask & writeMask)
{
bool isEmpty();
bool isFull();
bool isOverlap(WriteMask);
+ void andMask(WriteMask);
void orMask(WriteMask);
void setInvertedMask(WriteMask);
void fillMask();