diff options
author | Andrew Waterman <waterman@s144.Millennium.Berkeley.EDU> | 2010-10-15 17:51:37 -0700 |
---|---|---|
committer | Andrew Waterman <waterman@s144.Millennium.Berkeley.EDU> | 2010-10-15 17:51:37 -0700 |
commit | b4fd490d689415205cf315c02f673b9386ece337 (patch) | |
tree | 73f93d81b6241b1d1204d7add68af065f9638ea9 /pk/pk.c | |
parent | 2b7fd5fa6ac24f3d6d6cb8f0d6c1c32b85c39f02 (diff) | |
download | pk-b4fd490d689415205cf315c02f673b9386ece337.zip pk-b4fd490d689415205cf315c02f673b9386ece337.tar.gz pk-b4fd490d689415205cf315c02f673b9386ece337.tar.bz2 |
[pk, sim] added FPU emulation support to proxy kernel
Diffstat (limited to 'pk/pk.c')
-rw-r--r-- | pk/pk.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -3,6 +3,7 @@ #include "file.h" #include "frontend.h" #include <stdarg.h> +#include <stdint.h> #include <stdbool.h> #include <string.h> @@ -25,7 +26,7 @@ static void vsprintk(char* out, const char* s, va_list vl) for(int i = 2*(longarg ? sizeof(long) : sizeof(int))-1; i >= 0; i--) { int d = (n >> (4*i)) & 0xF; - *out++ = (d < 10 ? '0'+d : 'A'+d-10); + *out++ = (d < 10 ? '0'+d : 'a'+d-10); } longarg = false; format = false; @@ -117,7 +118,8 @@ void dump_tf(trapframe_t* tf) for(int j = 0; j < 4; j++) printk("%s %lx%c",regnames[i+j],tf->gpr[i+j],j < 3 ? ' ' : '\n'); } - printk("sr %lx pc %lx va %lx\n",tf->sr,tf->epc,tf->badvaddr); + printk("sr %lx pc %lx va %lx insn %x\n",tf->sr,tf->epc,tf->badvaddr, + (uint32_t)tf->insn); } void init_tf(trapframe_t* tf, long pc, long sp) |