summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-libs/nativebiginteger/files/nativebiginteger-0.6.4-asmfix.patch')
-rw-r--r--net-libs/nativebiginteger/files/nativebiginteger-0.6.4-asmfix.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/net-libs/nativebiginteger/files/nativebiginteger-0.6.4-asmfix.patch b/net-libs/nativebiginteger/files/nativebiginteger-0.6.4-asmfix.patch
new file mode 100644
index 000000000000..04cfa599413a
--- /dev/null
+++ b/net-libs/nativebiginteger/files/nativebiginteger-0.6.4-asmfix.patch
@@ -0,0 +1,31 @@
+--- jcpuid/src/jcpuid.c 2008-10-06 09:44:53.000000000 -0400
++++ jcpuid/src/jcpuid.c.new2 2010-12-27 09:41:53.000000000 -0500
+@@ -19,6 +19,7 @@
+ mov d, edx
+ }
+ #else
++ #ifdef _LP64
+ //Use GCC assembler notation
+ asm
+ (
+@@ -29,6 +30,20 @@
+ "=d"(d)
+ :"a"(iFunction)
+ );
++ #elif defined(__i386__)
++ asm
++ (
++ "pushl %%ebx\n\t"
++ "cpuid\n\t"
++ "movl %%ebx, %%edi\n\t"
++ "popl %%ebx"
++ : "=a" (a),
++ "=D" (b),
++ "=c" (c),
++ "=d" (d)
++ :"a"(iFunction)
++ );
++ #endif
+ #endif
+ return (*env)->NewObject(env, clsResult,constructor,a,b,c,d);
+ }