summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2010-06-02 12:58:10 -0500
committerGabe Black <gblack@eecs.umich.edu>2010-06-02 12:58:10 -0500
commitb6cb6f1874184c72bcf97e7156c5c650be85a7fe (patch)
tree4aacf7314e54b4612460ba26c520ba63fb24b66b /src
parent1d5233958ad208e3b229e394ba5ab689b82d8cac (diff)
downloadgem5-b6cb6f1874184c72bcf97e7156c5c650be85a7fe.tar.xz
ARM: Zero the micropc when vectoring to a fault.
Diffstat (limited to 'src')
-rw-r--r--src/arch/arm/faults.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/arch/arm/faults.cc b/src/arch/arm/faults.cc
index 9b3657909..8428931a7 100644
--- a/src/arch/arm/faults.cc
+++ b/src/arch/arm/faults.cc
@@ -141,6 +141,7 @@ ArmFaultBase::invoke(ThreadContext *tc)
Addr newPc = getVector(tc) | (sctlr.te ? (ULL(1) << PcTBitShift) : 0);
tc->setPC(newPc);
tc->setNextPC(newPc + cpsr.t ? 2 : 4 );
+ tc->setMicroPC(0);
}
#else