summaryrefslogtreecommitdiff
path: root/src/cpu/simple/base.cc
diff options
context:
space:
mode:
authorVincentius Robby <acolyte@umich.edu>2007-06-14 16:52:19 -0400
committerVincentius Robby <acolyte@umich.edu>2007-06-14 16:52:19 -0400
commit5b5570e0bf78faec2ed253c9348639d3ae15e2ef (patch)
treeb884555f6affc655aea65225c541e01331303498 /src/cpu/simple/base.cc
parent6641423a0b3b906a6fd943296d3c9ebbc3918374 (diff)
downloadgem5-5b5570e0bf78faec2ed253c9348639d3ae15e2ef.tar.xz
Modified instruction decode method.
Make code compatible with new decode method. src/arch/alpha/remote_gdb.cc: src/cpu/base_dyn_inst_impl.hh: src/cpu/exetrace.cc: src/cpu/simple/base.cc: Make code compatible with new decode method. src/cpu/static_inst.cc: src/cpu/static_inst.hh: Modified instruction decode method. --HG-- extra : convert_revision : a9a6d3a16fff59bc95d0606ea344bd57e71b8d0a
Diffstat (limited to 'src/cpu/simple/base.cc')
-rw-r--r--src/cpu/simple/base.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/cpu/simple/base.cc b/src/cpu/simple/base.cc
index b97eabf33..b7f60522f 100644
--- a/src/cpu/simple/base.cc
+++ b/src/cpu/simple/base.cc
@@ -392,7 +392,8 @@ BaseSimpleCPU::preExecute()
thread->setNextPC(thread->readPC() + predecoder.getInstSize());
#endif // X86_ISA
stayAtPC = false;
- instPtr = StaticInst::decode(predecoder.getExtMachInst());
+ instPtr = StaticInst::decode(predecoder.getExtMachInst(),
+ thread->readPC());
} else {
stayAtPC = true;
fetchOffset += sizeof(MachInst);
@@ -437,7 +438,7 @@ BaseSimpleCPU::postExecute()
if (thread->profile) {
bool usermode = TheISA::inUserMode(tc);
thread->profilePC = usermode ? 1 : thread->readPC();
- StaticInstPtr si(inst);
+ StaticInstPtr si(inst, thread->readPC());
ProfileNode *node = thread->profile->consume(tc, si);
if (node)
thread->profileNode = node;