aboutsummaryrefslogtreecommitdiff
path: root/pk/fp.c
diff options
context:
space:
mode:
authorHuy Vo <huytbvo@berkeley.edu>2013-01-03 21:44:46 -0800
committerHuy Vo <huytbvo@berkeley.edu>2013-01-03 21:44:46 -0800
commita1bcdcb74e17f93d66c94cd6ec537551dc7e142f (patch)
tree1eeafe80e60f313b26cd875d6ac3c66b775dfb4c /pk/fp.c
parent15f31b54049fda09b60dc8e0b74dd5f65c7c8318 (diff)
downloadpk-eos14-bringup.zip
pk-eos14-bringup.tar.gz
pk-eos14-bringup.tar.bz2
updated to handle exceptions and illegal instructionseos14-bringup
Diffstat (limited to 'pk/fp.c')
-rw-r--r--pk/fp.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/pk/fp.c b/pk/fp.c
index 5426c71..f6d4eaf 100644
--- a/pk/fp.c
+++ b/pk/fp.c
@@ -1,6 +1,7 @@
#include "pk.h"
#include "pcr.h"
#include "fp.h"
+#include "config.h"
static fp_state_t fp_state;
@@ -211,10 +212,10 @@ int emulate_fp(trapframe_t* tf)
#define STR(x) XSTR(x)
#define XSTR(x) #x
-#define PUT_FP_REG(which, type, val) asm("mxtf." STR(type) " $f" STR(which) ",%0" : : "r"(val))
-#define GET_FP_REG(which, type, val) asm("mftx." STR(type) " %0,$f" STR(which) : "=r"(val))
-#define LOAD_FP_REG(which, type, val) asm("fl" STR(type) " $f" STR(which) ",%0" : : "m"(val))
-#define STORE_FP_REG(which, type, val) asm("fs" STR(type) " $f" STR(which) ",%0" : "=m"(val) : : "memory")
+#define PUT_FP_REG(which, type, val) asm("mxtf." STR(type) " f" STR(which) ",%0" : : "r"(val))
+#define GET_FP_REG(which, type, val) asm("mftx." STR(type) " %0,f" STR(which) : "=r"(val))
+#define LOAD_FP_REG(which, type, val) asm("fl" STR(type) " f" STR(which) ",%0" : : "m"(val))
+#define STORE_FP_REG(which, type, val) asm("fs" STR(type) " f" STR(which) ",%0" : "=m"(val) : : "memory")
static void __attribute__((noinline))
set_fp_reg(unsigned int which, unsigned int dp, uint64_t val)