* sysdeps/sparc/sparc64/sparcv9v/memcpy.S: When not USE_BPR,
authorJakub Jelinek <jakub@redhat.com>
Sat, 11 Oct 2008 08:52:58 +0000 (08:52 +0000)
committerJakub Jelinek <jakub@redhat.com>
Sat, 11 Oct 2008 08:52:58 +0000 (08:52 +0000)
make sure any registers used with 64-bit 'branch-on-register'
instructions have their top 32-bits clear.
* sysdeps/sparc/sparc64/sparcv9v/memset.S: Likewise.
* sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: Likewise.
2008-10-09  Jakub Jelinek <jakub@redhat.com>
    David S. Miller  <davem@davemloft.net>

* sysdeps/sparc/sparc64/sparcv9v/memcpy.S: When not USE_BPR,
make sure any registers used with 64-bit 'branch-on-register'
instructions have their top 32-bits clear.
* sysdeps/sparc/sparc64/sparcv9v/memset.S: Likewise.
* sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: Likewise.

ChangeLog
sysdeps/sparc/sparc64/sparcv9v/memcpy.S
sysdeps/sparc/sparc64/sparcv9v/memset.S
sysdeps/sparc/sparc64/sparcv9v2/memcpy.S

index 9dd19f1..ca07dc7 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2008-10-09  Jakub Jelinek <jakub@redhat.com>
+           David S. Miller  <davem@davemloft.net>
+
+       * sysdeps/sparc/sparc64/sparcv9v/memcpy.S: When not USE_BPR,
+       make sure any registers used with 64-bit 'branch-on-register'
+       instructions have their top 32-bits clear.
+       * sysdeps/sparc/sparc64/sparcv9v/memset.S: Likewise.
+       * sysdeps/sparc/sparc64/sparcv9v2/memcpy.S: Likewise.
+
 2008-09-18  Andreas Schwab  <schwab@suse.de>
 
        [BZ #6942]
index 05c837f..ad2b0f7 100644 (file)
@@ -1,5 +1,5 @@
 /* Copy SIZE bytes from SRC to DEST.  For SUN4V Niagara.
-   Copyright (C) 2006 Free Software Foundation, Inc.
+   Copyright (C) 2006, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by David S. Miller (davem@davemloft.net)
 
@@ -61,6 +61,9 @@ END(bcopy)
 
        .align          32
 ENTRY(memcpy)
+#ifndef USE_BPR
+       srl             %o2, 0, %o2
+#endif
 100:   /* %o0=dst, %o1=src, %o2=len */
        mov             %o0, %g5
        cmp             %o2, 0
index ac0a50c..64817b8 100644 (file)
@@ -1,5 +1,5 @@
 /* Set a block of memory to some byte value.  For SUN4V Niagara.
-   Copyright (C) 2006 Free Software Foundation, Inc.
+   Copyright (C) 2006, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by David S. Miller (davem@davemloft.net)
 
@@ -49,7 +49,11 @@ END(memset)
 
 ENTRY(__bzero)
        clr             %o2
-1:     brz,pn          %o1, 90f
+1:
+#ifndef USE_BRP
+       srl             %o1, 0, %o1
+#endif
+       brz,pn          %o1, 90f
         mov            %o0, %o3
 
        wr              %g0, ASI_P, %asi
index d94dd47..b261f46 100644 (file)
@@ -1,5 +1,5 @@
 /* Copy SIZE bytes from SRC to DEST.  For SUN4V Niagara-2.
-   Copyright (C) 2007 Free Software Foundation, Inc.
+   Copyright (C) 2007, 2008 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by David S. Miller (davem@davemloft.net)
 
@@ -163,6 +163,9 @@ END(bcopy)
 
        .align          32
 ENTRY(memcpy)
+#ifndef USE_BPR
+       srl             %o2, 0, %o2
+#endif
 100:   /* %o0=dst, %o1=src, %o2=len */
        mov             %o0, %g5
        cmp             %o2, 0