rpms/kernel/devel linux-2.6-ppc32-ucmpdi2.patch, 1.2, 1.3 kernel.spec, 1.311, 1.312
Dave Jones (davej)
fedora-extras-commits at redhat.com
Fri Dec 14 05:51:34 UTC 2007
Author: davej
Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv19984
Modified Files:
kernel.spec
Added Files:
linux-2.6-ppc32-ucmpdi2.patch
Log Message:
add back ucmpdi2 patch, it's needed for nouveau
linux-2.6-ppc32-ucmpdi2.patch:
Index: linux-2.6-ppc32-ucmpdi2.patch
===================================================================
RCS file: linux-2.6-ppc32-ucmpdi2.patch
diff -N linux-2.6-ppc32-ucmpdi2.patch
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ linux-2.6-ppc32-ucmpdi2.patch 14 Dec 2007 05:51:14 -0000 1.3
@@ -0,0 +1,49 @@
+Without this diff, nouveau doesn't build on ppc32.
+It works around a gcc bug. (PR #25724 / #21237)
+
+Hopefully we can just drop this when we move to gcc4.3
+
+--- linux-2.6.19.ppc/arch/powerpc/kernel/misc_32.S~ 2006-11-29 21:57:37.000000000 +0000
++++ linux-2.6.19.ppc/arch/powerpc/kernel/misc_32.S 2006-12-17 12:19:48.000000000 +0000
+@@ -728,6 +728,27 @@ _GLOBAL(__lshrdi3)
+ or r4,r4,r7 # LSW |= t2
+ blr
+
++/*
++ * __ucmpdi2: 64-bit comparison
++ *
++ * R3/R4 has 64 bit value A
++ * R5/R6 has 64 bit value B
++ * result in R3: 0 for A < B
++ * 1 for A == B
++ * 2 for A > B
++ */
++_GLOBAL(__ucmpdi2)
++ cmplw r7,r3,r5 # compare high words
++ li r3,0
++ blt r7,2f # a < b ... return 0
++ bgt r7,1f # a > b ... return 2
++ cmplw r6,r4,r6 # compare low words
++ blt r6,2f # a < b ... return 0
++ li r3,1
++ ble r6,2f # a = b ... return 1
++1: li r3,2
++2: blr
++
+ _GLOBAL(abs)
+ srawi r4,r3,31
+ xor r3,r3,r4
+--- linux-2.6.19.ppc/arch/powerpc/kernel/ppc_ksyms.c~ 2006-12-15 17:19:56.000000000 +0000
++++ linux-2.6.19.ppc/arch/powerpc/kernel/ppc_ksyms.c 2006-12-17 12:16:54.000000000 +0000
+@@ -161,9 +161,11 @@ EXPORT_SYMBOL(to_tm);
+ long long __ashrdi3(long long, int);
+ long long __ashldi3(long long, int);
+ long long __lshrdi3(long long, int);
++int __ucmpdi2(uint64_t, uint64_t);
+ EXPORT_SYMBOL(__ashrdi3);
+ EXPORT_SYMBOL(__ashldi3);
+ EXPORT_SYMBOL(__lshrdi3);
++EXPORT_SYMBOL(__ucmpdi2);
+ #endif
+
+ EXPORT_SYMBOL(memcpy);
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.311
retrieving revision 1.312
diff -u -r1.311 -r1.312
--- kernel.spec 13 Dec 2007 23:00:07 -0000 1.311
+++ kernel.spec 14 Dec 2007 05:51:14 -0000 1.312
@@ -641,6 +641,7 @@
Patch1800: linux-2.6-agp-mm.patch
# nouveau + drm fixes
Patch1802: nouveau-drm.patch
+Patch1803: linux-2.6-ppc32-ucmpdi2.patch
# Work around E1000 corrupt EEPROM problem.
Patch2000: linux-2.6-e1000-corrupt-eeprom-checksum.patch
@@ -1153,6 +1154,7 @@
ApplyPatch linux-2.6-drm-mm.patch
# Nouveau DRM + drm fixes
ApplyPatch nouveau-drm.patch
+ApplyPatch linux-2.6-ppc32-ucmpdi2.patch
# ---------- below all scheduled for 2.6.24 -----------------
More information about the fedora-extras-commits
mailing list