aboutsummaryrefslogtreecommitdiff
path: root/pk/syscall.c
diff options
context:
space:
mode:
authorChristopher Celio <celio@eecs.berkeley.edu>2014-06-13 02:33:32 -0700
committerChristopher Celio <celio@eecs.berkeley.edu>2014-06-13 02:33:32 -0700
commit7b6a968c83af5c64db7b874e3b318ee2882b5cf1 (patch)
treee0a976bb17e6f9de58f1ea7afc097066fe9870a3 /pk/syscall.c
parente3fa35fb859dc19d5ed2246c0bd7f0189a267bfa (diff)
downloadpk-7b6a968c83af5c64db7b874e3b318ee2882b5cf1.zip
pk-7b6a968c83af5c64db7b874e3b318ee2882b5cf1.tar.gz
pk-7b6a968c83af5c64db7b874e3b318ee2882b5cf1.tar.bz2
Changes to allow spike & RTL behavior to better match each other.
- EI turned off on sys_exit. - IM/IP cleared on start. - badvaddr only saved to tf on page faults.
Diffstat (limited to 'pk/syscall.c')
-rw-r--r--pk/syscall.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/pk/syscall.c b/pk/syscall.c
index 0c73a83..338ac74 100644
--- a/pk/syscall.c
+++ b/pk/syscall.c
@@ -28,6 +28,7 @@ void sys_exit(int code)
printk("%ld cycles\n", rdcycle() - current.t0);
frontend_syscall(SYS_exit, code, 0, 0, 0, 0);
+ clear_csr(status, SR_EI);
while (1);
}