diff options
author | blueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-11-28 18:08:28 +0000 |
---|---|---|
committer | blueswir1 <blueswir1@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-11-28 18:08:28 +0000 |
commit | 9c2b428ee169dfbc92664f06e466a8bb0f45c702 (patch) | |
tree | a1dca4accf9f80dcea721f05a0b05432a9ee6c75 /target-sparc | |
parent | 66d4557ec6acbb8d56899ea808f246e593686895 (diff) |
Fix compilation and warnings on PPC host
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3746 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-sparc')
-rw-r--r-- | target-sparc/exec.h | 5 | ||||
-rw-r--r-- | target-sparc/op_helper.c | 17 |
2 files changed, 21 insertions, 1 deletions
diff --git a/target-sparc/exec.h b/target-sparc/exec.h index db19da6f66..54c824ee87 100644 --- a/target-sparc/exec.h +++ b/target-sparc/exec.h @@ -71,13 +71,14 @@ void do_fcmpes(void); void do_fcmped(void); #if defined(CONFIG_USER_ONLY) void do_fitoq(void); -void do_fabsq(void); void do_fsqrtq(void); void do_fcmpq(void); void do_fcmpeq(void); #endif #ifdef TARGET_SPARC64 void do_fabsd(void); +void do_fxtos(void); +void do_fxtod(void); void do_fcmps_fcc1(void); void do_fcmpd_fcc1(void); void do_fcmps_fcc2(void); @@ -91,6 +92,8 @@ void do_fcmped_fcc2(void); void do_fcmpes_fcc3(void); void do_fcmped_fcc3(void); #if defined(CONFIG_USER_ONLY) +void do_fabsq(void); +void do_fxtoq(void); void do_fcmpq_fcc1(void); void do_fcmpq_fcc2(void); void do_fcmpq_fcc3(void); diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c index 48f5fc6004..a71c9da370 100644 --- a/target-sparc/op_helper.c +++ b/target-sparc/op_helper.c @@ -70,6 +70,14 @@ void do_fitod(void) { DT0 = int32_to_float64(*((int32_t *)&FT1), &env->fp_status); } + +#if defined(CONFIG_USER_ONLY) +void do_fitoq(void) +{ + QT0 = int32_to_float128(*((int32_t *)&FT1), &env->fp_status); +} +#endif + #ifdef TARGET_SPARC64 void do_fxtos(void) { @@ -84,6 +92,15 @@ void do_fxtod(void) DT0 = int64_to_float64(*((int64_t *)&DT1), &env->fp_status); check_ieee_exceptions(); } + +#if defined(CONFIG_USER_ONLY) +void do_fxtoq(void) +{ + set_float_exception_flags(0, &env->fp_status); + QT0 = int64_to_float128(*((int32_t *)&DT1), &env->fp_status); + check_ieee_exceptions(); +} +#endif #endif #endif |