diff options
Diffstat (limited to 'target-sparc')
-rw-r--r-- | target-sparc/op_helper.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/target-sparc/op_helper.c b/target-sparc/op_helper.c index 03fe53f532..8c2551ff2c 100644 --- a/target-sparc/op_helper.c +++ b/target-sparc/op_helper.c @@ -2288,7 +2288,7 @@ target_ulong helper_udiv(target_ulong a, target_ulong b) uint64_t x0; uint32_t x1; - x0 = a | ((uint64_t) (env->y) << 32); + x0 = (a & 0xffffffff) | ((int64_t) (env->y) << 32); x1 = b; if (x1 == 0) { @@ -2310,7 +2310,7 @@ target_ulong helper_sdiv(target_ulong a, target_ulong b) int64_t x0; int32_t x1; - x0 = a | ((int64_t) (env->y) << 32); + x0 = (a & 0xffffffff) | ((int64_t) (env->y) << 32); x1 = b; if (x1 == 0) { |