summaryrefslogtreecommitdiff
path: root/devel/libjit
diff options
context:
space:
mode:
authorjoerg <joerg@pkgsrc.org>2006-01-09 19:00:43 +0000
committerjoerg <joerg@pkgsrc.org>2006-01-09 19:00:43 +0000
commit3ff476371165c767832ece1c043702b619e6225b (patch)
treebce28125031a7337c8fb1701885d3511f6db5ea1 /devel/libjit
parent11c2c3566739962ecd3a920e9ce128791e8e9df1 (diff)
downloadpkgsrc-3ff476371165c767832ece1c043702b619e6225b.tar.gz
Fix GCC 3.4+: Don't clobber %ebx on IA32.
Diffstat (limited to 'devel/libjit')
-rw-r--r--devel/libjit/distinfo3
-rw-r--r--devel/libjit/patches/patch-aa22
2 files changed, 24 insertions, 1 deletions
diff --git a/devel/libjit/distinfo b/devel/libjit/distinfo
index e3a8b9f3c38..6320882353b 100644
--- a/devel/libjit/distinfo
+++ b/devel/libjit/distinfo
@@ -1,5 +1,6 @@
-$NetBSD: distinfo,v 1.3 2005/10/22 15:51:02 rillig Exp $
+$NetBSD: distinfo,v 1.4 2006/01/09 19:00:43 joerg Exp $
SHA1 (libjit-0.0.4.tar.gz) = 663055ee5bb600e9dfd28c03456a66bf2b66811b
RMD160 (libjit-0.0.4.tar.gz) = e8ff27b3f1e0dbff0ed6cc1d5fd2a5cc4a74f1fd
Size (libjit-0.0.4.tar.gz) = 580278 bytes
+SHA1 (patch-aa) = e5c58111aad14e4ead390fa55630b06cdf2711da
diff --git a/devel/libjit/patches/patch-aa b/devel/libjit/patches/patch-aa
new file mode 100644
index 00000000000..83b2ffdbffc
--- /dev/null
+++ b/devel/libjit/patches/patch-aa
@@ -0,0 +1,22 @@
+$NetBSD: patch-aa,v 1.3 2006/01/09 19:00:43 joerg Exp $
+
+--- jit/jit-cpuid-x86.c.orig 2006-01-09 18:53:59.000000000 +0000
++++ jit/jit-cpuid-x86.c
+@@ -57,6 +57,7 @@ static void cpuid_query(unsigned int ind
+ {
+ #if defined(__GNUC__)
+ __asm__ __volatile__ (
++ "\tpushl %%ebx\n"
+ "\tmovl %0, %%eax\n"
+ "\txorl %%ebx, %%ebx\n"
+ "\txorl %%ecx, %%ecx\n"
+@@ -68,7 +69,8 @@ static void cpuid_query(unsigned int ind
+ "\tmovl %%ebx, 4(%%esi)\n"
+ "\tmovl %%ecx, 8(%%esi)\n"
+ "\tmovl %%edx, 12(%%esi)\n"
+- : : "m"(index), "m"(info) : "eax", "ebx", "ecx", "edx", "esi"
++ "\tpopl %%ebx\n"
++ : : "m"(index), "m"(info) : "eax", "ecx", "edx", "esi"
+ );
+ #endif
+ }