summaryrefslogtreecommitdiff
path: root/src/kern/tru64/tru64.hh
diff options
context:
space:
mode:
Diffstat (limited to 'src/kern/tru64/tru64.hh')
-rw-r--r--src/kern/tru64/tru64.hh7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/kern/tru64/tru64.hh b/src/kern/tru64/tru64.hh
index d3348fe89..aa3c4bb50 100644
--- a/src/kern/tru64/tru64.hh
+++ b/src/kern/tru64/tru64.hh
@@ -509,7 +509,9 @@ class Tru64 : public OperatingSystem
// Note that we'll advance PC <- NPC before the end of the cycle,
// so we need to restore the desired PC into NPC.
// The current regs->pc will get clobbered.
- tc->setNextPC(htog(sc->sc_pc));
+ PCState pc = tc->pcState();
+ pc.npc(htog(sc->sc_pc));
+ tc->pcState(pc);
for (int i = 0; i < 31; ++i) {
tc->setIntReg(i, htog(sc->sc_regs[i]));
@@ -703,8 +705,7 @@ class Tru64 : public OperatingSystem
tc->setIntReg(TheISA::StackPointerReg, gtoh(attrp->registers.sp));
tc->setMiscRegNoEffect(AlphaISA::MISCREG_UNIQ, uniq_val);
- tc->setPC(gtoh(attrp->registers.pc));
- tc->setNextPC(gtoh(attrp->registers.pc) + sizeof(TheISA::MachInst));
+ tc->pcState(gtoh(attrp->registers.pc));
tc->activate();
}