X86: Put the StoreCheck flag with the others, and don't collide with other flags.
This commit is contained in:
parent
b4816037ba
commit
ee7055c289
4 changed files with 5 additions and 6 deletions
|
@ -68,7 +68,8 @@ namespace X86ISA
|
|||
static const int FlagShift = 4;
|
||||
enum FlagBit {
|
||||
CPL0FlagBit = 1,
|
||||
AddrSizeFlagBit = 2
|
||||
AddrSizeFlagBit = 2,
|
||||
StoreCheck = 4
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
|
@ -439,9 +439,9 @@ let {{
|
|||
|
||||
defineMicroLoadOp('Ld', 'Data = merge(Data, Mem, dataSize);')
|
||||
defineMicroLoadOp('Ldst', 'Data = merge(Data, Mem, dataSize);',
|
||||
'X86ISA::StoreCheck')
|
||||
'(StoreCheck << FlagShift)')
|
||||
defineMicroLoadOp('Ldstl', 'Data = merge(Data, Mem, dataSize);',
|
||||
'X86ISA::StoreCheck | Request::LOCKED')
|
||||
'(StoreCheck << FlagShift) | Request::LOCKED')
|
||||
defineMicroLoadOp('Ldfp', 'FpData.uqw = Mem;')
|
||||
|
||||
def defineMicroStoreOp(mnemonic, code, \
|
||||
|
|
|
@ -193,7 +193,7 @@ TLB::translate(RequestPtr req, ThreadContext *tc, Translation *translation,
|
|||
Addr vaddr = req->getVaddr();
|
||||
DPRINTF(TLB, "Translating vaddr %#x.\n", vaddr);
|
||||
uint32_t flags = req->getFlags();
|
||||
bool storeCheck = flags & StoreCheck;
|
||||
bool storeCheck = flags & (StoreCheck << FlagShift);
|
||||
|
||||
int seg = flags & SegmentFlagMask;
|
||||
|
||||
|
|
|
@ -79,8 +79,6 @@ namespace X86ISA
|
|||
{
|
||||
class Walker;
|
||||
|
||||
static const unsigned StoreCheck = 1 << NUM_SEGMENTREGS;
|
||||
|
||||
class TLB : public BaseTLB
|
||||
{
|
||||
protected:
|
||||
|
|
Loading…
Reference in a new issue