diff options
author | wiz <wiz@pkgsrc.org> | 2006-07-04 06:27:39 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2006-07-04 06:27:39 +0000 |
commit | 3a86f52a2505c695ba017fde747d12343d0a9ebd (patch) | |
tree | 496f5d8e06a1611843f4fcdf92c30e675bdcf2a8 /devel/allegro | |
parent | 0eb0e58db7581e5929a2c70b4c8b0fec829f4b3a (diff) | |
download | pkgsrc-3a86f52a2505c695ba017fde747d12343d0a9ebd.tar.gz |
Better fix for assembler problem from mrg@.
Diffstat (limited to 'devel/allegro')
-rw-r--r-- | devel/allegro/distinfo | 4 | ||||
-rw-r--r-- | devel/allegro/patches/patch-ae | 29 |
2 files changed, 22 insertions, 11 deletions
diff --git a/devel/allegro/distinfo b/devel/allegro/distinfo index 60f9ae2630f..3cfc6c714d7 100644 --- a/devel/allegro/distinfo +++ b/devel/allegro/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.11 2006/07/01 09:59:49 wiz Exp $ +$NetBSD: distinfo,v 1.12 2006/07/04 06:27:39 wiz Exp $ SHA1 (allegro-4.2.0.tar.gz) = 5b4a542c038ee196564f9107de59fe30a8caeaf5 RMD160 (allegro-4.2.0.tar.gz) = e1602ea2f8bc1761be0ee34001e9d77d3a6ea3ff @@ -7,6 +7,6 @@ SHA1 (patch-aa) = 9d821fdcb556c67c70aba0714b7756c54a3861d7 SHA1 (patch-ab) = 839ae8fb1544e967be1923fa1d316df339a120bd SHA1 (patch-ac) = 78f99723b095f460f20e8367fffb443a8f3d6ab6 SHA1 (patch-ad) = 52f694e1b0053cff94c53ee10f603d535eba5fa5 -SHA1 (patch-ae) = df0c1228a83ca94ff93cda211b0d1bd6f87546df +SHA1 (patch-ae) = 32e5ecd77e58bb6926c207c668755043448457f9 SHA1 (patch-ax) = e01206c35df3b951d686c22f3e0ebf6ec2196e20 SHA1 (patch-ay) = 66813e0b018db01a34bf014962e9a4630d8aec0d diff --git a/devel/allegro/patches/patch-ae b/devel/allegro/patches/patch-ae index 67b22da5de3..c44dabb4e1e 100644 --- a/devel/allegro/patches/patch-ae +++ b/devel/allegro/patches/patch-ae @@ -1,12 +1,13 @@ -$NetBSD: patch-ae,v 1.3 2006/07/01 09:59:49 wiz Exp $ +$NetBSD: patch-ae,v 1.4 2006/07/04 06:27:40 wiz Exp $ ---- include/allegro/platform/al386gcc.h.orig 2005-03-09 21:49:46.000000000 +0000 -+++ include/allegro/platform/al386gcc.h -@@ -208,14 +208,13 @@ AL_INLINE(fixed, fixsub, (fixed x, fixed +--- include/allegro/platform/al386gcc.h.orig 2005-03-09 13:49:46.000000000 -0800 ++++ include/allegro/platform/al386gcc.h 2006-07-01 05:39:49.000000000 -0700 +@@ -208,29 +208,29 @@ */ AL_INLINE(fixed, fixmul, (fixed x, fixed y), { - fixed edx __attribute__ ((__unused__)); ++ long edx; fixed result; __PRECALCULATE_CONSTANTS(x / 65536.0 * y) @@ -14,13 +15,16 @@ $NetBSD: patch-ae,v 1.3 2006/07/01 09:59:49 wiz Exp $ __asm__ ( - " movl %2, %%eax ; " - " imull %3 ; " /* do the multiply */ +- " shrdl $16, %%edx, %%eax ; " + " movl %1, %%eax ; " + " imull %2 ; " /* do the multiply */ - " shrdl $16, %%edx, %%eax ; " ++ " shrdl $16, %5, %%eax ; " - " sarl $15, %%edx ; " /* check for overflow */ -@@ -223,14 +222,14 @@ AL_INLINE(fixed, fixmul, (fixed x, fixed - " cmpl $-1, %%edx ; " +- " sarl $15, %%edx ; " /* check for overflow */ ++ " sarl $15, %5 ; " /* check for overflow */ + " jz 0f ; " +- " cmpl $-1, %%edx ; " ++ " cmpl $-1, %5 ; " " je 0f ; " - " movl %5, %%eax ; " /* on overflow, set errno */ @@ -38,7 +42,7 @@ $NetBSD: patch-ae,v 1.3 2006/07/01 09:59:49 wiz Exp $ " jge 0f ; " " negl %%eax ; " -@@ -238,8 +237,7 @@ AL_INLINE(fixed, fixmul, (fixed x, fixed +@@ -238,13 +238,13 @@ " 0: " /* finished */ @@ -48,3 +52,10 @@ $NetBSD: patch-ae,v 1.3 2006/07/01 09:59:49 wiz Exp $ : "mr" (x), /* x and y can be regs or mem */ "mr" (y), + "i" (ERANGE), +- "m" (allegro_errno) ++ "m" (allegro_errno), ++ "d" (edx) + + : "%cc", "memory" /* clobbers flags and errno */ + ); |