From: Nikunj A Dadhania Date: Mon, 13 Mar 2017 09:31:04 +0000 (+0530) Subject: target/ppc: fix cpu_ov setting for 32-bit X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=38a61d34875335717f22e3a0eb1e0d5df4f62def;p=people%2Fpauldu%2Fqemu.git target/ppc: fix cpu_ov setting for 32-bit A bug was introduced in following commit: dc0ad84 target/ppc: update overflow flags for add/sub As for 32-bit ppc target extracting bit 63 for overflow is not correct. Made it dependent on TARGET_LOG_BITS. This had broken booting MacOS 9.2.1 image Reported-by: Mark Cave-Ayland Signed-off-by: Nikunj A Dadhania Signed-off-by: David Gibson Tested-by: Mark Cave-Ayland --- diff --git a/target/ppc/translate.c b/target/ppc/translate.c index b6abc60a00..f40b5a1abf 100644 --- a/target/ppc/translate.c +++ b/target/ppc/translate.c @@ -818,7 +818,7 @@ static inline void gen_op_arith_compute_ov(DisasContext *ctx, TCGv arg0, if (is_isa300(ctx)) { tcg_gen_extract_tl(cpu_ov32, cpu_ov, 31, 1); } - tcg_gen_extract_tl(cpu_ov, cpu_ov, 63, 1); + tcg_gen_extract_tl(cpu_ov, cpu_ov, TARGET_LONG_BITS - 1, 1); } tcg_gen_or_tl(cpu_so, cpu_so, cpu_ov); }