pagetable_walker.hh (13892:0182a0601f66) | pagetable_walker.hh (14096:bde52fccbf0f) |
---|---|
1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 97 unchanged lines hidden (view full) --- 106 std::vector<PacketPtr> writes; 107 Fault timingFault; 108 TLB::Translation * translation; 109 BaseTLB::Mode mode; 110 bool functional; 111 bool timing; 112 bool retrying; 113 bool started; | 1/* 2 * Copyright (c) 2007 The Hewlett-Packard Development Company 3 * All rights reserved. 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 97 unchanged lines hidden (view full) --- 106 std::vector<PacketPtr> writes; 107 Fault timingFault; 108 TLB::Translation * translation; 109 BaseTLB::Mode mode; 110 bool functional; 111 bool timing; 112 bool retrying; 113 bool started; |
114 bool squashed; |
|
114 public: 115 WalkerState(Walker * _walker, BaseTLB::Translation *_translation, 116 const RequestPtr &_req, bool _isFunctional = false) : 117 walker(_walker), req(_req), state(Ready), 118 nextState(Ready), inflight(0), 119 translation(_translation), 120 functional(_isFunctional), timing(false), | 115 public: 116 WalkerState(Walker * _walker, BaseTLB::Translation *_translation, 117 const RequestPtr &_req, bool _isFunctional = false) : 118 walker(_walker), req(_req), state(Ready), 119 nextState(Ready), inflight(0), 120 translation(_translation), 121 functional(_isFunctional), timing(false), |
121 retrying(false), started(false) | 122 retrying(false), started(false), squashed(false) |
122 { 123 } 124 void initState(ThreadContext * _tc, BaseTLB::Mode _mode, 125 bool _isTiming = false); 126 Fault startWalk(); 127 Fault startFunctional(Addr &addr, unsigned &logBytes); 128 bool recvPacket(PacketPtr pkt); | 123 { 124 } 125 void initState(ThreadContext * _tc, BaseTLB::Mode _mode, 126 bool _isTiming = false); 127 Fault startWalk(); 128 Fault startFunctional(Addr &addr, unsigned &logBytes); 129 bool recvPacket(PacketPtr pkt); |
130 unsigned numInflight() const; |
|
129 bool isRetrying(); 130 bool wasStarted(); 131 bool isTiming(); 132 void retry(); | 131 bool isRetrying(); 132 bool wasStarted(); 133 bool isTiming(); 134 void retry(); |
135 void squash(); |
|
133 std::string name() const {return walker->name();} 134 135 private: 136 void setupWalk(Addr vaddr); 137 Fault stepWalk(PacketPtr &write); 138 void sendPackets(); 139 void endWalk(); 140 Fault pageFault(bool present); --- 73 unchanged lines hidden --- | 136 std::string name() const {return walker->name();} 137 138 private: 139 void setupWalk(Addr vaddr); 140 Fault stepWalk(PacketPtr &write); 141 void sendPackets(); 142 void endWalk(); 143 Fault pageFault(bool present); --- 73 unchanged lines hidden --- |