[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC] TCG new op: setcond
From: |
Laurent Desnogues |
Subject: |
Re: [Qemu-devel] [RFC] TCG new op: setcond |
Date: |
Wed, 5 Nov 2008 17:11:43 +0100 |
Hello,
Here is an updated patch for setcond.
Changes since the previous patch:
- support TCG i386 for 32 and 64 bit variants
- support TCG x86_64 support for 32 and 64 bit variants
- fix for x86_64 prefix output
- fix for input/output overlap
- use setcond for Alpha cmp instructions
- add setcondi
Digging into x86 is certainly not a pleasant experience for me,
especially as I have no experience on it. So this patch may
contain bugs and overlooks; note however my changes were
tested on x86_64 and i386 platforms with test programs for
Alpha and ARM.
What remains to be done:
- document setcond in tcg/README
- implement it in all backends (ARM, PPC, PPC64, SPARC)
- use it at least once in every frontend (cris, i386, m68k, MIPS,
PPC, sh4, SPARC)
- provide tests.
Also there's a choice to be done between return 1 if the test
succeeds or -1.
I am concerned by 64 bit setcond on the register-started i386.
Isn't there a high risk the register allocator will run out of
registers? If it's so, I guess it should be rewritten with a helper.
Thanks to Paul and Avi for their comments and uncovering silly
bugs and overlooks.
Comments and criticisms welcome as usual :-)
Laurent
Signed-off-by: Laurent Desnogues <address@hidden>
setcond-2.patch.bz2
Description: BZip2 compressed data