On 8 April 2015 at 19:03, Andreas Färber <afaer...@suse.de> wrote: > I've resorted to setting up a ppc chroot on ppc64, and I can reproduce > that qemu-system-i386 shows SeaBIOS okay, but qemu-system-x86_64 > immediately aborts with the quoted error.
Yeah, I can repro on the gcc compile farm's fedora ppc64 box. (I didn't need to use a chroot, it was enough to pass configure "-cpu ppc" and then it uses -m32 in ldflags and cflags.) Looks like we fail on the first insn: 0x00000000fffffff0: ljmp $0xf000,$0xe05b should take us to 0x00000000000fe05b: cmpl $0x0,%cs:0x6ac8 but on ppc32 we end up at: 0x000fe05b00000000: add %al,(%bx,%si) and then spend a long time galloping through page upon page of "add %al,(%bx,%si)" before finally falling off the end and aborting. Looking at the generated TCG, I suspect the problem is that tcg_gen_st_i64() isn't writing the two i32 input values in the right order for the case where the host is a 32-bit bigendian system... -- PMM