[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v4 02/15] target/ppc: update ov flag from remaining
From: |
Nikunj A Dadhania |
Subject: |
[Qemu-devel] [PATCH v4 02/15] target/ppc: update ov flag from remaining paths |
Date: |
Fri, 24 Feb 2017 01:26:27 +0530 |
Signed-off-by: Nikunj A Dadhania <address@hidden>
---
target/ppc/int_helper.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/target/ppc/int_helper.c b/target/ppc/int_helper.c
index da4e1a6..b376860 100644
--- a/target/ppc/int_helper.c
+++ b/target/ppc/int_helper.c
@@ -320,22 +320,24 @@ target_ulong helper_divo(CPUPPCState *env, target_ulong
arg1,
target_ulong arg2)
{
uint64_t tmp = (uint64_t)arg1 << 32 | env->spr[SPR_MQ];
+ int ov;
if (((int32_t)tmp == INT32_MIN && (int32_t)arg2 == (int32_t)-1) ||
(int32_t)arg2 == 0) {
- env->so = env->ov = 1;
+ ov = 1;
env->spr[SPR_MQ] = 0;
return INT32_MIN;
} else {
env->spr[SPR_MQ] = tmp % arg2;
tmp /= (int32_t)arg2;
if ((int32_t)tmp != tmp) {
- env->so = env->ov = 1;
+ ov = 1;
} else {
- env->ov = 0;
+ ov = 0;
}
return tmp;
}
+ helper_update_ov_legacy(env, ov);
}
target_ulong helper_divs(CPUPPCState *env, target_ulong arg1,
@@ -356,11 +358,11 @@ target_ulong helper_divso(CPUPPCState *env, target_ulong
arg1,
{
if (((int32_t)arg1 == INT32_MIN && (int32_t)arg2 == (int32_t)-1) ||
(int32_t)arg2 == 0) {
- env->so = env->ov = 1;
+ helper_update_ov_legacy(env, 1);
env->spr[SPR_MQ] = 0;
return INT32_MIN;
} else {
- env->ov = 0;
+ helper_update_ov_legacy(env, 0);
env->spr[SPR_MQ] = (int32_t)arg1 % (int32_t)arg2;
return (int32_t)arg1 / (int32_t)arg2;
}
--
2.7.4
- [Qemu-devel] [PATCH v4 00/15] POWER9 TCG enablements - part15, Nikunj A Dadhania, 2017/02/23
- [Qemu-devel] [PATCH v4 02/15] target/ppc: update ov flag from remaining paths,
Nikunj A Dadhania <=
- [Qemu-devel] [PATCH v4 03/15] target/ppc: introduce helper_update_ca_legacy, Nikunj A Dadhania, 2017/02/23
- [Qemu-devel] [PATCH v4 12/15] target/ppc: update OV/OV32 for divide operations, Nikunj A Dadhania, 2017/02/23
- [Qemu-devel] [PATCH v4 01/15] target/ppc: introduce helper_update_ov_legacy, Nikunj A Dadhania, 2017/02/23
- [Qemu-devel] [PATCH v4 11/15] target/ppc: update OV/OV32 for mull[d, w] insns, Nikunj A Dadhania, 2017/02/23
- [Qemu-devel] [PATCH v4 08/15] target/ppc: update ca32 in arithmetic add, Nikunj A Dadhania, 2017/02/23
- [Qemu-devel] [PATCH v4 07/15] target/ppc: support for 32-bit carry and overflow, Nikunj A Dadhania, 2017/02/23
- [Qemu-devel] [PATCH v4 13/15] target/ppc: update OV/OV32 flags for add/sub, Nikunj A Dadhania, 2017/02/23
- [Qemu-devel] [PATCH v4 04/15] target/ppc: add gen_op_update_ca_legacy() helper, Nikunj A Dadhania, 2017/02/23