diff options
Diffstat (limited to 'src/arch/alpha/ev5.cc')
-rw-r--r-- | src/arch/alpha/ev5.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/arch/alpha/ev5.cc b/src/arch/alpha/ev5.cc index 29910caa6..4e2420dc9 100644 --- a/src/arch/alpha/ev5.cc +++ b/src/arch/alpha/ev5.cc @@ -73,11 +73,12 @@ initCPU(ThreadContext *tc, int cpuId) tc->setIntReg(16, cpuId); tc->setIntReg(0, cpuId); - AlphaFault *reset = new ResetFault; + Addr base = tc->readMiscRegNoEffect(IPR_PAL_BASE); + Addr offset = ResetFault().vect(); - tc->pcState(tc->readMiscRegNoEffect(IPR_PAL_BASE) + reset->vect()); + tc->pcState(base + offset); - delete reset; + tc->activate(); } //////////////////////////////////////////////////////////////////////// |