|
gem5 v23.0.0.1
|
#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().