patches/glibc/ports-2.12.1/460-alpha-fix-gcc-4.1-warnings.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Tue Jul 31 22:27:29 2012 +0200 (2012-07-31)
changeset 3018 7776e8369284
permissions -rw-r--r--
complibs/cloog: create missing m4 dir

Because we now patch configure.in and configure, the Makefile quicks
in a re-build rule as the source files are now more recent than the
bundled generated files, and that fails because the m4 directory
is missing, although on some systems where aclocal is not installed,
the re-build rule does nothing (except a warning).

Always create tht directory.

Reported-by: Per Arnold Blaasmo <per-arnold.blaasmo@atmel.com>
[Also thanks to Thomas De Schampheleire <patrickdepinguin@gmail.com>
for some digging works on this issue]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.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