diff options
author | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-09-29 17:21:28 +0000 |
---|---|---|
committer | aurel32 <aurel32@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-09-29 17:21:28 +0000 |
commit | f18cd2238d39950f8a532cb2a2ee48a453d2e88f (patch) | |
tree | 961cbb41d1f5b04b4e34f8671c8033e200929d71 /target-alpha/helper.h | |
parent | 023d8ca21fab3cb29be506946476ffc16c479a17 (diff) | |
download | qemu-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.h | 67 |
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)) + |