diff options
author | Kevin Lim <ktlim@umich.edu> | 2006-03-07 20:01:34 -0500 |
---|---|---|
committer | Kevin Lim <ktlim@umich.edu> | 2006-03-07 20:01:34 -0500 |
commit | 97c4a84985b0f9168f60f28d5cc96be448eef4fa (patch) | |
tree | 5d385f2410979c4b4b2164686c87b8a083ad108d /sim/faults.cc | |
parent | 11aead894d4186916b587b1449075f276319a235 (diff) | |
parent | ab67095b2a43b5f2d44d1e1a517d1079ddf9f104 (diff) | |
download | gem5-97c4a84985b0f9168f60f28d5cc96be448eef4fa.tar.xz |
Merge ktlim@zizzer:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5-proxyxc
arch/alpha/faults.cc:
Hand merge.
--HG--
rename : arch/alpha/linux_process.cc => arch/alpha/linux/process.cc
rename : arch/alpha/tru64_process.cc => arch/alpha/tru64/process.cc
extra : convert_revision : 6ea1fae5be0ebd02eff330423d16da63b790516d
Diffstat (limited to 'sim/faults.cc')
-rw-r--r-- | sim/faults.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/sim/faults.cc b/sim/faults.cc index 9b4a0ea7f..2b93353ce 100644 --- a/sim/faults.cc +++ b/sim/faults.cc @@ -28,10 +28,19 @@ #include "sim/faults.hh" #include "cpu/exec_context.hh" +#include "cpu/base.hh" #if !FULL_SYSTEM void FaultBase::invoke(ExecContext * xc) { fatal("fault (%s) detected @ PC 0x%08p", name(), xc->readPC()); } +#else +void FaultBase::invoke(ExecContext * xc) +{ + DPRINTF(Fault, "Fault %s at PC: %#x\n", name(), xc->regs.pc); + xc->cpu->recordEvent(csprintf("Fault %s", name())); + + assert(!xc->misspeculating()); +} #endif |