patches/glibc/ports-2.12.1/460-alpha-fix-gcc-4.1-warnings.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 18:28:10 2011 +0200 (2011-08-02)
changeset 2590 b64cfb67944e
permissions -rw-r--r--
scripts/functions: svn retrieval first tries the mirror for tarballs

The svn download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via svn.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard svn retrieval will kick in.

Reported-by: ANDY KENNEDY <ANDY.KENNEDY@adtran.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@2437
     1
2006-05-30  Falk Hueffner <falk@debian.org>
yann@2437
     2
yann@2437
     3
	* sysdeps/unix/sysv/linux/alpha/ioperm.c: force the architecture
yann@2437
     4
	  to ev6 in assembly code.
yann@2437
     5
yann@2437
     6
{standard input}: Assembler messages:
yann@2437
     7
{standard input}:341: Error: macro requires $at register while noat in effect
yann@2437
     8
{standard input}:374: Error: macro requires $at register while noat in effect
yann@2437
     9
{standard input}:438: Error: macro requires $at register while noat in effect
yann@2437
    10
{standard input}:471: Error: macro requires $at register while noat in effect
yann@2437
    11
make[3]: *** [/tmp/buildd/glibc-2.3.6/build-tree/alpha-libc/misc/ioperm.o] Error 1
yann@2437
    12
yann@2437
    13
Hrm. gcc puts .arch ev4 into the .s, and this overrides -mev6 for as.
yann@2437
    14
I cannot really think of anything better than
yann@2437
    15
yann@2437
    16
 ports/sysdeps/unix/sysv/linux/alpha/ioperm.c |    8 ++++----
yann@2437
    17
 1 file changed, 4 insertions(+), 4 deletions(-)
yann@2437
    18
yann@2437
    19
diff -durN glibc-2.12.1.orig/glibc-ports-2.12.1/sysdeps/unix/sysv/linux/alpha/ioperm.c glibc-2.12.1/glibc-ports-2.12.1/sysdeps/unix/sysv/linux/alpha/ioperm.c
yann@2437
    20
--- glibc-2.12.1.orig/glibc-ports-2.12.1/sysdeps/unix/sysv/linux/alpha/ioperm.c	2009-05-16 10:36:20.000000000 +0200
yann@2437
    21
+++ glibc-2.12.1/glibc-ports-2.12.1/sysdeps/unix/sysv/linux/alpha/ioperm.c	2009-11-13 00:50:57.000000000 +0100
yann@2437
    22
@@ -178,13 +178,13 @@
yann@2437
    23
 static inline void
yann@2437
    24
 stb_mb(unsigned char val, unsigned long addr)
yann@2437
    25
 {
yann@2437
    26
-  __asm__("stb %1,%0; mb" : "=m"(*(vucp)addr) : "r"(val));
yann@2437
    27
+  __asm__(".arch ev6; stb %1,%0; mb" : "=m"(*(vucp)addr) : "r"(val));
yann@2437
    28
 }
yann@2437
    29
 
yann@2437
    30
 static inline void
yann@2437
    31
 stw_mb(unsigned short val, unsigned long addr)
yann@2437
    32
 {
yann@2437
    33
-  __asm__("stw %1,%0; mb" : "=m"(*(vusp)addr) : "r"(val));
yann@2437
    34
+  __asm__(".arch ev6; stw %1,%0; mb" : "=m"(*(vusp)addr) : "r"(val));
yann@2437
    35
 }
yann@2437
    36
 
yann@2437
    37
 static inline void
yann@2437
    38
@@ -356,7 +356,7 @@
yann@2437
    39
   unsigned long int addr = dense_port_to_cpu_addr (port);
yann@2437
    40
   unsigned char r;
yann@2437
    41
 
yann@2437
    42
-  __asm__ ("ldbu %0,%1" : "=r"(r) : "m"(*(vucp)addr));
yann@2437
    43
+  __asm__ (".arch ev6; ldbu %0,%1" : "=r"(r) : "m"(*(vucp)addr));
yann@2437
    44
   return r;
yann@2437
    45
 }
yann@2437
    46
 
yann@2437
    47
@@ -366,7 +366,7 @@
yann@2437
    48
   unsigned long int addr = dense_port_to_cpu_addr (port);
yann@2437
    49
   unsigned short r;
yann@2437
    50
 
yann@2437
    51
-  __asm__ ("ldwu %0,%1" : "=r"(r) : "m"(*(vusp)addr));
yann@2437
    52
+  __asm__ (".arch ev6; ldwu %0,%1" : "=r"(r) : "m"(*(vusp)addr));
yann@2437
    53
   return r;
yann@2437
    54
 }
yann@2437
    55
 
yann@2437
    56
diff -durN glibc-2.12.1.orig/ports/sysdeps/unix/sysv/linux/alpha/ioperm.c glibc-2.12.1/ports/sysdeps/unix/sysv/linux/alpha/ioperm.c