Don't let interupts interupt microcode at undesired points.
--HG-- extra : convert_revision : a8ddc6b213b1a1b0d9c5cd194b88ac0c6bfb2a21
This commit is contained in:
parent
a8973c6054
commit
e9908e3c85
2 changed files with 4 additions and 2 deletions
|
@ -448,7 +448,8 @@ AtomicSimpleCPU::tick()
|
||||||
for (int i = 0; i < width; ++i) {
|
for (int i = 0; i < width; ++i) {
|
||||||
numCycles++;
|
numCycles++;
|
||||||
|
|
||||||
checkForInterrupts();
|
if (!curStaticInst || !curStaticInst->isDelayedCommit())
|
||||||
|
checkForInterrupts();
|
||||||
|
|
||||||
Fault fault = setupFetchRequest(ifetch_req);
|
Fault fault = setupFetchRequest(ifetch_req);
|
||||||
|
|
||||||
|
|
|
@ -427,7 +427,8 @@ TimingSimpleCPU::write(int32_t data, Addr addr, unsigned flags, uint64_t *res)
|
||||||
void
|
void
|
||||||
TimingSimpleCPU::fetch()
|
TimingSimpleCPU::fetch()
|
||||||
{
|
{
|
||||||
checkForInterrupts();
|
if (!curStaticInst || !curStaticInst->isDelayedCommit())
|
||||||
|
checkForInterrupts();
|
||||||
|
|
||||||
Request *ifetch_req = new Request();
|
Request *ifetch_req = new Request();
|
||||||
ifetch_req->setThreadContext(cpu_id, /* thread ID */ 0);
|
ifetch_req->setThreadContext(cpu_id, /* thread ID */ 0);
|
||||||
|
|
Loading…
Reference in a new issue