From 9c2b428ee169dfbc92664f06e466a8bb0f45c702 Mon Sep 17 00:00:00 2001 From: blueswir1 Date: Wed, 28 Nov 2007 18:08:28 +0000 Subject: Fix compilation and warnings on PPC host git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3746 c046a42c-6fe2-441c-8c8c-71466251a162 --- target-sparc/exec.h | 5 ++++- target-sparc/op_helper.c | 17 +++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) (limited to 'target-sparc') 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 -- cgit v1.2.3