patches/glibc/ports-2.10.1/620-r10k-workarounds.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jan 17 23:06:02 2010 +0100 (2010-01-17)
changeset 1740 c57458bb354d
permissions -rw-r--r--
configure: do not require hg when configuring in an hg clone

When configuring in an hg clone, we need hg to compute the version string.
It can happen that users do not have Mercurial (eg. if they got a snapshot
rather that they did a full clone). In this case, we can still run, of
course, so simply fill the version string with a sufficiently explicit
value, that does not require hg. The date is a good candidate.
yann@1625
     1
ripped from Debian
yann@1625
     2
yann@1625
     3
the R10000 needs an LL/SC Workaround. If not applied all R10k before
yann@1625
     4
rev 3.0 misbehave on atomic ops and rev 2.6 and lower (e.g. SGI IP28)
yann@1625
     5
die after very few seconds with a deadlock due to even more erratas.
yann@1625
     6
yann@1625
     7
 ports/sysdeps/mips/bits/atomic.h |   12 ++++++------
yann@1625
     8
 1 file changed, 6 insertions(+), 6 deletions(-)
yann@1625
     9
yann@1625
    10
diff -durN glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/mips/bits/atomic.h glibc-2.10.1/glibc-ports-2.10.1/sysdeps/mips/bits/atomic.h
yann@1625
    11
--- glibc-2.10.1.orig/glibc-ports-2.10.1/sysdeps/mips/bits/atomic.h	2009-05-16 10:36:20.000000000 +0200
yann@1625
    12
+++ glibc-2.10.1/glibc-ports-2.10.1/sysdeps/mips/bits/atomic.h	2009-11-13 00:51:34.000000000 +0100
yann@1625
    13
@@ -74,7 +74,7 @@
yann@1625
    14
      "bne	%0,%2,2f\n\t"						      \
yann@1625
    15
      "move	%1,%3\n\t"						      \
yann@1625
    16
      "sc	%1,%4\n\t"						      \
yann@1625
    17
-     "beqz	%1,1b\n"						      \
yann@1625
    18
+     "beqzl	%1,1b\n"						      \
yann@1625
    19
      acq	"\n\t"							      \
yann@1625
    20
      ".set	pop\n"							      \
yann@1625
    21
      "2:\n\t"								      \
yann@1625
    22
@@ -98,7 +98,7 @@
yann@1625
    23
      "bne	%0,%2,2f\n\t"						      \
yann@1625
    24
      "move	%1,%3\n\t"						      \
yann@1625
    25
      "scd	%1,%4\n\t"						      \
yann@1625
    26
-     "beqz	%1,1b\n"						      \
yann@1625
    27
+     "beqzl	%1,1b\n"						      \
yann@1625
    28
      acq	"\n\t"							      \
yann@1625
    29
      ".set	pop\n"							      \
yann@1625
    30
      "2:\n\t"								      \
yann@1625
    31
@@ -192,7 +192,7 @@
yann@1625
    32
      "ll	%0,%3\n\t"						      \
yann@1625
    33
      "move	%1,%2\n\t"						      \
yann@1625
    34
      "sc	%1,%3\n\t"						      \
yann@1625
    35
-     "beqz	%1,1b\n"						      \
yann@1625
    36
+     "beqzl	%1,1b\n"						      \
yann@1625
    37
      acq	"\n\t"							      \
yann@1625
    38
      ".set	pop\n"							      \
yann@1625
    39
      "2:\n\t"								      \
yann@1625
    40
@@ -216,7 +216,7 @@
yann@1625
    41
      "lld	%0,%3\n\t"						      \
yann@1625
    42
      "move	%1,%2\n\t"						      \
yann@1625
    43
      "scd	%1,%3\n\t"						      \
yann@1625
    44
-     "beqz	%1,1b\n"						      \
yann@1625
    45
+     "beqzl	%1,1b\n"						      \
yann@1625
    46
      acq	"\n\t"							      \
yann@1625
    47
      ".set	pop\n"							      \
yann@1625
    48
      "2:\n\t"								      \
yann@1625
    49
@@ -251,7 +251,7 @@
yann@1625
    50
      "ll	%0,%3\n\t"						      \
yann@1625
    51
      "addu	%1,%0,%2\n\t"						      \
yann@1625
    52
      "sc	%1,%3\n\t"						      \
yann@1625
    53
-     "beqz	%1,1b\n"						      \
yann@1625
    54
+     "beqzl	%1,1b\n"						      \
yann@1625
    55
      acq	"\n\t"							      \
yann@1625
    56
      ".set	pop\n"							      \
yann@1625
    57
      "2:\n\t"								      \
yann@1625
    58
@@ -275,7 +275,7 @@
yann@1625
    59
      "lld	%0,%3\n\t"						      \
yann@1625
    60
      "daddu	%1,%0,%2\n\t"						      \
yann@1625
    61
      "scd	%1,%3\n\t"						      \
yann@1625
    62
-     "beqz	%1,1b\n"						      \
yann@1625
    63
+     "beqzl	%1,1b\n"						      \
yann@1625
    64
      acq	"\n\t"							      \
yann@1625
    65
      ".set	pop\n"							      \
yann@1625
    66
      "2:\n\t"								      \
yann@1625
    67
diff -durN glibc-2.10.1.orig/ports/sysdeps/mips/bits/atomic.h glibc-2.10.1/ports/sysdeps/mips/bits/atomic.h