aboutsummaryrefslogtreecommitdiff
path: root/target-mips
diff options
context:
space:
mode:
authorths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-05-08 20:51:26 +0000
committerths <ths@c046a42c-6fe2-441c-8c8c-71466251a162>2007-05-08 20:51:26 +0000
commit09c69c5b23e904bf59608942da15650bf9428921 (patch)
tree53932dd3a4a728e656d04f115d2b548a4a80e3ed /target-mips
parent565d28951e971abf342fcc8701861163b7421f23 (diff)
downloadqemu-09c69c5b23e904bf59608942da15650bf9428921.zip
qemu-09c69c5b23e904bf59608942da15650bf9428921.tar.gz
qemu-09c69c5b23e904bf59608942da15650bf9428921.tar.bz2
Work around gcc's mips define, spotted by Stefan Weil.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2786 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-mips')
-rw-r--r--target-mips/op.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/target-mips/op.c b/target-mips/op.c
index 899892f..aedd7bd 100644
--- a/target-mips/op.c
+++ b/target-mips/op.c
@@ -1647,22 +1647,22 @@ unsigned int ieee_rm[] = {
#define RESTORE_ROUNDING_MODE \
set_float_rounding_mode(ieee_rm[env->fcr31 & 3], &env->fp_status)
-inline char ieee_ex_to_mips(char ieee)
+inline char ieee_ex_to_mips(char xcpt)
{
- return (ieee & float_flag_inexact) >> 5 |
- (ieee & float_flag_underflow) >> 3 |
- (ieee & float_flag_overflow) >> 1 |
- (ieee & float_flag_divbyzero) << 1 |
- (ieee & float_flag_invalid) << 4;
+ return (xcpt & float_flag_inexact) >> 5 |
+ (xcpt & float_flag_underflow) >> 3 |
+ (xcpt & float_flag_overflow) >> 1 |
+ (xcpt & float_flag_divbyzero) << 1 |
+ (xcpt & float_flag_invalid) << 4;
}
-inline char mips_ex_to_ieee(char mips)
+inline char mips_ex_to_ieee(char xcpt)
{
- return (mips & FP_INEXACT) << 5 |
- (mips & FP_UNDERFLOW) << 3 |
- (mips & FP_OVERFLOW) << 1 |
- (mips & FP_DIV0) >> 1 |
- (mips & FP_INVALID) >> 4;
+ return (xcpt & FP_INEXACT) << 5 |
+ (xcpt & FP_UNDERFLOW) << 3 |
+ (xcpt & FP_OVERFLOW) << 1 |
+ (xcpt & FP_DIV0) >> 1 |
+ (xcpt & FP_INVALID) >> 4;
}
inline void update_fcr31(void)