Hi Paul, I just had a short look at your hand written code generator (https://nowt.dyndns.org/cgi-bin/svn-qop-diff) and did some quick tests with the i386-softmmu target on my iMac G5 (Mac OS 10.4.3). Before I could successfully compile the code, I needed to apply a small fix:
--- host-ppc/qop-code.h +++ host-ppc/qop-code.h @@ -243,8 +243,8 @@ ENCODE_D(14, dest, 0, 0); \ QOP_END -DO_SETcc32(lt, 0, 0); -DO_SETcc32(le, 1, 1); +DO_SETcc32(ltu, 0, 0) +DO_SETcc32(leu, 1, 1) #define DO_JMPcc32(name, negate, cond) \ QOP_START(jmp_##name##32) \ --- host-ppc/qop-host.def +++ host-ppc/qop-host.def @@ -33,8 +33,8 @@ DEF2(jmp_ns32, HRC_G, 0) DEF1(jmp, 0) -DEF3(set_lt32, HRC_G, HRC_G, HRC_G) -DEF3(set_le32, HRC_G, HRC_G, HRC_G) +DEF3(set_ltu32, HRC_G, HRC_G, HRC_G) +DEF3(set_leu32, HRC_G, HRC_G, HRC_G) DEF2(ld8s32, HRC_G, HRC_G) DEF2(ld8u32, HRC_G, HRC_G) I hope this helps you. Before, GCC returned with an error: gcc-3.3 -Wall -O2 -g -fno-strict-aliasing -D__powerpc__ -I. -I/build/qemu-pb/target-i386 -I/build/qemu-pb -I/build/qemu-pb/host-ppc -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/build/qemu-pb/fpu -DHAS_AUDIO -I/build/qemu-pb/slirp -c -o translate-qop.o /build/qemu-pb/translate-qop.c In file included from /build/qemu-pb/translate-qop.c:59: /build/qemu-pb/host-ppc/qop-code.h: In function `dyngen_qop': /build/qemu-pb/host-ppc/qop-code.h:246: error: `INDEX_op_set_lt32' undeclared (first use in this function) /build/qemu-pb/host-ppc/qop-code.h:246: error: (Each undeclared identifier is reported only once /build/qemu-pb/host-ppc/qop-code.h:246: error: for each function it appears in.) /build/qemu-pb/host-ppc/qop-code.h:247: error: `INDEX_op_set_le32' undeclared (first use in this function) make[1]: *** [translate-qop.o] Error 1 make: *** [all] Error 1 Although benchmarking with LZMA (7-Zip) on Win98SE showed a speed improve of about 10%, the time it ran (taken with an external stopwatch) was almost the same. Seems that QEMU's "internal clock" ticks a bit slower with your patch. I'm just a bit curious to know, when the i386 target will benefit from your new code, and if it will be ready to be included into main CVS soon. Thanks for your work! Jo. _______________________________________________ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel