Am 08.04.2015 um 21:57 schrieb Peter Maydell: > Commit 951c6300f7 out-of-lined the 32-bit-host versions of > tcg_gen_{ld,st}_i64, but in the process it inadvertently changed > an #ifdef HOST_WORDS_BIGENDIAN to #ifdef TCG_TARGET_WORDS_BIGENDIAN. > Since the latter doesn't get defined anywhere this meant we always > took the "LE host" codepath, and stored the two halves of the value > in the wrong order on BE hosts. This typically breaks any 64-bit > guest on a 32-bit BE host completely, and will have possibly more > subtle effects even for 32-bit guests. > > Switch the ifdef back to HOST_WORDS_BIGENDIAN.
Doh, not the first time we've screwed up such an ifdef... > > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > --- > I checked that with this fix we no longer fail catastrophically > on the first insn of the x86-64 BIOS image, but since I don't have > a convenient way to display the graphical screen from the PPC > box I have access to I didn't check that it continued to do > sensible things thereafter. Andreas, could you confirm this fixes > the breakage you're seeing? It fixes the observed make check breakage on ppc. i586 still works, too. Tested-by: Andreas Färber <afaer...@suse.de> I'll check VNC tomorrow. I'm assuming this is for-2.3 material. Thanks a lot, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg)