diff options
author | Aurelien Jarno <aurelien@aurel32.net> | 2010-12-25 23:25:47 +0100 |
---|---|---|
committer | Blue Swirl <blauwirbel@gmail.com> | 2010-12-28 18:44:51 +0000 |
commit | 0fcec41eec0432c77645b4a407d3a3e030c4abc4 (patch) | |
tree | 573a6da62c47c03d8ed26a4867a093ed9805071c /target-sparc/helper.h | |
parent | 818c2e1b9777599d333855330d94050b3432c8b7 (diff) | |
download | qemu-0fcec41eec0432c77645b4a407d3a3e030c4abc4.zip qemu-0fcec41eec0432c77645b4a407d3a3e030c4abc4.tar.gz qemu-0fcec41eec0432c77645b4a407d3a3e030c4abc4.tar.bz2 |
target-sparc: fix udiv(cc) and sdiv(cc)
Since commit 5a4bb580cdb10b066f9fd67658b31cac4a4ea5e5, Xorg crashes on
a Debian Etch image. The commit itself is fine, but it triggers a bug
due to wrong computation of flags for udiv(cc) and sdiv(cc).
This patch only compute cc_src2 for the cc version of udiv/sdiv. It
also moves the update of cc_dst and cc_op to the helper, as it is
faster doing it here when there is already an helper.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'target-sparc/helper.h')
-rw-r--r-- | target-sparc/helper.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/target-sparc/helper.h b/target-sparc/helper.h index 6f103e7..e6d82f9 100644 --- a/target-sparc/helper.h +++ b/target-sparc/helper.h @@ -37,7 +37,9 @@ DEF_HELPER_0(save, void) DEF_HELPER_0(restore, void) DEF_HELPER_1(flush, void, tl) DEF_HELPER_2(udiv, tl, tl, tl) +DEF_HELPER_2(udiv_cc, tl, tl, tl) DEF_HELPER_2(sdiv, tl, tl, tl) +DEF_HELPER_2(sdiv_cc, tl, tl, tl) DEF_HELPER_2(stdf, void, tl, int) DEF_HELPER_2(lddf, void, tl, int) DEF_HELPER_2(ldqf, void, tl, int) |