summaryrefslogtreecommitdiff
path: root/target-sparc/helper.h
diff options
context:
space:
mode:
authorAurelien Jarno <aurelien@aurel32.net>2010-12-25 23:25:47 +0100
committerBlue Swirl <blauwirbel@gmail.com>2010-12-28 18:44:51 +0000
commit0fcec41eec0432c77645b4a407d3a3e030c4abc4 (patch)
tree573a6da62c47c03d8ed26a4867a093ed9805071c /target-sparc/helper.h
parent818c2e1b9777599d333855330d94050b3432c8b7 (diff)
downloadqemu-0fcec41eec0432c77645b4a407d3a3e030c4abc4.tar.gz
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.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/target-sparc/helper.h b/target-sparc/helper.h
index 6f103e7697..e6d82f9eab 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)