aboutsummaryrefslogtreecommitdiff
path: root/target-alpha/helper.h
diff options
context:
space:
mode:
authoraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-09-29 17:21:28 +0000
committeraurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162>2008-09-29 17:21:28 +0000
commitf18cd2238d39950f8a532cb2a2ee48a453d2e88f (patch)
tree961cbb41d1f5b04b4e34f8671c8033e200929d71 /target-alpha/helper.h
parent023d8ca21fab3cb29be506946476ffc16c479a17 (diff)
downloadqemu-f18cd2238d39950f8a532cb2a2ee48a453d2e88f.zip
qemu-f18cd2238d39950f8a532cb2a2ee48a453d2e88f.tar.gz
qemu-f18cd2238d39950f8a532cb2a2ee48a453d2e88f.tar.bz2
target-alpha: convert FP ops to TCG
- Convert FP ops to TCG - Fix S format - Implement F and G formats (untested) - Fix MF_FPCR an MT_FPCR - Fix FTOIS, FTOIT, ITOFF, ITOFS, ITOFT - Fix CPYSN, CPYSE Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5354 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-alpha/helper.h')
-rw-r--r--target-alpha/helper.h67
1 files changed, 67 insertions, 0 deletions
diff --git a/target-alpha/helper.h b/target-alpha/helper.h
index 4b07f58..6126790 100644
--- a/target-alpha/helper.h
+++ b/target-alpha/helper.h
@@ -41,3 +41,70 @@ DEF_HELPER(uint64_t, helper_mskqh, (int64_t, uint64_t))
DEF_HELPER(uint64_t, helper_insqh, (int64_t, uint64_t))
DEF_HELPER(uint64_t, helper_cmpbge, (uint64_t, uint64_t))
+
+DEF_HELPER(uint64_t, helper_load_fpcr, (void))
+DEF_HELPER(void, helper_store_fpcr, (uint64_t val))
+
+DEF_HELPER(uint32_t, helper_f_to_memory, (uint64_t s))
+DEF_HELPER(uint64_t, helper_memory_to_f, (uint32_t s))
+DEF_HELPER(uint64_t, helper_addf, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_subf, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_mulf, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_divf, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_sqrtf, (uint64_t))
+
+DEF_HELPER(uint64_t, helper_g_to_memory, (uint64_t s))
+DEF_HELPER(uint64_t, helper_memory_to_g, (uint64_t s))
+DEF_HELPER(uint64_t, helper_addg, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_subg, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_mulg, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_divg, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_sqrtg, (uint64_t))
+
+DEF_HELPER(uint32_t, helper_s_to_memory, (uint64_t s))
+DEF_HELPER(uint64_t, helper_memory_to_s, (uint32_t s))
+DEF_HELPER(uint64_t, helper_adds, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_subs, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_muls, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_divs, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_sqrts, (uint64_t))
+
+DEF_HELPER(uint64_t, helper_addt, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_subt, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_mult, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_divt, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_sqrtt, (uint64_t))
+
+DEF_HELPER(uint64_t, helper_cmptun, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_cmpteq, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_cmptle, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_cmptlt, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_cmpgeq, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_cmpgle, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_cmpglt, (uint64_t, uint64_t))
+
+DEF_HELPER(uint64_t, helper_cmpfeq, (uint64_t))
+DEF_HELPER(uint64_t, helper_cmpfne, (uint64_t))
+DEF_HELPER(uint64_t, helper_cmpflt, (uint64_t))
+DEF_HELPER(uint64_t, helper_cmpfle, (uint64_t))
+DEF_HELPER(uint64_t, helper_cmpfgt, (uint64_t))
+DEF_HELPER(uint64_t, helper_cmpfge, (uint64_t))
+
+DEF_HELPER(uint64_t, helper_cpys, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_cpysn, (uint64_t, uint64_t))
+DEF_HELPER(uint64_t, helper_cpyse, (uint64_t, uint64_t))
+
+DEF_HELPER(uint64_t, helper_cvtts, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtst, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvttq, (uint64_t))
+DEF_HELPER(uint32_t, helper_cvtqs, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtqt, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtqf, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtgf, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtgq, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtqg, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtlq, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtql, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtqlv, (uint64_t))
+DEF_HELPER(uint64_t, helper_cvtqlsv, (uint64_t))
+