diff options
author | Korey Sewell <ksewell@umich.edu> | 2011-06-19 21:43:38 -0400 |
---|---|---|
committer | Korey Sewell <ksewell@umich.edu> | 2011-06-19 21:43:38 -0400 |
commit | db8b1e4b78b7f51b673f80d4f2a1e5f5c86d4446 (patch) | |
tree | ca55fe420ad974c39432eab352147f52c23e7f48 /src/cpu/inorder/inorder_dyn_inst.cc | |
parent | c95fe261abab85bee247737a3d171378689891e0 (diff) | |
download | gem5-db8b1e4b78b7f51b673f80d4f2a1e5f5c86d4446.tar.xz |
inorder: treat SE mode syscalls as a trapping instruction
define a syscallContext to schedule the syscall and then use syscall() to actually perform the action
Diffstat (limited to 'src/cpu/inorder/inorder_dyn_inst.cc')
-rw-r--r-- | src/cpu/inorder/inorder_dyn_inst.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cpu/inorder/inorder_dyn_inst.cc b/src/cpu/inorder/inorder_dyn_inst.cc index 1252ed6d1..ccde20da4 100644 --- a/src/cpu/inorder/inorder_dyn_inst.cc +++ b/src/cpu/inorder/inorder_dyn_inst.cc @@ -296,7 +296,8 @@ InOrderDynInst::simPalCheck(int palFunc) void InOrderDynInst::syscall(int64_t callnum) { - cpu->syscall(callnum, this->threadNumber); + syscallNum = callnum; + cpu->syscallContext(NoFault, this->threadNumber, this); } #endif |