summaryrefslogtreecommitdiff
path: root/emulators/qemu
diff options
context:
space:
mode:
authordbj <dbj>2005-11-04 21:10:42 +0000
committerdbj <dbj>2005-11-04 21:10:42 +0000
commit1746ded044efa18b690a73c39699892858492627 (patch)
tree92c18d0d207934ffb33b18d9ec99b057f9e71641 /emulators/qemu
parentf2475c12e1415bbe82fcb577dcd0cd2fe06eeeb5 (diff)
downloadpkgsrc-1746ded044efa18b690a73c39699892858492627.tar.gz
fix to i386 div64 taken from qemu cvs
bump PKGREVISION
Diffstat (limited to 'emulators/qemu')
-rw-r--r--emulators/qemu/Makefile4
-rw-r--r--emulators/qemu/distinfo3
-rw-r--r--emulators/qemu/patches/patch-ay24
3 files changed, 28 insertions, 3 deletions
diff --git a/emulators/qemu/Makefile b/emulators/qemu/Makefile
index b5425d9d751..0b1ac7747e4 100644
--- a/emulators/qemu/Makefile
+++ b/emulators/qemu/Makefile
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.19 2005/11/04 21:05:51 dbj Exp $
+# $NetBSD: Makefile,v 1.20 2005/11/04 21:10:42 dbj Exp $
#
DISTNAME= qemu-0.7.2
-PKGREVISION= 1
+PKGREVISION= 2
CATEGORIES= emulators
MASTER_SITES= http://fabrice.bellard.free.fr/qemu/
diff --git a/emulators/qemu/distinfo b/emulators/qemu/distinfo
index e6fe1368eee..30d49c7e2ce 100644
--- a/emulators/qemu/distinfo
+++ b/emulators/qemu/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.13 2005/11/04 21:09:15 dbj Exp $
+$NetBSD: distinfo,v 1.14 2005/11/04 21:10:42 dbj Exp $
SHA1 (qemu-0.7.2.tar.gz) = 4daeccb57448eacc444152f30b5d84dfcca89dfe
RMD160 (qemu-0.7.2.tar.gz) = 1d2dcc8f43ff4b4b9aa045c64e38c9a10140b13e
@@ -21,3 +21,4 @@ SHA1 (patch-au) = aa2712c382a67beef9225e710e7735ba15995a41
SHA1 (patch-av) = bd88088f41b6b3c256eec933e5f267fc432e58fa
SHA1 (patch-aw) = 6299964fb3a747e8f5dfe4354e66722030ee9a75
SHA1 (patch-ax) = b6eb66859e3ab318ec388d9f33201c27f34677ca
+SHA1 (patch-ay) = 2f2393dbc706b490e3faf05a243a9aa21e634af6
diff --git a/emulators/qemu/patches/patch-ay b/emulators/qemu/patches/patch-ay
new file mode 100644
index 00000000000..d50ab3d4136
--- /dev/null
+++ b/emulators/qemu/patches/patch-ay
@@ -0,0 +1,24 @@
+$NetBSD: patch-ay,v 1.1 2005/11/04 21:10:42 dbj Exp $
+
+--- target-i386/helper.c.orig 2005-09-04 13:11:31.000000000 -0400
++++ target-i386/helper.c
+@@ -3261,7 +3261,7 @@ static void imul64(uint64_t *plow, uint6
+ static int div64(uint64_t *plow, uint64_t *phigh, uint64_t b)
+ {
+ uint64_t q, r, a1, a0;
+- int i, qb;
++ int i, qb, ab;
+
+ a0 = *plow;
+ a1 = *phigh;
+@@ -3275,8 +3275,9 @@ static int div64(uint64_t *plow, uint64_
+ return 1;
+ /* XXX: use a better algorithm */
+ for(i = 0; i < 64; i++) {
++ ab = a1 >> 63;
+ a1 = (a1 << 1) | (a0 >> 63);
+- if (a1 >= b) {
++ if (ab || a1 >= b) {
+ a1 -= b;
+ qb = 1;
+ } else {