Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/common/lib/libc/arch/arm/atomic Push two registers to keep s...



details:   https://anonhg.NetBSD.org/src/rev/42b59cbdcf7c
branches:  trunk
changeset: 789481:42b59cbdcf7c
user:      matt <matt%NetBSD.org@localhost>
date:      Tue Aug 20 07:52:31 2013 +0000

description:
Push two registers to keep stack aligned.

diffstat:

 common/lib/libc/arch/arm/atomic/atomic_add_64.S  |  6 +++---
 common/lib/libc/arch/arm/atomic/atomic_and_64.S  |  6 +++---
 common/lib/libc/arch/arm/atomic/atomic_or_64.S   |  6 +++---
 common/lib/libc/arch/arm/atomic/atomic_swap_64.S |  6 +++---
 4 files changed, 12 insertions(+), 12 deletions(-)

diffs (108 lines):

diff -r c9266eb528d9 -r 42b59cbdcf7c common/lib/libc/arch/arm/atomic/atomic_add_64.S
--- a/common/lib/libc/arch/arm/atomic/atomic_add_64.S   Tue Aug 20 07:25:52 2013 +0000
+++ b/common/lib/libc/arch/arm/atomic/atomic_add_64.S   Tue Aug 20 07:52:31 2013 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: atomic_add_64.S,v 1.7 2013/08/11 04:41:17 matt Exp $   */
+/*     $NetBSD: atomic_add_64.S,v 1.8 2013/08/20 07:52:31 matt Exp $   */
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -33,7 +33,7 @@
 #ifdef _ARM_ARCH_6
 
 ENTRY_NP(_atomic_add_64_nv)
-       push    {r4}                    /* save temporary */
+       push    {r3,r4}                 /* save temporary */
        mov     ip, r0                  /* need r0 for return value */
 #ifndef __ARM_EABI__
        mov     r3, r2
@@ -50,7 +50,7 @@
 #else
        mcr     p15, 0, r4, c7, c10, 5  /* data memory barrier */
 #endif
-       pop     {r4}                    /* restore temporary */
+       pop     {r3,r4}                 /* restore temporary */
        RET                             /* return new value */
 END(_atomic_add_64_nv)
 
diff -r c9266eb528d9 -r 42b59cbdcf7c common/lib/libc/arch/arm/atomic/atomic_and_64.S
--- a/common/lib/libc/arch/arm/atomic/atomic_and_64.S   Tue Aug 20 07:25:52 2013 +0000
+++ b/common/lib/libc/arch/arm/atomic/atomic_and_64.S   Tue Aug 20 07:52:31 2013 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: atomic_and_64.S,v 1.6 2013/08/11 04:41:17 matt Exp $   */
+/*     $NetBSD: atomic_and_64.S,v 1.7 2013/08/20 07:52:31 matt Exp $   */
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -33,7 +33,7 @@
 #ifdef _ARM_ARCH_6
 
 ENTRY_NP(_atomic_and_64_nv)
-       push    {r4}                    /* save temporary */
+       push    {r3,r4}                 /* save temporary */
 #ifndef __ARM_EABI__
        mov     r3, r2
        mov     r2, r1
@@ -50,7 +50,7 @@
 #else
        mcr     p15, 0, r4, c7, c10, 5  /* data memory barrier */
 #endif
-       pop     {r4}                    /* restore temporary */
+       pop     {r3,r4}                 /* restore temporary */
        RET                             /* return new value */
 END(_atomic_and_64_nv)
 
diff -r c9266eb528d9 -r 42b59cbdcf7c common/lib/libc/arch/arm/atomic/atomic_or_64.S
--- a/common/lib/libc/arch/arm/atomic/atomic_or_64.S    Tue Aug 20 07:25:52 2013 +0000
+++ b/common/lib/libc/arch/arm/atomic/atomic_or_64.S    Tue Aug 20 07:52:31 2013 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: atomic_or_64.S,v 1.6 2013/08/11 04:41:17 matt Exp $    */
+/*     $NetBSD: atomic_or_64.S,v 1.7 2013/08/20 07:52:31 matt Exp $    */
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -33,7 +33,7 @@
 #ifdef _ARM_ARCH_6
 
 ENTRY_NP(_atomic_or_64_nv)
-       push    {r4}                    /* save temporary */
+       push    {r3,r4}                 /* save temporary */
 #ifndef __ARM_EABI__
        mov     r3, r2
        mov     r2, r1
@@ -50,7 +50,7 @@
 #else
        mcr     p15, 0, r4, c7, c10, 5  /* data memory barrier */
 #endif
-       pop     {r4}                    /* restore temporary */
+       pop     {r3,r4}                 /* restore temporary */
        RET                             /* return new value */
 END(_atomic_or_64_nv)
 
diff -r c9266eb528d9 -r 42b59cbdcf7c common/lib/libc/arch/arm/atomic/atomic_swap_64.S
--- a/common/lib/libc/arch/arm/atomic/atomic_swap_64.S  Tue Aug 20 07:25:52 2013 +0000
+++ b/common/lib/libc/arch/arm/atomic/atomic_swap_64.S  Tue Aug 20 07:52:31 2013 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: atomic_swap_64.S,v 1.4 2013/08/10 19:59:21 matt Exp $  */
+/*     $NetBSD: atomic_swap_64.S,v 1.5 2013/08/20 07:52:31 matt Exp $  */
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
  * All rights reserved.
@@ -31,7 +31,7 @@
 #include "atomic_op_asm.h"
 
 ENTRY_NP(_atomic_swap_64)
-       push    {r4}                    /* save temporary */
+       push    {r3,r4}                 /* save temporary */
        mov     ip, r0                  /* return value will be in r0 */
 #ifndef __ARM_EABI__
        mov     r3, r2                  /* r2 will be overwriten by r1 */
@@ -46,7 +46,7 @@
 #else
        mcr     p15, 0, r4, c7, c10, 5  /* data memory barrier */
 #endif
-       pop     {r4}                    /* restore temporary */
+       pop     {r3,r4}                 /* restore temporary */
        RET
        END(_atomic_swap_64)
 ATOMIC_OP_ALIAS(atomic_swap_64,_atomic_swap_64)



Home | Main Index | Thread Index | Old Index