gem5 v23.0.0.0
|
#include <WriteMask.hh>
Public Types | |
typedef std::vector< std::pair< int, AtomicOpFunctor * > > | AtomicOpVector |
Public Member Functions | |
WriteMask () | |
WriteMask (int size) | |
WriteMask (int size, std::vector< bool > &mask) | |
WriteMask (int size, std::vector< bool > &mask, AtomicOpVector atomicOp) | |
~WriteMask () | |
void | clear () |
bool | test (int offset) const |
void | setMask (int offset, int len, bool val=true) |
void | fillMask () |
bool | getMask (int offset, int len) const |
bool | isOverlap (const WriteMask &readMask) const |
bool | containsMask (const WriteMask &readMask) const |
bool | isEmpty () const |
bool | isFull () const |
void | andMask (const WriteMask &writeMask) |
void | orMask (const WriteMask &writeMask) |
void | setInvertedMask (const WriteMask &writeMask) |
int | firstBitSet (bool val, int offset=0) const |
int | count (int offset=0) const |
void | print (std::ostream &out) const |
void | performAtomic (uint8_t *p) const |
void | performAtomic (DataBlock &blk) const |
const AtomicOpVector & | getAtomicOps () const |
void | setAtomicOps (const AtomicOpVector &atomicOps) |
Private Attributes | |
int | mSize |
std::vector< bool > | mMask |
bool | mAtomic |
AtomicOpVector | mAtomicOp |
Definition at line 59 of file WriteMask.hh.
typedef std::vector<std::pair<int, AtomicOpFunctor* > > gem5::ruby::WriteMask::AtomicOpVector |
Definition at line 62 of file WriteMask.hh.
gem5::ruby::WriteMask::WriteMask | ( | ) |
Definition at line 41 of file WriteMask.cc.
|
inline |
Definition at line 66 of file WriteMask.hh.
|
inline |
Definition at line 70 of file WriteMask.hh.
|
inline |
Definition at line 74 of file WriteMask.hh.
|
inline |
Definition at line 78 of file WriteMask.hh.
|
inline |
Definition at line 169 of file WriteMask.hh.
References gem5::ArmISA::i, mAtomic, mAtomicOp, mMask, and mSize.
|
inline |
Definition at line 82 of file WriteMask.hh.
|
inline |
Definition at line 135 of file WriteMask.hh.
References gem5::ArmISA::i, mMask, and mSize.
|
inline |
Definition at line 215 of file WriteMask.hh.
References gem5::X86ISA::count, gem5::ArmISA::i, mMask, mSize, and gem5::ArmISA::offset.
|
inline |
Definition at line 103 of file WriteMask.hh.
References gem5::ArmISA::i, mMask, and mSize.
|
inline |
Definition at line 206 of file WriteMask.hh.
References gem5::ArmISA::i, mMask, mSize, gem5::ArmISA::offset, and gem5::X86ISA::val.
|
inline |
Definition at line 247 of file WriteMask.hh.
References mAtomicOp.
|
inline |
Definition at line 111 of file WriteMask.hh.
References gem5::ArmISA::i, gem5::ArmISA::len, mMask, mSize, and gem5::ArmISA::offset.
|
inline |
Definition at line 147 of file WriteMask.hh.
References gem5::ArmISA::i, mMask, and mSize.
|
inline |
Definition at line 158 of file WriteMask.hh.
References gem5::ArmISA::i, mMask, and mSize.
|
inline |
Definition at line 122 of file WriteMask.hh.
References gem5::ArmISA::i, mMask, and mSize.
|
inline |
Definition at line 183 of file WriteMask.hh.
References gem5::ArmISA::i, mAtomic, mAtomicOp, mMask, and mSize.
|
inline |
Definition at line 236 of file WriteMask.hh.
References gem5::ruby::DataBlock::getDataMod(), gem5::ArmISA::i, mAtomicOp, gem5::ArmISA::offset, and gem5::MipsISA::p.
|
inline |
Definition at line 226 of file WriteMask.hh.
References gem5::ArmISA::i, mAtomicOp, gem5::ArmISA::offset, and gem5::MipsISA::p.
void gem5::ruby::WriteMask::print | ( | std::ostream & | out | ) | const |
Definition at line 47 of file WriteMask.cc.
References gem5::ArmISA::i, mMask, and mSize.
Referenced by gem5::ruby::operator<<().
|
inline |
Definition at line 253 of file WriteMask.hh.
|
inline |
Definition at line 197 of file WriteMask.hh.
References gem5::ArmISA::i, mMask, and mSize.
|
inline |
Definition at line 95 of file WriteMask.hh.
References gem5::ArmISA::i, gem5::ArmISA::len, mMask, mSize, gem5::ArmISA::offset, and gem5::X86ISA::val.
|
inline |
Definition at line 88 of file WriteMask.hh.
References mMask, mSize, and gem5::ArmISA::offset.
|
private |
Definition at line 262 of file WriteMask.hh.
Referenced by andMask(), orMask(), and setAtomicOps().
|
private |
Definition at line 263 of file WriteMask.hh.
Referenced by andMask(), getAtomicOps(), orMask(), performAtomic(), performAtomic(), and setAtomicOps().
|
private |
Definition at line 261 of file WriteMask.hh.
Referenced by andMask(), clear(), containsMask(), count(), fillMask(), firstBitSet(), getMask(), isEmpty(), isFull(), isOverlap(), orMask(), print(), setInvertedMask(), setMask(), and test().
|
private |
Definition at line 260 of file WriteMask.hh.
Referenced by andMask(), clear(), containsMask(), count(), fillMask(), firstBitSet(), getMask(), isEmpty(), isFull(), isOverlap(), orMask(), print(), setInvertedMask(), setMask(), and test().