diff options
Diffstat (limited to 'target-alpha/op_helper.c')
-rw-r--r-- | target-alpha/op_helper.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/target-alpha/op_helper.c b/target-alpha/op_helper.c index fe222dccd..7a3bf9c0f 100644 --- a/target-alpha/op_helper.c +++ b/target-alpha/op_helper.c @@ -46,10 +46,10 @@ uint64_t helper_load_fpcr (void) { uint64_t ret = 0; #ifdef CONFIG_SOFTFLOAT - ret |= env->fp_status.float_exception_flags << 52; + ret |= (uint64_t)env->fp_status.float_exception_flags << 52; if (env->fp_status.float_exception_flags) ret |= 1ULL << 63; - env->ipr[IPR_EXC_SUM] &= ~0x3E: + env->ipr[IPR_EXC_SUM] &= ~0x3E; env->ipr[IPR_EXC_SUM] |= env->fp_status.float_exception_flags << 1; #endif switch (env->fp_status.float_rounding_mode) { |