On 13/03/17 09:31, Nikunj A Dadhania wrote: > 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 <mark.cave-ayl...@ilande.co.uk> > Signed-off-by: Nikunj A Dadhania <nik...@linux.vnet.ibm.com> > --- > target/ppc/translate.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/target/ppc/translate.c b/target/ppc/translate.c > index b6abc60..f40b5a1 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); > } >
Hi Nikunj, I can confirm that this patch fixes the segfault for me - thanks! Tested-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk> However even with this fix in place, I'm still seeing strange horizontal artifacts on the screen as demonstrated here: https://www.ilande.co.uk/tmp/qemu/macos9-stripe.png With the patch above I'll try bisecting again later today to try and understand where these lines are coming from. So far I've spotted them in MacOS 9 and OS X during tests... ATB, Mark.