projects
/
gem5.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
cd3f064
)
Statetrace: Make statetrace do string instructions all at once like m5 does.
author
Gabe Black
<gblack@eecs.umich.edu>
Tue, 7 Aug 2007 22:27:54 +0000
(15:27 -0700)
committer
Gabe Black
<gblack@eecs.umich.edu>
Tue, 7 Aug 2007 22:27:54 +0000
(15:27 -0700)
--HG--
extra : convert_revision :
2103029077450e46f70077066708255310963d9d
util/statetrace/arch/tracechild_amd64.cc
patch
|
blob
|
history
diff --git
a/util/statetrace/arch/tracechild_amd64.cc
b/util/statetrace/arch/tracechild_amd64.cc
index 22292397264c86d3385b7eab76dbb7fb29b78fe4..112ee793e2072ad66a05ce5f18ec304e389a753d 100644
(file)
--- a/
util/statetrace/arch/tracechild_amd64.cc
+++ b/
util/statetrace/arch/tracechild_amd64.cc
@@
-317,7
+317,15
@@
bool AMD64TraceChild::step()
ptrace(PTRACE_POKEDATA, pid, ripAfterSyscall, buf);
}
else
- ptraceSingleStep();
+ {
+ //Get all the way past repe and repne string instructions in one shot.
+ uint64_t newPC, origPC = getPC();
+ do
+ {
+ ptraceSingleStep();
+ newPC = getPC();
+ } while(newPC == origPC);
+ }
}
TraceChild * genTraceChild()