r3712 - in glibc-package/branches/eglibc-2.10/debian: . control.in patches patches/alpha
Author: aurel32
Date: 2009-07-27 16:18:50 +0000 (Mon, 27 Jul 2009)
New Revision: 3712
Added:
glibc-package/branches/eglibc-2.10/debian/patches/alpha/submitted-asm-memchr.diff
Modified:
glibc-package/branches/eglibc-2.10/debian/changelog
glibc-package/branches/eglibc-2.10/debian/control
glibc-package/branches/eglibc-2.10/debian/control.in/i386
glibc-package/branches/eglibc-2.10/debian/patches/series
Log:
Merge from trunk r3701-r3711
Modified: glibc-package/branches/eglibc-2.10/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.10/debian/changelog 2009-07-27 16:12:31 UTC (rev 3711)
+++ glibc-package/branches/eglibc-2.10/debian/changelog 2009-07-27 16:18:50 UTC (rev 3712)
@@ -110,7 +110,7 @@
-- Aurelien Jarno <aurel32@debian.org> Sun, 12 Jul 2009 14:58:42 +0200
-eglibc (2.9-23) UNRELEASED; urgency=low
+eglibc (2.9-23) unstable; urgency=low
* debhelper.in/libc.postinst, sysdeps/depflags.pl: remove upgrade code
for pre-etch installations.
@@ -131,8 +131,13 @@
a memory ordering problem in pthread_mutex_{,timed}lock.
* Replace any/submitted-signalfd-eventfd.diff by upstream version
any/cvs-signalfd-eventfd.diff.
+ * alpha/submitted-asm-memchr.diff: new patch to fix broken prefetching
+ in memchr() on alpha.
+ * control.in/i386: replace the Pre-Depends by a Conflicts. Closes:
+ #538807. Update the breaks version of the packages not yet
+ transitioned.
- -- Aurelien Jarno <aurel32@debian.org> Mon, 27 Jul 2009 00:01:57 +0200
+ -- Aurelien Jarno <aurel32@debian.org> Mon, 27 Jul 2009 15:37:54 +0200
eglibc (2.9-22) unstable; urgency=low
Modified: glibc-package/branches/eglibc-2.10/debian/control
===================================================================
--- glibc-package/branches/eglibc-2.10/debian/control 2009-07-27 16:12:31 UTC (rev 3711)
+++ glibc-package/branches/eglibc-2.10/debian/control 2009-07-27 16:18:50 UTC (rev 3712)
@@ -353,7 +353,7 @@
Priority: optional
Depends: libc6 (= ${binary:Version})
Replaces: libc6-dev-i386
-Breaks: fakeroot (<= 1.12.2), gnu-efi (<= 3.0e-2), fakechroot (<= 2.9-1), fglrx-glx-ia32 (<= 1:9-5-1), ia32-libs (<= 2.7), ia32-libs-gtk (<= 2.7), lib32asound2 (<= 1.0.20-2), lib32asound2-dev (<= 1.0.20-2), lib32bz2-1.0 (<= 1.0.5-2), lib32bz2-dev (<= 1.0.5-2), lib32ffi-dev (<= 3.0.7-1), lib32ffi5 (<= 3.0.7-1), lib32g2c0 (<= 1:3.4.6-9), lib32gcc1 (<= 1:4.4.0-6), lib32gfortran3 (<= 4.4.0-6), lib32gmp3 (<= 2:4.3.1+dfsg-1), lib32gmp3-dev (<= 2:4.3.1+dfsg-1), lib32gmpxx4 (<= 2:4.3.1+dfsg-1), lib32gomp1 (<= 4.4.0-6), lib32icu-dev (<= 4.0.1-2), lib32icu38 (<= 4.0.1-2), lib32icu40 (<= 4.0.1-2), lib32mudflap0 (<= 4.4.0-6), lib32ncurses5 (<= 5.7+20090523-1), lib32ncurses5-dev (<= 5.7+20090523-1), lib32ncursesw5 (<= 5.7+20090523-1), lib32ncursesw5-dev (<= 5.7+20090523-1), lib32nss-mdns (<= 0.10-3), lib32objc2 (<= 4.4.0-6), lib32readline5 (<= 5.2-4), lib32readline5-dev (<= 5.2-4), lib32stdc++6 (<= 4.4.0-6), lib32stdc++6-4.4-dbg (<= 4.4.0-6), lib32z1 (<= 1:1.2.3.3.dfsg-13), lib32z1-dev (
<= 1:1.2.3.3.dfsg-13), libc6-dev-i386 (<= 2.9-14), nvidia-glx-ia32 (<= 185.18.14-1), nvidia-libvdpau-ia32 (<= 185.18.14-1)
+Breaks: fakeroot (<= 1.12.2), gnu-efi (<= 3.0e-2), fakechroot (<= 2.9-1), fglrx-glx-ia32 (<= 1:9-5-1), ia32-libs (<= 2.7), ia32-libs-gtk (<= 2.7), lib32asound2 (<= 1.0.20-2), lib32asound2-dev (<= 1.0.20-2), lib32bz2-1.0 (<= 1.0.5-2), lib32bz2-dev (<= 1.0.5-2), lib32ffi-dev (<= 3.0.7-1), lib32ffi5 (<= 3.0.7-1), lib32g2c0 (<= 1:3.4.6-9), lib32gcc1 (<= 1:4.4.0-6), lib32gfortran3 (<= 4.4.0-6), lib32gmp3 (<= 2:4.3.1+dfsg-2), lib32gmp3-dev (<= 2:4.3.1+dfsg-2), lib32gmpxx4 (<= 2:4.3.1+dfsg-2), lib32gomp1 (<= 4.4.0-6), lib32icu-dev (<= 4.0.1-2), lib32icu38 (<= 4.0.1-2), lib32icu40 (<= 4.0.1-2), lib32mudflap0 (<= 4.4.0-6), lib32ncurses5 (<= 5.7+20090523-1), lib32ncurses5-dev (<= 5.7+20090523-1), lib32ncursesw5 (<= 5.7+20090523-1), lib32ncursesw5-dev (<= 5.7+20090523-1), lib32nss-mdns (<= 0.10-3), lib32objc2 (<= 4.4.0-6), lib32readline5 (<= 5.2-4), lib32readline5-dev (<= 5.2-4), lib32stdc++6 (<= 4.4.0-6), lib32stdc++6-4.4-dbg (<= 4.4.0-6), lib32z1 (<= 1:1.2.3.3.dfsg-13), lib32z1-dev (
<= 1:1.2.3.3.dfsg-13), libc6-dev-i386 (<= 2.9-14), nvidia-glx-ia32 (<= 185.18.14-1), nvidia-libvdpau1-ia32 (<= 185.18.14-1)
Description: GNU C Library: 32-bit shared libraries for AMD64
This package includes shared versions of the standard C
library and the standard math library, as well as many others.
@@ -364,7 +364,7 @@
Section: libdevel
Priority: optional
Provides: lib32c-dev
-Pre-Depends: libc6-i386 (>= 2.9-21)
+Conflicts: libc6-i386 (<= 2.9-18)
Depends: libc6-i386 (= ${binary:Version}), libc6-dev (= ${binary:Version})
Recommends: gcc-multilib
Description: GNU C Library: 32-bit development libraries for AMD64
Modified: glibc-package/branches/eglibc-2.10/debian/control.in/i386
===================================================================
--- glibc-package/branches/eglibc-2.10/debian/control.in/i386 2009-07-27 16:12:31 UTC (rev 3711)
+++ glibc-package/branches/eglibc-2.10/debian/control.in/i386 2009-07-27 16:18:50 UTC (rev 3712)
@@ -4,7 +4,7 @@
Priority: optional
Depends: libc6 (= ${binary:Version})
Replaces: libc6-dev-i386
-Breaks: fakeroot (<= 1.12.2), gnu-efi (<= 3.0e-2), fakechroot (<= 2.9-1), fglrx-glx-ia32 (<= 1:9-5-1), ia32-libs (<= 2.7), ia32-libs-gtk (<= 2.7), lib32asound2 (<= 1.0.20-2), lib32asound2-dev (<= 1.0.20-2), lib32bz2-1.0 (<= 1.0.5-2), lib32bz2-dev (<= 1.0.5-2), lib32ffi-dev (<= 3.0.7-1), lib32ffi5 (<= 3.0.7-1), lib32g2c0 (<= 1:3.4.6-9), lib32gcc1 (<= 1:4.4.0-6), lib32gfortran3 (<= 4.4.0-6), lib32gmp3 (<= 2:4.3.1+dfsg-1), lib32gmp3-dev (<= 2:4.3.1+dfsg-1), lib32gmpxx4 (<= 2:4.3.1+dfsg-1), lib32gomp1 (<= 4.4.0-6), lib32icu-dev (<= 4.0.1-2), lib32icu38 (<= 4.0.1-2), lib32icu40 (<= 4.0.1-2), lib32mudflap0 (<= 4.4.0-6), lib32ncurses5 (<= 5.7+20090523-1), lib32ncurses5-dev (<= 5.7+20090523-1), lib32ncursesw5 (<= 5.7+20090523-1), lib32ncursesw5-dev (<= 5.7+20090523-1), lib32nss-mdns (<= 0.10-3), lib32objc2 (<= 4.4.0-6), lib32readline5 (<= 5.2-4), lib32readline5-dev (<= 5.2-4), lib32stdc++6 (<= 4.4.0-6), lib32stdc++6-4.4-dbg (<= 4.4.0-6), lib32z1 (<= 1:1.2.3.3.dfsg-13), lib32z1-dev (
<= 1:1.2.3.3.dfsg-13), libc6-dev-i386 (<= 2.9-14), nvidia-glx-ia32 (<= 185.18.14-1), nvidia-libvdpau-ia32 (<= 185.18.14-1)
+Breaks: fakeroot (<= 1.12.2), gnu-efi (<= 3.0e-2), fakechroot (<= 2.9-1), fglrx-glx-ia32 (<= 1:9-5-1), ia32-libs (<= 2.7), ia32-libs-gtk (<= 2.7), lib32asound2 (<= 1.0.20-2), lib32asound2-dev (<= 1.0.20-2), lib32bz2-1.0 (<= 1.0.5-2), lib32bz2-dev (<= 1.0.5-2), lib32ffi-dev (<= 3.0.7-1), lib32ffi5 (<= 3.0.7-1), lib32g2c0 (<= 1:3.4.6-9), lib32gcc1 (<= 1:4.4.0-6), lib32gfortran3 (<= 4.4.0-6), lib32gmp3 (<= 2:4.3.1+dfsg-2), lib32gmp3-dev (<= 2:4.3.1+dfsg-2), lib32gmpxx4 (<= 2:4.3.1+dfsg-2), lib32gomp1 (<= 4.4.0-6), lib32icu-dev (<= 4.0.1-2), lib32icu38 (<= 4.0.1-2), lib32icu40 (<= 4.0.1-2), lib32mudflap0 (<= 4.4.0-6), lib32ncurses5 (<= 5.7+20090523-1), lib32ncurses5-dev (<= 5.7+20090523-1), lib32ncursesw5 (<= 5.7+20090523-1), lib32ncursesw5-dev (<= 5.7+20090523-1), lib32nss-mdns (<= 0.10-3), lib32objc2 (<= 4.4.0-6), lib32readline5 (<= 5.2-4), lib32readline5-dev (<= 5.2-4), lib32stdc++6 (<= 4.4.0-6), lib32stdc++6-4.4-dbg (<= 4.4.0-6), lib32z1 (<= 1:1.2.3.3.dfsg-13), lib32z1-dev (
<= 1:1.2.3.3.dfsg-13), libc6-dev-i386 (<= 2.9-14), nvidia-glx-ia32 (<= 185.18.14-1), nvidia-libvdpau1-ia32 (<= 185.18.14-1)
Description: GNU C Library: 32-bit shared libraries for AMD64
This package includes shared versions of the standard C
library and the standard math library, as well as many others.
@@ -15,7 +15,7 @@
Section: libdevel
Priority: optional
Provides: lib32c-dev
-Pre-Depends: libc6-i386 (>= 2.9-21)
+Conflicts: libc6-i386 (<= 2.9-18)
Depends: libc6-i386 (= ${binary:Version}), libc6-dev (= ${binary:Version})
Recommends: gcc-multilib
Description: GNU C Library: 32-bit development libraries for AMD64
Added: glibc-package/branches/eglibc-2.10/debian/patches/alpha/submitted-asm-memchr.diff
===================================================================
--- glibc-package/branches/eglibc-2.10/debian/patches/alpha/submitted-asm-memchr.diff (rev 0)
+++ glibc-package/branches/eglibc-2.10/debian/patches/alpha/submitted-asm-memchr.diff 2009-07-27 16:18:50 UTC (rev 3712)
@@ -0,0 +1,117 @@
+2009-07-27 Aurelien Jarno <aurelien@aurel32.net>
+
+ * sysdeps/alpha/memchr.S: Use prefetch load.
+ * sysdeps/alpha/alphaev6/memchr.S: Likewise.
+
+--- a/sysdeps/alpha/alphaev6/memchr.S
++++ b/sysdeps/alpha/alphaev6/memchr.S
+@@ -127,7 +127,7 @@ $first_quad:
+ cmpbge $31, $1, $2 # E :
+ bne $2, $found_it # U :
+ # At least one byte left to process.
+- ldq $1, 8($0) # L :
++ ldq $31, 8($0) # L :
+ subq $5, 1, $18 # E : U L U L
+
+ addq $0, 8, $0 # E :
+@@ -143,38 +143,38 @@ $first_quad:
+ and $4, 8, $4 # E : odd number of quads?
+ bne $4, $odd_quad_count # U :
+ # At least three quads remain to be accessed
+- mov $1, $4 # E : L U L U : move prefetched value to correct reg
++ nop # E : L U L U : move prefetched value to correct reg
+
+ .align 4
+ $unrolled_loop:
+- ldq $1, 8($0) # L : prefetch $1
+- xor $17, $4, $2 # E :
+- cmpbge $31, $2, $2 # E :
+- bne $2, $found_it # U : U L U L
++ ldq $1, 0($0) # L : load quad
++ xor $17, $1, $2 # E :
++ ldq $31, 8($0) # L : prefetch next quad
++ cmpbge $31, $2, $2 # E : U L U L
+
++ bne $2, $found_it # U :
+ addq $0, 8, $0 # E :
+ nop # E :
+ nop # E :
+- nop # E :
+
+ $odd_quad_count:
++ ldq $1, 0($0) # L : load quad
+ xor $17, $1, $2 # E :
+- ldq $4, 8($0) # L : prefetch $4
++ ldq $31, 8($0) # L : prefetch $4
+ cmpbge $31, $2, $2 # E :
+- addq $0, 8, $6 # E :
+
++ addq $0, 8, $6 # E :
+ bne $2, $found_it # U :
+ cmpult $6, $18, $6 # E :
+ addq $0, 8, $0 # E :
+- nop # E :
+
+ bne $6, $unrolled_loop # U :
+- mov $4, $1 # E : move prefetched value into $1
+ nop # E :
+ nop # E :
+-
+-$final: subq $5, $0, $18 # E : $18 <- number of bytes left to do
+ nop # E :
++
++$final: ldq $1, 0($0) # L : load last quad
++ subq $5, $0, $18 # E : $18 <- number of bytes left to do
+ nop # E :
+ bne $18, $last_quad # U :
+
+--- a/sysdeps/alpha/memchr.S
++++ b/sysdeps/alpha/memchr.S
+@@ -119,7 +119,7 @@ $first_quad:
+
+ # At least one byte left to process.
+
+- ldq t0, 8(v0) # e0 :
++ ldq zero, 8(v0) # e0 : prefetch next quad
+ subq t4, 1, a2 # .. e1 :
+ addq v0, 8, v0 #-e0 :
+
+@@ -138,19 +138,19 @@ $first_quad:
+
+ # At least three quads remain to be accessed
+
+- mov t0, t3 # e0 : move prefetched value to correct reg
+-
+ .align 4
+ $unrolled_loop:
+- ldq t0, 8(v0) #-e0 : prefetch t0
+- xor a1, t3, t1 # .. e1 :
+- cmpbge zero, t1, t1 # e0 :
+- bne t1, $found_it # .. e1 :
++ ldq t0, 0(v0) # e0 : load quad
++ xor a1, t0, t1 # .. e1 :
++ ldq zero, 8(v0) # e0 : prefetch next quad
++ cmpbge zero, t1, t1 # .. e1:
++ bne t1, $found_it # e0 :
+
+- addq v0, 8, v0 #-e0 :
++ addq v0, 8, v0 # e1 :
+ $odd_quad_count:
++ ldq t0, 0(v0) # e0 : load quad
+ xor a1, t0, t1 # .. e1 :
+- ldq t3, 8(v0) # e0 : prefetch t3
++ ldq zero, 8(v0) # e0 : prefetch next quad
+ cmpbge zero, t1, t1 # .. e1 :
+ addq v0, 8, t5 #-e0 :
+ bne t1, $found_it # .. e1 :
+@@ -159,8 +159,8 @@ $odd_quad_count:
+ addq v0, 8, v0 # .. e1 :
+ bne t5, $unrolled_loop #-e1 :
+
+- mov t3, t0 # e0 : move prefetched value into t0
+-$final: subq t4, v0, a2 # .. e1 : a2 <- number of bytes left to do
++$final: ldq t0, 0(v0) # e0 : load last quad
++ subq t4, v0, a2 # .. e1 : a2 <- number of bytes left to do
+ bne a2, $last_quad # e1 :
+
+ $not_found:
Modified: glibc-package/branches/eglibc-2.10/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.10/debian/patches/series 2009-07-27 16:12:31 UTC (rev 3711)
+++ glibc-package/branches/eglibc-2.10/debian/patches/series 2009-07-27 16:18:50 UTC (rev 3712)
@@ -49,6 +49,7 @@
alpha/submitted-PTR_MANGLE.diff
alpha/submitted-procfs_h.diff
alpha/submitted-rtld-fPIC.diff
+alpha/submitted-asm-memchr.diff
amd64/local-biarch.diff
amd64/local-clone.diff
Reply to: